ADM/GW/Debug_RAM/RTD/src/Flexio_Pwm_Ip.c.077i.pure-const
2024-08-08 10:00:15 +09:00

2603 lines
102 KiB
Plaintext

local analysis of Flexio_Pwm_Ip_PinOverrideNeeded.part.0
scanning: _2 = (int) channel_1(D);
scanning: _3 = Flexio_Pwm_Ip_aState[_2];
scanning: _4 = _3->polarity;
Indirect ref read is not const
scanning: if (_4 == 0)
scanning: Flexio_Pwm_Ip_ForceOuputLevel (instanceId_5(D), channel_1(D), 1);
scanning: Flexio_Pwm_Ip_ForceOuputLevel (instanceId_5(D), channel_1(D), 0);
scanning: return retStatus_6;
Function is locally pure.
local analysis of Flexio_Pwm_Ip_UpdateInterruptMode
scanning: _1 = (int) channel_40(D);
scanning: userCfg_42 = Flexio_Pwm_Ip_aState[_1];
scanning: _2 = userCfg_42->timerId;
Indirect ref read is not const
scanning: Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, _2);
scanning: _3 = userCfg_42->pinId;
Indirect ref read is not const
scanning: _56 = (int) _3;
scanning: _57 = 1 << _56;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINSTAT ={v} _57;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _4 = userCfg_42->timerId;
Indirect ref read is not const
scanning: _5 = (int) _4;
scanning: _6 = 1 << _5;
scanning: _7 = (signed char) _6;
scanning: _8 = ~_7;
scanning: timerIrqMask.2_9 ={v} timerIrqMask;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: timerIrqMask.3_10 = (signed char) timerIrqMask.2_9;
scanning: _11 = _8 & timerIrqMask.3_10;
scanning: _12 = (unsigned char) _11;
scanning: timerIrqMask ={v} _12;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: _13 = ~_57;
scanning: pinIrqMask.4_14 ={v} pinIrqMask;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: _15 = _13 & pinIrqMask.4_14;
scanning: pinIrqMask ={v} _15;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: _16 = 1 << _5;
scanning: _17 = (unsigned char) _16;
scanning: Flexio_Mcl_Ip_SetTimerInterrupt (1077035008B, _17, 0);
scanning: _18 = userCfg_42->pinId;
Indirect ref read is not const
scanning: vol.8_54 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINREN;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _55 = (int) _18;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINREN ={v} 0;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: vol.10_53 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINFEN;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINFEN ={v} 0;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: vol.12_52 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN ={v} 0;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: if (irqMode_47(D) == 1)
scanning: if (irqMode_47(D) == 3)
scanning: vol.8_58 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINREN;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _59 = 1 << _55;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINREN ={v} _59;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _19 = userCfg_42->callback.cbFunction;
Indirect ref read is not const
scanning: if (_19 != 0B)
scanning: vol.12_60 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN ={v} _59;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: pinIrqMask.5_20 ={v} pinIrqMask;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: _21 = pinIrqMask.5_20 | _59;
scanning: pinIrqMask ={v} _21;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: _22 = irqMode_47(D) + 254;
scanning: if (_22 <= 1)
scanning: vol.10_61 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINFEN;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _62 = 1 << _55;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINFEN ={v} _62;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _23 = userCfg_42->callback.cbFunction;
Indirect ref read is not const
scanning: if (_23 != 0B)
scanning: vol.12_63 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN ={v} _62;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: pinIrqMask.6_24 ={v} pinIrqMask;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: _25 = pinIrqMask.6_24 | _62;
scanning: pinIrqMask ={v} _25;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: if (irqMode_47(D) == 4)
scanning: _26 = userCfg_42->timerId;
Indirect ref read is not const
scanning: _27 = (int) _26;
scanning: _28 = 1 << _27;
scanning: _29 = (unsigned char) _28;
scanning: Flexio_Mcl_Ip_SetTimerInterrupt (1077035008B, _29, 1);
scanning: _30 = userCfg_42->timerId;
Indirect ref read is not const
scanning: _31 = (int) _30;
scanning: _32 = 1 << _31;
scanning: _33 = (unsigned char) _32;
scanning: timerIrqMask.7_34 ={v} timerIrqMask;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: _35 = _33 | timerIrqMask.7_34;
scanning: timerIrqMask ={v} _35;
Volatile stmt is not const/pure
Volatile operand is not const/pure
scanning: return 0;
local analysis of Flexio_Pwm_Ip_GetOutputState
scanning: _1 = (int) channel_4(D);
scanning: userCfg_6 = Flexio_Pwm_Ip_aState[_1];
scanning: _2 = userCfg_6->pinId;
Indirect ref read is not const
scanning: _7 ={v} MEM[(const struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PIN;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _8 = (int) _2;
scanning: _9 = _7 >> _8;
scanning: _10 = (_Bool) _9;
scanning: return _10;
local analysis of Flexio_Pwm_Ip_UpdatePeriodDuty
scanning: _1 = (int) channel_14(D);
scanning: userCfg_16 = Flexio_Pwm_Ip_aState[_1];
scanning: _2 = userCfg_16->pinId;
Indirect ref read is not const
scanning: _21 ={v} MEM[(const struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINOUTE;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _22 = (int) _2;
scanning: _23 = _21 >> _22;
scanning: _24 = (_Bool) _23;
scanning: if (_24 != 0)
scanning: _3 = userCfg_16->polarity;
Indirect ref read is not const
scanning: if (_3 == 0)
scanning: _28 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_1];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _29 = _28 & 4244635647;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_1] ={v} _29;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _25 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_1];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _26 = _25 & 4294967288;
scanning: _27 = _26 | 2;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_1] ={v} _27;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _33 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_1];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _34 = _33 & 4244635647;
scanning: _35 = _34 | 16777216;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_1] ={v} _35;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _30 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_1];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _31 = _30 & 4294967288;
scanning: _32 = _31 | 6;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_1] ={v} _32;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: Flexio_Pwm_Ip_ConfigurePinOverride (1077035008B, _2, 0);
scanning: _4 = Flexio_Pwm_Ip_PinOverrideNeeded (instanceId_13(D), channel_14(D), period_18(D), dutyCycle_19(D));
scanning: if (_4 != 0)
scanning: _5 = (unsigned char) dutyCycle_19(D);
scanning: _6 = _5 + 255;
scanning: _41 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_1];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _42 = _41 & 4294967040;
scanning: _43 = (long unsigned int) _6;
scanning: _44 = _42 | _43;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_1] ={v} _44;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _7 = (unsigned char) period_18(D);
scanning: _8 = _7 - _5;
scanning: _9 = _8 + 255;
scanning: _36 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_1];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _37 = _36 & 4294902015;
scanning: _38 = (long unsigned int) _9;
scanning: _39 = _38 << 8;
scanning: _40 = _37 | _39;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_1] ={v} _40;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: return 0;
local analysis of Flexio_Pwm_Ip_ForceOuputLevel
scanning: _1 = (int) channel_8(D);
scanning: userCfg_10 = Flexio_Pwm_Ip_aState[_1];
scanning: _2 = userCfg_10->pinId;
Indirect ref read is not const
scanning: Flexio_Pwm_Ip_SetPinLevel (1077035008B, _2, level_11(D));
scanning: _3 = userCfg_10->pinId;
Indirect ref read is not const
scanning: Flexio_Pwm_Ip_ConfigurePinOverride (1077035008B, _3, 1);
scanning: _4 = userCfg_10->timerId;
Indirect ref read is not const
scanning: Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, _4);
scanning: _5 = userCfg_10->pinId;
Indirect ref read is not const
scanning: _18 = (int) _5;
scanning: _19 = 1 << _18;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINSTAT ={v} _19;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _6 = userCfg_10->timerId;
Indirect ref read is not const
scanning: _15 = (int) _6;
scanning: _16 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_15];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _17 = _16 & 4294967288;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_15] ={v} _17;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: return 0;
local analysis of Flexio_Pwm_Ip_UpdateClockPrescaler
scanning: _1 = (int) channel_4(D);
scanning: userCfg_6 = Flexio_Pwm_Ip_aState[_1];
scanning: _2 = userCfg_6->timerId;
Indirect ref read is not const
scanning: Flexio_Pwm_Ip_SetTimerPrescaler (1077035008B, _2, prescaler_7(D));
scanning: return 0;
Function is locally pure.
local analysis of Flexio_Pwm_Ip_DeInitChannel
scanning: _1 = (int) channel_9(D);
scanning: userCfg_11 = Flexio_Pwm_Ip_aState[_1];
scanning: _2 = userCfg_11->timerId;
Indirect ref read is not const
scanning: _32 = (int) _2;
scanning: _33 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_32];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _34 = _33 & 4294967288;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_32] ={v} _34;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: retStatus_13 = Flexio_Pwm_Ip_UpdateInterruptMode (instanceId_8(D), channel_9(D), 0);
scanning: _3 = userCfg_11->timerId;
Indirect ref read is not const
scanning: _29 = (int) _3;
scanning: _30 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _31 = _30 & 4294967167;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29] ={v} _31;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _27 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _28 = _27 & 4294959359;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29] ={v} _28;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _25 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _26 = _25 & 4294770687;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29] ={v} _26;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _23 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_29];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _24 = _23 & 4244635647;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_29] ={v} _24;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _21 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_29];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _22 = _21 & 4287627263;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_29] ={v} _22;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _19 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_29];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _20 = _19 & 4294902015;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_29] ={v} _20;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _17 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_29];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _18 = _17 & 4294967040;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_29] ={v} _18;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _4 = userCfg_11->pinId;
Indirect ref read is not const
scanning: Flexio_Pwm_Ip_ConfigurePinOverride (1077035008B, _4, 0);
scanning: _5 = userCfg_11->pinId;
Indirect ref read is not const
scanning: Flexio_Pwm_Ip_SetPinLevel (1077035008B, _5, 0);
scanning: _6 = userCfg_11->timerId;
Indirect ref read is not const
scanning: _7 = (int) _6;
scanning: Flexio_Pwm_Ip_aState[_7] = 0B;
scanning: return retStatus_13;
local analysis of Flexio_Pwm_Ip_InitChannel
scanning: _1 = userCfg_25(D)->timerId;
Indirect ref read is not const
scanning: _2 = (int) _1;
scanning: Flexio_Pwm_Ip_aState[_2] = userCfg_25(D);
scanning: _32 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_2];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _33 = _32 & 4294967288;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_2] ={v} _33;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _3 = userCfg_25(D)->polarity;
Indirect ref read is not const
scanning: if (_3 == 0)
scanning: _34 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_2];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _35 = _34 & 4244635647;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_2] ={v} _35;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _36 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_2];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _37 = _36 & 4244635647;
scanning: _38 = _37 | 16777216;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_2] ={v} _38;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _4 = userCfg_25(D)->prescaler;
Indirect ref read is not const
scanning: Flexio_Pwm_Ip_SetTimerPrescaler (1077035008B, _1, _4);
scanning: _5 = userCfg_25(D)->timerId;
Indirect ref read is not const
scanning: _42 = (int) _5;
scanning: _43 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_42];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _44 = _43 & 4294770687;
scanning: _45 = _44 | 196608;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_42] ={v} _45;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _6 = userCfg_25(D)->pinId;
Indirect ref read is not const
scanning: Flexio_Pwm_Ip_SetTimerPin (1077035008B, _5, _6);
scanning: _7 = userCfg_25(D)->timerId;
Indirect ref read is not const
scanning: _39 = (int) _7;
scanning: _40 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_39];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _41 = _40 & 4294967167;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_39] ={v} _41;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: retStatus_30 = Flexio_Pwm_Ip_UpdateInterruptMode (instanceId_23(D), _7, 0);
scanning: _8 = userCfg_25(D)->timerId;
Indirect ref read is not const
scanning: _9 = userCfg_25(D)->period;
Indirect ref read is not const
scanning: _10 = userCfg_25(D)->dutyCycle;
Indirect ref read is not const
scanning: _11 = Flexio_Pwm_Ip_PinOverrideNeeded (instanceId_23(D), _8, _9, _10);
scanning: if (_11 != 0)
scanning: _12 = userCfg_25(D)->timerId;
Indirect ref read is not const
scanning: _13 = userCfg_25(D)->dutyCycle;
Indirect ref read is not const
scanning: _14 = (unsigned char) _13;
scanning: _15 = _14 + 255;
scanning: _51 = (int) _12;
scanning: _52 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_51];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _53 = _52 & 4294967040;
scanning: _54 = (long unsigned int) _15;
scanning: _55 = _53 | _54;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_51] ={v} _55;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _16 = userCfg_25(D)->period;
Indirect ref read is not const
scanning: _17 = (unsigned char) _16;
scanning: _18 = _17 - _14;
scanning: _19 = _18 + 255;
scanning: _46 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_51];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _47 = _46 & 4294902015;
scanning: _48 = (long unsigned int) _19;
scanning: _49 = _48 << 8;
scanning: _50 = _47 | _49;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_51] ={v} _50;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _20 = userCfg_25(D)->polarity;
Indirect ref read is not const
scanning: if (_20 == 0)
scanning: _56 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_51];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _57 = _56 & 4294967288;
scanning: _58 = _57 | 2;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_51] ={v} _58;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: _59 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_51];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _60 = _59 & 4294967288;
scanning: _61 = _60 | 6;
scanning: MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_51] ={v} _61;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: return retStatus_30;
local analysis of Flexio_Pwm_Ip_PinOverrideNeeded
scanning: if (dutyCycle_5(D) == 0)
scanning: if (period_6(D) == 0)
scanning: _1 = (int) channel_8(D);
scanning: _2 = Flexio_Pwm_Ip_aState[_1];
scanning: _3 = _2->polarity;
Indirect ref read is not const
scanning: if (_3 == 0)
scanning: Flexio_Pwm_Ip_ForceOuputLevel (instanceId_9(D), channel_8(D), 0);
scanning: Flexio_Pwm_Ip_ForceOuputLevel (instanceId_9(D), channel_8(D), 1);
scanning: if (dutyCycle_5(D) == period_6(D))
scanning: retStatus_12 = Flexio_Pwm_Ip_PinOverrideNeeded.part.0 (instanceId_9(D), channel_8(D));
scanning: return retStatus_4;
Function is locally pure.
local analysis of Flexio_Pwm_Ip_SetTimerPrescaler
scanning: _1 = (int) timer_8(D);
scanning: _2 ={v} base_10(D)->TIMCFG[_1];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _3 = _2 & 4287627263;
scanning: _4 = (long unsigned int) prescaler_11(D);
scanning: _5 = _4 << 20;
scanning: _6 = _5 & 7340032;
scanning: _7 = _3 | _6;
scanning: base_10(D)->TIMCFG[_1] ={v} _7;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: return;
local analysis of Flexio_Pwm_Ip_SetTimerPin
scanning: _1 = (int) timer_8(D);
scanning: _2 ={v} base_10(D)->TIMCTL[_1];
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _3 = _2 & 4294959359;
scanning: _4 = (long unsigned int) pin_11(D);
scanning: _5 = _4 << 8;
scanning: _6 = _5 & 7936;
scanning: _7 = _3 | _6;
scanning: base_10(D)->TIMCTL[_1] ={v} _7;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: return;
local analysis of Flexio_Pwm_Ip_ConfigurePinOverride
scanning: _1 ={v} base_10(D)->PINOUTE;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _2 = (int) pin_11(D);
scanning: _3 = 1 << _2;
scanning: _4 = ~_3;
scanning: _5 = _1 & _4;
scanning: if (enabled_12(D) != 0)
scanning: _6 = iftmp.0_8 << _2;
scanning: _7 = _5 | _6;
scanning: base_10(D)->PINOUTE ={v} _7;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: return;
local analysis of Flexio_Pwm_Ip_SetPinLevel
scanning: _1 ={v} base_10(D)->PINOUTD;
Volatile stmt is not const/pure
Indirect ref read is not const
scanning: _2 = (int) pin_11(D);
scanning: _3 = 1 << _2;
scanning: _4 = ~_3;
scanning: _5 = _1 & _4;
scanning: if (level_12(D) != 0)
scanning: _6 = iftmp.1_8 << _2;
scanning: _7 = _5 | _6;
scanning: base_10(D)->PINOUTD ={v} _7;
Volatile stmt is not const/pure
Indirect ref write is not const/pure
scanning: return;
callgraph:
Flexio_Pwm_Ip_SetPinLevel.constprop.0/66 (Flexio_Pwm_Ip_SetPinLevel.constprop) @05cc1620
Type: function definition analyzed
Visibility:
next sharing asm name: 62
Aux: @05934150
References:
Referring:
Function Flexio_Pwm_Ip_SetPinLevel.constprop/66 is inline copy in Flexio_Pwm_Ip_DeInitChannel/27
Clone of Flexio_Pwm_Ip_SetPinLevel.constprop.0/62
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/65 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05cc12a0
Type: function definition analyzed
Visibility:
next sharing asm name: 64
Aux: @059340d0
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/65 is inline copy in Flexio_Pwm_Ip_DeInitChannel/27
Clone of Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/64 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05c7f0e0
Type: function definition analyzed
Visibility:
next sharing asm name: 61
previous sharing asm name: 65
Aux: @05934110
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/64 is inline copy in Flexio_Pwm_Ip_ForceOuputLevel/29
Clone of Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_ForceOuputLevel/29 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/63 (Flexio_Pwm_Ip_SetTimerPrescaler.constprop) @05c8cb60
Type: function definition analyzed
Visibility:
next sharing asm name: 59
Aux: @05933f30
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPrescaler.constprop/63 is inline copy in Flexio_Pwm_Ip_UpdateClockPrescaler/28
Clone of Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/59
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_UpdateClockPrescaler/28 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetPinLevel.constprop.0/62 (Flexio_Pwm_Ip_SetPinLevel.constprop) @05c87d20
Type: function definition analyzed
Visibility:
previous sharing asm name: 66
Aux: @05933f10
References:
Referring:
Function Flexio_Pwm_Ip_SetPinLevel.constprop/62 is inline copy in Flexio_Pwm_Ip_ForceOuputLevel/29
Clone of Flexio_Pwm_Ip_SetPinLevel/8
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_ForceOuputLevel/29 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05c7f620
Type: function definition analyzed
Visibility:
previous sharing asm name: 64
Aux: @05934290
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/61 is inline copy in Flexio_Pwm_Ip_UpdatePeriodDuty/30
Clone of Flexio_Pwm_Ip_ConfigurePinOverride/9
Availability: local
Function flags: count:536870913 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_UpdatePeriodDuty/30 (inlined) (536870913 (estimated locally),0.50 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPin.constprop.0/60 (Flexio_Pwm_Ip_SetTimerPin.constprop) @05c8c460
Type: function definition analyzed
Visibility:
Aux: @059342b0
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPin.constprop/60 is inline copy in Flexio_Pwm_Ip_InitChannel/26
Clone of Flexio_Pwm_Ip_SetTimerPin/12
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/59 (Flexio_Pwm_Ip_SetTimerPrescaler.constprop) @05c8c7e0
Type: function definition analyzed
Visibility:
previous sharing asm name: 63
Aux: @05934170
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPrescaler.constprop/59 is inline copy in Flexio_Pwm_Ip_InitChannel/26
Clone of Flexio_Pwm_Ip_SetTimerPrescaler/16
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (Flexio_Pwm_Ip_PinOverrideNeeded.part.0) @05c7f380
Type: function definition analyzed
Visibility: prevailing_def_ironly artificial
Aux: @05934190
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Function Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 is inline copy in Flexio_Pwm_Ip_PinOverrideNeeded/25
Availability: local
Function flags: count:91268056 (estimated locally) first_run:1 body local split_part optimize_size
Called by: Flexio_Pwm_Ip_PinOverrideNeeded/25 (inlined) (91268056 (estimated locally),0.09 per call)
Calls: Flexio_Pwm_Ip_ForceOuputLevel/29 (45634028 (estimated locally),0.04 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (45634028 (estimated locally),0.04 per call)
Flexio_Mcl_Ip_SetTimerInterrupt/34 (Flexio_Mcl_Ip_SetTimerInterrupt) @05d37460
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Flexio_Pwm_Ip_UpdateInterruptMode/32 (217325345 (estimated locally),0.20 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741823 (estimated locally),1.00 per call)
Calls:
Flexio_Mcl_Ip_ClearTimerStatus/33 (Flexio_Mcl_Ip_ClearTimerStatus) @05e4fe00
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741823 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_UpdateInterruptMode/32 (Flexio_Pwm_Ip_UpdateInterruptMode) @05ce29a0
Type: function definition analyzed
Visibility: externally_visible public
Aux: @059341b0
References: Flexio_Pwm_Ip_aState/22 (read)timerIrqMask/23 (read)timerIrqMask/23 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)timerIrqMask/23 (read)timerIrqMask/23 (write)
Referring:
Availability: available
Function flags: count:1073741823 (estimated locally) body optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_InitChannel/26 (1073741824 (estimated locally),1.00 per call)
Calls: Flexio_Mcl_Ip_SetTimerInterrupt/34 (217325345 (estimated locally),0.20 per call) Flexio_Mcl_Ip_SetTimerInterrupt/34 (1073741823 (estimated locally),1.00 per call) Flexio_Mcl_Ip_ClearTimerStatus/33 (1073741823 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_GetOutputState/31 (Flexio_Pwm_Ip_GetOutputState) @05ce2460
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05934270
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_UpdatePeriodDuty/30 (Flexio_Pwm_Ip_UpdatePeriodDuty) @05ce2e00
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05933f50
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_PinOverrideNeeded/25 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/61 (inlined) (536870913 (estimated locally),0.50 per call)
Flexio_Pwm_Ip_ForceOuputLevel/29 (Flexio_Pwm_Ip_ForceOuputLevel) @05ce2b60
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05933fb0
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by: Flexio_Pwm_Ip_PinOverrideNeeded/25 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_PinOverrideNeeded/25 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (45634028 (estimated locally),0.04 per call) Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (45634028 (estimated locally),0.04 per call)
Calls: Flexio_Mcl_Ip_ClearTimerStatus/33 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/64 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetPinLevel.constprop/62 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_UpdateClockPrescaler/28 (Flexio_Pwm_Ip_UpdateClockPrescaler) @05ce28c0
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2ae8
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_SetTimerPrescaler.constprop/63 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_DeInitChannel/27 (Flexio_Pwm_Ip_DeInitChannel) @05ce2620
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2be8
References: Flexio_Pwm_Ip_aState/22 (read)Flexio_Pwm_Ip_aState/22 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_SetPinLevel.constprop/66 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/65 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_InitChannel/26 (Flexio_Pwm_Ip_InitChannel) @05ce2380
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2b48
References: Flexio_Pwm_Ip_aState/22 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_PinOverrideNeeded/25 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetTimerPin.constprop/60 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetTimerPrescaler.constprop/59 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_PinOverrideNeeded/25 (Flexio_Pwm_Ip_PinOverrideNeeded) @05ce20e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
Aux: @05fe2ba8
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: local
Function flags: count:1073741823 (estimated locally) body local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdatePeriodDuty/30 (1073741824 (estimated locally),1.00 per call)
Calls: Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (inlined) (91268056 (estimated locally),0.09 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (402653184 (estimated locally),0.38 per call)
Flexio_Pwm_Ip_SetTimerPrescaler/16 (Flexio_Pwm_Ip_SetTimerPrescaler) @05c8cee0
Type: function
Body removed by symtab_remove_unreachable_nodes
Visibility: prevailing_def_ironly
References:
Referring:
Availability: not_available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_SetTimerPin/12 (Flexio_Pwm_Ip_SetTimerPin) @05c8c0e0
Type: function
Body removed by symtab_remove_unreachable_nodes
Visibility: prevailing_def_ironly
References:
Referring:
Availability: not_available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride/9 (Flexio_Pwm_Ip_ConfigurePinOverride) @05c87700
Type: function
Body removed by symtab_remove_unreachable_nodes
Visibility: prevailing_def_ironly
References:
Referring:
Availability: not_available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_SetPinLevel/8 (Flexio_Pwm_Ip_SetPinLevel) @05c87460
Type: function
Body removed by symtab_remove_unreachable_nodes
Visibility: prevailing_def_ironly
References:
Referring:
Availability: not_available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
ordered call graph: reduced for nothrow
Flexio_Pwm_Ip_SetPinLevel.constprop.0/66 (Flexio_Pwm_Ip_SetPinLevel.constprop) @05cc1620
Type: function definition analyzed
Visibility:
next sharing asm name: 62
Aux: @05934150
References:
Referring:
Function Flexio_Pwm_Ip_SetPinLevel.constprop/66 is inline copy in Flexio_Pwm_Ip_DeInitChannel/27
Clone of Flexio_Pwm_Ip_SetPinLevel.constprop.0/62
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/65 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05cc12a0
Type: function definition analyzed
Visibility:
next sharing asm name: 64
Aux: @059340d0
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/65 is inline copy in Flexio_Pwm_Ip_DeInitChannel/27
Clone of Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/64 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05c7f0e0
Type: function definition analyzed
Visibility:
next sharing asm name: 61
previous sharing asm name: 65
Aux: @05934110
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/64 is inline copy in Flexio_Pwm_Ip_ForceOuputLevel/29
Clone of Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_ForceOuputLevel/29 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/63 (Flexio_Pwm_Ip_SetTimerPrescaler.constprop) @05c8cb60
Type: function definition analyzed
Visibility:
next sharing asm name: 59
Aux: @05933f30
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPrescaler.constprop/63 is inline copy in Flexio_Pwm_Ip_UpdateClockPrescaler/28
Clone of Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/59
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_UpdateClockPrescaler/28 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetPinLevel.constprop.0/62 (Flexio_Pwm_Ip_SetPinLevel.constprop) @05c87d20
Type: function definition analyzed
Visibility:
previous sharing asm name: 66
Aux: @05933f10
References:
Referring:
Function Flexio_Pwm_Ip_SetPinLevel.constprop/62 is inline copy in Flexio_Pwm_Ip_ForceOuputLevel/29
Clone of Flexio_Pwm_Ip_SetPinLevel/8
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_ForceOuputLevel/29 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05c7f620
Type: function definition analyzed
Visibility:
previous sharing asm name: 64
Aux: @05934290
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/61 is inline copy in Flexio_Pwm_Ip_UpdatePeriodDuty/30
Clone of Flexio_Pwm_Ip_ConfigurePinOverride/9
Availability: local
Function flags: count:536870913 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_UpdatePeriodDuty/30 (inlined) (536870913 (estimated locally),0.50 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPin.constprop.0/60 (Flexio_Pwm_Ip_SetTimerPin.constprop) @05c8c460
Type: function definition analyzed
Visibility:
Aux: @059342b0
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPin.constprop/60 is inline copy in Flexio_Pwm_Ip_InitChannel/26
Clone of Flexio_Pwm_Ip_SetTimerPin/12
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/59 (Flexio_Pwm_Ip_SetTimerPrescaler.constprop) @05c8c7e0
Type: function definition analyzed
Visibility:
previous sharing asm name: 63
Aux: @05934170
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPrescaler.constprop/59 is inline copy in Flexio_Pwm_Ip_InitChannel/26
Clone of Flexio_Pwm_Ip_SetTimerPrescaler/16
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (Flexio_Pwm_Ip_PinOverrideNeeded.part.0) @05c7f380
Type: function definition analyzed
Visibility: prevailing_def_ironly artificial
Aux: @05934190
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Function Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 is inline copy in Flexio_Pwm_Ip_PinOverrideNeeded/25
Availability: local
Function flags: count:91268056 (estimated locally) first_run:1 body local split_part optimize_size
Called by: Flexio_Pwm_Ip_PinOverrideNeeded/25 (inlined) (91268056 (estimated locally),0.09 per call)
Calls: Flexio_Pwm_Ip_ForceOuputLevel/29 (45634028 (estimated locally),0.04 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (45634028 (estimated locally),0.04 per call)
Flexio_Pwm_Ip_UpdateInterruptMode/32 (Flexio_Pwm_Ip_UpdateInterruptMode) @05ce29a0
Type: function definition analyzed
Visibility: externally_visible public
Aux: @059341b0
References: Flexio_Pwm_Ip_aState/22 (read)timerIrqMask/23 (read)timerIrqMask/23 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)timerIrqMask/23 (read)timerIrqMask/23 (write)
Referring:
Availability: available
Function flags: count:1073741823 (estimated locally) body optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_InitChannel/26 (1073741824 (estimated locally),1.00 per call)
Calls: Flexio_Mcl_Ip_SetTimerInterrupt/34 (217325345 (estimated locally),0.20 per call) Flexio_Mcl_Ip_SetTimerInterrupt/34 (1073741823 (estimated locally),1.00 per call) Flexio_Mcl_Ip_ClearTimerStatus/33 (1073741823 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_GetOutputState/31 (Flexio_Pwm_Ip_GetOutputState) @05ce2460
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05934270
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_UpdatePeriodDuty/30 (Flexio_Pwm_Ip_UpdatePeriodDuty) @05ce2e00
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05933f50
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_PinOverrideNeeded/25 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/61 (inlined) (536870913 (estimated locally),0.50 per call)
Flexio_Pwm_Ip_ForceOuputLevel/29 (Flexio_Pwm_Ip_ForceOuputLevel) @05ce2b60
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05933fb0
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by: Flexio_Pwm_Ip_PinOverrideNeeded/25 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_PinOverrideNeeded/25 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (45634028 (estimated locally),0.04 per call) Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (45634028 (estimated locally),0.04 per call)
Calls: Flexio_Mcl_Ip_ClearTimerStatus/33 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/64 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetPinLevel.constprop/62 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_UpdateClockPrescaler/28 (Flexio_Pwm_Ip_UpdateClockPrescaler) @05ce28c0
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2ae8
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_SetTimerPrescaler.constprop/63 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_DeInitChannel/27 (Flexio_Pwm_Ip_DeInitChannel) @05ce2620
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2be8
References: Flexio_Pwm_Ip_aState/22 (read)Flexio_Pwm_Ip_aState/22 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_SetPinLevel.constprop/66 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/65 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_InitChannel/26 (Flexio_Pwm_Ip_InitChannel) @05ce2380
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2b48
References: Flexio_Pwm_Ip_aState/22 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_PinOverrideNeeded/25 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetTimerPin.constprop/60 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetTimerPrescaler.constprop/59 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_PinOverrideNeeded/25 (Flexio_Pwm_Ip_PinOverrideNeeded) @05ce20e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
Aux: @05fe2ba8
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: local
Function flags: count:1073741823 (estimated locally) body local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdatePeriodDuty/30 (1073741824 (estimated locally),1.00 per call)
Calls: Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (inlined) (91268056 (estimated locally),0.09 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (402653184 (estimated locally),0.38 per call)
MALLOC LATTICE Initial:
Flexio_Pwm_Ip_SetPinLevel.constprop: malloc_bottom
Flexio_Pwm_Ip_ConfigurePinOverride.constprop: malloc_bottom
Flexio_Pwm_Ip_ConfigurePinOverride.constprop: malloc_bottom
Flexio_Pwm_Ip_SetTimerPrescaler.constprop: malloc_bottom
Flexio_Pwm_Ip_SetPinLevel.constprop: malloc_bottom
Flexio_Pwm_Ip_ConfigurePinOverride.constprop: malloc_bottom
Flexio_Pwm_Ip_SetTimerPin.constprop: malloc_bottom
Flexio_Pwm_Ip_SetTimerPrescaler.constprop: malloc_bottom
Flexio_Pwm_Ip_PinOverrideNeeded.part.0: malloc_bottom
Flexio_Pwm_Ip_UpdateInterruptMode: malloc_bottom
Flexio_Pwm_Ip_GetOutputState: malloc_bottom
Flexio_Pwm_Ip_UpdatePeriodDuty: malloc_bottom
Flexio_Pwm_Ip_ForceOuputLevel: malloc_bottom
Flexio_Pwm_Ip_UpdateClockPrescaler: malloc_bottom
Flexio_Pwm_Ip_DeInitChannel: malloc_bottom
Flexio_Pwm_Ip_InitChannel: malloc_bottom
Flexio_Pwm_Ip_PinOverrideNeeded: malloc_bottom
Flexio_Pwm_Ip_SetTimerPrescaler: malloc_bottom
Flexio_Pwm_Ip_SetTimerPin: malloc_bottom
Flexio_Pwm_Ip_ConfigurePinOverride: malloc_bottom
Flexio_Pwm_Ip_SetPinLevel: malloc_bottom
MALLOC LATTICE after propagation:
Flexio_Pwm_Ip_SetPinLevel.constprop: malloc_bottom
Flexio_Pwm_Ip_ConfigurePinOverride.constprop: malloc_bottom
Flexio_Pwm_Ip_ConfigurePinOverride.constprop: malloc_bottom
Flexio_Pwm_Ip_SetTimerPrescaler.constprop: malloc_bottom
Flexio_Pwm_Ip_SetPinLevel.constprop: malloc_bottom
Flexio_Pwm_Ip_ConfigurePinOverride.constprop: malloc_bottom
Flexio_Pwm_Ip_SetTimerPin.constprop: malloc_bottom
Flexio_Pwm_Ip_SetTimerPrescaler.constprop: malloc_bottom
Flexio_Pwm_Ip_PinOverrideNeeded.part.0: malloc_bottom
Flexio_Pwm_Ip_UpdateInterruptMode: malloc_bottom
Flexio_Pwm_Ip_GetOutputState: malloc_bottom
Flexio_Pwm_Ip_UpdatePeriodDuty: malloc_bottom
Flexio_Pwm_Ip_ForceOuputLevel: malloc_bottom
Flexio_Pwm_Ip_UpdateClockPrescaler: malloc_bottom
Flexio_Pwm_Ip_DeInitChannel: malloc_bottom
Flexio_Pwm_Ip_InitChannel: malloc_bottom
Flexio_Pwm_Ip_PinOverrideNeeded: malloc_bottom
Flexio_Pwm_Ip_SetTimerPrescaler: malloc_bottom
Flexio_Pwm_Ip_SetTimerPin: malloc_bottom
Flexio_Pwm_Ip_ConfigurePinOverride: malloc_bottom
Flexio_Pwm_Ip_SetPinLevel: malloc_bottom
callgraph:
Flexio_Pwm_Ip_SetPinLevel.constprop.0/66 (Flexio_Pwm_Ip_SetPinLevel.constprop) @05cc1620
Type: function definition analyzed
Visibility:
next sharing asm name: 62
Aux: @05fe2ac8
References:
Referring:
Function Flexio_Pwm_Ip_SetPinLevel.constprop/66 is inline copy in Flexio_Pwm_Ip_DeInitChannel/27
Clone of Flexio_Pwm_Ip_SetPinLevel.constprop.0/62
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/65 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05cc12a0
Type: function definition analyzed
Visibility:
next sharing asm name: 64
Aux: @05fe2b88
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/65 is inline copy in Flexio_Pwm_Ip_DeInitChannel/27
Clone of Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/64 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05c7f0e0
Type: function definition analyzed
Visibility:
next sharing asm name: 61
previous sharing asm name: 65
Aux: @05fe2c28
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/64 is inline copy in Flexio_Pwm_Ip_ForceOuputLevel/29
Clone of Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_ForceOuputLevel/29 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/63 (Flexio_Pwm_Ip_SetTimerPrescaler.constprop) @05c8cb60
Type: function definition analyzed
Visibility:
next sharing asm name: 59
Aux: @05fe2a88
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPrescaler.constprop/63 is inline copy in Flexio_Pwm_Ip_UpdateClockPrescaler/28
Clone of Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/59
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_UpdateClockPrescaler/28 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetPinLevel.constprop.0/62 (Flexio_Pwm_Ip_SetPinLevel.constprop) @05c87d20
Type: function definition analyzed
Visibility:
previous sharing asm name: 66
Aux: @05fe2be8
References:
Referring:
Function Flexio_Pwm_Ip_SetPinLevel.constprop/62 is inline copy in Flexio_Pwm_Ip_ForceOuputLevel/29
Clone of Flexio_Pwm_Ip_SetPinLevel/8
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_ForceOuputLevel/29 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05c7f620
Type: function definition analyzed
Visibility:
previous sharing asm name: 64
Aux: @05fe2908
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/61 is inline copy in Flexio_Pwm_Ip_UpdatePeriodDuty/30
Clone of Flexio_Pwm_Ip_ConfigurePinOverride/9
Availability: local
Function flags: count:536870913 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_UpdatePeriodDuty/30 (inlined) (536870913 (estimated locally),0.50 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPin.constprop.0/60 (Flexio_Pwm_Ip_SetTimerPin.constprop) @05c8c460
Type: function definition analyzed
Visibility:
Aux: @05fe2ba8
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPin.constprop/60 is inline copy in Flexio_Pwm_Ip_InitChannel/26
Clone of Flexio_Pwm_Ip_SetTimerPin/12
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/59 (Flexio_Pwm_Ip_SetTimerPrescaler.constprop) @05c8c7e0
Type: function definition analyzed
Visibility:
previous sharing asm name: 63
Aux: @05fe2b48
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPrescaler.constprop/59 is inline copy in Flexio_Pwm_Ip_InitChannel/26
Clone of Flexio_Pwm_Ip_SetTimerPrescaler/16
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (Flexio_Pwm_Ip_PinOverrideNeeded.part.0) @05c7f380
Type: function definition analyzed
Visibility: prevailing_def_ironly artificial
Aux: @05fe29a8
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Function Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 is inline copy in Flexio_Pwm_Ip_PinOverrideNeeded/25
Availability: local
Function flags: count:91268056 (estimated locally) first_run:1 body local split_part optimize_size
Called by: Flexio_Pwm_Ip_PinOverrideNeeded/25 (inlined) (91268056 (estimated locally),0.09 per call)
Calls: Flexio_Pwm_Ip_ForceOuputLevel/29 (45634028 (estimated locally),0.04 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (45634028 (estimated locally),0.04 per call)
Flexio_Mcl_Ip_SetTimerInterrupt/34 (Flexio_Mcl_Ip_SetTimerInterrupt) @05d37460
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Flexio_Pwm_Ip_UpdateInterruptMode/32 (217325345 (estimated locally),0.20 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741823 (estimated locally),1.00 per call)
Calls:
Flexio_Mcl_Ip_ClearTimerStatus/33 (Flexio_Mcl_Ip_ClearTimerStatus) @05e4fe00
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741823 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_UpdateInterruptMode/32 (Flexio_Pwm_Ip_UpdateInterruptMode) @05ce29a0
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2c08
References: Flexio_Pwm_Ip_aState/22 (read)timerIrqMask/23 (read)timerIrqMask/23 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)timerIrqMask/23 (read)timerIrqMask/23 (write)
Referring:
Availability: available
Function flags: count:1073741823 (estimated locally) body optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_InitChannel/26 (1073741824 (estimated locally),1.00 per call)
Calls: Flexio_Mcl_Ip_SetTimerInterrupt/34 (217325345 (estimated locally),0.20 per call) Flexio_Mcl_Ip_SetTimerInterrupt/34 (1073741823 (estimated locally),1.00 per call) Flexio_Mcl_Ip_ClearTimerStatus/33 (1073741823 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_GetOutputState/31 (Flexio_Pwm_Ip_GetOutputState) @05ce2460
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2c68
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_UpdatePeriodDuty/30 (Flexio_Pwm_Ip_UpdatePeriodDuty) @05ce2e00
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe28e8
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_PinOverrideNeeded/25 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/61 (inlined) (536870913 (estimated locally),0.50 per call)
Flexio_Pwm_Ip_ForceOuputLevel/29 (Flexio_Pwm_Ip_ForceOuputLevel) @05ce2b60
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2a28
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by: Flexio_Pwm_Ip_PinOverrideNeeded/25 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_PinOverrideNeeded/25 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (45634028 (estimated locally),0.04 per call) Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (45634028 (estimated locally),0.04 per call)
Calls: Flexio_Mcl_Ip_ClearTimerStatus/33 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/64 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetPinLevel.constprop/62 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_UpdateClockPrescaler/28 (Flexio_Pwm_Ip_UpdateClockPrescaler) @05ce28c0
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2928
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_SetTimerPrescaler.constprop/63 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_DeInitChannel/27 (Flexio_Pwm_Ip_DeInitChannel) @05ce2620
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2948
References: Flexio_Pwm_Ip_aState/22 (read)Flexio_Pwm_Ip_aState/22 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_SetPinLevel.constprop/66 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/65 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_InitChannel/26 (Flexio_Pwm_Ip_InitChannel) @05ce2380
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2ae8
References: Flexio_Pwm_Ip_aState/22 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_PinOverrideNeeded/25 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetTimerPin.constprop/60 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetTimerPrescaler.constprop/59 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_PinOverrideNeeded/25 (Flexio_Pwm_Ip_PinOverrideNeeded) @05ce20e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
Aux: @05fe2968
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: local
Function flags: count:1073741823 (estimated locally) body local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdatePeriodDuty/30 (1073741824 (estimated locally),1.00 per call)
Calls: Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (inlined) (91268056 (estimated locally),0.09 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (402653184 (estimated locally),0.38 per call)
Flexio_Pwm_Ip_SetTimerPrescaler/16 (Flexio_Pwm_Ip_SetTimerPrescaler) @05c8cee0
Type: function
Body removed by symtab_remove_unreachable_nodes
Visibility: prevailing_def_ironly
References:
Referring:
Availability: not_available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_SetTimerPin/12 (Flexio_Pwm_Ip_SetTimerPin) @05c8c0e0
Type: function
Body removed by symtab_remove_unreachable_nodes
Visibility: prevailing_def_ironly
References:
Referring:
Availability: not_available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride/9 (Flexio_Pwm_Ip_ConfigurePinOverride) @05c87700
Type: function
Body removed by symtab_remove_unreachable_nodes
Visibility: prevailing_def_ironly
References:
Referring:
Availability: not_available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_SetPinLevel/8 (Flexio_Pwm_Ip_SetPinLevel) @05c87460
Type: function
Body removed by symtab_remove_unreachable_nodes
Visibility: prevailing_def_ironly
References:
Referring:
Availability: not_available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
ordered call graph: reduced
Flexio_Pwm_Ip_GetOutputState/31 (Flexio_Pwm_Ip_GetOutputState) @05ce2460
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2c68
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Flexio_Pwm_Ip_UpdatePeriodDuty/30 (Flexio_Pwm_Ip_UpdatePeriodDuty) @05ce2e00
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe28e8
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_PinOverrideNeeded/25 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/61 (inlined) (536870913 (estimated locally),0.50 per call)
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05c7f620
Type: function definition analyzed
Visibility:
previous sharing asm name: 64
Aux: @05fe2908
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/61 is inline copy in Flexio_Pwm_Ip_UpdatePeriodDuty/30
Clone of Flexio_Pwm_Ip_ConfigurePinOverride/9
Availability: local
Function flags: count:536870913 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_UpdatePeriodDuty/30 (inlined) (536870913 (estimated locally),0.50 per call)
Calls:
Flexio_Pwm_Ip_UpdateClockPrescaler/28 (Flexio_Pwm_Ip_UpdateClockPrescaler) @05ce28c0
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2928
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_SetTimerPrescaler.constprop/63 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/63 (Flexio_Pwm_Ip_SetTimerPrescaler.constprop) @05c8cb60
Type: function definition analyzed
Visibility:
next sharing asm name: 59
Aux: @05fe2a88
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPrescaler.constprop/63 is inline copy in Flexio_Pwm_Ip_UpdateClockPrescaler/28
Clone of Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/59
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_UpdateClockPrescaler/28 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_DeInitChannel/27 (Flexio_Pwm_Ip_DeInitChannel) @05ce2620
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2948
References: Flexio_Pwm_Ip_aState/22 (read)Flexio_Pwm_Ip_aState/22 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_SetPinLevel.constprop/66 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/65 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/65 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05cc12a0
Type: function definition analyzed
Visibility:
next sharing asm name: 64
Aux: @05fe2b88
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/65 is inline copy in Flexio_Pwm_Ip_DeInitChannel/27
Clone of Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetPinLevel.constprop.0/66 (Flexio_Pwm_Ip_SetPinLevel.constprop) @05cc1620
Type: function definition analyzed
Visibility:
next sharing asm name: 62
Aux: @05fe2ac8
References:
Referring:
Function Flexio_Pwm_Ip_SetPinLevel.constprop/66 is inline copy in Flexio_Pwm_Ip_DeInitChannel/27
Clone of Flexio_Pwm_Ip_SetPinLevel.constprop.0/62
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_InitChannel/26 (Flexio_Pwm_Ip_InitChannel) @05ce2380
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2ae8
References: Flexio_Pwm_Ip_aState/22 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_PinOverrideNeeded/25 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdateInterruptMode/32 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetTimerPin.constprop/60 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetTimerPrescaler.constprop/59 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_SetTimerPrescaler.constprop.0/59 (Flexio_Pwm_Ip_SetTimerPrescaler.constprop) @05c8c7e0
Type: function definition analyzed
Visibility:
previous sharing asm name: 63
Aux: @05fe2b48
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPrescaler.constprop/59 is inline copy in Flexio_Pwm_Ip_InitChannel/26
Clone of Flexio_Pwm_Ip_SetTimerPrescaler/16
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_SetTimerPin.constprop.0/60 (Flexio_Pwm_Ip_SetTimerPin.constprop) @05c8c460
Type: function definition analyzed
Visibility:
Aux: @05fe2ba8
References:
Referring:
Function Flexio_Pwm_Ip_SetTimerPin.constprop/60 is inline copy in Flexio_Pwm_Ip_InitChannel/26
Clone of Flexio_Pwm_Ip_SetTimerPin/12
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_UpdateInterruptMode/32 (Flexio_Pwm_Ip_UpdateInterruptMode) @05ce29a0
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2c08
References: Flexio_Pwm_Ip_aState/22 (read)timerIrqMask/23 (read)timerIrqMask/23 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)pinIrqMask/24 (read)pinIrqMask/24 (write)timerIrqMask/23 (read)timerIrqMask/23 (write)
Referring:
Availability: available
Function flags: count:1073741823 (estimated locally) body optimize_size
Called by: Flexio_Pwm_Ip_DeInitChannel/27 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_InitChannel/26 (1073741824 (estimated locally),1.00 per call)
Calls: Flexio_Mcl_Ip_SetTimerInterrupt/34 (217325345 (estimated locally),0.20 per call) Flexio_Mcl_Ip_SetTimerInterrupt/34 (1073741823 (estimated locally),1.00 per call) Flexio_Mcl_Ip_ClearTimerStatus/33 (1073741823 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_PinOverrideNeeded/25 (Flexio_Pwm_Ip_PinOverrideNeeded) @05ce20e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
Aux: @05fe2968
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: local
Function flags: count:1073741823 (estimated locally) body local optimize_size
Called by: Flexio_Pwm_Ip_InitChannel/26 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_UpdatePeriodDuty/30 (1073741824 (estimated locally),1.00 per call)
Calls: Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (inlined) (91268056 (estimated locally),0.09 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (402653184 (estimated locally),0.38 per call)
Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (Flexio_Pwm_Ip_PinOverrideNeeded.part.0) @05c7f380
Type: function definition analyzed
Visibility: prevailing_def_ironly artificial
Aux: @05fe29a8
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Function Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 is inline copy in Flexio_Pwm_Ip_PinOverrideNeeded/25
Availability: local
Function flags: count:91268056 (estimated locally) first_run:1 body local split_part optimize_size
Called by: Flexio_Pwm_Ip_PinOverrideNeeded/25 (inlined) (91268056 (estimated locally),0.09 per call)
Calls: Flexio_Pwm_Ip_ForceOuputLevel/29 (45634028 (estimated locally),0.04 per call) Flexio_Pwm_Ip_ForceOuputLevel/29 (45634028 (estimated locally),0.04 per call)
Flexio_Pwm_Ip_ForceOuputLevel/29 (Flexio_Pwm_Ip_ForceOuputLevel) @05ce2b60
Type: function definition analyzed
Visibility: externally_visible public
Aux: @05fe2a28
References: Flexio_Pwm_Ip_aState/22 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by: Flexio_Pwm_Ip_PinOverrideNeeded/25 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_PinOverrideNeeded/25 (402653184 (estimated locally),0.38 per call) Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (45634028 (estimated locally),0.04 per call) Flexio_Pwm_Ip_PinOverrideNeeded.part.0/37 (45634028 (estimated locally),0.04 per call)
Calls: Flexio_Mcl_Ip_ClearTimerStatus/33 (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_ConfigurePinOverride.constprop/64 (inlined) (1073741824 (estimated locally),1.00 per call) Flexio_Pwm_Ip_SetPinLevel.constprop/62 (inlined) (1073741824 (estimated locally),1.00 per call)
Flexio_Pwm_Ip_SetPinLevel.constprop.0/62 (Flexio_Pwm_Ip_SetPinLevel.constprop) @05c87d20
Type: function definition analyzed
Visibility:
previous sharing asm name: 66
Aux: @05fe2be8
References:
Referring:
Function Flexio_Pwm_Ip_SetPinLevel.constprop/62 is inline copy in Flexio_Pwm_Ip_ForceOuputLevel/29
Clone of Flexio_Pwm_Ip_SetPinLevel/8
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_ForceOuputLevel/29 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/64 (Flexio_Pwm_Ip_ConfigurePinOverride.constprop) @05c7f0e0
Type: function definition analyzed
Visibility:
next sharing asm name: 61
previous sharing asm name: 65
Aux: @05fe2c28
References:
Referring:
Function Flexio_Pwm_Ip_ConfigurePinOverride.constprop/64 is inline copy in Flexio_Pwm_Ip_ForceOuputLevel/29
Clone of Flexio_Pwm_Ip_ConfigurePinOverride.constprop.0/61
Availability: local
Function flags: count:1073741824 (estimated locally) local optimize_size
Called by: Flexio_Pwm_Ip_ForceOuputLevel/29 (inlined) (1073741824 (estimated locally),1.00 per call)
Calls:
Function found not to call free: Flexio_Pwm_Ip_ConfigurePinOverride.constprop
Function found not to call free: Flexio_Pwm_Ip_SetPinLevel.constprop
Function found not to call free: Flexio_Pwm_Ip_SetTimerPin.constprop
Function found not to call free: Flexio_Pwm_Ip_SetTimerPrescaler.constprop
Function found not to call free: Flexio_Pwm_Ip_SetPinLevel.constprop
Function found not to call free: Flexio_Pwm_Ip_ConfigurePinOverride.constprop
Function found not to call free: Flexio_Pwm_Ip_SetTimerPrescaler.constprop
Function found not to call free: Flexio_Pwm_Ip_UpdateClockPrescaler
Function found not to call free: Flexio_Pwm_Ip_ConfigurePinOverride.constprop
Function found not to call free: Flexio_Pwm_Ip_GetOutputState
Flexio_Pwm_Ip_PinOverrideNeeded.part.0 (uint8 instanceId, uint8 channel)
{
boolean retStatus;
Flexio_Pwm_Ip_StatusType status;
uint16 period;
uint16 dutyCycle;
int _2;
const struct Flexio_Pwm_Ip_ChannelConfigType * _3;
<unnamed type> _4;
<bb 6> [local count: 1073741824]:
# DEBUG D#4 s=> period
# DEBUG period => D#4
# DEBUG D#3 s=> dutyCycle
# DEBUG dutyCycle => D#3
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_2 = (int) channel_1(D);
_3 = Flexio_Pwm_Ip_aState[_2];
_4 = _3->polarity;
if (_4 == 0)
goto <bb 3>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
Flexio_Pwm_Ip_ForceOuputLevel (instanceId_5(D), channel_1(D), 1);
# DEBUG status => NULL
goto <bb 5>; [100.00%]
<bb 4> [local count: 536870913]:
# DEBUG BEGIN_STMT
Flexio_Pwm_Ip_ForceOuputLevel (instanceId_5(D), channel_1(D), 0);
# DEBUG status => NULL
<bb 5> [local count: 1073741824]:
# retStatus_6 = PHI <1(3), 1(4)>
# DEBUG retStatus => retStatus_6
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
return retStatus_6;
}
Flexio_Pwm_Ip_UpdateInterruptMode (uint8 instanceId, uint8 channel, Flexio_Pwm_Ip_InterruptType irqMode)
{
const struct Flexio_Pwm_Ip_ChannelConfigType * const userCfg;
int _1;
unsigned char _2;
unsigned char _3;
unsigned char _4;
int _5;
int _6;
signed char _7;
signed char _8;
unsigned char timerIrqMask.2_9;
signed char timerIrqMask.3_10;
signed char _11;
unsigned char _12;
long unsigned int _13;
long unsigned int pinIrqMask.4_14;
long unsigned int _15;
unsigned int _16;
unsigned char _17;
unsigned char _18;
void (*<T2e9>) (Flexio_Pwm_Ip_OccurredIRQType, void *) _19;
long unsigned int pinIrqMask.5_20;
long unsigned int _21;
unsigned char _22;
void (*<T2e9>) (Flexio_Pwm_Ip_OccurredIRQType, void *) _23;
long unsigned int pinIrqMask.6_24;
long unsigned int _25;
unsigned char _26;
int _27;
unsigned int _28;
unsigned char _29;
unsigned char _30;
int _31;
int _32;
unsigned char _33;
unsigned char timerIrqMask.7_34;
unsigned char _35;
long unsigned int vol.12_52;
long unsigned int vol.10_53;
long unsigned int vol.8_54;
int _55;
int _56;
long unsigned int _57;
long unsigned int vol.8_58;
long unsigned int _59;
long unsigned int vol.12_60;
long unsigned int vol.10_61;
long unsigned int _62;
long unsigned int vol.12_63;
<bb 2> [local count: 1073741823]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG BEGIN_STMT
_1 = (int) channel_40(D);
userCfg_42 = Flexio_Pwm_Ip_aState[_1];
# DEBUG userCfg => userCfg_42
# DEBUG BEGIN_STMT
# DEBUG retStatus => 0
# DEBUG BEGIN_STMT
_2 = userCfg_42->timerId;
Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, _2);
# DEBUG BEGIN_STMT
_3 = userCfg_42->pinId;
# DEBUG base => 1077035008B
# DEBUG pin => _3
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ClearPinFlag
# DEBUG BEGIN_STMT
_56 = (int) _3;
_57 = 1 << _56;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINSTAT ={v} _57;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG BEGIN_STMT
_4 = userCfg_42->timerId;
_5 = (int) _4;
_6 = 1 << _5;
_7 = (signed char) _6;
_8 = ~_7;
timerIrqMask.2_9 ={v} timerIrqMask;
timerIrqMask.3_10 = (signed char) timerIrqMask.2_9;
_11 = _8 & timerIrqMask.3_10;
_12 = (unsigned char) _11;
timerIrqMask ={v} _12;
# DEBUG BEGIN_STMT
_13 = ~_57;
pinIrqMask.4_14 ={v} pinIrqMask;
_15 = _13 & pinIrqMask.4_14;
pinIrqMask ={v} _15;
# DEBUG BEGIN_STMT
_16 = 1 << _5;
_17 = (unsigned char) _16;
Flexio_Mcl_Ip_SetTimerInterrupt (1077035008B, _17, 0);
# DEBUG BEGIN_STMT
_18 = userCfg_42->pinId;
# DEBUG base => 1077035008B
# DEBUG pin => _18
# DEBUG enabled => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ConfigurePinRisingEdge
# DEBUG BEGIN_STMT
vol.8_54 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINREN;
_55 = (int) _18;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINREN ={v} 0;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG enabled => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG pin => _18
# DEBUG enabled => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ConfigurePinFallingEdge
# DEBUG BEGIN_STMT
vol.10_53 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINFEN;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINFEN ={v} 0;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG enabled => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG pin => _18
# DEBUG enabled => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ConfigurePinIrq
# DEBUG BEGIN_STMT
vol.12_52 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN ={v} 0;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG enabled => NULL
# DEBUG BEGIN_STMT
if (irqMode_47(D) == 1)
goto <bb 4>; [34.00%]
else
goto <bb 3>; [66.00%]
<bb 3> [local count: 708669604]:
if (irqMode_47(D) == 3)
goto <bb 4>; [34.00%]
else
goto <bb 6>; [66.00%]
<bb 4> [local count: 606019886]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG pin => _18
# DEBUG enabled => 1
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ConfigurePinRisingEdge
# DEBUG BEGIN_STMT
vol.8_58 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINREN;
_59 = 1 << _55;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINREN ={v} _59;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG enabled => NULL
# DEBUG BEGIN_STMT
_19 = userCfg_42->callback.cbFunction;
if (_19 != 0B)
goto <bb 5>; [70.00%]
else
goto <bb 6>; [30.00%]
<bb 5> [local count: 424213919]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG pin => _18
# DEBUG enabled => 1
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ConfigurePinIrq
# DEBUG BEGIN_STMT
vol.12_60 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN ={v} _59;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG enabled => NULL
# DEBUG BEGIN_STMT
pinIrqMask.5_20 ={v} pinIrqMask;
_21 = pinIrqMask.5_20 | _59;
pinIrqMask ={v} _21;
<bb 6> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_22 = irqMode_47(D) + 254;
if (_22 <= 1)
goto <bb 7>; [41.00%]
else
goto <bb 9>; [59.00%]
<bb 7> [local count: 440234148]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG pin => _18
# DEBUG enabled => 1
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ConfigurePinFallingEdge
# DEBUG BEGIN_STMT
vol.10_61 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINFEN;
_62 = 1 << _55;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINFEN ={v} _62;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG enabled => NULL
# DEBUG BEGIN_STMT
_23 = userCfg_42->callback.cbFunction;
if (_23 != 0B)
goto <bb 8>; [70.00%]
else
goto <bb 9>; [30.00%]
<bb 8> [local count: 308163904]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG pin => _18
# DEBUG enabled => 1
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ConfigurePinIrq
# DEBUG BEGIN_STMT
vol.12_63 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINIEN ={v} _62;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG enabled => NULL
# DEBUG BEGIN_STMT
pinIrqMask.6_24 ={v} pinIrqMask;
_25 = pinIrqMask.6_24 | _62;
pinIrqMask ={v} _25;
<bb 9> [local count: 1073741824]:
# DEBUG BEGIN_STMT
if (irqMode_47(D) == 4)
goto <bb 10>; [20.24%]
else
goto <bb 11>; [79.76%]
<bb 10> [local count: 217325345]:
# DEBUG BEGIN_STMT
_26 = userCfg_42->timerId;
_27 = (int) _26;
_28 = 1 << _27;
_29 = (unsigned char) _28;
Flexio_Mcl_Ip_SetTimerInterrupt (1077035008B, _29, 1);
# DEBUG BEGIN_STMT
_30 = userCfg_42->timerId;
_31 = (int) _30;
_32 = 1 << _31;
_33 = (unsigned char) _32;
timerIrqMask.7_34 ={v} timerIrqMask;
_35 = _33 | timerIrqMask.7_34;
timerIrqMask ={v} _35;
<bb 11> [local count: 1073741824]:
# DEBUG BEGIN_STMT
return 0;
}
Flexio_Pwm_Ip_GetOutputState (uint8 instanceId, uint8 channel)
{
const struct Flexio_Pwm_Ip_ChannelConfigType * const userCfg;
int _1;
unsigned char _2;
long unsigned int _7;
int _8;
long unsigned int _9;
_Bool _10;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG BEGIN_STMT
_1 = (int) channel_4(D);
userCfg_6 = Flexio_Pwm_Ip_aState[_1];
# DEBUG userCfg => userCfg_6
# DEBUG BEGIN_STMT
_2 = userCfg_6->pinId;
# DEBUG base => 1077035008B
# DEBUG pin => _2
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_GetPinState
# DEBUG BEGIN_STMT
_7 ={v} MEM[(const struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PIN;
_8 = (int) _2;
_9 = _7 >> _8;
_10 = (_Bool) _9;
# DEBUG base => NULL
# DEBUG pin => NULL
return _10;
}
Flexio_Pwm_Ip_UpdatePeriodDuty (uint8 instanceId, uint8 channel, uint16 period, uint16 dutyCycle)
{
const struct Flexio_Pwm_Ip_ChannelConfigType * const userCfg;
int _1;
unsigned char _2;
<unnamed type> _3;
_Bool _4;
unsigned char _5;
unsigned char _6;
unsigned char _7;
unsigned char _8;
unsigned char _9;
long unsigned int _21;
int _22;
long unsigned int _23;
_Bool _24;
long unsigned int _25;
long unsigned int _26;
long unsigned int _27;
long unsigned int _28;
long unsigned int _29;
long unsigned int _30;
long unsigned int _31;
long unsigned int _32;
long unsigned int _33;
long unsigned int _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;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG BEGIN_STMT
_1 = (int) channel_14(D);
userCfg_16 = Flexio_Pwm_Ip_aState[_1];
# DEBUG userCfg => userCfg_16
# DEBUG BEGIN_STMT
# DEBUG retStatus => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_2 = userCfg_16->pinId;
# DEBUG base => 1077035008B
# DEBUG pin => _2
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_GetPinOverride
# DEBUG BEGIN_STMT
_21 ={v} MEM[(const struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINOUTE;
_22 = (int) _2;
_23 = _21 >> _22;
_24 = (_Bool) _23;
# DEBUG base => NULL
# DEBUG pin => NULL
if (_24 != 0)
goto <bb 3>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
_3 = userCfg_16->polarity;
if (_3 == 0)
goto <bb 4>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 4> [local count: 268435456]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => channel_14(D)
# DEBUG timerInitOut => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerInitMode
# DEBUG BEGIN_STMT
_28 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_1];
_29 = _28 & 4244635647;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_1] ={v} _29;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerInitOut => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => channel_14(D)
# DEBUG timerMode => 2
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerMode
# DEBUG BEGIN_STMT
_25 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_1];
_26 = _25 & 4294967288;
_27 = _26 | 2;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_1] ={v} _27;
goto <bb 6>; [100.00%]
<bb 5> [local count: 268435456]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => channel_14(D)
# DEBUG timerInitOut => 1
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerInitMode
# DEBUG BEGIN_STMT
_33 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_1];
_34 = _33 & 4244635647;
_35 = _34 | 16777216;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_1] ={v} _35;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerInitOut => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => channel_14(D)
# DEBUG timerMode => 6
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerMode
# DEBUG BEGIN_STMT
_30 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_1];
_31 = _30 & 4294967288;
_32 = _31 | 6;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_1] ={v} _32;
<bb 6> [local count: 536870913]:
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerMode => NULL
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerMode => NULL
# DEBUG BEGIN_STMT
Flexio_Pwm_Ip_ConfigurePinOverride (1077035008B, _2, 0);
<bb 7> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_4 = Flexio_Pwm_Ip_PinOverrideNeeded (instanceId_13(D), channel_14(D), period_18(D), dutyCycle_19(D));
if (_4 != 0)
goto <bb 9>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 8> [local count: 536870913]:
# DEBUG BEGIN_STMT
_5 = (unsigned char) dutyCycle_19(D);
_6 = _5 + 255;
# DEBUG base => 1077035008B
# DEBUG timer => channel_14(D)
# DEBUG value => _6
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetLowerValue
# DEBUG BEGIN_STMT
_41 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_1];
_42 = _41 & 4294967040;
_43 = (long unsigned int) _6;
_44 = _42 | _43;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_1] ={v} _44;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG value => NULL
# DEBUG BEGIN_STMT
_7 = (unsigned char) period_18(D);
_8 = _7 - _5;
_9 = _8 + 255;
# DEBUG base => 1077035008B
# DEBUG timer => channel_14(D)
# DEBUG value => _9
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetUpperValue
# DEBUG BEGIN_STMT
_36 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_1];
_37 = _36 & 4294902015;
_38 = (long unsigned int) _9;
_39 = _38 << 8;
_40 = _37 | _39;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_1] ={v} _40;
<bb 9> [local count: 1073741824]:
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG value => NULL
# DEBUG BEGIN_STMT
return 0;
}
Flexio_Pwm_Ip_ForceOuputLevel (uint8 instanceId, uint8 channel, boolean level)
{
const struct Flexio_Pwm_Ip_ChannelConfigType * const userCfg;
int _1;
unsigned char _2;
unsigned char _3;
unsigned char _4;
unsigned char _5;
unsigned char _6;
int _15;
long unsigned int _16;
long unsigned int _17;
int _18;
long unsigned int _19;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG BEGIN_STMT
_1 = (int) channel_8(D);
userCfg_10 = Flexio_Pwm_Ip_aState[_1];
# DEBUG userCfg => userCfg_10
# DEBUG BEGIN_STMT
# DEBUG retStatus => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_2 = userCfg_10->pinId;
Flexio_Pwm_Ip_SetPinLevel (1077035008B, _2, level_11(D));
# DEBUG BEGIN_STMT
_3 = userCfg_10->pinId;
Flexio_Pwm_Ip_ConfigurePinOverride (1077035008B, _3, 1);
# DEBUG BEGIN_STMT
_4 = userCfg_10->timerId;
Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, _4);
# DEBUG BEGIN_STMT
_5 = userCfg_10->pinId;
# DEBUG base => 1077035008B
# DEBUG pin => _5
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_ClearPinFlag
# DEBUG BEGIN_STMT
_18 = (int) _5;
_19 = 1 << _18;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].PINSTAT ={v} _19;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG BEGIN_STMT
_6 = userCfg_10->timerId;
# DEBUG base => 1077035008B
# DEBUG timer => _6
# DEBUG timerMode => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerMode
# DEBUG BEGIN_STMT
_15 = (int) _6;
_16 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_15];
_17 = _16 & 4294967288;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_15] ={v} _17;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerMode => NULL
# DEBUG BEGIN_STMT
return 0;
}
Flexio_Pwm_Ip_UpdateClockPrescaler (uint8 instanceId, uint8 channel, Flexio_Pwm_Ip_ClockPrescalerType prescaler)
{
const struct Flexio_Pwm_Ip_ChannelConfigType * const userCfg;
int _1;
unsigned char _2;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG BEGIN_STMT
_1 = (int) channel_4(D);
userCfg_6 = Flexio_Pwm_Ip_aState[_1];
# DEBUG userCfg => userCfg_6
# DEBUG BEGIN_STMT
# DEBUG retStatus => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_2 = userCfg_6->timerId;
Flexio_Pwm_Ip_SetTimerPrescaler (1077035008B, _2, prescaler_7(D));
# DEBUG BEGIN_STMT
return 0;
}
Flexio_Pwm_Ip_DeInitChannel (uint8 instanceId, uint8 channel)
{
Flexio_Pwm_Ip_StatusType retStatus;
const struct Flexio_Pwm_Ip_ChannelConfigType * const userCfg;
int _1;
unsigned char _2;
unsigned char _3;
unsigned char _4;
unsigned char _5;
unsigned char _6;
int _7;
long unsigned int _17;
long unsigned int _18;
long unsigned int _19;
long unsigned int _20;
long unsigned int _21;
long unsigned int _22;
long unsigned int _23;
long unsigned int _24;
long unsigned int _25;
long unsigned int _26;
long unsigned int _27;
long unsigned int _28;
int _29;
long unsigned int _30;
long unsigned int _31;
int _32;
long unsigned int _33;
long unsigned int _34;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG BEGIN_STMT
_1 = (int) channel_9(D);
userCfg_11 = Flexio_Pwm_Ip_aState[_1];
# DEBUG userCfg => userCfg_11
# DEBUG BEGIN_STMT
# DEBUG retStatus => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_2 = userCfg_11->timerId;
# DEBUG base => 1077035008B
# DEBUG timer => _2
# DEBUG timerMode => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerMode
# DEBUG BEGIN_STMT
_32 = (int) _2;
_33 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_32];
_34 = _33 & 4294967288;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_32] ={v} _34;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerMode => NULL
# DEBUG BEGIN_STMT
retStatus_13 = Flexio_Pwm_Ip_UpdateInterruptMode (instanceId_8(D), channel_9(D), 0);
# DEBUG retStatus => retStatus_13
# DEBUG BEGIN_STMT
_3 = userCfg_11->timerId;
# DEBUG base => 1077035008B
# DEBUG timer => _3
# DEBUG polarity => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerPinPolarity
# DEBUG BEGIN_STMT
_29 = (int) _3;
_30 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29];
_31 = _30 & 4294967167;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29] ={v} _31;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG polarity => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _3
# DEBUG pin => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerPin
# DEBUG BEGIN_STMT
_27 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29];
_28 = _27 & 4294959359;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29] ={v} _28;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG pin => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _3
# DEBUG pinMode => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerPinOutput
# DEBUG BEGIN_STMT
_25 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29];
_26 = _25 & 4294770687;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_29] ={v} _26;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG pinMode => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _3
# DEBUG timerInitOut => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerInitMode
# DEBUG BEGIN_STMT
_23 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_29];
_24 = _23 & 4244635647;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_29] ={v} _24;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerInitOut => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _3
# DEBUG prescaler => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerPrescaler
# DEBUG BEGIN_STMT
_21 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_29];
_22 = _21 & 4287627263;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_29] ={v} _22;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG prescaler => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _3
# DEBUG value => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetUpperValue
# DEBUG BEGIN_STMT
_19 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_29];
_20 = _19 & 4294902015;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_29] ={v} _20;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG value => NULL
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _3
# DEBUG value => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetLowerValue
# DEBUG BEGIN_STMT
_17 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_29];
_18 = _17 & 4294967040;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_29] ={v} _18;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG value => NULL
# DEBUG BEGIN_STMT
_4 = userCfg_11->pinId;
Flexio_Pwm_Ip_ConfigurePinOverride (1077035008B, _4, 0);
# DEBUG BEGIN_STMT
_5 = userCfg_11->pinId;
Flexio_Pwm_Ip_SetPinLevel (1077035008B, _5, 0);
# DEBUG BEGIN_STMT
_6 = userCfg_11->timerId;
_7 = (int) _6;
Flexio_Pwm_Ip_aState[_7] = 0B;
# DEBUG retStatus => retStatus_13
# DEBUG BEGIN_STMT
return retStatus_13;
}
Flexio_Pwm_Ip_InitChannel (uint8 instanceId, const struct Flexio_Pwm_Ip_ChannelConfigType * const userCfg)
{
Flexio_Pwm_Ip_StatusType retStatus;
unsigned char _1;
int _2;
<unnamed type> _3;
<unnamed type> _4;
unsigned char _5;
unsigned char _6;
unsigned char _7;
unsigned char _8;
short unsigned int _9;
short unsigned int _10;
_Bool _11;
unsigned char _12;
short unsigned int _13;
unsigned char _14;
unsigned char _15;
short unsigned int _16;
unsigned char _17;
unsigned char _18;
unsigned char _19;
<unnamed type> _20;
long unsigned int _32;
long unsigned int _33;
long unsigned int _34;
long unsigned int _35;
long unsigned int _36;
long unsigned int _37;
long unsigned int _38;
int _39;
long unsigned int _40;
long unsigned int _41;
int _42;
long unsigned int _43;
long unsigned int _44;
long unsigned int _45;
long unsigned int _46;
long unsigned int _47;
long unsigned int _48;
long unsigned int _49;
long unsigned int _50;
int _51;
long unsigned int _52;
long unsigned int _53;
long unsigned int _54;
long unsigned int _55;
long unsigned int _56;
long unsigned int _57;
long unsigned int _58;
long unsigned int _59;
long unsigned int _60;
long unsigned int _61;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG BEGIN_STMT
# DEBUG retStatus => 0
# DEBUG BEGIN_STMT
_1 = userCfg_25(D)->timerId;
_2 = (int) _1;
Flexio_Pwm_Ip_aState[_2] = userCfg_25(D);
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _1
# DEBUG timerMode => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerMode
# DEBUG BEGIN_STMT
_32 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_2];
_33 = _32 & 4294967288;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_2] ={v} _33;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerMode => NULL
# DEBUG BEGIN_STMT
_3 = userCfg_25(D)->polarity;
if (_3 == 0)
goto <bb 3>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _1
# DEBUG timerInitOut => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerInitMode
# DEBUG BEGIN_STMT
_34 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_2];
_35 = _34 & 4244635647;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_2] ={v} _35;
goto <bb 5>; [100.00%]
<bb 4> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _1
# DEBUG timerInitOut => 1
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerInitMode
# DEBUG BEGIN_STMT
_36 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_2];
_37 = _36 & 4244635647;
_38 = _37 | 16777216;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCFG[_2] ={v} _38;
<bb 5> [local count: 1073741824]:
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerInitOut => NULL
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerInitOut => NULL
# DEBUG BEGIN_STMT
_4 = userCfg_25(D)->prescaler;
Flexio_Pwm_Ip_SetTimerPrescaler (1077035008B, _1, _4);
# DEBUG BEGIN_STMT
_5 = userCfg_25(D)->timerId;
# DEBUG base => 1077035008B
# DEBUG timer => _5
# DEBUG pinMode => 3
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerPinOutput
# DEBUG BEGIN_STMT
_42 = (int) _5;
_43 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_42];
_44 = _43 & 4294770687;
_45 = _44 | 196608;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_42] ={v} _45;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG pinMode => NULL
# DEBUG BEGIN_STMT
_6 = userCfg_25(D)->pinId;
Flexio_Pwm_Ip_SetTimerPin (1077035008B, _5, _6);
# DEBUG BEGIN_STMT
_7 = userCfg_25(D)->timerId;
# DEBUG base => 1077035008B
# DEBUG timer => _7
# DEBUG polarity => 0
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerPinPolarity
# DEBUG BEGIN_STMT
_39 = (int) _7;
_40 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_39];
_41 = _40 & 4294967167;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_39] ={v} _41;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG polarity => NULL
# DEBUG BEGIN_STMT
retStatus_30 = Flexio_Pwm_Ip_UpdateInterruptMode (instanceId_23(D), _7, 0);
# DEBUG retStatus => retStatus_30
# DEBUG BEGIN_STMT
_8 = userCfg_25(D)->timerId;
_9 = userCfg_25(D)->period;
_10 = userCfg_25(D)->dutyCycle;
_11 = Flexio_Pwm_Ip_PinOverrideNeeded (instanceId_23(D), _8, _9, _10);
if (_11 != 0)
goto <bb 9>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 6> [local count: 536870913]:
# DEBUG BEGIN_STMT
_12 = userCfg_25(D)->timerId;
_13 = userCfg_25(D)->dutyCycle;
_14 = (unsigned char) _13;
_15 = _14 + 255;
# DEBUG base => 1077035008B
# DEBUG timer => _12
# DEBUG value => _15
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetLowerValue
# DEBUG BEGIN_STMT
_51 = (int) _12;
_52 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_51];
_53 = _52 & 4294967040;
_54 = (long unsigned int) _15;
_55 = _53 | _54;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_51] ={v} _55;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG value => NULL
# DEBUG BEGIN_STMT
_16 = userCfg_25(D)->period;
_17 = (unsigned char) _16;
_18 = _17 - _14;
_19 = _18 + 255;
# DEBUG base => 1077035008B
# DEBUG timer => _12
# DEBUG value => _19
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetUpperValue
# DEBUG BEGIN_STMT
_46 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_51];
_47 = _46 & 4294902015;
_48 = (long unsigned int) _19;
_49 = _48 << 8;
_50 = _47 | _49;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCMP[_51] ={v} _50;
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG value => NULL
# DEBUG BEGIN_STMT
_20 = userCfg_25(D)->polarity;
if (_20 == 0)
goto <bb 7>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 7> [local count: 268435456]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _12
# DEBUG timerMode => 2
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerMode
# DEBUG BEGIN_STMT
_56 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_51];
_57 = _56 & 4294967288;
_58 = _57 | 2;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_51] ={v} _58;
goto <bb 9>; [100.00%]
<bb 8> [local count: 268435456]:
# DEBUG BEGIN_STMT
# DEBUG base => 1077035008B
# DEBUG timer => _12
# DEBUG timerMode => 6
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_SetTimerMode
# DEBUG BEGIN_STMT
_59 ={v} MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_51];
_60 = _59 & 4294967288;
_61 = _60 | 6;
MEM[(struct Flexio_Pwm_Ip_HwAddrType *)1077035008B].TIMCTL[_51] ={v} _61;
<bb 9> [local count: 1073741824]:
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerMode => NULL
# DEBUG base => NULL
# DEBUG timer => NULL
# DEBUG timerMode => NULL
# DEBUG BEGIN_STMT
return retStatus_30;
}
Flexio_Pwm_Ip_PinOverrideNeeded (uint8 instanceId, uint8 channel, uint16 period, uint16 dutyCycle)
{
boolean retStatus;
int _1;
const struct Flexio_Pwm_Ip_ChannelConfigType * _2;
<unnamed type> _3;
<bb 2> [local count: 1073741823]:
# DEBUG BEGIN_STMT
# DEBUG retStatus => 1
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
if (dutyCycle_5(D) == 0)
goto <bb 4>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 536870911]:
if (period_6(D) == 0)
goto <bb 4>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 4> [local count: 805306368]:
# DEBUG BEGIN_STMT
_1 = (int) channel_8(D);
_2 = Flexio_Pwm_Ip_aState[_1];
_3 = _2->polarity;
if (_3 == 0)
goto <bb 5>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 5> [local count: 402653184]:
# DEBUG BEGIN_STMT
Flexio_Pwm_Ip_ForceOuputLevel (instanceId_9(D), channel_8(D), 0);
# DEBUG status => NULL
goto <bb 9>; [100.00%]
<bb 6> [local count: 402653184]:
# DEBUG BEGIN_STMT
Flexio_Pwm_Ip_ForceOuputLevel (instanceId_9(D), channel_8(D), 1);
# DEBUG status => NULL
goto <bb 9>; [100.00%]
<bb 7> [local count: 268435456]:
# DEBUG BEGIN_STMT
if (dutyCycle_5(D) == period_6(D))
goto <bb 8>; [34.00%]
else
goto <bb 9>; [66.00%]
<bb 8> [local count: 91268056]:
# DEBUG D#1 => period_6(D)
# DEBUG D#2 => dutyCycle_5(D)
retStatus_12 = Flexio_Pwm_Ip_PinOverrideNeeded.part.0 (instanceId_9(D), channel_8(D));
<bb 9> [local count: 1073741824]:
# retStatus_4 = PHI <1(6), retStatus_12(8), 0(7), 1(5)>
# DEBUG retStatus => retStatus_4
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
return retStatus_4;
}