ADM/GW/Debug_FLASH/RTD/src/Emios_Mcl_Ip.c.076i.inline

1467 lines
37 KiB
Plaintext

IPA function summary for Emios_Mcl_Ip_SetCounterBusPeriod/12 inlinable
global time: 9.860557
self size: 27
global size: 27
min size: 0
self stack: 0
global stack: 0
size:19.000000, time:7.719457
size:3.000000, time:0.250005, executed if:(not inlined)
size:3.000000, time:1.141096, nonconst if:(op2 changed)
size:1.000000, time:0.500000, nonconst if:(op0 changed)
size:1.000000, time:0.250000, nonconst if:(op1 changed)
array index:(op1 changed) && (op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_ValidateChannel/11 inlinable
global time: 8.750000
self size: 16
global size: 16
min size: 0
self stack: 0
global stack: 0
size:11.000000, time:6.750000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:1.000000, time:0.500000, nonconst if:(op1 changed)
array index:(op0 changed || op1 changed)
calls:
IPA function summary for Emios_Mcl_Ip_SetReloadInterval/10 inlinable
global time: 9.375012
self size: 21
global size: 21
min size: 0
self stack: 0
global stack: 0
size:14.000000, time:7.250005
size:3.000000, time:0.250005, executed if:(not inlined)
size:2.000000, time:1.125002, nonconst if:(op2 changed)
size:1.000000, time:0.500000, nonconst if:(op0 changed)
size:1.000000, time:0.250000, nonconst if:(op1 changed)
array index:(op1 changed) && (op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_Deinit/9 inlinable
global time: 63.750000
self size: 29
global size: 29
min size: 0
self stack: 0
global stack: 0
size:25.000000, time:61.750000
size:3.000000, time:1.000000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_ComparatorTransferDisable/8 inlinable
global time: 9.000000
self size: 17
global size: 17
min size: 0
self stack: 0
global stack: 0
size:12.000000, time:7.000000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:1.000000, time:0.500000, nonconst if:(op1 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_ComparatorTransferEnable/7 inlinable
global time: 9.250000
self size: 18
global size: 18
min size: 0
self stack: 0
global stack: 0
size:12.000000, time:7.000000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:2.000000, time:0.750000, nonconst if:(op1 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_DisableChannel/6 inlinable
global time: 9.250000
self size: 18
global size: 18
min size: 0
self stack: 0
global stack: 0
size:12.000000, time:7.000000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:2.000000, time:0.750000, nonconst if:(op1 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_EnableChannel/5 inlinable
global time: 9.500000
self size: 19
global size: 19
min size: 0
self stack: 0
global stack: 0
size:12.000000, time:7.000000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:3.000000, time:1.000000, nonconst if:(op1 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_Init/4 inlinable
global time: 52.231942
self size: 93
global size: 93
min size: 0
self stack: 0
global stack: 0
size:85.000000, time:47.955325
size:3.000000, time:0.500410, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:1.000000, time:0.500000, nonconst if:(op1 changed)
size:0.500000, time:0.062501, executed if:(not inlined), nonconst if:(op1[ref offset: 32] changed) && (not inlined)
size:0.500000, time:0.062501, nonconst if:(op1[ref offset: 32] changed)
size:0.500000, time:0.569102, executed if:(not inlined), nonconst if:(op1[ref offset: 0] changed) && (not inlined)
size:0.500000, time:0.569102, nonconst if:(op1[ref offset: 0] changed)
size:0.500000, time:0.506501, executed if:(not inlined), nonconst if:(op1[ref offset: 64] changed) && (not inlined)
size:0.500000, time:0.506501, nonconst if:(op1[ref offset: 64] changed)
array index:(op0 changed)
calls:
Flattening functions:
Overall time estimate: 180.967511 weighted by profile: 0.000000
Deciding on inlining of small functions. Starting with size 0.
Enqueueing calls in Emios_Mcl_Ip_SetCounterBusPeriod/12.
Enqueueing calls in Emios_Mcl_Ip_ValidateChannel/11.
Enqueueing calls in Emios_Mcl_Ip_SetReloadInterval/10.
Enqueueing calls in Emios_Mcl_Ip_Deinit/9.
Enqueueing calls in Emios_Mcl_Ip_ComparatorTransferDisable/8.
Enqueueing calls in Emios_Mcl_Ip_ComparatorTransferEnable/7.
Enqueueing calls in Emios_Mcl_Ip_DisableChannel/6.
Enqueueing calls in Emios_Mcl_Ip_EnableChannel/5.
Enqueueing calls in Emios_Mcl_Ip_Init/4.
Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Deciding on functions to be inlined into all callers and removing useless speculations:
Overall time estimate: 180.967511 weighted by profile: 0.000000
Why inlining failed?
IPA function summary for Emios_Mcl_Ip_SetCounterBusPeriod/12 inlinable
global time: 9.860557
self size: 27
global size: 27
min size: 0
self stack: 0
global stack: 0
size:19.000000, time:7.719457
size:3.000000, time:0.250005, executed if:(not inlined)
size:3.000000, time:1.141096, nonconst if:(op2 changed)
size:1.000000, time:0.500000, nonconst if:(op0 changed)
size:1.000000, time:0.250000, nonconst if:(op1 changed)
array index:(op1 changed) && (op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_ValidateChannel/11 inlinable
global time: 8.750000
self size: 16
global size: 16
min size: 0
self stack: 0
global stack: 0
size:11.000000, time:6.750000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:1.000000, time:0.500000, nonconst if:(op1 changed)
array index:(op0 changed || op1 changed)
calls:
IPA function summary for Emios_Mcl_Ip_SetReloadInterval/10 inlinable
global time: 9.375012
self size: 21
global size: 21
min size: 0
self stack: 0
global stack: 0
size:14.000000, time:7.250005
size:3.000000, time:0.250005, executed if:(not inlined)
size:2.000000, time:1.125002, nonconst if:(op2 changed)
size:1.000000, time:0.500000, nonconst if:(op0 changed)
size:1.000000, time:0.250000, nonconst if:(op1 changed)
array index:(op1 changed) && (op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_Deinit/9 inlinable
global time: 63.750000
self size: 29
global size: 29
min size: 0
self stack: 0
global stack: 0
size:25.000000, time:61.750000
size:3.000000, time:1.000000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_ComparatorTransferDisable/8 inlinable
global time: 9.000000
self size: 17
global size: 17
min size: 0
self stack: 0
global stack: 0
size:12.000000, time:7.000000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:1.000000, time:0.500000, nonconst if:(op1 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_ComparatorTransferEnable/7 inlinable
global time: 9.250000
self size: 18
global size: 18
min size: 0
self stack: 0
global stack: 0
size:12.000000, time:7.000000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:2.000000, time:0.750000, nonconst if:(op1 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_DisableChannel/6 inlinable
global time: 9.250000
self size: 18
global size: 18
min size: 0
self stack: 0
global stack: 0
size:12.000000, time:7.000000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:2.000000, time:0.750000, nonconst if:(op1 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_EnableChannel/5 inlinable
global time: 9.500000
self size: 19
global size: 19
min size: 0
self stack: 0
global stack: 0
size:12.000000, time:7.000000
size:3.000000, time:0.500000, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:3.000000, time:1.000000, nonconst if:(op1 changed)
array index:(op0 changed)
calls:
IPA function summary for Emios_Mcl_Ip_Init/4 inlinable
global time: 52.231942
self size: 93
global size: 93
min size: 0
self stack: 0
global stack: 0
size:85.000000, time:47.955325
size:3.000000, time:0.500410, executed if:(not inlined)
size:1.000000, time:1.000000, nonconst if:(op0 changed)
size:1.000000, time:0.500000, nonconst if:(op1 changed)
size:0.500000, time:0.062501, executed if:(not inlined), nonconst if:(op1[ref offset: 32] changed) && (not inlined)
size:0.500000, time:0.062501, nonconst if:(op1[ref offset: 32] changed)
size:0.500000, time:0.569102, executed if:(not inlined), nonconst if:(op1[ref offset: 0] changed) && (not inlined)
size:0.500000, time:0.569102, nonconst if:(op1[ref offset: 0] changed)
size:0.500000, time:0.506501, executed if:(not inlined), nonconst if:(op1[ref offset: 64] changed) && (not inlined)
size:0.500000, time:0.506501, nonconst if:(op1[ref offset: 64] changed)
array index:(op0 changed)
calls:
Symbol table:
Emios_Mcl_Ip_SetCounterBusPeriod/12 (Emios_Mcl_Ip_SetCounterBusPeriod) @07bfea80
Type: function definition analyzed
Visibility: externally_visible public
References: Emios_Ip_ChState/2 (read)emiosBase/1 (read)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Mcl_Ip_ValidateChannel/11 (Emios_Mcl_Ip_ValidateChannel) @07bfe7e0
Type: function definition analyzed
Visibility: externally_visible public
References: Emios_Ip_ChState/2 (read)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Mcl_Ip_SetReloadInterval/10 (Emios_Mcl_Ip_SetReloadInterval) @07bfe540
Type: function definition analyzed
Visibility: externally_visible public
References: emiosBase/1 (read)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Mcl_Ip_Deinit/9 (Emios_Mcl_Ip_Deinit) @07bfe1c0
Type: function definition analyzed
Visibility: externally_visible public
References: emiosBase/1 (read)Emios_Ip_IpIsInitialized/3 (read)Emios_Ip_ChState/2 (read)Emios_Ip_ChState/2 (write)Emios_Ip_IpIsInitialized/3 (write)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Mcl_Ip_ComparatorTransferDisable/8 (Emios_Mcl_Ip_ComparatorTransferDisable) @07c207e0
Type: function definition analyzed
Visibility: externally_visible public
References: emiosBase/1 (read)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Mcl_Ip_ComparatorTransferEnable/7 (Emios_Mcl_Ip_ComparatorTransferEnable) @07c20ee0
Type: function definition analyzed
Visibility: externally_visible public
References: emiosBase/1 (read)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Mcl_Ip_DisableChannel/6 (Emios_Mcl_Ip_DisableChannel) @07c20c40
Type: function definition analyzed
Visibility: externally_visible public
References: emiosBase/1 (read)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Mcl_Ip_EnableChannel/5 (Emios_Mcl_Ip_EnableChannel) @07c209a0
Type: function definition analyzed
Visibility: externally_visible public
References: emiosBase/1 (read)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Mcl_Ip_Init/4 (Emios_Mcl_Ip_Init) @07c20700
Type: function definition analyzed
Visibility: externally_visible public
References: emiosBase/1 (read)Emios_Ip_IpIsInitialized/3 (read)Emios_Ip_ChState/2 (write)Emios_Ip_ChState/2 (write)Emios_Ip_IpIsInitialized/3 (write)
Referring:
Availability: available
Function flags: count:214748 (estimated locally) body optimize_size
Called by:
Calls:
Emios_Ip_IpIsInitialized/3 (Emios_Ip_IpIsInitialized) @07c1e0d8
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Emios_Mcl_Ip_Init/4 (read)Emios_Mcl_Ip_Init/4 (write)Emios_Mcl_Ip_Deinit/9 (read)Emios_Mcl_Ip_Deinit/9 (write)
Availability: available
Varpool flags: initialized
Emios_Ip_ChState/2 (Emios_Ip_ChState) @07c1e048
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Emios_Mcl_Ip_Init/4 (write)Emios_Mcl_Ip_Deinit/9 (write)Emios_Mcl_Ip_Deinit/9 (read)Emios_Mcl_Ip_ValidateChannel/11 (read)Emios_Mcl_Ip_Init/4 (write)Emios_Mcl_Ip_SetCounterBusPeriod/12 (read)
Availability: available
Varpool flags: initialized
emiosBase/1 (emiosBase) @07c16f78
Type: variable definition analyzed
Visibility: externally_visible public
References:
Referring: Emios_Mcl_Ip_Deinit/9 (read)Emios_Mcl_Ip_SetReloadInterval/10 (read)Emios_Mcl_Ip_Init/4 (read)Emios_Mcl_Ip_EnableChannel/5 (read)Emios_Mcl_Ip_DisableChannel/6 (read)Emios_Mcl_Ip_ComparatorTransferDisable/8 (read)Emios_Mcl_Ip_ComparatorTransferEnable/7 (read)Emios_Mcl_Ip_SetCounterBusPeriod/12 (read)
Availability: available
Varpool flags: initialized
;; Function Emios_Mcl_Ip_Init (Emios_Mcl_Ip_Init, funcdef_no=1, decl_uid=7615, cgraph_uid=2, symbol_order=4)
Emios_Mcl_Ip_Init (uint8 instance, const struct Emios_Mcl_Ip_ConfigType * const pConfig)
{
volatile boolean x;
volatile boolean x;
Emios_Ip_CommonStatusType status;
struct eMIOS_Type * base;
uint8 currentChannel;
_Bool _1;
_Bool _2;
int _3;
_Bool _4;
long unsigned int _5;
long unsigned int _6;
const struct Emios_Ip_GlobalConfigType * _7;
unsigned char _8;
long unsigned int _9;
long unsigned int _10;
_Bool _11;
long unsigned int _12;
long unsigned int _13;
long unsigned int _14;
_Bool _15;
long unsigned int _16;
long unsigned int _17;
long unsigned int _18;
const struct Emios_Ip_MasterBusConfigType[<unknown>] * _19;
int _20;
_Bool _21;
unsigned char _22;
int _23;
long unsigned int _24;
long unsigned int _25;
unsigned char _26;
int _27;
long unsigned int _28;
unsigned char _29;
long unsigned int _30;
long unsigned int _31;
long unsigned int _32;
long unsigned int _33;
<unnamed type> _34;
long unsigned int _35;
long unsigned int _36;
long unsigned int _37;
long unsigned int _38;
long unsigned int _39;
long unsigned int _40;
long unsigned int _41;
long unsigned int _42;
long unsigned int _43;
long unsigned int _44;
long unsigned int _45;
long unsigned int _46;
_Bool _47;
long unsigned int _48;
long unsigned int _49;
long unsigned int _50;
unsigned char _51;
long unsigned int _52;
long unsigned int _53;
<unnamed type> _64;
_Bool x.1_84;
_Bool x.1_85;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = instance_60(D) <= 2;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_85 ={v} x;
if (x.1_85 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 21>; [50.00%]
<bb 21> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 23> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_2 = pConfig_62(D) != 0B;
x ={v} _2;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_84 ={v} x;
if (x.1_84 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 20>; [50.00%]
<bb 20> [local count: 53687]:
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 22> [local count: 536870913]:
goto <bb 5>; [100.00%]
<bb 6> [local count: 53687]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_3 = (int) instance_60(D);
base_63 = emiosBase[_3];
# DEBUG base => base_63
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
_4 = Emios_Ip_IpIsInitialized[_3].instanceInitState;
if (_4 != 0)
goto <bb 19>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 7> [local count: 26844]:
# DEBUG BEGIN_STMT
_5 ={v} base_63->MCR;
_6 = _5 & 4227858431;
base_63->MCR ={v} _6;
# DEBUG BEGIN_STMT
_7 = pConfig_62(D)->emiosGlobalConfig;
_8 = _7->clkDivVal;
_9 = (long unsigned int) _8;
_10 = _9 << 8;
_11 = _7->allowDebugMode;
_12 = (long unsigned int) _11;
_13 = _12 << 29;
_14 = _10 | _13;
_15 = _7->enableGlobalTimeBase;
_16 = (long unsigned int) _15;
_17 = _16 << 28;
_18 = _14 | _17;
base_63->MCR ={v} _18;
# DEBUG BEGIN_STMT
# DEBUG currentChannel => 0
goto <bb 17>; [100.00%]
<bb 8> [local count: 217540]:
# DEBUG BEGIN_STMT
_19 = pConfig_62(D)->masterBusConfig;
_20 = (int) currentChannel_54;
_21 = *_19[_20].allowDebugMode;
if (_21 != 0)
goto <bb 9>; [50.00%]
else
goto <bb 10>; [50.00%]
<bb 9> [local count: 108770]:
# DEBUG BEGIN_STMT
_22 = *_19[_20].hwChannel;
_23 = (int) _22;
_24 ={v} base_63->CH.UC[_23].C;
_25 = _24 | 2147483648;
base_63->CH.UC[_23].C ={v} _25;
<bb 10> [local count: 217540]:
# DEBUG BEGIN_STMT
_26 = *_19[_20].hwChannel;
_27 = (int) _26;
_28 ={v} base_63->CH.UC[_27].C;
_29 = *_19[_20].masterBusPrescaler;
_30 = (long unsigned int) _29;
_31 = _30 << 26;
_32 = _31 & 201326592;
_33 = _28 | _32;
base_63->CH.UC[_27].C ={v} _33;
# DEBUG BEGIN_STMT
_34 = *_19[_20].masterMode;
switch (_34) <default: <L16> [16.67%], case 16: <L5> [16.67%], case 18: <L6> [16.67%], case 20: <L7> [16.67%], case 80: <L8> [16.67%], case 84: <L9> [16.67%]>
<bb 11> [local count: 36264]:
<L5>:
# DEBUG BEGIN_STMT
_35 = *_19[_20].defaultPeriod;
base_63->CH.UC[_27].A ={v} _35;
# DEBUG BEGIN_STMT
goto <bb 16>; [100.00%]
<bb 12> [local count: 36264]:
<L6>:
# DEBUG BEGIN_STMT
_36 = *_19[_20].defaultPeriod;
base_63->CH.UC[_27].A ={v} _36;
# DEBUG BEGIN_STMT
goto <bb 16>; [100.00%]
<bb 13> [local count: 36264]:
<L7>:
# DEBUG BEGIN_STMT
base_63->CH.UC[_27].B ={v} 0;
# DEBUG BEGIN_STMT
_37 = *_19[_20].defaultPeriod;
base_63->CH.UC[_27].A ={v} _37;
# DEBUG BEGIN_STMT
goto <bb 16>; [100.00%]
<bb 14> [local count: 36264]:
<L8>:
# DEBUG BEGIN_STMT
_38 = *_19[_20].defaultPeriod;
base_63->CH.UC[_27].A ={v} _38;
# DEBUG BEGIN_STMT
goto <bb 16>; [100.00%]
<bb 15> [local count: 36264]:
<L9>:
# DEBUG BEGIN_STMT
_39 = *_19[_20].defaultPeriod;
base_63->CH.UC[_27].A ={v} _39;
# DEBUG BEGIN_STMT
<bb 16> [local count: 217584]:
<L16>:
# DEBUG BEGIN_STMT
_40 = *_19[_20].offsetStartValue;
base_63->CH.UC[_27].CNT ={v} _40;
# DEBUG BEGIN_STMT
_41 ={v} base_63->CH.UC[_27].C;
_64 = _34 & 127;
_42 = (long unsigned int) _64;
_43 = _41 | _42;
base_63->CH.UC[_27].C ={v} _43;
# DEBUG BEGIN_STMT
_44 ={v} base_63->CH.UC[_27].C;
_45 = _44 | 33554432;
base_63->CH.UC[_27].C ={v} _45;
# DEBUG BEGIN_STMT
_46 ={v} base_63->CH.UC[_27].C;
_47 = *_19[_20].interruptEnable;
_48 = (long unsigned int) _47;
_49 = _48 << 17;
_50 = _46 | _49;
base_63->CH.UC[_27].C ={v} _50;
# DEBUG BEGIN_STMT
Emios_Ip_ChState[_3][_27].counterMode = _34;
# DEBUG BEGIN_STMT
Emios_Ip_ChState[_3][_27].channelInitState = 1;
# DEBUG BEGIN_STMT
currentChannel_82 = currentChannel_54 + 1;
# DEBUG currentChannel => currentChannel_82
<bb 17> [local count: 244427]:
# currentChannel_54 = PHI <0(7), currentChannel_82(16)>
# DEBUG currentChannel => currentChannel_54
# DEBUG BEGIN_STMT
_51 = pConfig_62(D)->channelsNumber;
if (_51 > currentChannel_54)
goto <bb 8>; [89.00%]
else
goto <bb 18>; [11.00%]
<bb 18> [local count: 26887]:
# DEBUG BEGIN_STMT
Emios_Ip_IpIsInitialized[_3].instanceInitState = 1;
<bb 19> [local count: 53731]:
# status_55 = PHI <1(6), 0(18)>
# DEBUG status => status_55
# DEBUG BEGIN_STMT
_52 ={v} base_63->MCR;
_53 = _52 | 67108864;
base_63->MCR ={v} _53;
# DEBUG BEGIN_STMT
return status_55;
}
;; Function Emios_Mcl_Ip_EnableChannel (Emios_Mcl_Ip_EnableChannel, funcdef_no=2, decl_uid=7601, cgraph_uid=3, symbol_order=5)
Emios_Mcl_Ip_EnableChannel (uint8 instance, uint8 u8HwChannel)
{
volatile boolean x;
volatile boolean x;
struct eMIOS_Type * base;
_Bool _1;
_Bool _2;
int _3;
long unsigned int _4;
long unsigned int _5;
long unsigned int _6;
long unsigned int _7;
long unsigned int _8;
_Bool x.1_14;
_Bool x.1_15;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = instance_9(D) <= 2;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_15 ={v} x;
if (x.1_15 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 8> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 10> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_2 = u8HwChannel_11(D) <= 23;
x ={v} _2;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_14 ={v} x;
if (x.1_14 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 7> [local count: 53687]:
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 9> [local count: 536870913]:
goto <bb 5>; [100.00%]
<bb 6> [local count: 53687]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_3 = (int) instance_9(D);
base_12 = emiosBase[_3];
# DEBUG base => base_12
# DEBUG BEGIN_STMT
_4 ={v} base_12->UCDIS;
_5 = (long unsigned int) u8HwChannel_11(D);
_6 = 1 << _5;
_7 = ~_6;
_8 = _4 & _7;
base_12->UCDIS ={v} _8;
return;
}
;; Function Emios_Mcl_Ip_DisableChannel (Emios_Mcl_Ip_DisableChannel, funcdef_no=3, decl_uid=7604, cgraph_uid=4, symbol_order=6)
Emios_Mcl_Ip_DisableChannel (uint8 instance, uint8 u8HwChannel)
{
volatile boolean x;
volatile boolean x;
struct eMIOS_Type * base;
_Bool _1;
_Bool _2;
int _3;
long unsigned int _4;
long unsigned int _5;
long unsigned int _6;
long unsigned int _7;
_Bool x.1_13;
_Bool x.1_14;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = instance_8(D) <= 2;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_14 ={v} x;
if (x.1_14 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 8> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 10> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_2 = u8HwChannel_10(D) <= 23;
x ={v} _2;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_13 ={v} x;
if (x.1_13 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 7> [local count: 53687]:
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 9> [local count: 536870913]:
goto <bb 5>; [100.00%]
<bb 6> [local count: 53687]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_3 = (int) instance_8(D);
base_11 = emiosBase[_3];
# DEBUG base => base_11
# DEBUG BEGIN_STMT
_4 ={v} base_11->UCDIS;
_5 = (long unsigned int) u8HwChannel_10(D);
_6 = 1 << _5;
_7 = _4 | _6;
base_11->UCDIS ={v} _7;
return;
}
;; Function Emios_Mcl_Ip_ComparatorTransferEnable (Emios_Mcl_Ip_ComparatorTransferEnable, funcdef_no=4, decl_uid=7607, cgraph_uid=5, symbol_order=7)
Emios_Mcl_Ip_ComparatorTransferEnable (uint8 instance, uint32 channelMask)
{
volatile boolean x;
volatile boolean x;
struct eMIOS_Type * base;
_Bool _1;
_Bool _2;
int _3;
long unsigned int _4;
long unsigned int _5;
long unsigned int _6;
_Bool x.1_12;
_Bool x.1_13;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = instance_7(D) <= 2;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_13 ={v} x;
if (x.1_13 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 8> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 10> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_2 = channelMask_9(D) <= 16777214;
x ={v} _2;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_12 ={v} x;
if (x.1_12 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 7> [local count: 53687]:
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 9> [local count: 536870913]:
goto <bb 5>; [100.00%]
<bb 6> [local count: 53687]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_3 = (int) instance_7(D);
base_10 = emiosBase[_3];
# DEBUG base => base_10
# DEBUG BEGIN_STMT
_4 ={v} base_10->OUDIS;
_5 = ~channelMask_9(D);
_6 = _4 & _5;
base_10->OUDIS ={v} _6;
return;
}
;; Function Emios_Mcl_Ip_ComparatorTransferDisable (Emios_Mcl_Ip_ComparatorTransferDisable, funcdef_no=5, decl_uid=7610, cgraph_uid=6, symbol_order=8)
Emios_Mcl_Ip_ComparatorTransferDisable (uint8 instance, uint32 channelMask)
{
volatile boolean x;
volatile boolean x;
struct eMIOS_Type * base;
_Bool _1;
_Bool _2;
int _3;
long unsigned int _4;
long unsigned int _5;
_Bool x.1_11;
_Bool x.1_12;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = instance_6(D) <= 2;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_12 ={v} x;
if (x.1_12 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 8> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 10> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_2 = channelMask_8(D) <= 16777214;
x ={v} _2;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_11 ={v} x;
if (x.1_11 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 7> [local count: 53687]:
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 9> [local count: 536870913]:
goto <bb 5>; [100.00%]
<bb 6> [local count: 53687]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_3 = (int) instance_6(D);
base_9 = emiosBase[_3];
# DEBUG base => base_9
# DEBUG BEGIN_STMT
_4 ={v} base_9->OUDIS;
_5 = _4 | channelMask_8(D);
base_9->OUDIS ={v} _5;
return;
}
;; Function Emios_Mcl_Ip_Deinit (Emios_Mcl_Ip_Deinit, funcdef_no=6, decl_uid=7612, cgraph_uid=7, symbol_order=9)
Emios_Mcl_Ip_Deinit (uint8 instance)
{
volatile boolean x;
struct eMIOS_Type * base;
Emios_Ip_CommonStatusType status;
uint8 currentChannel;
_Bool _1;
int _2;
_Bool _3;
long unsigned int _4;
long unsigned int _5;
int _6;
_Bool _7;
long unsigned int _8;
_Bool x.1_26;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = instance_14(D) <= 2;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_26 ={v} x;
if (x.1_26 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 12>; [50.00%]
<bb 12> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 13> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
_2 = (int) instance_14(D);
base_16 = emiosBase[_2];
# DEBUG base => base_16
# DEBUG BEGIN_STMT
_3 = Emios_Ip_IpIsInitialized[_2].instanceInitState;
if (_3 != 0)
goto <bb 5>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 5> [local count: 53687]:
# DEBUG BEGIN_STMT
_4 ={v} base_16->MCR;
_5 = _4 & 4227858431;
base_16->MCR ={v} _5;
# DEBUG BEGIN_STMT
base_16->MCR ={v} 0;
# DEBUG BEGIN_STMT
# DEBUG currentChannel => 0
goto <bb 9>; [100.00%]
<bb 6> [local count: 1288488]:
# DEBUG BEGIN_STMT
_6 = (int) currentChannel_9;
_7 = Emios_Ip_ChState[_2][_6].channelInitState;
if (_7 != 0)
goto <bb 7>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 7> [local count: 644244]:
# DEBUG BEGIN_STMT
base_16->CH.UC[_6].C ={v} 0;
# DEBUG BEGIN_STMT
base_16->CH.UC[_6].A ={v} 0;
# DEBUG BEGIN_STMT
base_16->CH.UC[_6].B ={v} 0;
# DEBUG BEGIN_STMT
_8 ={v} base_16->UCDIS;
base_16->UCDIS ={v} _8;
# DEBUG BEGIN_STMT
Emios_Ip_ChState[_2][_6].channelInitState = 0;
<bb 8> [local count: 1288488]:
# DEBUG BEGIN_STMT
currentChannel_25 = currentChannel_9 + 1;
# DEBUG currentChannel => currentChannel_25
<bb 9> [local count: 1342175]:
# currentChannel_9 = PHI <0(5), currentChannel_25(8)>
# DEBUG currentChannel => currentChannel_9
# DEBUG BEGIN_STMT
if (currentChannel_9 != 24)
goto <bb 6>; [96.00%]
else
goto <bb 10>; [4.00%]
<bb 10> [local count: 53687]:
# DEBUG BEGIN_STMT
Emios_Ip_IpIsInitialized[_2].instanceInitState = 0;
<bb 11> [local count: 107374]:
# status_10 = PHI <1(4), 0(10)>
# DEBUG status => status_10
# DEBUG BEGIN_STMT
return status_10;
}
;; Function Emios_Mcl_Ip_SetReloadInterval (Emios_Mcl_Ip_SetReloadInterval, funcdef_no=7, decl_uid=7619, cgraph_uid=8, symbol_order=10)
Emios_Mcl_Ip_SetReloadInterval (uint8 hwInstance, uint8 hwChannel, uint8 interval)
{
volatile boolean x;
volatile boolean x;
volatile boolean x;
_Bool _1;
_Bool _2;
_Bool _3;
int _4;
struct eMIOS_Type * _5;
int _6;
long unsigned int _7;
unsigned char _10;
_Bool x.1_14;
_Bool x.1_15;
_Bool x.1_16;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = interval_8(D) <= 30;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_16 ={v} x;
if (x.1_16 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 11> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 14> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_2 = hwInstance_11(D) <= 2;
x ={v} _2;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_15 ={v} x;
if (x.1_15 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 10>; [50.00%]
<bb 10> [local count: 53687]:
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 13> [local count: 536870913]:
goto <bb 5>; [100.00%]
<bb 6> [local count: 53687]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_3 = hwChannel_12(D) <= 23;
x ={v} _3;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_14 ={v} x;
if (x.1_14 != 0)
goto <bb 8>; [50.00%]
else
goto <bb 9>; [50.00%]
<bb 9> [local count: 26844]:
<bb 7> [local count: 268435456]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 12> [local count: 268435456]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 26844]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_4 = (int) hwInstance_11(D);
_5 = emiosBase[_4];
_6 = (int) hwChannel_12(D);
_10 = interval_8(D) & 31;
_7 = (long unsigned int) _10;
_5->CH.UC[_6].C2 ={v} _7;
return;
}
;; Function Emios_Mcl_Ip_ValidateChannel (Emios_Mcl_Ip_ValidateChannel, funcdef_no=8, decl_uid=7622, cgraph_uid=9, symbol_order=11)
Emios_Mcl_Ip_ValidateChannel (uint8 hwInstance, uint8 hwChannel)
{
volatile boolean x;
volatile boolean x;
boolean valid;
_Bool _1;
_Bool _2;
int _3;
int _4;
_Bool _5;
_Bool x.1_10;
_Bool x.1_11;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = hwInstance_7(D) <= 2;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_11 ={v} x;
if (x.1_11 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 10>; [50.00%]
<bb 10> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 12> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_2 = hwChannel_9(D) <= 23;
x ={v} _2;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_10 ={v} x;
if (x.1_10 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 9>; [50.00%]
<bb 9> [local count: 53687]:
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 11> [local count: 536870913]:
goto <bb 5>; [100.00%]
<bb 6> [local count: 53687]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
# DEBUG valid => 0
# DEBUG BEGIN_STMT
_3 = (int) hwInstance_7(D);
_4 = (int) hwChannel_9(D);
_5 = Emios_Ip_ChState[_3][_4].channelInitState;
if (_5 != 0)
goto <bb 7>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 7> [local count: 26844]:
# DEBUG BEGIN_STMT
# DEBUG valid => 1
<bb 8> [local count: 53687]:
# valid_6 = PHI <0(6), 1(7)>
# DEBUG valid => valid_6
# DEBUG BEGIN_STMT
return valid_6;
}
;; Function Emios_Mcl_Ip_SetCounterBusPeriod (Emios_Mcl_Ip_SetCounterBusPeriod, funcdef_no=9, decl_uid=7626, cgraph_uid=10, symbol_order=12)
Emios_Mcl_Ip_SetCounterBusPeriod (uint8 hwInstance, uint8 hwChannel, uint16 period)
{
volatile boolean x;
volatile boolean x;
volatile boolean x;
Emios_Ip_CommonStatusType status;
_Bool _1;
_Bool _2;
_Bool _3;
int _4;
int _5;
<unnamed type> _6;
struct eMIOS_Type * _7;
long unsigned int _8;
_Bool x.1_16;
_Bool x.1_17;
_Bool x.1_18;
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = period_11(D) != 65535;
x ={v} _1;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_18 ={v} x;
if (x.1_18 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 15>; [50.00%]
<bb 15> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 18> [local count: 1073741824]:
goto <bb 3>; [100.00%]
<bb 4> [local count: 107374]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_2 = hwInstance_13(D) <= 2;
x ={v} _2;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_17 ={v} x;
if (x.1_17 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 14>; [50.00%]
<bb 14> [local count: 53687]:
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 17> [local count: 536870913]:
goto <bb 5>; [100.00%]
<bb 6> [local count: 53687]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
_3 = hwChannel_14(D) <= 23;
x ={v} _3;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.1_16 ={v} x;
if (x.1_16 != 0)
goto <bb 8>; [50.00%]
else
goto <bb 13>; [50.00%]
<bb 13> [local count: 26844]:
<bb 7> [local count: 268435456]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 16> [local count: 268435456]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 26844]:
# DEBUG BEGIN_STMT
# DEBUG x => NULL
# DEBUG BEGIN_STMT
# DEBUG status => 1
# DEBUG BEGIN_STMT
_4 = (int) hwInstance_13(D);
_5 = (int) hwChannel_14(D);
_6 = Emios_Ip_ChState[_4][_5].counterMode;
if (_6 == 80)
goto <bb 10>; [34.00%]
else
goto <bb 9>; [66.00%]
<bb 9> [local count: 17717]:
if (_6 == 84)
goto <bb 10>; [34.00%]
else
goto <bb 11>; [66.00%]
<bb 10> [local count: 15150]:
if (period_11(D) == 0)
goto <bb 12>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 11> [local count: 19268]:
# DEBUG BEGIN_STMT
_7 = emiosBase[_4];
_8 = (long unsigned int) period_11(D);
_7->CH.UC[_5].A ={v} _8;
# DEBUG BEGIN_STMT
# DEBUG status => 0
<bb 12> [local count: 26844]:
# status_9 = PHI <1(10), 0(11)>
# DEBUG status => status_9
# DEBUG BEGIN_STMT
return status_9;
}