FlexCAN_StartRxMessageFifoData.part.0 (uint8 instance, struct Flexcan_Ip_MsgBuffType * data) { struct FLEXCAN_Type * base; struct Flexcan_Ip_StateType * state; Flexcan_Ip_StatusType eResult; volatile boolean x; int _2; _Bool _5; _6; _7; _Bool _9; _Bool _10; _Bool _11; [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) instance_1(D); base_3 = g_Flexcan_Ip_aBase[_2]; # DEBUG base => base_3 # DEBUG BEGIN_STMT state_4 = g_flexcan_Ip_StatePtr[_2]; # DEBUG state => state_4 # DEBUG BEGIN_STMT _5 = state_4->bIsLegacyFifoEn; if (_5 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _6 ={v} state_4->mbs[0].state; if (_6 != 0) goto ; [35.00%] else goto ; [65.00%] [local count: 348966093]: # DEBUG BEGIN_STMT state_4->mbs[0].state ={v} 1; # DEBUG BEGIN_STMT _7 = state_4->transferType; if (_7 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 118648472]: # DEBUG BEGIN_STMT state_4->mbs[0].isPolling = 1; [local count: 348966093]: # DEBUG BEGIN_STMT state_4->mbs[0].pMBmessage = data_8(D); # DEBUG BEGIN_STMT if (_7 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 115158811]: # DEBUG BEGIN_STMT state_4->mbs[0].isPolling = 0; # DEBUG BEGIN_STMT _9 = state_4->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_3, instance_1(D), 6, 1, _9); # DEBUG BEGIN_STMT _10 = state_4->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_3, instance_1(D), 7, 1, _10); # DEBUG BEGIN_STMT _11 = state_4->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_3, instance_1(D), 5, 1, _11); [local count: 1073741824]: # eResult_12 = PHI <1(2), 2(3), 0(6), 0(7)> # DEBUG eResult => eResult_12 # DEBUG BEGIN_STMT return eResult_12; } FlexCAN_GetMsgBuffIntStatusFlag.part.0 (const struct FLEXCAN_Type * base, uint32 msgBuffIdx) { uint8 flag; uint32 mask; long unsigned int _3; long unsigned int _4; long unsigned int _6; long unsigned int _7; unsigned char _8; [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT mask_2 ={v} base_1(D)->IMASK3; # DEBUG mask => mask_2 # DEBUG BEGIN_STMT _3 ={v} base_1(D)->IFLAG3; _4 = mask_2 & _3; _6 = msgBuffIdx_5(D) & 31; _7 = _4 >> _6; _8 = (unsigned char) _7; flag_9 = _8 & 1; # DEBUG flag => flag_9 [local count: 1073741824]: # flag_10 = PHI # DEBUG flag => flag_10 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return flag_10; } FlexCAN_SetEnhancedDataTimeSegments.part.0 (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; long unsigned int _14; long unsigned int _15; long unsigned int _16; 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; [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 ={v} base_1(D)->EDCBT; _3 = _2 & 4231991264; base_1(D)->EDCBT ={v} _3; # DEBUG BEGIN_STMT _4 ={v} base_1(D)->EDCBT; _6 = timeSeg_5(D)->phaseSeg1; _7 = timeSeg_5(D)->propSeg; _8 = _6 + _7; _9 = _8 & 31; _10 = timeSeg_5(D)->phaseSeg2; _11 = _10 << 12; _12 = _11 & 65535; _13 = _9 | _12; _14 = timeSeg_5(D)->rJumpwidth; _15 = _14 << 22; _16 = _15 & 62914560; _17 = _13 | _16; _18 = _4 | _17; base_1(D)->EDCBT ={v} _18; # DEBUG BEGIN_STMT _19 ={v} base_1(D)->EPRS; _20 = _19 & 4227923967; base_1(D)->EPRS ={v} _20; # DEBUG BEGIN_STMT _21 ={v} base_1(D)->EPRS; _22 = timeSeg_5(D)->preDivider; _23 = _22 << 16; _24 = _23 & 67043328; _25 = _21 | _24; base_1(D)->EPRS ={v} _25; return; } FlexCAN_SetEnhancedNominalTimeSegments.part.0 (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; long unsigned int _14; long unsigned int _15; long unsigned int _16; 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; [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 ={v} base_1(D)->ENCBT; _3 = _2 & 3761770240; base_1(D)->ENCBT ={v} _3; # DEBUG BEGIN_STMT _4 ={v} base_1(D)->ENCBT; _6 = timeSeg_5(D)->phaseSeg1; _7 = timeSeg_5(D)->propSeg; _8 = _6 + _7; _9 = _8 + 1; _10 = _9 & 255; _11 = timeSeg_5(D)->phaseSeg2; _12 = _11 << 12; _13 = _12 & 520192; _14 = _10 | _13; _15 = timeSeg_5(D)->rJumpwidth; _16 = _15 << 22; _17 = _16 & 532676608; _18 = _14 | _17; _19 = _4 | _18; base_1(D)->ENCBT ={v} _19; # DEBUG BEGIN_STMT _20 ={v} base_1(D)->EPRS; _21 = _20 & 4294966272; base_1(D)->EPRS ={v} _21; # DEBUG BEGIN_STMT _22 ={v} base_1(D)->EPRS; _23 = timeSeg_5(D)->preDivider; _24 = _23 & 1023; _25 = _22 | _24; base_1(D)->EPRS ={v} _25; return; } FlexCAN_SetExtendedTimeSegments.part.0 (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; long unsigned int _14; long unsigned int _15; long unsigned int _16; 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; [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 ={v} base_1(D)->CBT; _3 = _2 & 2147483648; base_1(D)->CBT ={v} _3; # DEBUG BEGIN_STMT _4 ={v} base_1(D)->CBT; _6 = timeSeg_5(D)->propSeg; _7 = _6 << 10; _8 = _7 & 65535; _9 = timeSeg_5(D)->phaseSeg2; _10 = _9 & 31; _11 = _8 | _10; _12 = timeSeg_5(D)->phaseSeg1; _13 = _12 << 5; _14 = _13 & 992; _15 = _11 | _14; _16 = timeSeg_5(D)->preDivider; _17 = _16 << 21; _18 = _17 & 2145386496; _19 = _15 | _18; _20 = timeSeg_5(D)->rJumpwidth; _21 = _20 << 16; _22 = _21 & 2031616; _23 = _19 | _22; _24 = _4 | _23; base_1(D)->CBT ={v} _24; return; } FlexCAN_SetTimeSegments.part.0 (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; long unsigned int _14; long unsigned int _15; long unsigned int _16; 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; [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 ={v} base_1(D)->CTRL1; _3 = _2 & 65528; base_1(D)->CTRL1 ={v} _3; # DEBUG BEGIN_STMT _4 ={v} base_1(D)->CTRL1; _6 = timeSeg_5(D)->propSeg; _7 = _6 & 7; _8 = timeSeg_5(D)->phaseSeg2; _9 = _8 << 16; _10 = _9 & 458752; _11 = _7 | _10; _12 = timeSeg_5(D)->phaseSeg1; _13 = _12 << 19; _14 = _13 & 3670016; _15 = _11 | _14; _16 = timeSeg_5(D)->preDivider; _17 = _16 << 24; _18 = _15 | _17; _19 = timeSeg_5(D)->rJumpwidth; _20 = _19 << 22; _21 = _20 & 12582912; _22 = _18 | _21; _23 = _4 | _22; base_1(D)->CTRL1 ={v} _23; return; } FlexCAN_SetFDTimeSegments.part.0 (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; long unsigned int _14; long unsigned int _15; long unsigned int _16; 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; [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 ={v} base_1(D)->FDCBT; _3 = _2 & 3221783320; base_1(D)->FDCBT ={v} _3; # DEBUG BEGIN_STMT _4 ={v} base_1(D)->FDCBT; _6 = timeSeg_5(D)->propSeg; _7 = _6 << 10; _8 = _7 & 31744; _9 = timeSeg_5(D)->phaseSeg2; _10 = _9 & 7; _11 = _8 | _10; _12 = timeSeg_5(D)->phaseSeg1; _13 = _12 << 5; _14 = _13 & 255; _15 = _11 | _14; _16 = timeSeg_5(D)->preDivider; _17 = _16 << 20; _18 = _17 & 1072693248; _19 = _15 | _18; _20 = timeSeg_5(D)->rJumpwidth; _21 = _20 << 16; _22 = _21 & 458752; _23 = _19 | _22; _24 = _4 | _23; base_1(D)->FDCBT ={v} _24; return; } FlexCAN_Ip_GetListenOnlyMode (uint8 instance) { const struct FLEXCAN_Type * base; int _1; long unsigned int _5; long unsigned int _6; _Bool _7; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = (int) instance_2(D); base_4 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_4 # DEBUG BEGIN_STMT # DEBUG base => base_4 # DEBUG INLINE_ENTRY FlexCAN_IsListenOnlyModeEnabled # DEBUG BEGIN_STMT _5 ={v} base_4->CTRL1; _6 = _5 & 8; _7 = _6 != 0; # DEBUG base => NULL return _7; } FlexCAN_Ip_SetListenOnlyMode_Privileged (uint8 instance, const boolean enable) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _18; signed int _19; _Bool x.0_20; long unsigned int _21; long unsigned int _22; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_8(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_20 ={v} x; if (x.0_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) instance_8(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _18 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _19 = (signed int) _18; # DEBUG pBase => NULL # DEBUG disabled => _19 < 0 # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 [local count: 107374]: # result_3 = PHI <0(4), result_13(5)> # DEBUG result => result_3 # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _21 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _22 = _21 & 16777216; # DEBUG base => NULL # DEBUG freeze => _22 != 0 # DEBUG BEGIN_STMT if (_22 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_3 # DEBUG BEGIN_STMT if (result_3 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 26575]: # DEBUG BEGIN_STMT FlexCAN_SetListenOnlyMode (pBase_11, enable_14(D)); [local count: 107374]: # result_10 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_17 = FlexCAN_Disable (pBase_11); # DEBUG status => status_17 # DEBUG BEGIN_STMT if (status_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_17 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_SetRxMb15Mask_Privileged (uint8 instance, uint32 mask) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _18; signed int _19; _Bool x.0_20; long unsigned int _21; long unsigned int _22; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_8(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_20 ={v} x; if (x.0_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) instance_8(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG freeze => 0 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _18 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _19 = (signed int) _18; # DEBUG pBase => NULL # DEBUG disabled => _19 < 0 # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 [local count: 107374]: # result_3 = PHI <0(4), result_13(5)> # DEBUG result => result_3 # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _21 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _22 = _21 & 16777216; # DEBUG base => NULL # DEBUG freeze => _22 != 0 # DEBUG BEGIN_STMT if (_22 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_3 # DEBUG BEGIN_STMT if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 40265]: # DEBUG BEGIN_STMT pBase_11->RX15MASK ={v} mask_14(D); [local count: 107374]: # result_10 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_17 = FlexCAN_Disable (pBase_11); # DEBUG status => status_17 # DEBUG BEGIN_STMT if (status_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_17 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_SetRxMb14Mask_Privileged (uint8 instance, uint32 mask) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _18; signed int _19; _Bool x.0_20; long unsigned int _21; long unsigned int _22; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_8(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_20 ={v} x; if (x.0_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) instance_8(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG freeze => 0 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _18 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _19 = (signed int) _18; # DEBUG pBase => NULL # DEBUG disabled => _19 < 0 # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 [local count: 107374]: # result_3 = PHI <0(4), result_13(5)> # DEBUG result => result_3 # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _21 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _22 = _21 & 16777216; # DEBUG base => NULL # DEBUG freeze => _22 != 0 # DEBUG BEGIN_STMT if (_22 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_3 # DEBUG BEGIN_STMT if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 40265]: # DEBUG BEGIN_STMT pBase_11->RX14MASK ={v} mask_14(D); [local count: 107374]: # result_10 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_17 = FlexCAN_Disable (pBase_11); # DEBUG status => status_17 # DEBUG BEGIN_STMT if (status_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_17 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_AbortTransfer (uint8 u8Instance, uint8 mb_idx) { volatile boolean x; volatile boolean x; Flexcan_Ip_StatusType result; const struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * pBase; _Bool _1; unsigned char _2; _Bool _3; int _4; int _5; _6; long unsigned int _7; _Bool _8; _9; _10; _Bool x.0_24; _Bool x.0_25; [local count: 214748]: # DEBUG BEGIN_STMT _1 = u8Instance_15(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_25 ={v} x; if (x.0_25 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = mb_idx_17(D) + 160; _3 = _2 > 158; x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_24 ={v} x; if (x.0_24 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _4 = (int) u8Instance_15(D); pBase_18 = g_Flexcan_Ip_aBase[_4]; # DEBUG pBase => pBase_18 # DEBUG BEGIN_STMT state_19 = g_flexcan_Ip_StatePtr[_4]; # DEBUG state => state_19 # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT if (mb_idx_17(D) <= 95) goto ; [50.00%] else goto ; [50.00%] [local count: 26844]: # DEBUG BEGIN_STMT _5 = (int) mb_idx_17(D); _6 ={v} state_19->mbs[_5].state; if (_6 == 0) goto ; [52.23%] else goto ; [47.77%] [local count: 12823]: # DEBUG BEGIN_STMT _7 = (long unsigned int) mb_idx_17(D); _8 = state_19->isIntActive; FLEXCAN_ClearMsgBuffIntCmd (pBase_18, u8Instance_15(D), _7, _8); # DEBUG BEGIN_STMT _9 ={v} state_19->mbs[_5].state; if (_9 == 2) goto ; [20.24%] else goto ; [79.76%] [local count: 2595]: # DEBUG BEGIN_STMT result_22 = FlexCAN_AbortTxTransfer (u8Instance_15(D), mb_idx_17(D)); # DEBUG result => result_22 [local count: 12823]: # result_11 = PHI <0(8), result_22(9)> # DEBUG result => result_11 # DEBUG BEGIN_STMT _10 ={v} state_19->mbs[_5].state; if (_10 == 1) goto ; [20.24%] else goto ; [79.76%] [local count: 2595]: # DEBUG BEGIN_STMT FlexCAN_AbortRxTransfer (u8Instance_15(D), mb_idx_17(D)); [local count: 53687]: # result_12 = PHI <0(6), 5(7), result_11(10), result_11(11)> # DEBUG result => result_12 # DEBUG BEGIN_STMT return result_12; } FlexCAN_Ip_SetErrorInt_Privileged (uint8 u8Instance, Flexcan_Ip_ErrorIntType type, boolean enable) { volatile boolean x; volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _23; signed int _24; _Bool x.0_25; long unsigned int _26; long unsigned int _27; long unsigned int _28; long unsigned int _29; _Bool x.0_30; [local count: 214748]: # DEBUG BEGIN_STMT _1 = u8Instance_7(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_25 ={v} x; if (x.0_25 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) u8Instance_7(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _23 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _24 = (signed int) _23; # DEBUG pBase => NULL # DEBUG disabled => _24 < 0 # DEBUG BEGIN_STMT if (_24 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 # DEBUG BEGIN_STMT if (result_13 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 93684]: # result_9 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT switch (type_14(D)) [16.67%], case 0: [16.67%], case 1: [16.67%], case 2: [16.67%], case 3: [16.67%], case 4: [16.67%]> [local count: 15617]: : # DEBUG BEGIN_STMT FlexCAN_SetErrIntCmd (pBase_11, 32768, enable_15(D)); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 15617]: : # DEBUG BEGIN_STMT FlexCAN_SetErrIntCmd (pBase_11, 16384, enable_15(D)); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 15617]: : # DEBUG BEGIN_STMT FlexCAN_SetErrIntCmd (pBase_11, 16385, enable_15(D)); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 15617]: : # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _26 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _27 = _26 & 16777216; # DEBUG base => NULL if (_27 == 0) goto ; [67.00%] else goto ; [33.00%] [local count: 5154]: # DEBUG BEGIN_STMT FlexCAN_SetErrIntCmd (pBase_11, 1024, enable_15(D)); goto ; [100.00%] [local count: 15617]: : # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _28 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _29 = _28 & 16777216; # DEBUG base => NULL if (_29 == 0) goto ; [67.00%] else goto ; [33.00%] [local count: 5154]: # DEBUG BEGIN_STMT FlexCAN_SetErrIntCmd (pBase_11, 2048, enable_15(D)); goto ; [100.00%] [local count: 15617]: : # DEBUG BEGIN_STMT x ={v} 0; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_30 ={v} x; if (x.0_30 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 7809]: [local count: 78085593]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 78085593]: goto ; [100.00%] [local count: 99584]: # result_3 = PHI # DEBUG x => NULL # DEBUG result => result_3 # DEBUG BEGIN_STMT if (_24 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 25394]: # DEBUG BEGIN_STMT status_22 = FlexCAN_Disable (pBase_11); # DEBUG status => status_22 # DEBUG BEGIN_STMT if (status_22 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 12697]: # DEBUG BEGIN_STMT # DEBUG result => status_22 [local count: 99584]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_DisableInterrupts_Privileged (uint8 u8Instance) { volatile boolean x; struct Flexcan_Ip_StateType * state; Flexcan_Ip_StatusType result; struct FLEXCAN_Type * pBase; int _1; _Bool _2; _Bool _3; long unsigned int _14; signed int _15; _Bool x.0_16; long unsigned int _17; signed int _18; long unsigned int _19; long unsigned int _20; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) u8Instance_7(D); pBase_9 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_9 # DEBUG BEGIN_STMT # DEBUG result => 1 # DEBUG BEGIN_STMT state_10 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_10 # DEBUG BEGIN_STMT _2 = u8Instance_7(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_16 ={v} x; if (x.0_16 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG pBase => pBase_9 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _14 ={v} MEM[(const struct FLEXCAN_Type *)pBase_9].MCR; _15 = (signed int) _14; # DEBUG pBase => NULL if (_15 >= 0) goto ; [41.48%] else goto ; [58.52%] [local count: 44539]: # DEBUG BEGIN_STMT FlexCAN_DisableInterrupts (pBase_9); # DEBUG BEGIN_STMT _3 = FlexCAN_IsEnhancedRxFifoAvailable (pBase_9); if (_3 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 22269]: # DEBUG BEGIN_STMT # DEBUG base => pBase_9 # DEBUG INLINE_ENTRY FlexCAN_IsEnhancedRxFifoEnabled # DEBUG BEGIN_STMT _17 ={v} MEM[(const struct FLEXCAN_Type *)pBase_9].ERFCR; _18 = (signed int) _17; # DEBUG base => NULL if (_18 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 9130]: # DEBUG BEGIN_STMT # DEBUG base => pBase_9 # DEBUG enable => 0 # DEBUG INLINE_ENTRY FlexCAN_SetEnhancedRxFifoIntAll # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _19 ={v} pBase_9->ERFIER; _20 = _19 & 268435455; pBase_9->ERFIER ={v} _20; [local count: 44539]: # DEBUG base => NULL # DEBUG enable => NULL # DEBUG BEGIN_STMT state_10->isIntActive = 0; # DEBUG BEGIN_STMT # DEBUG result => 0 [local count: 107374]: # result_4 = PHI <1(4), 0(8)> # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_EnableInterrupts_Privileged (uint8 u8Instance) { volatile boolean x; struct Flexcan_Ip_StateType * state; Flexcan_Ip_StatusType result; struct FLEXCAN_Type * pBase; int _1; _Bool _2; _Bool _3; _Bool _4; long unsigned int _15; signed int _16; _Bool x.0_17; long unsigned int _18; signed int _19; long unsigned int _20; long unsigned int _21; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) u8Instance_8(D); pBase_10 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_10 # DEBUG BEGIN_STMT # DEBUG result => 1 # DEBUG BEGIN_STMT state_11 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_11 # DEBUG BEGIN_STMT _2 = u8Instance_8(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_17 ={v} x; if (x.0_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG pBase => pBase_10 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _15 ={v} MEM[(const struct FLEXCAN_Type *)pBase_10].MCR; _16 = (signed int) _15; # DEBUG pBase => NULL if (_16 >= 0) goto ; [41.48%] else goto ; [58.52%] [local count: 44539]: # DEBUG BEGIN_STMT FlexCAN_EnableInterrupts (pBase_10, u8Instance_8(D)); # DEBUG BEGIN_STMT _3 = state_11->enhancedFifoOutput.isPolling; if (_3 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 14698]: _4 = FlexCAN_IsEnhancedRxFifoAvailable (pBase_10); if (_4 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 7349]: # DEBUG BEGIN_STMT # DEBUG base => pBase_10 # DEBUG INLINE_ENTRY FlexCAN_IsEnhancedRxFifoEnabled # DEBUG BEGIN_STMT _18 ={v} MEM[(const struct FLEXCAN_Type *)pBase_10].ERFCR; _19 = (signed int) _18; # DEBUG base => NULL if (_19 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 3013]: # DEBUG BEGIN_STMT # DEBUG base => pBase_10 # DEBUG enable => 1 # DEBUG INLINE_ENTRY FlexCAN_SetEnhancedRxFifoIntAll # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _20 ={v} pBase_10->ERFIER; _21 = _20 | 4026531840; pBase_10->ERFIER ={v} _21; [local count: 44539]: # DEBUG base => NULL # DEBUG enable => NULL # DEBUG BEGIN_STMT state_11->isIntActive = 1; # DEBUG BEGIN_STMT # DEBUG result => 0 [local count: 107374]: # result_5 = PHI <1(4), 0(9)> # DEBUG result => result_5 # DEBUG BEGIN_STMT return result_5; } FlexCAN_Ip_ClearBuffStatusFlag (uint8 instance, uint8 msgBuffIdx) { volatile boolean x; struct FLEXCAN_Type * pBase; _Bool _1; int _2; long unsigned int _3; _Bool x.0_10; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_5(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_10 ={v} x; if (x.0_10 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) instance_5(D); pBase_7 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_7 # DEBUG BEGIN_STMT if (msgBuffIdx_8(D) == 255) goto ; [51.12%] else goto ; [48.88%] [local count: 54890]: # DEBUG BEGIN_STMT # DEBUG base => pBase_7 # DEBUG intFlag => 30 # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT pBase_7->ERFSR ={v} 1073741824; goto ; [100.00%] [local count: 52484]: # DEBUG BEGIN_STMT _3 = (long unsigned int) msgBuffIdx_8(D); FlexCAN_ClearMsgBuffIntStatusFlag (pBase_7, _3); [local count: 107374]: # DEBUG base => NULL # DEBUG intFlag => NULL return; } FlexCAN_Ip_GetBuffStatusFlag (uint8 instance, uint8 msgBuffIdx) { volatile boolean x; const struct FLEXCAN_Type * pBase; boolean returnResult; _Bool _1; int _2; long unsigned int _3; unsigned char _4; long unsigned int _13; _Bool x.0_15; long unsigned int _16; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG returnResult => 1 # DEBUG BEGIN_STMT _1 = instance_7(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_15 ={v} x; if (x.0_15 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) instance_7(D); pBase_9 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_9 # DEBUG BEGIN_STMT if (msgBuffIdx_10(D) == 255) goto ; [51.12%] else goto ; [48.88%] [local count: 54890]: # DEBUG BEGIN_STMT # DEBUG base => pBase_9 # DEBUG intFlag => 30 # DEBUG INLINE_ENTRY FlexCAN_GetEnhancedRxFIFOStatusFlag # DEBUG BEGIN_STMT _16 ={v} pBase_9->ERFSR; _13 = _16 >> 30; # DEBUG base => NULL # DEBUG intFlag => NULL returnResult_14 = (boolean) _13; # DEBUG returnResult => returnResult_14 goto ; [100.00%] [local count: 52484]: # DEBUG BEGIN_STMT _3 = (long unsigned int) msgBuffIdx_10(D); _4 = FlexCAN_GetBuffStatusFlag (pBase_9, _3); returnResult_12 = _4 == 1; # DEBUG returnResult => returnResult_12 [local count: 107374]: # returnResult_5 = PHI # DEBUG returnResult => returnResult_5 # DEBUG BEGIN_STMT return returnResult_5; } FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged (uint8 instance, uint8 value) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _20; signed int _21; _Bool x.0_22; long unsigned int _23; long unsigned int _24; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_8(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_22 ={v} x; if (x.0_22 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) instance_8(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _20 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _21 = (signed int) _20; # DEBUG pBase => NULL # DEBUG disabled => _21 < 0 # DEBUG BEGIN_STMT if (_21 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 [local count: 107374]: # result_3 = PHI <0(4), result_13(5)> # DEBUG result => result_3 # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _23 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _24 = _23 & 16777216; # DEBUG base => NULL # DEBUG freeze => _24 != 0 # DEBUG BEGIN_STMT if (_24 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_3 # DEBUG BEGIN_STMT if (result_3 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 26575]: # DEBUG BEGIN_STMT SchM_Enter_Can_CAN_EXCLUSIVE_AREA_17 (); # DEBUG BEGIN_STMT FlexCAN_SetTxArbitrationStartDelay (pBase_11, value_15(D)); # DEBUG BEGIN_STMT SchM_Exit_Can_CAN_EXCLUSIVE_AREA_17 (); [local count: 107374]: # result_10 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_21 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_19 = FlexCAN_Disable (pBase_11); # DEBUG status => status_19 # DEBUG BEGIN_STMT if (status_19 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_19 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_SetTDCOffset_Privileged (uint8 instance, boolean enable, uint8 offset) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _3; long unsigned int _4; long unsigned int _25; signed int _26; _Bool x.0_27; long unsigned int _28; long unsigned int _29; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_11(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_27 ={v} x; if (x.0_27 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) instance_11(D); pBase_14 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_14 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _25 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _26 = (signed int) _25; # DEBUG pBase => NULL # DEBUG disabled => _26 < 0 # DEBUG BEGIN_STMT if (_26 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_16 = FlexCAN_Enable (pBase_14); # DEBUG result => result_16 [local count: 107374]: # result_5 = PHI <0(4), result_16(5)> # DEBUG result => result_5 # DEBUG BEGIN_STMT # DEBUG base => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _28 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _29 = _28 & 16777216; # DEBUG base => NULL # DEBUG freeze => _29 != 0 # DEBUG BEGIN_STMT if (_29 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_5 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_5 # DEBUG BEGIN_STMT if (result_5 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 26575]: # DEBUG BEGIN_STMT SchM_Enter_Can_CAN_EXCLUSIVE_AREA_16 (); # DEBUG BEGIN_STMT _3 ={v} pBase_14->CTRL2; _4 = _3 & 8192; if (_4 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13288]: # DEBUG BEGIN_STMT FlexCAN_SetEnhancedTDCOffset (pBase_14, enable_18(D), offset_19(D)); goto ; [100.00%] [local count: 13288]: # DEBUG BEGIN_STMT FlexCAN_SetTDCOffset (pBase_14, enable_18(D), offset_19(D)); [local count: 26575]: # DEBUG BEGIN_STMT SchM_Exit_Can_CAN_EXCLUSIVE_AREA_16 (); [local count: 107374]: # result_13 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_26 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_24 = FlexCAN_Disable (pBase_14); # DEBUG status => status_24 # DEBUG BEGIN_STMT if (status_24 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_24 [local count: 107374]: # result_6 = PHI # DEBUG result => result_6 # DEBUG BEGIN_STMT return result_6; } FlexCAN_Ip_GetBitrateFD (uint8 instance, struct Flexcan_Ip_TimeSegmentType * bitrate) { volatile boolean x; volatile boolean x; const struct FLEXCAN_Type * pBase; _Bool _1; _Bool _2; int _3; long unsigned int _11; long unsigned int _12; _Bool _13; _Bool x.0_14; _Bool x.0_15; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_5(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_15 ={v} x; if (x.0_15 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = bitrate_7(D) != 0B; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_14 ={v} x; if (x.0_14 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = (int) instance_5(D); pBase_8 = g_Flexcan_Ip_aBase[_3]; # DEBUG pBase => pBase_8 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_8 # DEBUG INLINE_ENTRY FlexCAN_IsEnhCbtEnabled # DEBUG BEGIN_STMT _11 ={v} pBase_8->CTRL2; _12 = _11 & 8192; _13 = _12 != 0; # DEBUG pBase => NULL # DEBUG enhCbt => _13 # DEBUG BEGIN_STMT if (_12 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 26844]: # DEBUG BEGIN_STMT FlexCAN_GetEnhancedDataTimeSegments (pBase_8, bitrate_7(D)); goto ; [100.00%] [local count: 26844]: # DEBUG BEGIN_STMT FlexCAN_GetFDTimeSegments (pBase_8, bitrate_7(D)); [local count: 53687]: # DEBUG BEGIN_STMT return _13; } FlexCAN_Ip_SetBitrateCbt_Privileged (uint8 instance, const struct Flexcan_Ip_TimeSegmentType * bitrate, boolean bitRateSwitch) { volatile boolean x; volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; _Bool _2; int _3; long unsigned int _25; long unsigned int _26; _Bool _27; long unsigned int _28; signed int _29; _Bool x.0_30; _Bool x.0_31; long unsigned int _32; long unsigned int _33; long unsigned int _34; long unsigned int _35; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_11(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_31 ={v} x; if (x.0_31 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = bitrate_13(D) != 0B; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_30 ={v} x; if (x.0_30 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _3 = (int) instance_11(D); pBase_14 = g_Flexcan_Ip_aBase[_3]; # DEBUG pBase => pBase_14 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _28 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _29 = (signed int) _28; # DEBUG pBase => NULL # DEBUG disabled => _29 < 0 # DEBUG BEGIN_STMT # DEBUG base => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsFDEnabled # DEBUG BEGIN_STMT _25 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _26 = _25 & 2048; _27 = _26 != 0; # DEBUG base => NULL # DEBUG fd_enable => _27 # DEBUG BEGIN_STMT if (_29 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 13690]: # DEBUG BEGIN_STMT result_16 = FlexCAN_Enable (pBase_14); # DEBUG result => result_16 [local count: 53687]: # result_5 = PHI <0(6), result_16(7)> # DEBUG result => result_5 # DEBUG BEGIN_STMT # DEBUG base => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _32 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _33 = _32 & 16777216; # DEBUG base => NULL # DEBUG freeze => _33 != 0 # DEBUG BEGIN_STMT if (_26 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 26844]: if (_33 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13422]: if (result_5 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 20133]: # DEBUG result => result_5 # DEBUG BEGIN_STMT if (result_5 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 6644]: # DEBUG BEGIN_STMT # DEBUG pBase => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsEnhCbtEnabled # DEBUG BEGIN_STMT _34 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].CTRL2; _35 = _34 & 8192; # DEBUG pBase => NULL # DEBUG enhCbt => _35 != 0 # DEBUG BEGIN_STMT SchM_Enter_Can_CAN_EXCLUSIVE_AREA_15 (); # DEBUG BEGIN_STMT FlexCAN_SetFDEnabled (pBase_14, _27, bitRateSwitch_18(D)); # DEBUG BEGIN_STMT if (_35 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 3322]: # DEBUG BEGIN_STMT FlexCAN_SetEnhancedDataTimeSegments (pBase_14, bitrate_13(D)); goto ; [100.00%] [local count: 3322]: # DEBUG BEGIN_STMT FlexCAN_SetFDTimeSegments (pBase_14, bitrate_13(D)); [local count: 6644]: # DEBUG BEGIN_STMT SchM_Exit_Can_CAN_EXCLUSIVE_AREA_15 (); [local count: 53687]: # result_4 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_29 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 13690]: # DEBUG BEGIN_STMT status_24 = FlexCAN_Disable (pBase_14); # DEBUG status => status_24 # DEBUG BEGIN_STMT if (status_24 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 6845]: # DEBUG BEGIN_STMT # DEBUG result => status_24 [local count: 53687]: # result_6 = PHI # DEBUG result => result_6 # DEBUG BEGIN_STMT return result_6; } FlexCAN_Ip_GetTDCValue_Privileged (uint8 u8Instance) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType result; uint8 value; _Bool _1; int _2; long unsigned int _3; long unsigned int _4; unsigned char _5; long unsigned int _18; signed int _19; _Bool x.0_20; long unsigned int _21; long unsigned int _22; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG value => 0 # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT _1 = u8Instance_10(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_20 ={v} x; if (x.0_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) u8Instance_10(D); pBase_12 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_12 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_12 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _18 ={v} MEM[(const struct FLEXCAN_Type *)pBase_12].MCR; _19 = (signed int) _18; # DEBUG pBase => NULL # DEBUG disabled => _19 < 0 # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_14 = FlexCAN_Enable (pBase_12); # DEBUG result => result_14 # DEBUG BEGIN_STMT if (result_14 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 93684]: # DEBUG result => NULL # DEBUG BEGIN_STMT # DEBUG pBase => pBase_12 # DEBUG INLINE_ENTRY FlexCAN_IsEnhCbtEnabled # DEBUG BEGIN_STMT _21 ={v} MEM[(const struct FLEXCAN_Type *)pBase_12].CTRL2; _22 = _21 & 8192; # DEBUG pBase => NULL if (_22 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 46842]: # DEBUG BEGIN_STMT _3 ={v} pBase_12->ETDC; value_16 = (uint8) _3; # DEBUG value => value_16 goto ; [100.00%] [local count: 46842]: # DEBUG BEGIN_STMT _4 ={v} pBase_12->FDCTRL; _5 = (unsigned char) _4; value_15 = _5 & 63; # DEBUG value => value_15 [local count: 107374]: # value_6 = PHI <0(5), value_16(7), value_15(8)> # DEBUG value => value_6 # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT FlexCAN_Disable (pBase_12); [local count: 107374]: # DEBUG BEGIN_STMT return value_6; } FlexCAN_Ip_GetTDCFail_Privileged (uint8 u8Instance) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType result; boolean value; _Bool _1; int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _19; signed int _20; _Bool x.0_21; long unsigned int _22; long unsigned int _23; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG value => 0 # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT _1 = u8Instance_11(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_21 ={v} x; if (x.0_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) u8Instance_11(D); pBase_13 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_13 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_13 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _19 ={v} MEM[(const struct FLEXCAN_Type *)pBase_13].MCR; _20 = (signed int) _19; # DEBUG pBase => NULL # DEBUG disabled => _20 < 0 # DEBUG BEGIN_STMT if (_20 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_15 = FlexCAN_Enable (pBase_13); # DEBUG result => result_15 # DEBUG BEGIN_STMT if (result_15 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 93684]: # DEBUG result => NULL # DEBUG BEGIN_STMT # DEBUG pBase => pBase_13 # DEBUG INLINE_ENTRY FlexCAN_IsEnhCbtEnabled # DEBUG BEGIN_STMT _22 ={v} MEM[(const struct FLEXCAN_Type *)pBase_13].CTRL2; _23 = _22 & 8192; # DEBUG pBase => NULL if (_23 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 46842]: # DEBUG BEGIN_STMT _3 ={v} pBase_13->ETDC; _4 = _3 & 32768; value_17 = _4 != 0; # DEBUG value => value_17 goto ; [100.00%] [local count: 46842]: # DEBUG BEGIN_STMT _5 ={v} pBase_13->FDCTRL; _6 = _5 & 16384; value_16 = _6 != 0; # DEBUG value => value_16 [local count: 107374]: # value_7 = PHI <0(5), value_17(7), value_16(8)> # DEBUG value => value_7 # DEBUG BEGIN_STMT if (_20 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT FlexCAN_Disable (pBase_13); [local count: 107374]: # DEBUG BEGIN_STMT return value_7; } FlexCAN_Ip_ClearTDCFail_Privileged (uint8 u8Instance) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _17; signed int _18; _Bool x.0_19; long unsigned int _20; long unsigned int _21; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT _1 = u8Instance_9(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_19 ={v} x; if (x.0_19 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) u8Instance_9(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _17 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _18 = (signed int) _17; # DEBUG pBase => NULL # DEBUG disabled => _18 < 0 # DEBUG BEGIN_STMT if (_18 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 # DEBUG BEGIN_STMT if (result_13 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 93684]: # DEBUG result => NULL # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnhCbtEnabled # DEBUG BEGIN_STMT _20 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].CTRL2; _21 = _20 & 8192; # DEBUG pBase => NULL if (_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 46842]: # DEBUG BEGIN_STMT _3 ={v} pBase_11->ETDC; _4 = _3 | 32768; pBase_11->ETDC ={v} _4; goto ; [100.00%] [local count: 46842]: # DEBUG BEGIN_STMT _5 ={v} pBase_11->FDCTRL; _6 = _5 | 16384; pBase_11->FDCTRL ={v} _6; [local count: 107374]: # DEBUG BEGIN_STMT if (_18 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT FlexCAN_Disable (pBase_11); [local count: 107374]: return; } FlexCAN_Ip_GetBitrate (uint8 instance, struct Flexcan_Ip_TimeSegmentType * bitrate) { volatile boolean x; volatile boolean x; const struct FLEXCAN_Type * pBase; _Bool _1; _Bool _2; int _3; long unsigned int _12; long unsigned int _13; _Bool _14; _Bool x.0_15; _Bool x.0_16; long unsigned int _17; signed int _18; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_5(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_16 ={v} x; if (x.0_16 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = bitrate_7(D) != 0B; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_15 ={v} x; if (x.0_15 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = (int) instance_5(D); pBase_8 = g_Flexcan_Ip_aBase[_3]; # DEBUG pBase => pBase_8 # DEBUG BEGIN_STMT # DEBUG enhCbt => 0 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_8 # DEBUG INLINE_ENTRY FlexCAN_IsEnhCbtEnabled # DEBUG BEGIN_STMT _12 ={v} pBase_8->CTRL2; _13 = _12 & 8192; _14 = _13 != 0; # DEBUG pBase => NULL # DEBUG enhCbt => _14 # DEBUG BEGIN_STMT if (_13 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 17717]: # DEBUG BEGIN_STMT FlexCAN_GetEnhancedNominalTimeSegments (pBase_8, bitrate_7(D)); goto ; [100.00%] [local count: 35970]: # DEBUG BEGIN_STMT # DEBUG pBase => pBase_8 # DEBUG INLINE_ENTRY FlexCAN_IsExCbtEnabled # DEBUG BEGIN_STMT _17 ={v} pBase_8->CBT; _18 = (signed int) _17; # DEBUG pBase => NULL if (_18 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 14748]: # DEBUG BEGIN_STMT FlexCAN_GetExtendedTimeSegments (pBase_8, bitrate_7(D)); goto ; [100.00%] [local count: 21222]: # DEBUG BEGIN_STMT FlexCAN_GetTimeSegments (pBase_8, bitrate_7(D)); [local count: 53687]: # DEBUG BEGIN_STMT return _14; } FlexCAN_Ip_SetBitrate_Privileged (uint8 instance, const struct Flexcan_Ip_TimeSegmentType * bitrate, boolean enhExt) { volatile boolean x; volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; _Bool _2; int _3; long unsigned int _26; signed int _27; _Bool x.0_28; _Bool x.0_29; long unsigned int _30; long unsigned int _31; long unsigned int _32; signed int _33; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_11(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_29 ={v} x; if (x.0_29 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = bitrate_13(D) != 0B; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_28 ={v} x; if (x.0_28 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _3 = (int) instance_11(D); pBase_14 = g_Flexcan_Ip_aBase[_3]; # DEBUG pBase => pBase_14 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _26 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _27 = (signed int) _26; # DEBUG pBase => NULL # DEBUG disabled => _27 < 0 # DEBUG BEGIN_STMT if (_27 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 13690]: # DEBUG BEGIN_STMT result_16 = FlexCAN_Enable (pBase_14); # DEBUG result => result_16 [local count: 53687]: # result_5 = PHI <0(6), result_16(7)> # DEBUG result => result_5 # DEBUG BEGIN_STMT # DEBUG base => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _30 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _31 = _30 & 16777216; # DEBUG base => NULL # DEBUG freeze => _31 != 0 # DEBUG BEGIN_STMT if (_31 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 26844]: if (result_5 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 40265]: # DEBUG result => result_5 # DEBUG BEGIN_STMT if (result_5 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 13288]: # DEBUG BEGIN_STMT SchM_Enter_Can_CAN_EXCLUSIVE_AREA_14 (); # DEBUG BEGIN_STMT FlexCAN_EnhCbtEnable (pBase_14, enhExt_18(D)); # DEBUG BEGIN_STMT if (enhExt_18(D) != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 4385]: # DEBUG BEGIN_STMT FlexCAN_SetEnhancedNominalTimeSegments (pBase_14, bitrate_13(D)); goto ; [100.00%] [local count: 8903]: # DEBUG BEGIN_STMT # DEBUG pBase => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsExCbtEnabled # DEBUG BEGIN_STMT _32 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].CBT; _33 = (signed int) _32; # DEBUG pBase => NULL if (_33 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 3650]: # DEBUG BEGIN_STMT FlexCAN_SetExtendedTimeSegments (pBase_14, bitrate_13(D)); goto ; [100.00%] [local count: 5253]: # DEBUG BEGIN_STMT FlexCAN_SetTimeSegments (pBase_14, bitrate_13(D)); [local count: 13288]: # DEBUG BEGIN_STMT SchM_Exit_Can_CAN_EXCLUSIVE_AREA_14 (); [local count: 53687]: # result_4 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_27 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 13690]: # DEBUG BEGIN_STMT status_25 = FlexCAN_Disable (pBase_14); # DEBUG status => status_25 # DEBUG BEGIN_STMT if (status_25 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 6845]: # DEBUG BEGIN_STMT # DEBUG result => status_25 [local count: 53687]: # result_6 = PHI # DEBUG result => result_6 # DEBUG BEGIN_STMT return result_6; } FlexCAN_Ip_SetRxMaskType_Privileged (uint8 instance, Flexcan_Ip_RxMaskType type) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _18; signed int _19; _Bool x.0_20; long unsigned int _21; long unsigned int _22; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_8(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_20 ={v} x; if (x.0_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) instance_8(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _18 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _19 = (signed int) _18; # DEBUG pBase => NULL # DEBUG disabled => _19 < 0 # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 [local count: 107374]: # result_3 = PHI <0(4), result_13(5)> # DEBUG result => result_3 # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _21 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _22 = _21 & 16777216; # DEBUG base => NULL # DEBUG freeze => _22 != 0 # DEBUG BEGIN_STMT if (_22 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_3 # DEBUG BEGIN_STMT if (result_3 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 26575]: # DEBUG BEGIN_STMT FlexCAN_SetRxMaskType (pBase_11, type_14(D)); [local count: 107374]: # result_10 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_19 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_17 = FlexCAN_Disable (pBase_11); # DEBUG status => status_17 # DEBUG BEGIN_STMT if (status_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_17 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_SetStopMode_Privileged (uint8 instance) { volatile boolean x; Flexcan_Ip_StatusType status; struct FLEXCAN_Type * pBase; _Bool _1; int _2; _Bool x.0_12; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_5(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_12 ={v} x; if (x.0_12 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) instance_5(D); pBase_7 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_7 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT status_9 = FlexCAN_EnterFreezeMode (pBase_7); # DEBUG status => status_9 # DEBUG BEGIN_STMT if (status_9 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 35433]: # DEBUG BEGIN_STMT status_11 = FlexCAN_Disable (pBase_7); # DEBUG status => status_11 [local count: 107374]: # status_3 = PHI # DEBUG status => status_3 # DEBUG BEGIN_STMT return status_3; } FlexCAN_Ip_SetStartMode_Privileged (uint8 instance) { volatile boolean x; struct FLEXCAN_Type * pBase; _Bool _1; int _2; long unsigned int _3; long unsigned int _4; Flexcan_Ip_StatusType _10; _Bool x.0_11; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_5(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_11 ={v} x; if (x.0_11 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) instance_5(D); pBase_7 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_7 # DEBUG BEGIN_STMT _3 ={v} pBase_7->MCR; _4 = _3 & 2147483647; pBase_7->MCR ={v} _4; # DEBUG BEGIN_STMT _10 = FlexCAN_ExitFreezeMode (pBase_7); return _10; } FlexCAN_Ip_GetStartMode_Privileged (uint8 instance) { const struct FLEXCAN_Type * base; int _1; long unsigned int _2; long unsigned int _3; boolean _7; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = (int) instance_4(D); base_6 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_6 # DEBUG BEGIN_STMT _2 ={v} base_6->MCR; _3 = _2 & 17825792; _7 = _3 == 0; return _7; } FlexCAN_Ip_GetStopMode_Privileged (uint8 instance) { const struct FLEXCAN_Type * base; int _1; long unsigned int _2; long unsigned int _3; boolean _7; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = (int) instance_4(D); base_6 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_6 # DEBUG BEGIN_STMT _2 ={v} base_6->MCR; _3 = _2 & 1048576; _7 = _3 != 0; return _7; } FlexCAN_Ip_MainFunctionWrite (uint8 instance, uint8 mb_idx) { volatile boolean x; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; _Bool _2; long unsigned int _3; unsigned char _4; int _5; long unsigned int _6; _Bool x.0_18; long unsigned int vol.5_19; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_8(D); base_10 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_10 # DEBUG BEGIN_STMT state_11 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_11 # DEBUG BEGIN_STMT _2 = instance_8(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_18 ={v} x; if (x.0_18 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = (long unsigned int) mb_idx_12(D); _4 = FlexCAN_GetBuffStatusFlag (base_10, _3); if (_4 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 35433]: # DEBUG BEGIN_STMT _5 = (int) mb_idx_12(D); _6 = FlexCAN_GetMsgBuffTimestamp (base_10, _3); state_11->mbs[_5].time_stamp = _6; # DEBUG BEGIN_STMT # DEBUG base => base_10 # DEBUG INLINE_ENTRY FlexCAN_UnlockRxMsgBuff # DEBUG BEGIN_STMT vol.5_19 ={v} MEM[(const struct FLEXCAN_Type *)base_10].TIMER; # DEBUG base => NULL # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_10, _3); # DEBUG BEGIN_STMT state_11->mbs[_5].state ={v} 0; [local count: 107374]: return; } FlexCAN_Ip_MainFunctionBusOff_Privileged (uint8 instance) { volatile boolean x; uint32 u32ErrStatus; const struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; Flexcan_Ip_StatusType eRetVal; int _1; _Bool _2; long unsigned int _3; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _4; _Bool x.0_15; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG eRetVal => 1 # DEBUG BEGIN_STMT _1 = (int) instance_8(D); base_10 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_10 # DEBUG BEGIN_STMT state_11 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_11 # DEBUG BEGIN_STMT # DEBUG u32ErrStatus => 0 # DEBUG BEGIN_STMT _2 = instance_8(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_15 ={v} x; if (x.0_15 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT u32ErrStatus_12 ={v} base_10->ESR1; # DEBUG u32ErrStatus => u32ErrStatus_12 # DEBUG BEGIN_STMT _3 = u32ErrStatus_12 & 4; if (_3 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: # DEBUG BEGIN_STMT _4 = state_11->error_callback; if (_4 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 37581]: # DEBUG BEGIN_STMT _4 (instance_8(D), 11, u32ErrStatus_12, state_11); [local count: 53687]: # DEBUG BEGIN_STMT base_10->ESR1 ={v} 4; # DEBUG BEGIN_STMT # DEBUG eRetVal => 0 [local count: 107374]: # eRetVal_5 = PHI <1(4), 0(7)> # DEBUG eRetVal => eRetVal_5 # DEBUG BEGIN_STMT return eRetVal_5; } FlexCAN_Ip_MainFunctionRead (uint8 instance, uint8 mb_idx) { uint32 flag; volatile boolean x; volatile boolean x; const struct Flexcan_Ip_StateType * state; const struct FLEXCAN_Type * base; int _1; _Bool _2; unsigned char _3; _Bool _4; _Bool _5; _Bool _6; long unsigned int _7; unsigned char _8; int _9; _10; _Bool x.0_22; _Bool x.0_23; long unsigned int _24; signed int _25; long unsigned int _26; long unsigned int _27; unsigned char _28; long unsigned int _29; long unsigned int _31; long unsigned int _32; unsigned char _33; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_12(D); base_14 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_14 # DEBUG BEGIN_STMT state_15 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_15 # DEBUG BEGIN_STMT _2 = instance_12(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_23 ={v} x; if (x.0_23 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = mb_idx_16(D) + 160; _4 = _3 > 158; x ={v} _4; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_22 ={v} x; if (x.0_22 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT if (mb_idx_16(D) == 255) goto ; [20.24%] else goto ; [79.76%] [local count: 10866]: # DEBUG BEGIN_STMT _5 = FlexCAN_IsEnhancedRxFifoAvailable (base_14); if (_5 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 5433]: # DEBUG BEGIN_STMT # DEBUG base => base_14 # DEBUG INLINE_ENTRY FlexCAN_IsEnhancedRxFifoEnabled # DEBUG BEGIN_STMT _24 ={v} base_14->ERFCR; _25 = (signed int) _24; # DEBUG base => NULL if (_25 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 2228]: # DEBUG BEGIN_STMT # DEBUG base => base_14 # DEBUG intFlag => 28 # DEBUG INLINE_ENTRY FlexCAN_GetEnhancedRxFIFOStatusFlag # DEBUG BEGIN_STMT _26 ={v} base_14->ERFSR; _31 = _26 >> 28; _27 = _31 & 1; _28 = (unsigned char) _27; # DEBUG base => NULL # DEBUG intFlag => NULL if (_28 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 735]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerEnhancedRxFIFO (instance_12(D), 28); goto ; [100.00%] [local count: 42821]: # DEBUG BEGIN_STMT _6 = state_15->bIsLegacyFifoEn; if (_6 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 28690]: if (mb_idx_16(D) <= 7) goto ; [50.00%] else goto ; [50.00%] [local count: 14345]: # DEBUG BEGIN_STMT if (mb_idx_16(D) == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 7172]: # DEBUG BEGIN_STMT # DEBUG base => base_14 # DEBUG msgBuffIdx => 5 # DEBUG INLINE_ENTRY FlexCAN_GetBuffStatusFlag # DEBUG BEGIN_STMT # DEBUG flag => 0 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _29 ={v} base_14->IFLAG1; _32 = _29 >> 5; flag_30 = _32 & 1; # DEBUG flag => flag_30 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _33 = (unsigned char) flag_30; # DEBUG base => NULL # DEBUG msgBuffIdx => NULL # DEBUG flag => NULL if (_33 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 2367]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerRxFIFO (instance_12(D), 5); goto ; [100.00%] [local count: 28476]: # DEBUG BEGIN_STMT _7 = (long unsigned int) mb_idx_16(D); _8 = FlexCAN_GetBuffStatusFlag (base_14, _7); if (_8 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 14238]: # DEBUG BEGIN_STMT _9 = (int) mb_idx_16(D); _10 ={v} state_15->mbs[_9].state; if (_10 == 1) goto ; [20.24%] else goto ; [79.76%] [local count: 2882]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerRxMB (instance_12(D), _7); [local count: 53687]: return; } FlexCAN_Ip_Deinit_Privileged (uint8 instance) { volatile boolean x; Flexcan_Ip_StatusType result; struct FLEXCAN_Type * base; int _1; _Bool _2; _Bool x.0_12; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_4(D); base_6 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_6 # DEBUG BEGIN_STMT # DEBUG result => 1 # DEBUG BEGIN_STMT _2 = instance_4(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_12 ={v} x; if (x.0_12 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT result_8 = FlexCAN_EnterFreezeMode (base_6); # DEBUG result => result_8 # DEBUG BEGIN_STMT if (result_8 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 35433]: # DEBUG BEGIN_STMT FlexCAN_SetRegDefaultVal (base_6); # DEBUG BEGIN_STMT FlexCAN_Disable (base_6); # DEBUG BEGIN_STMT g_flexcan_Ip_StatePtr[_1] = 0B; [local count: 107374]: # DEBUG BEGIN_STMT return result_8; } FlexCAN_Ip_SetRxFifoGlobalMask_Privileged (uint8 instance, uint32 mask) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _17; signed int _18; _Bool x.0_19; long unsigned int _20; long unsigned int _21; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_8(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_19 ={v} x; if (x.0_19 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) instance_8(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _17 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _18 = (signed int) _17; # DEBUG pBase => NULL # DEBUG disabled => _18 < 0 # DEBUG BEGIN_STMT if (_18 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 [local count: 107374]: # result_3 = PHI <0(4), result_13(5)> # DEBUG result => result_3 # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _20 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _21 = _20 & 16777216; # DEBUG base => NULL # DEBUG freeze => _21 != 0 # DEBUG BEGIN_STMT if (_21 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_3 # DEBUG BEGIN_STMT if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 40265]: # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG Mask => mask_14(D) # DEBUG INLINE_ENTRY FlexCAN_SetRxFifoGlobalMask # DEBUG BEGIN_STMT pBase_11->RXFGMASK ={v} mask_14(D); [local count: 107374]: # result_10 = PHI # DEBUG result => NULL # DEBUG base => NULL # DEBUG Mask => NULL # DEBUG BEGIN_STMT if (_18 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_16 = FlexCAN_Disable (pBase_11); # DEBUG status => status_16 # DEBUG BEGIN_STMT if (status_16 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_16 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_SetRxIndividualMask_Privileged (uint8 instance, uint8 mb_idx, uint32 mask) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; int _1; _Bool _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; _Bool x.0_21; long unsigned int _22; signed int _23; long unsigned int _24; long unsigned int _25; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _1 = (int) instance_12(D); pBase_14 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_14 # DEBUG BEGIN_STMT # DEBUG freeze => 0 # DEBUG BEGIN_STMT _2 = instance_12(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_21 ={v} x; if (x.0_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = (long unsigned int) mb_idx_15(D); _4 ={v} pBase_14->MCR; _5 = _4 & 127; if (_3 > _5) goto ; [35.00%] else goto ; [65.00%] [local count: 69793]: if (mb_idx_15(D) > 95) goto ; [35.00%] else goto ; [65.00%] [local count: 45366]: # DEBUG BEGIN_STMT # DEBUG pBase => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _22 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _23 = (signed int) _22; # DEBUG pBase => NULL # DEBUG disabled => _23 < 0 # DEBUG BEGIN_STMT if (_23 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 11568]: # DEBUG BEGIN_STMT result_17 = FlexCAN_Enable (pBase_14); # DEBUG result => result_17 [local count: 45366]: # result_6 = PHI <0(6), result_17(7)> # DEBUG result => result_6 # DEBUG BEGIN_STMT # DEBUG base => pBase_14 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _24 ={v} MEM[(const struct FLEXCAN_Type *)pBase_14].MCR; _25 = _24 & 16777216; # DEBUG base => NULL # DEBUG freeze => _25 != 0 # DEBUG BEGIN_STMT if (_25 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 22683]: if (result_6 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 34024]: # DEBUG result => result_6 # DEBUG BEGIN_STMT if (result_6 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 17012]: # DEBUG BEGIN_STMT # DEBUG base => pBase_14 # DEBUG msgBuffIdx => _3 # DEBUG mask => mask_18(D) # DEBUG INLINE_ENTRY FlexCAN_SetRxIndividualMask # DEBUG BEGIN_STMT pBase_14->RXIMR[_3] ={v} mask_18(D); [local count: 45366]: # result_11 = PHI # DEBUG result => NULL # DEBUG base => NULL # DEBUG msgBuffIdx => NULL # DEBUG mask => NULL # DEBUG BEGIN_STMT if (_23 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 11568]: # DEBUG BEGIN_STMT status_20 = FlexCAN_Disable (pBase_14); # DEBUG status => status_20 # DEBUG BEGIN_STMT if (status_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 5784]: # DEBUG BEGIN_STMT # DEBUG result => status_20 [local count: 107374]: # result_7 = PHI <4(5), result_11(12), result_11(13), status_20(14), 4(4)> # DEBUG result => result_7 # DEBUG BEGIN_STMT return result_7; } FlexCAN_Ip_ExitFreezeMode_Privileged (uint8 instance) { struct FLEXCAN_Type * base; int _1; Flexcan_Ip_StatusType _6; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = (int) instance_2(D); base_4 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_4 # DEBUG BEGIN_STMT _6 = FlexCAN_ExitFreezeMode (base_4); return _6; } FlexCAN_Ip_EnterFreezeMode_Privileged (uint8 instance) { struct FLEXCAN_Type * base; int _1; Flexcan_Ip_StatusType _6; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = (int) instance_2(D); base_4 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_4 # DEBUG BEGIN_STMT _6 = FlexCAN_EnterFreezeMode (base_4); return _6; } FlexCAN_Ip_SetRxMbGlobalMask_Privileged (uint8 instance, uint32 mask) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; int _1; _Bool _2; long unsigned int _17; signed int _18; _Bool x.0_19; long unsigned int _20; long unsigned int _21; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _1 = (int) instance_9(D); pBase_11 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG freeze => 0 # DEBUG BEGIN_STMT _2 = instance_9(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_19 ={v} x; if (x.0_19 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _17 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _18 = (signed int) _17; # DEBUG pBase => NULL # DEBUG disabled => _18 < 0 # DEBUG BEGIN_STMT if (_18 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 [local count: 107374]: # result_3 = PHI <0(4), result_13(5)> # DEBUG result => result_3 # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _20 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _21 = _20 & 16777216; # DEBUG base => NULL # DEBUG freeze => _21 != 0 # DEBUG BEGIN_STMT if (_21 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_3 # DEBUG BEGIN_STMT if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 40265]: # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG Mask => mask_14(D) # DEBUG INLINE_ENTRY FlexCAN_SetRxMsgBuffGlobalMask # DEBUG BEGIN_STMT pBase_11->RXMGMASK ={v} mask_14(D); [local count: 107374]: # result_8 = PHI # DEBUG result => NULL # DEBUG base => NULL # DEBUG Mask => NULL # DEBUG BEGIN_STMT if (_18 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_16 = FlexCAN_Disable (pBase_11); # DEBUG status => status_16 # DEBUG BEGIN_STMT if (status_16 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_16 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_SendBlocking (uint8 instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * tx_info, uint32 msg_id, const uint8 * mb_data, uint32 timeout_ms) { volatile boolean x; volatile boolean x; volatile uint32 * flexcan_mb; uint32 flexcan_mb_config; uint32 uS2Ticks; uint32 mS2Ticks; uint32 timeElapsed; uint32 timeStart; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; Flexcan_Ip_StatusType result; int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; _Bool _5; _Bool _6; long unsigned int _7; unsigned char _8; int _9; _10; long unsigned int _11; unsigned char _12; long unsigned int _13; long unsigned int _14; int _15; long unsigned int _45; long unsigned int _60; _Bool x.0_66; _Bool x.0_67; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) instance_28(D); base_30 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_30 # DEBUG BEGIN_STMT state_31 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_31 # DEBUG BEGIN_STMT _3 = OsIf_GetCounter (0); timeStart = _3; # DEBUG BEGIN_STMT # DEBUG timeElapsed => 0 # DEBUG BEGIN_STMT _4 = timeout_ms_34(D) * 1000; mS2Ticks_36 = OsIf_MicrosToTicks (_4, 0); # DEBUG mS2Ticks => mS2Ticks_36 # DEBUG BEGIN_STMT # DEBUG uS2Ticks => 0 # DEBUG BEGIN_STMT # DEBUG flexcan_mb_config => 0 # DEBUG BEGIN_STMT # DEBUG flexcan_mb => 0B # DEBUG BEGIN_STMT _5 = instance_28(D) <= 5; x ={v} _5; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_67 ={v} x; if (x.0_67 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _6 = tx_info_37(D) != 0B; x ={v} _6; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_66 ={v} x; if (x.0_66 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT result_42 = FlexCAN_StartSendData (instance_28(D), mb_idx_38(D), tx_info_37(D), msg_id_39(D), mb_data_40(D)); # DEBUG result => result_42 # DEBUG BEGIN_STMT if (result_42 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 26844]: goto ; [100.00%] [local count: 237131]: # DEBUG BEGIN_STMT _45 = OsIf_GetElapsed (&timeStart, 0); timeElapsed_46 = timeElapsed_20 + _45; # DEBUG timeElapsed => timeElapsed_46 # DEBUG BEGIN_STMT if (mS2Ticks_36 <= timeElapsed_46) goto ; [5.50%] else goto ; [94.50%] [local count: 224089]: [local count: 250932]: # timeElapsed_20 = PHI <0(20), timeElapsed_46(24)> # DEBUG timeElapsed => timeElapsed_20 # DEBUG BEGIN_STMT _7 = (long unsigned int) mb_idx_38(D); _8 = FlexCAN_GetBuffStatusFlag (base_30, _7); if (_8 != 1) goto ; [94.50%] else goto ; [5.50%] [local count: 26843]: # result_16 = PHI <3(7), 0(8)> # _2 = PHI <_7(7), _7(8)> # DEBUG result => result_16 # DEBUG BEGIN_STMT if (result_16 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 9127]: _9 = (int) mb_idx_38(D); _10 ={v} state_31->mbs[_9].state; if (_10 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 3012]: # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_30, _2); # DEBUG BEGIN_STMT flexcan_mb_49 = FlexCAN_GetMsgBuffRegion (base_30, _2); # DEBUG flexcan_mb => flexcan_mb_49 # DEBUG BEGIN_STMT flexcan_mb_config_50 ={v} *flexcan_mb_49; # DEBUG flexcan_mb_config => flexcan_mb_config_50 # DEBUG BEGIN_STMT flexcan_mb_config_51 = flexcan_mb_config_50 & 4043309055; # DEBUG flexcan_mb_config => flexcan_mb_config_51 # DEBUG BEGIN_STMT flexcan_mb_config_52 = flexcan_mb_config_51 | 150994944; # DEBUG flexcan_mb_config => flexcan_mb_config_52 # DEBUG BEGIN_STMT *flexcan_mb_49 ={v} flexcan_mb_config_52; # DEBUG BEGIN_STMT uS2Ticks_55 = OsIf_MicrosToTicks (100, 0); # DEBUG uS2Ticks => uS2Ticks_55 # DEBUG BEGIN_STMT _11 = OsIf_GetCounter (0); timeStart = _11; # DEBUG BEGIN_STMT # DEBUG timeElapsed => 0 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 26606]: # DEBUG BEGIN_STMT _60 = OsIf_GetElapsed (&timeStart, 0); timeElapsed_61 = timeElapsed_21 + _60; # DEBUG timeElapsed => timeElapsed_61 # DEBUG BEGIN_STMT if (uS2Ticks_55 <= timeElapsed_61) goto ; [5.50%] else goto ; [94.50%] [local count: 25143]: [local count: 28155]: # timeElapsed_21 = PHI <0(11), timeElapsed_61(23)> # DEBUG timeElapsed => timeElapsed_21 # DEBUG BEGIN_STMT _12 = FlexCAN_GetBuffStatusFlag (base_30, _2); if (_12 == 0) goto ; [94.50%] else goto ; [5.50%] [local count: 3012]: # DEBUG result => 3 # DEBUG BEGIN_STMT flexcan_mb_config_62 ={v} *flexcan_mb_49; # DEBUG flexcan_mb_config => flexcan_mb_config_62 # DEBUG BEGIN_STMT _13 = flexcan_mb_config_62 >> 24; _14 = _13 & 15; if (_14 == 8) goto ; [34.00%] else goto ; [66.00%] [local count: 1024]: # DEBUG BEGIN_STMT # DEBUG result => 0 [local count: 3012]: # result_17 = PHI <3(14), 0(15)> # DEBUG result => result_17 # DEBUG BEGIN_STMT if (_14 == 9) goto ; [34.00%] else goto ; [66.00%] [local count: 1024]: # DEBUG BEGIN_STMT # DEBUG result => 3 [local count: 26843]: # result_18 = PHI # DEBUG result => result_18 # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_30, _2); # DEBUG BEGIN_STMT _15 = (int) mb_idx_38(D); state_31->mbs[_15].state ={v} 0; [local count: 53687]: # result_19 = PHI # DEBUG result => result_19 # DEBUG BEGIN_STMT timeStart ={v} {CLOBBER}; return result_19; } FlexCAN_Busoff_Error_IRQHandler (uint8 instance) { volatile boolean x; boolean isSpuriousInt; uint32 u32ErrStatus; const struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * pBase; int _1; _Bool _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _6; long unsigned int _7; long unsigned int _8; signed int _9; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _14; long unsigned int _15; long unsigned int _16; long unsigned int _17; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _18; long unsigned int _19; long unsigned int _20; long unsigned int _21; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _22; _Bool x.0_57; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_36(D); pBase_38 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_38 # DEBUG BEGIN_STMT state_39 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_39 # DEBUG BEGIN_STMT # DEBUG u32ErrStatus => 0 # DEBUG BEGIN_STMT # DEBUG isSpuriousInt => 1 # DEBUG BEGIN_STMT _2 = instance_36(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_57 ={v} x; if (x.0_57 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT if (state_39 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 75162]: # DEBUG BEGIN_STMT u32ErrStatus_40 ={v} pBase_38->ESR1; # DEBUG u32ErrStatus => u32ErrStatus_40 # DEBUG BEGIN_STMT _3 = u32ErrStatus_40 & 2; if (_3 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 37581]: _4 ={v} pBase_38->CTRL1; _5 = _4 & 16384; if (_5 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 18790]: # DEBUG BEGIN_STMT pBase_38->ESR1 ={v} 2; # DEBUG BEGIN_STMT _6 = state_39->error_callback; if (_6 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 13153]: # DEBUG BEGIN_STMT _6 (instance_36(D), 9, u32ErrStatus_40, state_39); # DEBUG BEGIN_STMT u32ErrStatus_43 ={v} pBase_38->ESR1; # DEBUG u32ErrStatus => u32ErrStatus_43 [local count: 75162]: # u32ErrStatus_23 = PHI # isSpuriousInt_27 = PHI <1(5), 1(6), 0(8), 0(7)> # DEBUG isSpuriousInt => isSpuriousInt_27 # DEBUG u32ErrStatus => u32ErrStatus_23 # DEBUG BEGIN_STMT _7 = u32ErrStatus_23 & 1048576; if (_7 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 37581]: _8 ={v} pBase_38->CTRL2; _9 = (signed int) _8; if (_9 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 15408]: # DEBUG BEGIN_STMT pBase_38->ESR1 ={v} 1048576; # DEBUG BEGIN_STMT _10 = state_39->error_callback; if (_10 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 10786]: # DEBUG BEGIN_STMT _10 (instance_36(D), 10, u32ErrStatus_23, state_39); # DEBUG BEGIN_STMT u32ErrStatus_46 ={v} pBase_38->ESR1; # DEBUG u32ErrStatus => u32ErrStatus_46 [local count: 75162]: # u32ErrStatus_24 = PHI # isSpuriousInt_28 = PHI # DEBUG isSpuriousInt => isSpuriousInt_28 # DEBUG u32ErrStatus => u32ErrStatus_24 # DEBUG BEGIN_STMT _11 = u32ErrStatus_24 & 131072; if (_11 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 37581]: _12 ={v} pBase_38->CTRL1; _13 = _12 & 2048; if (_13 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 18790]: # DEBUG BEGIN_STMT pBase_38->ESR1 ={v} 131072; # DEBUG BEGIN_STMT _14 = state_39->error_callback; if (_14 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 13153]: # DEBUG BEGIN_STMT _14 (instance_36(D), 13, u32ErrStatus_24, state_39); # DEBUG BEGIN_STMT u32ErrStatus_49 ={v} pBase_38->ESR1; # DEBUG u32ErrStatus => u32ErrStatus_49 [local count: 75162]: # u32ErrStatus_25 = PHI # isSpuriousInt_29 = PHI # DEBUG isSpuriousInt => isSpuriousInt_29 # DEBUG u32ErrStatus => u32ErrStatus_25 # DEBUG BEGIN_STMT _15 = u32ErrStatus_25 & 65536; if (_15 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 37581]: _16 ={v} pBase_38->CTRL1; _17 = _16 & 1024; if (_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 18790]: # DEBUG BEGIN_STMT pBase_38->ESR1 ={v} 65536; # DEBUG BEGIN_STMT _18 = state_39->error_callback; if (_18 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 13153]: # DEBUG BEGIN_STMT _18 (instance_36(D), 12, u32ErrStatus_25, state_39); # DEBUG BEGIN_STMT u32ErrStatus_53 ={v} pBase_38->ESR1; # DEBUG u32ErrStatus => u32ErrStatus_53 [local count: 75162]: # u32ErrStatus_26 = PHI # isSpuriousInt_30 = PHI # DEBUG isSpuriousInt => isSpuriousInt_30 # DEBUG u32ErrStatus => u32ErrStatus_26 # DEBUG BEGIN_STMT _19 = u32ErrStatus_26 & 4; if (_19 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 37581]: _20 ={v} pBase_38->CTRL1; _21 = _20 & 32768; if (_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 18790]: # DEBUG BEGIN_STMT pBase_38->ESR1 ={v} 4; # DEBUG BEGIN_STMT _22 = state_39->error_callback; if (_22 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 13153]: # DEBUG BEGIN_STMT _22 (instance_36(D), 11, u32ErrStatus_26, state_39); goto ; [100.00%] [local count: 56371]: # DEBUG isSpuriousInt => isSpuriousInt_30 # DEBUG BEGIN_STMT if (isSpuriousInt_30 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 60398]: # DEBUG isSpuriousInt => NULL # DEBUG BEGIN_STMT pBase_38->ESR1 ={v} 3866630; [local count: 107374]: # DEBUG isSpuriousInt => NULL return; } FlexCAN_Ip_GetControllerRxErrorCounter (uint8 instance) { volatile boolean x; const struct FLEXCAN_Type * base; int _1; _Bool _2; long unsigned int _3; long unsigned int _4; uint8 _8; _Bool x.0_9; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_5(D); base_7 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_7 # DEBUG BEGIN_STMT _2 = instance_5(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_9 ={v} x; if (x.0_9 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 ={v} base_7->ECR; _4 = _3 >> 8; _8 = (uint8) _4; return _8; } FlexCAN_Ip_GetControllerTxErrorCounter (uint8 instance) { volatile boolean x; const struct FLEXCAN_Type * base; int _1; _Bool _2; long unsigned int _3; uint8 _7; _Bool x.0_8; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_4(D); base_6 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_6 # DEBUG BEGIN_STMT _2 = instance_4(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_8 ={v} x; if (x.0_8 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 ={v} base_6->ECR; _7 = (uint8) _3; return _7; } FlexCAN_Ip_GetErrorStatus (uint8 instance) { volatile boolean x; const struct FLEXCAN_Type * base; int _1; _Bool _2; uint32 _6; _Bool x.0_7; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_3(D); base_5 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_5 # DEBUG BEGIN_STMT _2 = instance_3(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_7 ={v} x; if (x.0_7 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _6 ={v} base_5->ESR1; return _6; } FlexCAN_Ip_ClearErrorStatus (uint8 instance, uint32 error) { volatile boolean x; struct FLEXCAN_Type * base; int _1; _Bool _2; _Bool x.0_8; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_3(D); base_5 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_5 # DEBUG BEGIN_STMT _2 = instance_3(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_8 ={v} x; if (x.0_8 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT base_5->ESR1 ={v} error_6(D); return; } FlexCAN_IRQHandler (uint8 instance, uint32 startMbIdx, uint32 endMbIdx, boolean bEnhancedFifoExisted) { volatile boolean x; volatile boolean x; uint32 mb_idx; boolean bIsSpuriousInt; const struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; uint32 flag_reg; uint32 u32MbHandle; int _1; _Bool _3; _Bool _4; unsigned char _5; unsigned char _6; _Bool _7; _8; _9; unsigned char _10; _11; _12; _Bool x.0_49; _Bool x.0_50; long unsigned int _51; signed int _52; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG u32MbHandle => 0 # DEBUG BEGIN_STMT # DEBUG flag_reg => 0 # DEBUG BEGIN_STMT _1 = (int) instance_26(D); base_28 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_28 # DEBUG BEGIN_STMT state_29 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_29 # DEBUG BEGIN_STMT # DEBUG bIsSpuriousInt => 1 # DEBUG BEGIN_STMT # DEBUG mb_idx => endMbIdx_30(D) # DEBUG BEGIN_STMT _3 = instance_26(D) <= 5; x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_50 ={v} x; if (x.0_50 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _4 = endMbIdx_30(D) <= 95; x ={v} _4; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_49 ={v} x; if (x.0_49 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT if (state_29 != 0B) goto ; [53.47%] else goto ; [46.53%] [local count: 24981]: goto ; [100.00%] [local count: 28706]: # DEBUG BEGIN_STMT _5 = FlexCAN_GetMsgBuffIntStatusFlag (base_28, endMbIdx_30(D)); flag_reg_36 = (uint32) _5; # DEBUG flag_reg => flag_reg_36 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 239641]: # DEBUG BEGIN_STMT mb_idx_37 = mb_idx_17 + 4294967295; # DEBUG mb_idx => mb_idx_37 # DEBUG BEGIN_STMT _6 = FlexCAN_GetMsgBuffIntStatusFlag (base_28, mb_idx_37); flag_reg_39 = (uint32) _6; # DEBUG flag_reg => flag_reg_39 [local count: 268347]: # flag_reg_14 = PHI # mb_idx_17 = PHI # DEBUG mb_idx => mb_idx_17 # DEBUG flag_reg => flag_reg_14 # DEBUG BEGIN_STMT if (flag_reg_14 == 0) goto ; [94.50%] else goto ; [5.50%] [local count: 253588]: if (mb_idx_17 > startMbIdx_31(D)) goto ; [94.50%] else goto ; [5.50%] [local count: 28706]: # flag_reg_2 = PHI # mb_idx_40 = PHI # DEBUG BEGIN_STMT if (flag_reg_2 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 14353]: # DEBUG BEGIN_STMT # DEBUG bIsSpuriousInt => 0 # DEBUG BEGIN_STMT # DEBUG u32MbHandle => mb_idx_40 # DEBUG BEGIN_STMT _7 = state_29->bIsLegacyFifoEn; if (_7 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 7177]: if (mb_idx_40 <= 7) goto ; [33.00%] else goto ; [67.00%] [local count: 2368]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerRxFIFO (instance_26(D), mb_idx_40); # DEBUG BEGIN_STMT # DEBUG u32MbHandle => 0 goto ; [100.00%] [local count: 11985]: # DEBUG BEGIN_STMT _8 ={v} state_29->mbs[mb_idx_40].state; if (_8 == 1) goto ; [20.24%] else goto ; [79.76%] [local count: 2426]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerRxMB (instance_26(D), mb_idx_40); [local count: 14353]: # u32MbHandle_13 = PHI <0(14), mb_idx_40(15), mb_idx_40(16)> # DEBUG u32MbHandle => u32MbHandle_13 # DEBUG BEGIN_STMT _9 ={v} state_29->mbs[u32MbHandle_13].state; if (_9 == 2) goto ; [20.24%] else goto ; [79.76%] [local count: 2905]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerTxMB (instance_26(D), mb_idx_40); [local count: 14353]: # DEBUG BEGIN_STMT _10 = FlexCAN_GetMsgBuffIntStatusFlag (base_28, mb_idx_40); if (_10 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 7177]: # DEBUG BEGIN_STMT _11 ={v} state_29->mbs[u32MbHandle_13].state; if (_11 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 2368]: # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_28, mb_idx_40); [local count: 28706]: # bIsSpuriousInt_15 = PHI <1(11), 0(19), 0(20), 0(21)> # DEBUG bIsSpuriousInt => bIsSpuriousInt_15 # DEBUG BEGIN_STMT if (bEnhancedFifoExisted_32(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 14353]: # DEBUG BEGIN_STMT # DEBUG base => base_28 # DEBUG INLINE_ENTRY FlexCAN_IsEnhancedRxFifoEnabled # DEBUG BEGIN_STMT _51 ={v} MEM[(const struct FLEXCAN_Type *)base_28].ERFCR; _52 = (signed int) _51; # DEBUG base => NULL if (_52 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 5885]: _12 = state_29->transferType; if (_12 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 1942]: # DEBUG BEGIN_STMT bIsSpuriousInt_47 = FlexCAN_ProcessIRQHandlerEnhancedRxFIFO (instance_26(D), bIsSpuriousInt_15); # DEBUG bIsSpuriousInt => bIsSpuriousInt_47 [local count: 28706]: # bIsSpuriousInt_16 = PHI # DEBUG bIsSpuriousInt => bIsSpuriousInt_16 # DEBUG BEGIN_STMT if (bIsSpuriousInt_16 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 9473]: # DEBUG BEGIN_STMT FlexCAN_ProcessSpuriousInterruptMB (instance_26(D), startMbIdx_31(D), endMbIdx_30(D)); goto ; [100.00%] [local count: 202115]: # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_28, mb_idx_18); # DEBUG BEGIN_STMT mb_idx_34 = mb_idx_18 + 1; # DEBUG mb_idx => mb_idx_34 [local count: 227096]: # mb_idx_18 = PHI # DEBUG mb_idx => mb_idx_18 # DEBUG BEGIN_STMT if (mb_idx_18 <= endMbIdx_30(D)) goto ; [89.00%] else goto ; [11.00%] [local count: 24981]: # DEBUG BEGIN_STMT if (bEnhancedFifoExisted_32(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 12490]: # DEBUG BEGIN_STMT # DEBUG base => base_28 # DEBUG intFlag => 28 # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT base_28->ERFSR ={v} 268435456; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT # DEBUG base => base_28 # DEBUG intFlag => 29 # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT base_28->ERFSR ={v} 536870912; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT # DEBUG base => base_28 # DEBUG intFlag => 30 # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT base_28->ERFSR ={v} 1073741824; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT # DEBUG base => base_28 # DEBUG intFlag => 31 # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT base_28->ERFSR ={v} 2147483648; [local count: 53687]: # DEBUG base => NULL # DEBUG intFlag => NULL return; } FlexCAN_CompleteRxMessageFifoData (uint8 instance) { volatile boolean x; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; _Bool _2; _3; _Bool _4; _Bool _5; _Bool _6; _Bool x.0_17; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_8(D); base_10 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_10 # DEBUG BEGIN_STMT state_11 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_11 # DEBUG BEGIN_STMT _2 = instance_8(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_17 ={v} x; if (x.0_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = state_11->transferType; if (_3 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 35433]: # DEBUG BEGIN_STMT _4 = state_11->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_10, instance_8(D), 5, 0, _4); # DEBUG BEGIN_STMT _5 = state_11->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_10, instance_8(D), 6, 0, _5); # DEBUG BEGIN_STMT _6 = state_11->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_10, instance_8(D), 7, 0, _6); [local count: 107374]: # DEBUG BEGIN_STMT state_11->mbs[0].pMBmessage = 0B; # DEBUG BEGIN_STMT state_11->mbs[0].state ={v} 0; return; } FlexCAN_Ip_GetTransferStatus (uint8 instance, uint8 mb_idx) { volatile boolean x; volatile boolean x; Flexcan_Ip_StatusType status; const struct Flexcan_Ip_StateType * state; int _1; _Bool _2; unsigned char _3; _Bool _4; int _5; _6; _7; _Bool x.0_13; _Bool x.0_14; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_9(D); state_11 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_11 # DEBUG BEGIN_STMT # DEBUG status => 1 # DEBUG BEGIN_STMT _2 = instance_9(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_14 ={v} x; if (x.0_14 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = mb_idx_12(D) + 160; _4 = _3 > 158; x ={v} _4; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_13 ={v} x; if (x.0_13 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT if (mb_idx_12(D) <= 95) goto ; [50.00%] else goto ; [50.00%] [local count: 26844]: # DEBUG BEGIN_STMT _5 = (int) mb_idx_12(D); _6 ={v} state_11->mbs[_5].state; if (_6 == 0) goto ; [65.00%] else goto ; [35.00%] [local count: 9395]: # DEBUG BEGIN_STMT # DEBUG status => 2 goto ; [100.00%] [local count: 26844]: # DEBUG BEGIN_STMT _7 ={v} state_11->enhancedFifoOutput.state; if (_7 == 0) goto ; [65.00%] else goto ; [35.00%] [local count: 9395]: # DEBUG BEGIN_STMT # DEBUG status => 2 [local count: 53687]: # status_8 = PHI <2(8), 0(9), 2(10), 0(7)> # DEBUG status => status_8 # DEBUG BEGIN_STMT return status_8; } FlexCAN_Ip_ConfigRemoteResponseMb (uint8 instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * tx_info, uint32 msg_id, const uint8 * mb_data) { volatile boolean x; volatile boolean x; const struct Flexcan_Ip_StateType * const state; struct FLEXCAN_Type * pBase; struct Flexcan_Ip_MsbuffCodeStatusType cs; Flexcan_Ip_StatusType result; int _1; _Bool _2; _Bool _3; _Bool _4; long unsigned int _5; _Bool _6; long unsigned int _7; _8; long unsigned int _9; _Bool _10; _Bool _11; _Bool _12; _Bool x.0_33; _Bool x.0_34; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) instance_15(D); pBase_17 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_17 # DEBUG BEGIN_STMT state_18 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_18 # DEBUG BEGIN_STMT _2 = instance_15(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_34 ={v} x; if (x.0_34 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = tx_info_19(D) != 0B; x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_33 ={v} x; if (x.0_33 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _4 = state_18->bIsLegacyFifoEn; _5 = state_18->u32MaxMbNum; _6 = FlexCAN_IsMbOutOfRange (pBase_17, mb_idx_20(D), _4, _5); if (_6 != 0) goto ; [52.23%] else goto ; [47.77%] [local count: 25646]: # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _7 = tx_info_19(D)->data_length; cs.dataLen = _7; # DEBUG BEGIN_STMT _8 = tx_info_19(D)->msg_id_type; cs.msgIdType = _8; # DEBUG BEGIN_STMT cs.code = 10; # DEBUG BEGIN_STMT cs.fd_enable = 0; # DEBUG BEGIN_STMT _9 = (long unsigned int) mb_idx_20(D); FlexCAN_ClearMsgBuffIntStatusFlag (pBase_17, _9); # DEBUG BEGIN_STMT _10 = tx_info_19(D)->is_remote; FlexCAN_SetTxMsgBuff (pBase_17, _9, &cs, msg_id_27(D), mb_data_28(D), _10); # DEBUG BEGIN_STMT _11 = tx_info_19(D)->is_polling; if (_11 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 8463]: # DEBUG BEGIN_STMT _12 = state_18->isIntActive; result_31 = FlexCAN_SetMsgBuffIntCmd (pBase_17, instance_15(D), _9, 1, _12); # DEBUG result => result_31 [local count: 53687]: # result_13 = PHI <4(6), 0(7), result_31(8)> # DEBUG result => result_13 # DEBUG BEGIN_STMT cs ={v} {CLOBBER}; return result_13; } FlexCAN_Ip_ConfigEnhancedRxFifo_Privileged (uint8 instance, const struct Flexcan_Ip_EnhancedIdTableType * id_filter_table) { volatile boolean x; volatile boolean x; volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; int _1; _Bool _2; _Bool _3; _Bool _4; _Bool x.0_21; _Bool x.0_22; _Bool x.0_23; long unsigned int _24; signed int _25; long unsigned int _26; long unsigned int _27; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _1 = (int) instance_11(D); pBase_13 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_13 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_13 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _24 ={v} MEM[(const struct FLEXCAN_Type *)pBase_13].MCR; _25 = (signed int) _24; # DEBUG pBase => NULL # DEBUG disabled => _25 < 0 # DEBUG BEGIN_STMT _2 = instance_11(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_23 ={v} x; if (x.0_23 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = FlexCAN_IsEnhancedRxFifoAvailable (pBase_13); x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_22 ={v} x; if (x.0_22 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _4 = id_filter_table_15(D) != 0B; x ={v} _4; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_21 ={v} x; if (x.0_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 26844]: [local count: 268435456]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 268435456]: goto ; [100.00%] [local count: 26844]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT if (_25 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 6845]: # DEBUG BEGIN_STMT result_17 = FlexCAN_Enable (pBase_13); # DEBUG result => result_17 [local count: 26844]: # result_5 = PHI <0(8), result_17(9)> # DEBUG result => result_5 # DEBUG BEGIN_STMT # DEBUG base => pBase_13 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _26 ={v} MEM[(const struct FLEXCAN_Type *)pBase_13].MCR; _27 = _26 & 16777216; # DEBUG base => NULL # DEBUG freeze => _27 != 0 # DEBUG BEGIN_STMT if (_27 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13422]: if (result_5 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 20133]: # DEBUG result => result_5 # DEBUG BEGIN_STMT if (result_5 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 6644]: # DEBUG BEGIN_STMT FlexCAN_SetEnhancedRxFifoFilter (pBase_13, id_filter_table_15(D)); [local count: 26843]: # result_10 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_25 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 6845]: # DEBUG BEGIN_STMT status_20 = FlexCAN_Disable (pBase_13); # DEBUG status => status_20 # DEBUG BEGIN_STMT if (status_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 3423]: # DEBUG BEGIN_STMT # DEBUG result => status_20 [local count: 26843]: # result_6 = PHI # DEBUG result => result_6 # DEBUG BEGIN_STMT return result_6; } FlexCAN_Ip_ConfigRxFifo_Privileged (uint8 instance, Flexcan_Ip_RxFifoIdElementFormatType id_format, const struct Flexcan_Ip_IdTableType * id_filter_table) { volatile boolean x; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType status; Flexcan_Ip_StatusType result; _Bool _1; int _2; long unsigned int _19; signed int _20; _Bool x.0_21; long unsigned int _22; long unsigned int _23; [local count: 214748]: # DEBUG BEGIN_STMT _1 = instance_8(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_21 ={v} x; if (x.0_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT # DEBUG status => 0 # DEBUG BEGIN_STMT _2 = (int) instance_8(D); pBase_11 = g_Flexcan_Ip_aBase[_2]; # DEBUG pBase => pBase_11 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _19 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _20 = (signed int) _19; # DEBUG pBase => NULL # DEBUG disabled => _20 < 0 # DEBUG BEGIN_STMT if (_20 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT result_13 = FlexCAN_Enable (pBase_11); # DEBUG result => result_13 [local count: 107374]: # result_3 = PHI <0(4), result_13(5)> # DEBUG result => result_3 # DEBUG BEGIN_STMT # DEBUG base => pBase_11 # DEBUG INLINE_ENTRY FlexCAN_IsFreezeMode # DEBUG BEGIN_STMT _22 ={v} MEM[(const struct FLEXCAN_Type *)pBase_11].MCR; _23 = _22 & 16777216; # DEBUG base => NULL # DEBUG freeze => _23 != 0 # DEBUG BEGIN_STMT if (_23 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (result_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 80531]: # DEBUG result => result_3 # DEBUG BEGIN_STMT if (result_3 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 26575]: # DEBUG BEGIN_STMT FlexCAN_SetRxFifoFilter (pBase_11, id_format_14(D), id_filter_table_15(D)); [local count: 107374]: # result_10 = PHI # DEBUG result => NULL # DEBUG BEGIN_STMT if (_20 < 0) goto ; [25.50%] else goto ; [74.50%] [local count: 27380]: # DEBUG BEGIN_STMT status_18 = FlexCAN_Disable (pBase_11); # DEBUG status => status_18 # DEBUG BEGIN_STMT if (status_18 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 13690]: # DEBUG BEGIN_STMT # DEBUG result => status_18 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_RxFifoBlocking (uint8 instance, struct Flexcan_Ip_MsgBuffType * data, uint32 timeout) { volatile boolean x; const struct FLEXCAN_Type * base; Flexcan_Ip_StatusType result; int _1; _Bool _2; _Bool _3; _Bool x.0_24; long unsigned int _25; signed int _26; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT _1 = (int) instance_6(D); base_8 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_8 # DEBUG BEGIN_STMT _2 = instance_6(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_24 ={v} x; if (x.0_24 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = FlexCAN_IsEnhancedRxFifoAvailable (base_8); if (_3 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 71941]: # DEBUG BEGIN_STMT # DEBUG base => base_8 # DEBUG INLINE_ENTRY FlexCAN_IsEnhancedRxFifoEnabled # DEBUG BEGIN_STMT _25 ={v} base_8->ERFCR; _26 = (signed int) _25; # DEBUG base => NULL if (_26 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 29496]: # DEBUG BEGIN_STMT result_21 = FlexCAN_StartRxMessageEnhancedFifoData (instance_6(D), data_10(D)); # DEBUG result => result_21 # DEBUG BEGIN_STMT if (result_21 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 9734]: # DEBUG BEGIN_STMT result_23 = FlexCAN_ProccessEnhancedRxFifo (instance_6(D), timeout_13(D)); # DEBUG result => result_23 goto ; [100.00%] [local count: 42445]: # DEBUG BEGIN_STMT result_17 = FlexCAN_StartRxMessageFifoData (instance_6(D), data_10(D)); # DEBUG result => result_17 # DEBUG BEGIN_STMT if (result_17 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 14007]: # DEBUG BEGIN_STMT result_19 = FlexCAN_ProccessLegacyRxFIFO (instance_6(D), timeout_13(D)); # DEBUG result => result_19 goto ; [100.00%] [local count: 35433]: # DEBUG BEGIN_STMT result_12 = FlexCAN_StartRxMessageFifoData (instance_6(D), data_10(D)); # DEBUG result => result_12 # DEBUG BEGIN_STMT if (result_12 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 11693]: # DEBUG BEGIN_STMT result_15 = FlexCAN_ProccessLegacyRxFIFO (instance_6(D), timeout_13(D)); # DEBUG result => result_15 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_RxFifo (uint8 instance, struct Flexcan_Ip_MsgBuffType * data) { volatile boolean x; const struct FLEXCAN_Type * base; Flexcan_Ip_StatusType result; _Bool _1; int _2; _Bool _3; _Bool x.0_17; long unsigned int _18; signed int _19; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT _1 = instance_6(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_17 ={v} x; if (x.0_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _2 = (int) instance_6(D); base_8 = g_Flexcan_Ip_aBase[_2]; # DEBUG base => base_8 # DEBUG BEGIN_STMT _3 = FlexCAN_IsEnhancedRxFifoAvailable (base_8); if (_3 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 71941]: # DEBUG BEGIN_STMT # DEBUG base => base_8 # DEBUG INLINE_ENTRY FlexCAN_IsEnhancedRxFifoEnabled # DEBUG BEGIN_STMT _18 ={v} base_8->ERFCR; _19 = (signed int) _18; # DEBUG base => NULL if (_19 < 0) goto ; [41.00%] else goto ; [59.00%] [local count: 29496]: # DEBUG BEGIN_STMT result_16 = FlexCAN_StartRxMessageEnhancedFifoData (instance_6(D), data_10(D)); # DEBUG result => result_16 goto ; [100.00%] [local count: 42445]: # DEBUG BEGIN_STMT result_14 = FlexCAN_StartRxMessageFifoData (instance_6(D), data_10(D)); # DEBUG result => result_14 goto ; [100.00%] [local count: 35433]: # DEBUG BEGIN_STMT result_12 = FlexCAN_StartRxMessageFifoData (instance_6(D), data_10(D)); # DEBUG result => result_12 [local count: 107374]: # result_4 = PHI # DEBUG result => result_4 # DEBUG BEGIN_STMT return result_4; } FlexCAN_Ip_ReceiveBlocking (uint8 instance, uint8 mb_idx, struct Flexcan_Ip_MsgBuffType * data, boolean isPolling, uint32 u32TimeoutMs) { volatile boolean x; struct FLEXCAN_Type * base; struct Flexcan_Ip_StateType * state; uint32 mS2Ticks; uint32 timeElapsed; uint32 timeStart; Flexcan_Ip_StatusType result; long unsigned int _1; _Bool _2; int _3; long unsigned int _4; _Bool _5; long unsigned int _6; long unsigned int _7; unsigned char _8; int _9; _10; long unsigned int _11; _Bool _12; int _13; _14; long unsigned int _45; _Bool x.0_50; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT timeStart = 0; # DEBUG BEGIN_STMT # DEBUG timeElapsed => 0 # DEBUG BEGIN_STMT _1 = u32TimeoutMs_27(D) * 1000; mS2Ticks_29 = OsIf_MicrosToTicks (_1, 0); # DEBUG mS2Ticks => mS2Ticks_29 # DEBUG BEGIN_STMT _2 = instance_30(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_50 ={v} x; if (x.0_50 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = (int) instance_30(D); state_31 = g_flexcan_Ip_StatePtr[_3]; # DEBUG state => state_31 # DEBUG BEGIN_STMT base_32 = g_Flexcan_Ip_aBase[_3]; # DEBUG base => base_32 # DEBUG BEGIN_STMT result_37 = FlexCAN_StartRxMessageBufferData (instance_30(D), mb_idx_33(D), data_34(D), isPolling_35(D)); # DEBUG result => result_37 # DEBUG BEGIN_STMT if (result_37 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (isPolling_35(D) != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 17717]: # DEBUG BEGIN_STMT _4 = (long unsigned int) mb_idx_33(D); _5 = state_31->isIntActive; result_39 = FlexCAN_SetMsgBuffIntCmd (base_32, instance_30(D), _4, 1, _5); # DEBUG result => result_39 [local count: 107374]: # result_15 = PHI # DEBUG result => result_15 # DEBUG BEGIN_STMT if (result_15 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 35433]: # DEBUG BEGIN_STMT _6 = OsIf_GetCounter (0); timeStart = _6; # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 313013]: # DEBUG BEGIN_STMT if (isPolling_35(D) != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 103294]: # DEBUG BEGIN_STMT _7 = (long unsigned int) mb_idx_33(D); _8 = FlexCAN_GetBuffStatusFlag (base_32, _7); if (_8 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 34087]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerRxMB (instance_30(D), _7); [local count: 313013]: # DEBUG BEGIN_STMT _45 = OsIf_GetElapsed (&timeStart, 0); timeElapsed_46 = timeElapsed_18 + _45; # DEBUG timeElapsed => timeElapsed_46 # DEBUG BEGIN_STMT if (mS2Ticks_29 <= timeElapsed_46) goto ; [5.50%] else goto ; [94.50%] [local count: 295797]: [local count: 331231]: # timeElapsed_18 = PHI <0(8), timeElapsed_46(23)> # DEBUG timeElapsed => timeElapsed_18 # DEBUG BEGIN_STMT _9 = (int) mb_idx_33(D); _10 ={v} state_31->mbs[_9].state; if (_10 == 1) goto ; [94.50%] else goto ; [5.50%] [local count: 107374]: # result_16 = PHI # DEBUG result => result_16 # DEBUG BEGIN_STMT if (result_16 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 36507]: if (isPolling_35(D) != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 12047]: # DEBUG BEGIN_STMT _11 = (long unsigned int) mb_idx_33(D); _12 = state_31->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_32, instance_30(D), _11, 0, _12); [local count: 107374]: # DEBUG BEGIN_STMT if (result_16 != 4) goto ; [66.00%] else goto ; [34.00%] [local count: 70867]: if (result_16 != 2) goto ; [66.00%] else goto ; [34.00%] [local count: 46772]: # DEBUG BEGIN_STMT _13 = (int) mb_idx_33(D); _14 ={v} state_31->mbs[_13].state; if (_14 == 0) goto ; [65.00%] else goto ; [35.00%] [local count: 16370]: # DEBUG BEGIN_STMT state_31->mbs[_13].state ={v} 0; # DEBUG BEGIN_STMT # DEBUG result => 3 [local count: 107374]: # result_17 = PHI # DEBUG result => result_17 # DEBUG BEGIN_STMT timeStart ={v} {CLOBBER}; return result_17; } FlexCAN_Ip_Receive (uint8 instance, uint8 mb_idx, struct Flexcan_Ip_MsgBuffType * data, boolean isPolling) { volatile boolean x; const struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; Flexcan_Ip_StatusType result; int _1; _Bool _2; long unsigned int _3; _Bool _4; _Bool x.0_18; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) instance_7(D); base_9 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_9 # DEBUG BEGIN_STMT state_10 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_10 # DEBUG BEGIN_STMT _2 = instance_7(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_18 ={v} x; if (x.0_18 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT result_15 = FlexCAN_StartRxMessageBufferData (instance_7(D), mb_idx_11(D), data_12(D), isPolling_13(D)); # DEBUG result => result_15 # DEBUG BEGIN_STMT if (result_15 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: if (isPolling_13(D) != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 17717]: # DEBUG BEGIN_STMT _3 = (long unsigned int) mb_idx_11(D); _4 = state_10->isIntActive; result_17 = FlexCAN_SetMsgBuffIntCmd (base_9, instance_7(D), _3, 1, _4); # DEBUG result => result_17 [local count: 107374]: # result_5 = PHI # DEBUG result => result_5 # DEBUG BEGIN_STMT return result_5; } FlexCAN_Ip_ConfigRxMb (uint8 instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * rx_info, uint32 msg_id) { volatile boolean x; volatile boolean x; const struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; struct Flexcan_Ip_MsbuffCodeStatusType cs; Flexcan_Ip_StatusType eResult; int _1; _Bool _2; _Bool _3; _Bool _4; long unsigned int _5; _Bool _6; long unsigned int _7; long unsigned int _8; _9; _Bool _10; _Bool x.0_32; _Bool x.0_33; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) instance_13(D); base_15 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_15 # DEBUG BEGIN_STMT state_16 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_16 # DEBUG BEGIN_STMT _2 = instance_13(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_33 ={v} x; if (x.0_33 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = rx_info_17(D) != 0B; x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_32 ={v} x; if (x.0_32 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _4 = state_16->bIsLegacyFifoEn; _5 = state_16->u32MaxMbNum; _6 = FlexCAN_IsMbOutOfRange (base_15, mb_idx_18(D), _4, _5); if (_6 != 0) goto ; [52.23%] else goto ; [47.77%] [local count: 25646]: # DEBUG BEGIN_STMT _7 = (long unsigned int) mb_idx_18(D); FlexCAN_ClearMsgBuffIntStatusFlag (base_15, _7); # DEBUG BEGIN_STMT _8 = rx_info_17(D)->data_length; cs.dataLen = _8; # DEBUG BEGIN_STMT _9 = rx_info_17(D)->msg_id_type; cs.msgIdType = _9; # DEBUG BEGIN_STMT _10 = rx_info_17(D)->fd_enable; cs.fd_enable = _10; # DEBUG BEGIN_STMT cs.code = 15; # DEBUG BEGIN_STMT FlexCAN_SetRxMsgBuff (base_15, _7, &cs, msg_id_25(D)); # DEBUG BEGIN_STMT cs.code = 0; # DEBUG BEGIN_STMT FlexCAN_SetRxMsgBuff (base_15, _7, &cs, msg_id_25(D)); # DEBUG BEGIN_STMT cs.code = 4; # DEBUG BEGIN_STMT FlexCAN_SetRxMsgBuff (base_15, _7, &cs, msg_id_25(D)); [local count: 53687]: # eResult_11 = PHI <4(6), 0(7)> # DEBUG eResult => eResult_11 # DEBUG BEGIN_STMT cs ={v} {CLOBBER}; return eResult_11; } FlexCAN_Ip_Send (uint8 instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * tx_info, uint32 msg_id, const uint8 * mb_data) { volatile boolean x; volatile boolean x; const struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; Flexcan_Ip_StatusType result; int _1; _Bool _2; _Bool _3; _Bool _4; long unsigned int _5; _Bool _6; long unsigned int _21; long unsigned int _22; _Bool x.0_23; _Bool x.0_24; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 1 # DEBUG BEGIN_STMT _1 = (int) instance_9(D); base_11 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_11 # DEBUG BEGIN_STMT state_12 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_12 # DEBUG BEGIN_STMT _2 = instance_9(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_24 ={v} x; if (x.0_24 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = tx_info_13(D) != 0B; x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_23 ={v} x; if (x.0_23 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT # DEBUG base => base_11 # DEBUG INLINE_ENTRY FlexCAN_IsListenOnlyModeEnabled # DEBUG BEGIN_STMT _21 ={v} MEM[(const struct FLEXCAN_Type *)base_11].CTRL1; _22 = _21 & 8; # DEBUG base => NULL if (_22 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 17717]: # DEBUG BEGIN_STMT result_18 = FlexCAN_StartSendData (instance_9(D), mb_idx_14(D), tx_info_13(D), msg_id_15(D), mb_data_16(D)); # DEBUG result => result_18 # DEBUG BEGIN_STMT if (result_18 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 8858]: _4 = tx_info_13(D)->is_polling; if (_4 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 2923]: # DEBUG BEGIN_STMT _5 = (long unsigned int) mb_idx_14(D); _6 = state_12->isIntActive; result_20 = FlexCAN_SetMsgBuffIntCmd (base_11, instance_9(D), _5, 1, _6); # DEBUG result => result_20 [local count: 53687]: # result_7 = PHI <1(6), result_18(7), 0(8), result_20(9)> # DEBUG result => result_7 # DEBUG BEGIN_STMT return result_7; } FlexCAN_Ip_Init_Privileged (uint8 Flexcan_Ip_u8Instance, struct Flexcan_Ip_StateType * Flexcan_Ip_pState, const struct Flexcan_Ip_ConfigType * Flexcan_Ip_pData) { volatile boolean x; volatile boolean x; uint32 i; struct FLEXCAN_Type * pBase; Flexcan_Ip_StatusType eResult; int _1; _Bool _2; _Bool _3; _Bool _4; _Bool _5; long unsigned int _6; long unsigned int _7; const struct Flexcan_Ip_TimeSegmentType * _8; _Bool _9; const struct Flexcan_Ip_TimeSegmentType * _10; long unsigned int _11; long unsigned int _12; _Bool _13; const struct Flexcan_Ip_TimeSegmentType * _14; const struct Flexcan_Ip_TimeSegmentType * _15; const struct Flexcan_Ip_TimeSegmentType * _16; _17; _18; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct Flexcan_Ip_StateType *) _19; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct Flexcan_Ip_StateType *) _20; _Bool _21; long unsigned int _22; _Bool x.0_68; _Bool x.0_69; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT _1 = (int) Flexcan_Ip_u8Instance_30(D); pBase_32 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_32 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _2 = Flexcan_Ip_u8Instance_30(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_69 ={v} x; if (x.0_69 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = Flexcan_Ip_pData_33(D) != 0B; x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_68 ={v} x; if (x.0_68 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT eResult_35 = FlexCAN_InitController (pBase_32, Flexcan_Ip_pData_33(D)); # DEBUG eResult => eResult_35 # DEBUG BEGIN_STMT if (eResult_35 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 17717]: # DEBUG BEGIN_STMT _4 = Flexcan_Ip_pData_33(D)->fd_enable; FlexCAN_EnableExtCbt (pBase_32, _4); # DEBUG BEGIN_STMT _5 = Flexcan_Ip_pData_33(D)->enhCbtEnable; if (_5 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 8858]: # DEBUG BEGIN_STMT SchM_Enter_Can_CAN_EXCLUSIVE_AREA_00 (); # DEBUG BEGIN_STMT _6 ={v} pBase_32->CTRL2; _7 = _6 | 8192; pBase_32->CTRL2 ={v} _7; # DEBUG BEGIN_STMT _8 = &Flexcan_Ip_pData_33(D)->bitrate; FlexCAN_SetEnhancedNominalTimeSegments (pBase_32, _8); # DEBUG BEGIN_STMT _9 = Flexcan_Ip_pData_33(D)->fd_enable; if (_9 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 2923]: # DEBUG BEGIN_STMT _10 = &Flexcan_Ip_pData_33(D)->bitrate_cbt; FlexCAN_SetEnhancedDataTimeSegments (pBase_32, _10); [local count: 8858]: # DEBUG BEGIN_STMT SchM_Exit_Can_CAN_EXCLUSIVE_AREA_00 (); goto ; [100.00%] [local count: 8858]: # DEBUG BEGIN_STMT SchM_Enter_Can_CAN_EXCLUSIVE_AREA_00 (); # DEBUG BEGIN_STMT _11 ={v} pBase_32->CTRL2; _12 = _11 & 4294959103; pBase_32->CTRL2 ={v} _12; # DEBUG BEGIN_STMT _13 = Flexcan_Ip_pData_33(D)->fd_enable; if (_13 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 4429]: # DEBUG BEGIN_STMT _14 = &Flexcan_Ip_pData_33(D)->bitrate; FlexCAN_SetExtendedTimeSegments (pBase_32, _14); # DEBUG BEGIN_STMT _15 = &Flexcan_Ip_pData_33(D)->bitrate_cbt; FlexCAN_SetFDTimeSegments (pBase_32, _15); goto ; [100.00%] [local count: 4429]: # DEBUG BEGIN_STMT _16 = &Flexcan_Ip_pData_33(D)->bitrate; FlexCAN_SetTimeSegments (pBase_32, _16); [local count: 8858]: # DEBUG BEGIN_STMT SchM_Exit_Can_CAN_EXCLUSIVE_AREA_00 (); [local count: 17717]: # DEBUG BEGIN_STMT _17 = Flexcan_Ip_pData_33(D)->flexcanMode; FlexCAN_SetOperationMode (pBase_32, _17); # DEBUG BEGIN_STMT eResult_50 = FlexCAN_EnterFreezeMode (pBase_32); # DEBUG eResult => eResult_50 # DEBUG BEGIN_STMT if (eResult_50 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 8858]: goto ; [100.00%] [local count: 851176]: # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->mbs[i_24].isPolling = 1; # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->mbs[i_24].pMBmessage = 0B; # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->mbs[i_24].state ={v} 0; # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->mbs[i_24].time_stamp = 0; # DEBUG BEGIN_STMT i_67 = i_24 + 1; # DEBUG i => i_67 [local count: 860035]: # i_24 = PHI # DEBUG i => i_24 # DEBUG BEGIN_STMT if (i_24 != 96) goto ; [98.97%] else goto ; [1.03%] [local count: 8858]: # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->enhancedFifoOutput.isPolling = 1; # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->enhancedFifoOutput.state ={v} 0; # DEBUG BEGIN_STMT _18 = Flexcan_Ip_pData_33(D)->transfer_type; Flexcan_Ip_pState_51(D)->transferType = _18; # DEBUG BEGIN_STMT _19 = Flexcan_Ip_pData_33(D)->Callback; Flexcan_Ip_pState_51(D)->callback = _19; # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->callbackParam = 0B; # DEBUG BEGIN_STMT _20 = Flexcan_Ip_pData_33(D)->ErrorCallback; Flexcan_Ip_pState_51(D)->error_callback = _20; # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->errorCallbackParam = 0B; # DEBUG BEGIN_STMT _21 = Flexcan_Ip_pData_33(D)->is_rx_fifo_needed; Flexcan_Ip_pState_51(D)->bIsLegacyFifoEn = _21; # DEBUG BEGIN_STMT _22 = Flexcan_Ip_pData_33(D)->max_num_mb; Flexcan_Ip_pState_51(D)->u32MaxMbNum = _22; # DEBUG BEGIN_STMT Flexcan_Ip_pState_51(D)->isIntActive = 1; # DEBUG BEGIN_STMT g_flexcan_Ip_StatePtr[_1] = Flexcan_Ip_pState_51(D); [local count: 53687]: # eResult_23 = PHI # DEBUG eResult => eResult_23 # DEBUG BEGIN_STMT return eResult_23; } FlexCAN_AbortRxTransfer (uint8 u8Instance, uint8 mb_idx) { volatile uint32 * flexcan_mb; uint32 flexcan_mb_config; uint32 val2; uint32 val1; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * pBase; int _1; int _2; _Bool _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; _Bool _7; long unsigned int _8; long unsigned int _9; [local count: 1073741823]: # DEBUG BEGIN_STMT _1 = (int) u8Instance_12(D); pBase_14 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_14 # DEBUG BEGIN_STMT state_15 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_15 # DEBUG BEGIN_STMT # DEBUG val1 => 0 # DEBUG BEGIN_STMT # DEBUG val2 => 0 # DEBUG BEGIN_STMT # DEBUG flexcan_mb_config => 0 # DEBUG BEGIN_STMT # DEBUG flexcan_mb => 0B # DEBUG BEGIN_STMT _2 = (int) mb_idx_16(D); state_15->mbs[_2].state ={v} 0; # DEBUG BEGIN_STMT _3 = state_15->bIsLegacyFifoEn; if (_3 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 719407022]: # DEBUG BEGIN_STMT _4 ={v} pBase_14->CTRL2; _5 = _4 >> 24; val1_25 = _5 & 15; # DEBUG val1 => val1_25 # DEBUG BEGIN_STMT val2_26 = RxFifoOcuppiedLastMsgBuff (val1_25); # DEBUG val2 => val2_26 # DEBUG BEGIN_STMT _6 = (long unsigned int) mb_idx_16(D); if (_6 > val2_26) goto ; [33.00%] else goto ; [67.00%] [local count: 237404317]: # DEBUG BEGIN_STMT flexcan_mb_28 = FlexCAN_GetMsgBuffRegion (pBase_14, _6); # DEBUG flexcan_mb => flexcan_mb_28 # DEBUG BEGIN_STMT flexcan_mb_config_29 ={v} *flexcan_mb_28; # DEBUG flexcan_mb_config => flexcan_mb_config_29 # DEBUG BEGIN_STMT flexcan_mb_config_30 = flexcan_mb_config_29 & 4043309055; # DEBUG flexcan_mb_config => flexcan_mb_config_30 # DEBUG BEGIN_STMT # DEBUG flexcan_mb_config => flexcan_mb_config_30 # DEBUG BEGIN_STMT *flexcan_mb_28 ={v} flexcan_mb_config_30; # DEBUG BEGIN_STMT # DEBUG flexcan_mb_config => flexcan_mb_config_30 # DEBUG BEGIN_STMT flexcan_mb_config_32 = flexcan_mb_config_30 | 67108864; # DEBUG flexcan_mb_config => flexcan_mb_config_32 # DEBUG BEGIN_STMT *flexcan_mb_28 ={v} flexcan_mb_config_32; [local count: 719407022]: # DEBUG BEGIN_STMT if (mb_idx_16(D) == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 237404317]: # DEBUG BEGIN_STMT _7 = state_15->isIntActive; FLEXCAN_ClearMsgBuffIntCmd (pBase_14, u8Instance_12(D), 5, _7); goto ; [100.00%] [local count: 354334802]: # DEBUG BEGIN_STMT _8 = (long unsigned int) mb_idx_16(D); flexcan_mb_19 = FlexCAN_GetMsgBuffRegion (pBase_14, _8); # DEBUG flexcan_mb => flexcan_mb_19 # DEBUG BEGIN_STMT flexcan_mb_config_20 ={v} *flexcan_mb_19; # DEBUG flexcan_mb_config => flexcan_mb_config_20 # DEBUG BEGIN_STMT flexcan_mb_config_21 = flexcan_mb_config_20 & 4043309055; # DEBUG flexcan_mb_config => flexcan_mb_config_21 # DEBUG BEGIN_STMT # DEBUG flexcan_mb_config => flexcan_mb_config_21 # DEBUG BEGIN_STMT *flexcan_mb_19 ={v} flexcan_mb_config_21; # DEBUG BEGIN_STMT # DEBUG flexcan_mb_config => flexcan_mb_config_21 # DEBUG BEGIN_STMT flexcan_mb_config_23 = flexcan_mb_config_21 | 67108864; # DEBUG flexcan_mb_config => flexcan_mb_config_23 # DEBUG BEGIN_STMT *flexcan_mb_19 ={v} flexcan_mb_config_23; [local count: 1073741824]: # DEBUG BEGIN_STMT _9 = (long unsigned int) mb_idx_16(D); FlexCAN_ClearMsgBuffIntStatusFlag (pBase_14, _9); return; } FlexCAN_AbortTxTransfer (uint8 u8Instance, uint8 mb_idx) { volatile uint32 * flexcan_mb; uint32 uS2Ticks; uint32 flexcan_mb_config; uint32 timeElapsed; uint32 timeStart; Flexcan_Ip_StatusType result; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * pBase; int _1; long unsigned int _2; long unsigned int _3; unsigned char _4; long unsigned int _5; long unsigned int _6; int _7; long unsigned int _32; [local count: 114863532]: # DEBUG BEGIN_STMT _1 = (int) u8Instance_14(D); pBase_16 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_16 # DEBUG BEGIN_STMT state_17 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_17 # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT timeStart = 0; # DEBUG BEGIN_STMT # DEBUG timeElapsed => 0 # DEBUG BEGIN_STMT # DEBUG flexcan_mb_config => 0 # DEBUG BEGIN_STMT # DEBUG uS2Ticks => 0 # DEBUG BEGIN_STMT # DEBUG flexcan_mb => 0B # DEBUG BEGIN_STMT _2 = (long unsigned int) mb_idx_19(D); flexcan_mb_21 = FlexCAN_GetMsgBuffRegion (pBase_16, _2); # DEBUG flexcan_mb => flexcan_mb_21 # DEBUG BEGIN_STMT flexcan_mb_config_22 ={v} *flexcan_mb_21; # DEBUG flexcan_mb_config => flexcan_mb_config_22 # DEBUG BEGIN_STMT flexcan_mb_config_23 = flexcan_mb_config_22 & 4043309055; # DEBUG flexcan_mb_config => flexcan_mb_config_23 # DEBUG BEGIN_STMT flexcan_mb_config_24 = flexcan_mb_config_23 | 150994944; # DEBUG flexcan_mb_config => flexcan_mb_config_24 # DEBUG BEGIN_STMT *flexcan_mb_21 ={v} flexcan_mb_config_24; # DEBUG BEGIN_STMT uS2Ticks_27 = OsIf_MicrosToTicks (100, 0); # DEBUG uS2Ticks => uS2Ticks_27 # DEBUG BEGIN_STMT _3 = OsIf_GetCounter (0); timeStart = _3; # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 1014686025]: # DEBUG BEGIN_STMT _32 = OsIf_GetElapsed (&timeStart, 0); timeElapsed_33 = timeElapsed_11 + _32; # DEBUG timeElapsed => timeElapsed_33 # DEBUG BEGIN_STMT if (uS2Ticks_27 <= timeElapsed_33) goto ; [5.50%] else goto ; [94.50%] [local count: 958878293]: [local count: 1073741824]: # timeElapsed_11 = PHI <0(2), timeElapsed_33(11)> # DEBUG timeElapsed => timeElapsed_11 # DEBUG BEGIN_STMT _4 = FlexCAN_GetBuffStatusFlag (pBase_16, _2); if (_4 == 0) goto ; [94.50%] else goto ; [5.50%] [local count: 114863532]: # result_8 = PHI <3(3), 0(4)> # DEBUG result => result_8 # DEBUG BEGIN_STMT if (result_8 != 3) goto ; [66.00%] else goto ; [34.00%] [local count: 75809931]: # DEBUG BEGIN_STMT flexcan_mb_config_34 ={v} *flexcan_mb_21; # DEBUG flexcan_mb_config => flexcan_mb_config_34 # DEBUG BEGIN_STMT _5 = flexcan_mb_config_34 >> 24; _6 = _5 & 15; if (_6 == 8) goto ; [34.00%] else goto ; [66.00%] [local count: 25775377]: # DEBUG BEGIN_STMT # DEBUG result => 5 [local count: 75809931]: # result_9 = PHI # DEBUG result => result_9 # DEBUG BEGIN_STMT if (_6 == 9) goto ; [34.00%] else goto ; [66.00%] [local count: 25775377]: # DEBUG BEGIN_STMT # DEBUG result => 0 [local count: 114863532]: # result_10 = PHI # DEBUG result => result_10 # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (pBase_16, _2); # DEBUG BEGIN_STMT _7 = (int) mb_idx_19(D); state_17->mbs[_7].state ={v} 0; # DEBUG BEGIN_STMT timeStart ={v} {CLOBBER}; return result_10; } FlexCAN_IRQHandlerEnhancedRxFIFO (uint8 instance, uint32 intType) { struct Flexcan_Ip_MsgBuffType data; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; _2; struct Flexcan_Ip_MsgBuffType * _3; struct Flexcan_Ip_MsgBuffType * _4; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _5; _6; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _7; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _8; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _9; long unsigned int _27; long unsigned int _28; long unsigned int _29; long unsigned int _30; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = (int) instance_13(D); base_15 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_15 # DEBUG BEGIN_STMT state_16 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_16 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT switch (intType_17(D)) [20.00%], case 28: [20.00%], case 29: [20.00%], case 30: [20.00%], case 31: [20.00%]> [local count: 214748365]: : # DEBUG BEGIN_STMT _2 ={v} state_16->enhancedFifoOutput.state; if (_2 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 73014444]: # DEBUG BEGIN_STMT _3 = state_16->enhancedFifoOutput.pMBmessage; if (_3 == 0B) goto ; [30.00%] else goto ; [70.00%] [local count: 21904333]: # DEBUG BEGIN_STMT state_16->enhancedFifoOutput.pMBmessage = &data; [local count: 73014444]: # DEBUG BEGIN_STMT _4 = state_16->enhancedFifoOutput.pMBmessage; FlexCAN_ReadEnhancedRxFifo (base_15, _4); # DEBUG BEGIN_STMT # DEBUG base => base_15 # DEBUG intFlag => intType_17(D) # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT _27 = 1 << intType_17(D); base_15->ERFSR ={v} _27; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT # DEBUG base => base_15 # DEBUG intFlag => 29 # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT base_15->ERFSR ={v} 536870912; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT # DEBUG base => base_15 # DEBUG intFlag => 30 # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT base_15->ERFSR ={v} 1073741824; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT state_16->enhancedFifoOutput.state ={v} 0; # DEBUG BEGIN_STMT _5 = state_16->callback; if (_5 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 51110111]: # DEBUG BEGIN_STMT _5 (instance_13(D), 5, 255, state_16); [local count: 73014444]: # DEBUG BEGIN_STMT _6 ={v} state_16->enhancedFifoOutput.state; if (_6 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 24094767]: # DEBUG BEGIN_STMT FlexCAN_CompleteRxMessageEnhancedFifoData (instance_13(D)); goto ; [100.00%] [local count: 214748365]: : # DEBUG BEGIN_STMT # DEBUG base => base_15 # DEBUG intFlag => intType_17(D) # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT _28 = 1 << intType_17(D); base_15->ERFSR ={v} _28; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT _7 = state_16->callback; if (_7 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 150323855]: # DEBUG BEGIN_STMT _7 (instance_13(D), 6, 255, state_16); goto ; [100.00%] [local count: 214748365]: : # DEBUG BEGIN_STMT # DEBUG base => base_15 # DEBUG intFlag => intType_17(D) # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT _29 = 1 << intType_17(D); base_15->ERFSR ={v} _29; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT _8 = state_16->callback; if (_8 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 150323855]: # DEBUG BEGIN_STMT _8 (instance_13(D), 7, 255, state_16); goto ; [100.00%] [local count: 214748365]: : # DEBUG BEGIN_STMT # DEBUG base => base_15 # DEBUG intFlag => intType_17(D) # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT _30 = 1 << intType_17(D); base_15->ERFSR ={v} _30; # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG BEGIN_STMT _9 = state_16->callback; if (_9 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 150323855]: # DEBUG BEGIN_STMT _9 (instance_13(D), 8, 255, state_16); [local count: 1073741824]: : data ={v} {CLOBBER}; return; } FlexCAN_ProcessIRQHandlerEnhancedRxFIFO (uint8 u8Instance, boolean bIsSpuriousIntPrevious) { boolean bIsSpuriousInt; uint32 u32intType; const struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; unsigned char _3; unsigned char _4; _Bool _5; long unsigned int _20; [local count: 214748364]: # DEBUG BEGIN_STMT _1 = (int) u8Instance_11(D); base_13 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_13 # DEBUG BEGIN_STMT state_14 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_14 # DEBUG BEGIN_STMT # DEBUG u32intType => 0 # DEBUG BEGIN_STMT # DEBUG bIsSpuriousInt => bIsSpuriousIntPrevious_15(D) # DEBUG BEGIN_STMT # DEBUG u32intType => 31 goto ; [100.00%] [local count: 858993459]: # DEBUG BEGIN_STMT _3 = FlexCAN_GetEnhancedRxFIFOStatusFlag (base_13, u32intType_6); if (_3 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 283467841]: # DEBUG BEGIN_STMT _4 = FlexCAN_GetEnhancedRxFIFOIntStatusFlag (base_13, u32intType_6); if (_4 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 93544388]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerEnhancedRxFIFO (u8Instance_11(D), u32intType_6); # DEBUG BEGIN_STMT # DEBUG bIsSpuriousInt => 0 goto ; [100.00%] [local count: 189923454]: # DEBUG BEGIN_STMT if (bIsSpuriousInt_8 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 94961727]: _5 = state_14->enhancedFifoOutput.isPolling; if (_5 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 47480863]: # DEBUG BEGIN_STMT # DEBUG base => base_13 # DEBUG intFlag => u32intType_6 # DEBUG INLINE_ENTRY FlexCAN_ClearEnhancedRxFifoIntStatusFlag # DEBUG BEGIN_STMT _20 = 1 << u32intType_6; base_13->ERFSR ={v} _20; [local count: 858993459]: # bIsSpuriousInt_7 = PHI # DEBUG base => NULL # DEBUG intFlag => NULL # DEBUG bIsSpuriousInt => bIsSpuriousInt_7 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT u32intType_19 = u32intType_6 + 4294967295; # DEBUG u32intType => u32intType_19 [local count: 1073741824]: # u32intType_6 = PHI <31(2), u32intType_19(9)> # bIsSpuriousInt_8 = PHI # DEBUG bIsSpuriousInt => bIsSpuriousInt_8 # DEBUG u32intType => u32intType_6 # DEBUG BEGIN_STMT if (u32intType_6 > 27) goto ; [80.00%] else goto ; [20.00%] [local count: 214748365]: # bIsSpuriousInt_2 = PHI # DEBUG BEGIN_STMT return bIsSpuriousInt_2; } FlexCAN_ProcessSpuriousInterruptMB (uint8 instance, uint32 startMbIdx, uint32 endMbIdx) { uint32 u32MbHandle; uint32 mb_idx; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; unsigned char _2; unsigned char _3; _Bool _4; _Bool _5; _6; [local count: 118111602]: # DEBUG BEGIN_STMT _1 = (int) instance_11(D); base_13 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_13 # DEBUG BEGIN_STMT state_14 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_14 # DEBUG BEGIN_STMT # DEBUG mb_idx => 0 # DEBUG BEGIN_STMT # DEBUG u32MbHandle => 0 # DEBUG BEGIN_STMT # DEBUG mb_idx => startMbIdx_15(D) goto ; [100.00%] [local count: 955630223]: # DEBUG BEGIN_STMT _2 = FlexCAN_GetBuffStatusFlag (base_13, mb_idx_7); if (_2 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 315357973]: _3 = FlexCAN_GetBuffStatusImask (base_13, mb_idx_7); if (_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 157678987]: # DEBUG BEGIN_STMT # DEBUG u32MbHandle => mb_idx_7 # DEBUG BEGIN_STMT _4 = state_14->bIsLegacyFifoEn; if (_4 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 78839493]: if (mb_idx_7 <= 7) goto ; [50.00%] else goto ; [50.00%] [local count: 39419747]: # DEBUG BEGIN_STMT # DEBUG u32MbHandle => 0 [local count: 157678987]: # u32MbHandle_8 = PHI # DEBUG u32MbHandle => u32MbHandle_8 # DEBUG BEGIN_STMT _5 = state_14->mbs[u32MbHandle_8].isPolling; if (_5 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 52034066]: # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_13, mb_idx_7); # DEBUG BEGIN_STMT _6 ={v} state_14->mbs[u32MbHandle_8].state; if (_6 == 2) goto ; [34.00%] else goto ; [66.00%] [local count: 17691582]: # DEBUG BEGIN_STMT state_14->mbs[u32MbHandle_8].state ={v} 0; # DEBUG BEGIN_STMT state_14->mbs[u32MbHandle_8].isPolling = 1; [local count: 955630223]: # DEBUG BEGIN_STMT mb_idx_22 = mb_idx_7 + 1; # DEBUG mb_idx => mb_idx_22 [local count: 1073741824]: # mb_idx_7 = PHI # DEBUG mb_idx => mb_idx_7 # DEBUG BEGIN_STMT if (mb_idx_7 <= endMbIdx_16(D)) goto ; [89.00%] else goto ; [11.00%] [local count: 118111601]: return; } FlexCAN_IRQHandlerRxFIFO (uint8 instance, uint32 mb_idx) { struct Flexcan_Ip_MsgBuffType data; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; struct Flexcan_Ip_MsgBuffType * _2; _3; struct Flexcan_Ip_MsgBuffType * _4; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _5; _6; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _7; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _8; [local count: 1073741823]: # DEBUG BEGIN_STMT _1 = (int) instance_12(D); base_14 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_14 # DEBUG BEGIN_STMT state_15 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_15 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _2 = state_15->mbs[0].pMBmessage; if (_2 == 0B) goto ; [30.00%] else goto ; [70.00%] [local count: 322122547]: # DEBUG BEGIN_STMT state_15->mbs[0].pMBmessage = &data; [local count: 1073741823]: # DEBUG BEGIN_STMT switch (mb_idx_17(D)) [25.00%], case 5: [25.00%], case 6: [25.00%], case 7: [25.00%]> [local count: 268435456]: : # DEBUG BEGIN_STMT _3 ={v} state_15->mbs[0].state; if (_3 == 1) goto ; [20.24%] else goto ; [79.76%] [local count: 54331336]: # DEBUG BEGIN_STMT _4 = state_15->mbs[0].pMBmessage; FlexCAN_ReadRxFifo (base_14, _4); # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_14, mb_idx_17(D)); # DEBUG BEGIN_STMT state_15->mbs[0].state ={v} 0; # DEBUG BEGIN_STMT _5 = state_15->callback; if (_5 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 38031935]: # DEBUG BEGIN_STMT _5 (instance_12(D), 1, 0, state_15); [local count: 54331336]: # DEBUG BEGIN_STMT _6 ={v} state_15->mbs[0].state; if (_6 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 17929341]: # DEBUG BEGIN_STMT state_15->mbs[0].isPolling = 1; # DEBUG BEGIN_STMT FlexCAN_CompleteRxMessageFifoData (instance_12(D)); goto ; [100.00%] [local count: 268435456]: : # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_14, mb_idx_17(D)); # DEBUG BEGIN_STMT _7 = state_15->callback; if (_7 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 187904819]: # DEBUG BEGIN_STMT _7 (instance_12(D), 2, 0, state_15); goto ; [100.00%] [local count: 268435456]: : # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_14, mb_idx_17(D)); # DEBUG BEGIN_STMT _8 = state_15->callback; if (_8 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 187904819]: # DEBUG BEGIN_STMT _8 (instance_12(D), 3, 0, state_15); [local count: 1073741824]: : data ={v} {CLOBBER}; return; } FlexCAN_IRQHandlerTxMB (uint8 u8Instance, uint32 u32MbIdx) { boolean bCurrentIntStat; struct Flexcan_Ip_MsgBuffType mb; struct Flexcan_Ip_StateType * pState; struct FLEXCAN_Type * pBase; int _1; _Bool _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _8; _9; _Bool _10; _Bool _11; _Bool _12; _Bool _13; long unsigned int vol.5_36; long unsigned int vol.5_37; [local count: 1073741823]: # DEBUG BEGIN_STMT _1 = (int) u8Instance_17(D); pBase_19 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_19 # DEBUG BEGIN_STMT pState_20 = g_flexcan_Ip_StatePtr[_1]; # DEBUG pState => pState_20 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG bCurrentIntStat => 0 # DEBUG BEGIN_STMT _2 = pState_20->mbs[u32MbIdx_21(D)].isRemote; if (_2 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870911]: # DEBUG BEGIN_STMT FlexCAN_LockRxMsgBuff (pBase_19, u32MbIdx_21(D)); # DEBUG BEGIN_STMT FlexCAN_GetMsgBuff (pBase_19, u32MbIdx_21(D), &mb); # DEBUG BEGIN_STMT # DEBUG base => pBase_19 # DEBUG INLINE_ENTRY FlexCAN_UnlockRxMsgBuff # DEBUG BEGIN_STMT vol.5_36 ={v} MEM[(const struct FLEXCAN_Type *)pBase_19].TIMER; # DEBUG base => NULL # DEBUG BEGIN_STMT _3 = mb.time_stamp; pState_20->mbs[u32MbIdx_21(D)].time_stamp = _3; # DEBUG BEGIN_STMT _4 = mb.cs; _5 = _4 >> 24; _6 = _5 & 15; if (_6 == 4) goto ; [20.24%] else goto ; [79.76%] [local count: 108662672]: # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (pBase_19, u32MbIdx_21(D)); goto ; [100.00%] [local count: 536870911]: # DEBUG BEGIN_STMT _7 = FlexCAN_GetMsgBuffTimestamp (pBase_19, u32MbIdx_21(D)); pState_20->mbs[u32MbIdx_21(D)].time_stamp = _7; # DEBUG BEGIN_STMT # DEBUG base => pBase_19 # DEBUG INLINE_ENTRY FlexCAN_UnlockRxMsgBuff # DEBUG BEGIN_STMT vol.5_37 ={v} MEM[(const struct FLEXCAN_Type *)pBase_19].TIMER; # DEBUG base => NULL # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (pBase_19, u32MbIdx_21(D)); [local count: 1073741824]: # DEBUG BEGIN_STMT pState_20->mbs[u32MbIdx_21(D)].state ={v} 0; # DEBUG BEGIN_STMT bCurrentIntStat_30 = pState_20->mbs[u32MbIdx_21(D)].isPolling; # DEBUG bCurrentIntStat => bCurrentIntStat_30 # DEBUG BEGIN_STMT _8 = pState_20->callback; if (_8 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 751619278]: # DEBUG BEGIN_STMT _8 (u8Instance_17(D), 4, u32MbIdx_21(D), pState_20); [local count: 1073741824]: # DEBUG BEGIN_STMT _9 ={v} pState_20->mbs[u32MbIdx_21(D)].state; if (_9 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: _10 = pState_20->mbs[u32MbIdx_21(D)].isPolling; if (_10 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 177167401]: # DEBUG BEGIN_STMT pState_20->mbs[u32MbIdx_21(D)].isPolling = 1; # DEBUG BEGIN_STMT _11 = pState_20->isIntActive; FlexCAN_SetMsgBuffIntCmd (pBase_19, u8Instance_17(D), u32MbIdx_21(D), 0, _11); goto ; [100.00%] [local count: 896574424]: # DEBUG BEGIN_STMT if (bCurrentIntStat_30 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 448287211]: _12 = pState_20->mbs[u32MbIdx_21(D)].isPolling; if (_12 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 147934780]: # DEBUG BEGIN_STMT _13 = pState_20->isIntActive; FlexCAN_SetMsgBuffIntCmd (pBase_19, u8Instance_17(D), u32MbIdx_21(D), 0, _13); [local count: 1073741824]: # DEBUG BEGIN_STMT mb ={v} {CLOBBER}; return; } FlexCAN_IRQHandlerRxMB (uint8 instance, uint32 mb_idx) { boolean bCurrentIntStat; struct Flexcan_Ip_MsgBuffType data; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; struct Flexcan_Ip_MsgBuffType * _2; struct Flexcan_Ip_MsgBuffType * _3; void (*) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _4; _5; _Bool _6; _Bool _7; _Bool _8; _Bool _9; long unsigned int vol.5_29; [local count: 1073741823]: # DEBUG BEGIN_STMT _1 = (int) instance_13(D); base_15 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_15 # DEBUG BEGIN_STMT state_16 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_16 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG bCurrentIntStat => 0 # DEBUG BEGIN_STMT _2 = state_16->mbs[mb_idx_17(D)].pMBmessage; if (_2 == 0B) goto ; [30.00%] else goto ; [70.00%] [local count: 322122547]: # DEBUG BEGIN_STMT state_16->mbs[mb_idx_17(D)].pMBmessage = &data; [local count: 1073741823]: # DEBUG BEGIN_STMT FlexCAN_LockRxMsgBuff (base_15, mb_idx_17(D)); # DEBUG BEGIN_STMT _3 = state_16->mbs[mb_idx_17(D)].pMBmessage; FlexCAN_GetMsgBuff (base_15, mb_idx_17(D), _3); # DEBUG BEGIN_STMT FlexCAN_ClearMsgBuffIntStatusFlag (base_15, mb_idx_17(D)); # DEBUG BEGIN_STMT # DEBUG base => base_15 # DEBUG INLINE_ENTRY FlexCAN_UnlockRxMsgBuff # DEBUG BEGIN_STMT vol.5_29 ={v} MEM[(const struct FLEXCAN_Type *)base_15].TIMER; # DEBUG base => NULL # DEBUG BEGIN_STMT state_16->mbs[mb_idx_17(D)].state ={v} 0; # DEBUG BEGIN_STMT bCurrentIntStat_23 = state_16->mbs[mb_idx_17(D)].isPolling; # DEBUG bCurrentIntStat => bCurrentIntStat_23 # DEBUG BEGIN_STMT _4 = state_16->callback; if (_4 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 751619277]: # DEBUG BEGIN_STMT _4 (instance_13(D), 0, mb_idx_17(D), state_16); [local count: 1073741823]: # DEBUG BEGIN_STMT _5 ={v} state_16->mbs[mb_idx_17(D)].state; if (_5 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870911]: _6 = state_16->mbs[mb_idx_17(D)].isPolling; if (_6 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 177167401]: # DEBUG BEGIN_STMT state_16->mbs[mb_idx_17(D)].isPolling = 1; # DEBUG BEGIN_STMT _7 = state_16->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_15, instance_13(D), mb_idx_17(D), 0, _7); goto ; [100.00%] [local count: 896574422]: # DEBUG BEGIN_STMT if (bCurrentIntStat_23 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 448287211]: _8 = state_16->mbs[mb_idx_17(D)].isPolling; if (_8 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 147934780]: # DEBUG BEGIN_STMT _9 = state_16->isIntActive; FlexCAN_SetMsgBuffIntCmd (base_15, instance_13(D), mb_idx_17(D), 0, _9); [local count: 1073741824]: # DEBUG BEGIN_STMT data ={v} {CLOBBER}; return; } FlexCAN_StartRxMessageFifoData (uint8 instance, struct Flexcan_Ip_MsgBuffType * data) { volatile boolean x; Flexcan_Ip_StatusType eResult; _Bool _1; _Bool x.0_7; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG base => 0B # DEBUG BEGIN_STMT # DEBUG state => 0B # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT _1 = instance_4(D) <= 5; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_7 ={v} x; if (x.0_7 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: eResult_3 = FlexCAN_StartRxMessageFifoData.part.0 (instance_4(D), data_6(D)); # DEBUG eResult => eResult_3 # DEBUG BEGIN_STMT return eResult_3; } FlexCAN_StartSendData (uint8 Flexcan_Ip_u8Instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * tx_info, uint32 msg_id, const uint8 * mb_data) { volatile boolean x; volatile boolean x; struct FLEXCAN_Type * base; struct Flexcan_Ip_StateType * state; struct Flexcan_Ip_MsbuffCodeStatusType cs; Flexcan_Ip_StatusType eResult; int _1; _Bool _2; _Bool _3; _Bool _4; long unsigned int _5; _Bool _6; int _7; _8; long unsigned int _9; _Bool _10; _Bool _11; long unsigned int _12; _13; _Bool _14; unsigned char _15; _Bool _16; _Bool x.0_43; _Bool x.0_44; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) Flexcan_Ip_u8Instance_20(D); state_22 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_22 # DEBUG BEGIN_STMT base_23 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_23 # DEBUG BEGIN_STMT _2 = Flexcan_Ip_u8Instance_20(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_44 ={v} x; if (x.0_44 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = tx_info_24(D) != 0B; x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_43 ={v} x; if (x.0_43 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _4 = state_22->bIsLegacyFifoEn; _5 = state_22->u32MaxMbNum; _6 = FlexCAN_IsMbOutOfRange (base_23, mb_idx_25(D), _4, _5); if (_6 != 0) goto ; [35.00%] else goto ; [65.00%] [local count: 34897]: # DEBUG BEGIN_STMT _7 = (int) mb_idx_25(D); _8 ={v} state_22->mbs[_7].state; if (_8 != 0) goto ; [52.23%] else goto ; [47.77%] [local count: 16670]: # DEBUG BEGIN_STMT _9 = (long unsigned int) mb_idx_25(D); FlexCAN_ClearMsgBuffIntStatusFlag (base_23, _9); # DEBUG BEGIN_STMT state_22->mbs[_7].state ={v} 2; # DEBUG BEGIN_STMT state_22->mbs[_7].time_stamp = 0; # DEBUG BEGIN_STMT _10 = tx_info_24(D)->is_polling; state_22->mbs[_7].isPolling = _10; # DEBUG BEGIN_STMT _11 = tx_info_24(D)->is_remote; state_22->mbs[_7].isRemote = _11; # DEBUG BEGIN_STMT _12 = tx_info_24(D)->data_length; cs.dataLen = _12; # DEBUG BEGIN_STMT _13 = tx_info_24(D)->msg_id_type; cs.msgIdType = _13; # DEBUG BEGIN_STMT _14 = tx_info_24(D)->fd_enable; cs.fd_enable = _14; # DEBUG BEGIN_STMT _15 = tx_info_24(D)->fd_padding; cs.fd_padding = _15; # DEBUG BEGIN_STMT _16 = tx_info_24(D)->enable_brs; cs.enable_brs = _16; # DEBUG BEGIN_STMT if (_11 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 8335]: # DEBUG BEGIN_STMT cs.code = 28; goto ; [100.00%] [local count: 8335]: # DEBUG BEGIN_STMT cs.code = 12; [local count: 16670]: # DEBUG BEGIN_STMT FlexCAN_SetTxMsgBuff (base_23, _9, &cs, msg_id_39(D), mb_data_40(D), 0); [local count: 53687]: # eResult_17 = PHI <4(6), 2(7), 0(11)> # DEBUG eResult => eResult_17 # DEBUG BEGIN_STMT cs ={v} {CLOBBER}; return eResult_17; } FlexCAN_StartRxMessageBufferData (uint8 instance, uint8 mb_idx, struct Flexcan_Ip_MsgBuffType * data, boolean isPolling) { volatile boolean x; struct Flexcan_Ip_StateType * state; const struct FLEXCAN_Type * base; Flexcan_Ip_StatusType result; int _1; _Bool _2; _Bool _3; long unsigned int _4; _Bool _5; int _6; _7; _Bool x.0_21; [local count: 214748]: # DEBUG BEGIN_STMT # DEBUG result => 0 # DEBUG BEGIN_STMT _1 = (int) instance_10(D); base_12 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_12 # DEBUG BEGIN_STMT state_13 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_13 # DEBUG BEGIN_STMT _2 = instance_10(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_21 ={v} x; if (x.0_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = state_13->bIsLegacyFifoEn; _4 = state_13->u32MaxMbNum; _5 = FlexCAN_IsMbOutOfRange (base_12, mb_idx_14(D), _3, _4); if (_5 != 0) goto ; [35.00%] else goto ; [65.00%] [local count: 69793]: # DEBUG BEGIN_STMT _6 = (int) mb_idx_14(D); _7 ={v} state_13->mbs[_6].state; if (_7 != 0) goto ; [35.00%] else goto ; [65.00%] [local count: 45366]: # DEBUG BEGIN_STMT state_13->mbs[_6].state ={v} 1; # DEBUG BEGIN_STMT state_13->mbs[_6].pMBmessage = data_17(D); # DEBUG BEGIN_STMT state_13->mbs[_6].isPolling = isPolling_19(D); [local count: 107374]: # result_8 = PHI <4(4), 2(5), 0(6)> # DEBUG result => result_8 # DEBUG BEGIN_STMT return result_8; } FlexCAN_ProccessLegacyRxFIFO (uint8 u8Instance, uint32 u32TimeoutMs) { uint32 u32intType; uint32 mS2Ticks; uint32 timeElapsed; uint32 timeStart; struct FLEXCAN_Type * pBase; struct Flexcan_Ip_StateType * pState; Flexcan_Ip_StatusType eResult; int _1; long unsigned int _2; long unsigned int _3; _4; unsigned char _5; _6; _7; _Bool _8; _Bool _9; _Bool _10; _11; long unsigned int _37; [local count: 114863532]: # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT _1 = (int) u8Instance_23(D); pState_25 = g_flexcan_Ip_StatePtr[_1]; # DEBUG pState => pState_25 # DEBUG BEGIN_STMT pBase_26 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_26 # DEBUG BEGIN_STMT timeStart = 0; # DEBUG BEGIN_STMT # DEBUG timeElapsed => 0 # DEBUG BEGIN_STMT _2 = u32TimeoutMs_28(D) * 1000; mS2Ticks_30 = OsIf_MicrosToTicks (_2, 0); # DEBUG mS2Ticks => mS2Ticks_30 # DEBUG BEGIN_STMT # DEBUG u32intType => 0 # DEBUG BEGIN_STMT _3 = OsIf_GetCounter (0); timeStart = _3; # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 1014686025]: # DEBUG BEGIN_STMT _4 = pState_25->transferType; if (_4 == 1) goto ; [16.00%] else goto ; [84.00%] [local count: 162349764]: goto ; [100.00%] [local count: 487049291]: # DEBUG BEGIN_STMT _5 = FlexCAN_GetBuffStatusFlag (pBase_26, u32intType_15); if (_5 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 160726266]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerRxFIFO (u8Instance_23(D), u32intType_15); [local count: 487049291]: # DEBUG BEGIN_STMT u32intType_35 = u32intType_15 + 4294967295; # DEBUG u32intType => u32intType_35 [local count: 649399056]: # u32intType_15 = PHI # DEBUG u32intType => u32intType_15 # DEBUG BEGIN_STMT if (u32intType_15 > 4) goto ; [75.00%] else goto ; [25.00%] [local count: 1014686025]: # DEBUG BEGIN_STMT _37 = OsIf_GetElapsed (&timeStart, 0); timeElapsed_38 = timeElapsed_14 + _37; # DEBUG timeElapsed => timeElapsed_38 # DEBUG BEGIN_STMT if (mS2Ticks_30 <= timeElapsed_38) goto ; [5.50%] else goto ; [94.50%] [local count: 958878293]: [local count: 1073741824]: # timeElapsed_14 = PHI <0(2), timeElapsed_38(18)> # DEBUG timeElapsed => timeElapsed_14 # DEBUG BEGIN_STMT _6 ={v} pState_25->mbs[0].state; if (_6 == 1) goto ; [94.50%] else goto ; [5.50%] [local count: 114863532]: # eResult_12 = PHI <3(8), 0(9)> # DEBUG eResult => eResult_12 # DEBUG BEGIN_STMT if (eResult_12 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 39053601]: _7 = pState_25->transferType; if (_7 != 1) goto ; [48.88%] else goto ; [51.12%] [local count: 19089400]: # DEBUG BEGIN_STMT _8 = pState_25->isIntActive; FlexCAN_SetMsgBuffIntCmd (pBase_26, u8Instance_23(D), 5, 0, _8); # DEBUG BEGIN_STMT _9 = pState_25->isIntActive; FlexCAN_SetMsgBuffIntCmd (pBase_26, u8Instance_23(D), 6, 0, _9); # DEBUG BEGIN_STMT _10 = pState_25->isIntActive; FlexCAN_SetMsgBuffIntCmd (pBase_26, u8Instance_23(D), 7, 0, _10); [local count: 114863532]: # DEBUG BEGIN_STMT _11 ={v} pState_25->mbs[0].state; switch (_11) [33.33%], case 0: [33.33%], case 1: [33.33%]> [local count: 38284015]: : # DEBUG BEGIN_STMT pState_25->mbs[0].state ={v} 0; # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 38284015]: : # DEBUG BEGIN_STMT # DEBUG eResult => 1 # DEBUG BEGIN_STMT [local count: 114852045]: # eResult_13 = PHI : # DEBUG eResult => eResult_13 # DEBUG BEGIN_STMT timeStart ={v} {CLOBBER}; return eResult_13; } FlexCAN_ProccessEnhancedRxFifo (uint8 u8Instance, uint32 u32TimeoutMs) { uint32 u32intType; uint32 mS2Ticks; uint32 timeElapsed; uint32 timeStart; struct FLEXCAN_Type * pBase; struct Flexcan_Ip_StateType * pState; Flexcan_Ip_StatusType eResult; int _1; long unsigned int _2; long unsigned int _3; _4; unsigned char _5; _6; _7; _8; long unsigned int _34; long unsigned int _38; long unsigned int _39; [local count: 114863532]: # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT _1 = (int) u8Instance_20(D); pState_22 = g_flexcan_Ip_StatePtr[_1]; # DEBUG pState => pState_22 # DEBUG BEGIN_STMT pBase_23 = g_Flexcan_Ip_aBase[_1]; # DEBUG pBase => pBase_23 # DEBUG BEGIN_STMT timeStart = 0; # DEBUG BEGIN_STMT # DEBUG timeElapsed => 0 # DEBUG BEGIN_STMT _2 = u32TimeoutMs_25(D) * 1000; mS2Ticks_27 = OsIf_MicrosToTicks (_2, 0); # DEBUG mS2Ticks => mS2Ticks_27 # DEBUG BEGIN_STMT # DEBUG u32intType => 0 # DEBUG BEGIN_STMT _3 = OsIf_GetCounter (0); timeStart = _3; # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 1014686025]: # DEBUG BEGIN_STMT _4 = pState_22->transferType; if (_4 == 1) goto ; [16.00%] else goto ; [84.00%] [local count: 162349764]: goto ; [100.00%] [local count: 649399059]: # DEBUG BEGIN_STMT _5 = FlexCAN_GetEnhancedRxFIFOStatusFlag (pBase_23, u32intType_12); if (_5 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 214301689]: # DEBUG BEGIN_STMT FlexCAN_IRQHandlerEnhancedRxFIFO (u8Instance_20(D), u32intType_12); [local count: 649399059]: # DEBUG BEGIN_STMT u32intType_32 = u32intType_12 + 4294967295; # DEBUG u32intType => u32intType_32 [local count: 811748823]: # u32intType_12 = PHI # DEBUG u32intType => u32intType_12 # DEBUG BEGIN_STMT if (u32intType_12 > 27) goto ; [80.00%] else goto ; [20.00%] [local count: 1014686025]: # DEBUG BEGIN_STMT _34 = OsIf_GetElapsed (&timeStart, 0); timeElapsed_35 = timeElapsed_11 + _34; # DEBUG timeElapsed => timeElapsed_35 # DEBUG BEGIN_STMT if (mS2Ticks_27 <= timeElapsed_35) goto ; [5.50%] else goto ; [94.50%] [local count: 958878293]: [local count: 1073741824]: # timeElapsed_11 = PHI <0(2), timeElapsed_35(18)> # DEBUG timeElapsed => timeElapsed_11 # DEBUG BEGIN_STMT _6 ={v} pState_22->enhancedFifoOutput.state; if (_6 == 1) goto ; [94.50%] else goto ; [5.50%] [local count: 114863532]: # eResult_9 = PHI <3(8), 0(9)> # DEBUG eResult => eResult_9 # DEBUG BEGIN_STMT if (eResult_9 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 39053601]: _7 = pState_22->transferType; if (_7 != 1) goto ; [66.00%] else goto ; [34.00%] [local count: 25775377]: # DEBUG BEGIN_STMT # DEBUG base => pBase_23 # DEBUG enable => 0 # DEBUG INLINE_ENTRY FlexCAN_SetEnhancedRxFifoIntAll # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _38 ={v} pBase_23->ERFIER; _39 = _38 & 268435455; pBase_23->ERFIER ={v} _39; [local count: 114863532]: # DEBUG base => NULL # DEBUG enable => NULL # DEBUG BEGIN_STMT _8 ={v} pState_22->enhancedFifoOutput.state; switch (_8) [33.33%], case 0: [33.33%], case 1: [33.33%]> [local count: 38284015]: : # DEBUG BEGIN_STMT pState_22->enhancedFifoOutput.state ={v} 0; # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 38284015]: : # DEBUG BEGIN_STMT # DEBUG eResult => 1 # DEBUG BEGIN_STMT [local count: 114852045]: # eResult_10 = PHI : # DEBUG eResult => eResult_10 # DEBUG BEGIN_STMT timeStart ={v} {CLOBBER}; return eResult_10; } FlexCAN_StartRxMessageEnhancedFifoData (uint8 instance, struct Flexcan_Ip_MsgBuffType * data) { volatile boolean x; Flexcan_Ip_StatusType eResult; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; _Bool _2; _3; _4; _Bool _5; _Bool x.0_18; long unsigned int _19; long unsigned int _20; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_9(D); base_11 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_11 # DEBUG BEGIN_STMT state_12 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_12 # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT _2 = instance_9(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_18 ={v} x; if (x.0_18 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 ={v} state_12->enhancedFifoOutput.state; if (_3 == 1) goto ; [21.72%] else goto ; [78.28%] [local count: 84052]: # DEBUG BEGIN_STMT state_12->enhancedFifoOutput.state ={v} 1; # DEBUG BEGIN_STMT state_12->enhancedFifoOutput.pMBmessage = data_14(D); # DEBUG BEGIN_STMT _4 = state_12->transferType; if (_4 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 42026]: # DEBUG BEGIN_STMT state_12->enhancedFifoOutput.isPolling = 0; # DEBUG BEGIN_STMT _5 = state_12->isIntActive; if (_5 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 21013]: # DEBUG BEGIN_STMT # DEBUG base => base_11 # DEBUG enable => 1 # DEBUG INLINE_ENTRY FlexCAN_SetEnhancedRxFifoIntAll # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _19 ={v} base_11->ERFIER; _20 = _19 | 4026531840; base_11->ERFIER ={v} _20; [local count: 84052]: # DEBUG base => NULL # DEBUG enable => NULL # DEBUG BEGIN_STMT if (_4 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 28578]: # DEBUG BEGIN_STMT state_12->enhancedFifoOutput.isPolling = 1; [local count: 107374]: # eResult_6 = PHI <2(4), 0(8), 0(9)> # DEBUG eResult => eResult_6 # DEBUG BEGIN_STMT return eResult_6; } FlexCAN_CompleteRxMessageEnhancedFifoData (uint8 instance) { volatile boolean x; volatile boolean x; struct Flexcan_Ip_StateType * state; struct FLEXCAN_Type * base; int _1; _Bool _2; _Bool _3; _Bool _4; _Bool x.0_14; _Bool x.0_15; long unsigned int _16; long unsigned int _17; [local count: 214748]: # DEBUG BEGIN_STMT _1 = (int) instance_6(D); base_8 = g_Flexcan_Ip_aBase[_1]; # DEBUG base => base_8 # DEBUG BEGIN_STMT state_9 = g_flexcan_Ip_StatePtr[_1]; # DEBUG state => state_9 # DEBUG BEGIN_STMT _2 = instance_6(D) <= 5; x ={v} _2; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_15 ={v} x; if (x.0_15 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _3 = FlexCAN_IsEnhancedRxFifoAvailable (base_8); x ={v} _3; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_14 ={v} x; if (x.0_14 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 53687]: [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 536870913]: goto ; [100.00%] [local count: 53687]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT _4 = state_9->enhancedFifoOutput.isPolling; if (_4 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 26844]: # DEBUG BEGIN_STMT state_9->enhancedFifoOutput.isPolling = 1; # DEBUG BEGIN_STMT # DEBUG base => base_8 # DEBUG enable => 0 # DEBUG INLINE_ENTRY FlexCAN_SetEnhancedRxFifoIntAll # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _16 ={v} base_8->ERFIER; _17 = _16 & 268435455; base_8->ERFIER ={v} _17; [local count: 53687]: # DEBUG base => NULL # DEBUG enable => NULL # DEBUG BEGIN_STMT state_9->enhancedFifoOutput.pMBmessage = 0B; # DEBUG BEGIN_STMT state_9->enhancedFifoOutput.state ={v} 0; return; } FlexCAN_InitController (struct FLEXCAN_Type * pBase, const struct Flexcan_Ip_ConfigType * Flexcan_Ip_pData) { Flexcan_Ip_StatusType eResult; long unsigned int _1; long unsigned int _2; _Bool _3; _Bool _4; long unsigned int _5; _6; const struct Flexcan_Ip_PayloadSizeType * _7; long unsigned int _8; long unsigned int _40; signed int _41; long unsigned int _42; long unsigned int _43; long unsigned int _44; [local count: 1073741823]: # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT # DEBUG pBase => pBase_15(D) # DEBUG INLINE_ENTRY FlexCAN_IsEnabled # DEBUG BEGIN_STMT _40 ={v} MEM[(const struct FLEXCAN_Type *)pBase_15(D)].MCR; _41 = (signed int) _40; # DEBUG pBase => NULL if (_41 >= 0) goto ; [59.00%] else goto ; [41.00%] [local count: 633507676]: # DEBUG BEGIN_STMT eResult_17 = FlexCAN_EnterFreezeMode (pBase_15(D)); # DEBUG eResult => eResult_17 # DEBUG BEGIN_STMT if (eResult_17 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 209057533]: # DEBUG BEGIN_STMT eResult_19 = FlexCAN_Disable (pBase_15(D)); # DEBUG eResult => eResult_19 [local count: 633507676]: # eResult_9 = PHI # DEBUG eResult => eResult_9 # DEBUG BEGIN_STMT if (eResult_9 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 756987986]: # DEBUG eResult => NULL # DEBUG BEGIN_STMT SchM_Enter_Can_CAN_EXCLUSIVE_AREA_00 (); # DEBUG BEGIN_STMT _1 ={v} pBase_15(D)->MCR; _2 = _1 & 2147483647; pBase_15(D)->MCR ={v} _2; # DEBUG BEGIN_STMT SchM_Exit_Can_CAN_EXCLUSIVE_AREA_00 (); # DEBUG BEGIN_STMT eResult_24 = FlexCAN_Init (pBase_15(D)); # DEBUG eResult => eResult_24 # DEBUG BEGIN_STMT if (eResult_24 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 378493993]: # DEBUG BEGIN_STMT FlexCAN_EnterFreezeMode (pBase_15(D)); # DEBUG BEGIN_STMT FlexCAN_Disable (pBase_15(D)); goto ; [100.00%] [local count: 378493993]: # DEBUG BEGIN_STMT FlexCAN_DisableMemErrorDetection (pBase_15(D)); # DEBUG BEGIN_STMT _3 = Flexcan_Ip_pData_26(D)->fd_enable; _4 = Flexcan_Ip_pData_26(D)->bitRateSwitch; FlexCAN_SetFDEnabled (pBase_15(D), _3, _4); # DEBUG BEGIN_STMT _5 = Flexcan_Ip_pData_26(D)->ctrlOptions; FlexCAN_ConfigCtrlOptions (pBase_15(D), _5); # DEBUG BEGIN_STMT _6 = Flexcan_Ip_pData_26(D)->flexcanMode; if (_6 != 2) goto ; [66.00%] else goto ; [34.00%] [local count: 249806035]: # DEBUG BEGIN_STMT # DEBUG base => pBase_15(D) # DEBUG enable => 0 # DEBUG INLINE_ENTRY FlexCAN_SetSelfReception # DEBUG BEGIN_STMT _42 ={v} pBase_15(D)->MCR; _43 = _42 & 4294836223; _44 = _43 | 131072; pBase_15(D)->MCR ={v} _44; [local count: 378493993]: # DEBUG base => NULL # DEBUG enable => NULL # DEBUG BEGIN_STMT eResult_30 = FlexCAN_InitRxFifo (pBase_15(D), Flexcan_Ip_pData_26(D)); # DEBUG eResult => eResult_30 # DEBUG BEGIN_STMT if (eResult_30 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 189246996]: # DEBUG BEGIN_STMT FlexCAN_EnterFreezeMode (pBase_15(D)); # DEBUG BEGIN_STMT FlexCAN_Disable (pBase_15(D)); goto ; [100.00%] [local count: 189246996]: # DEBUG BEGIN_STMT _7 = &Flexcan_Ip_pData_26(D)->payload; FlexCAN_SetPayloadSize (pBase_15(D), _7); # DEBUG BEGIN_STMT _8 = Flexcan_Ip_pData_26(D)->max_num_mb; eResult_33 = FlexCAN_SetMaxMsgBuffNum (pBase_15(D), _8); # DEBUG eResult => eResult_33 # DEBUG BEGIN_STMT if (eResult_33 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 62451509]: # DEBUG BEGIN_STMT FlexCAN_EnterFreezeMode (pBase_15(D)); # DEBUG BEGIN_STMT FlexCAN_Disable (pBase_15(D)); [local count: 1073741824]: # eResult_10 = PHI # DEBUG eResult => eResult_10 # DEBUG BEGIN_STMT return eResult_10; } FlexCAN_InitRxFifo (struct FLEXCAN_Type * pBase, const struct Flexcan_Ip_ConfigType * Flexcan_Ip_pData) { Flexcan_Ip_StatusType eResult; _Bool _1; _2; long unsigned int _3; _Bool _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG eResult => 0 # DEBUG BEGIN_STMT _1 = Flexcan_Ip_pData_11(D)->is_rx_fifo_needed; if (_1 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT _2 = Flexcan_Ip_pData_11(D)->num_id_filters; _3 = (long unsigned int) _2; eResult_14 = FlexCAN_EnableRxFifo (pBase_12(D), _3); # DEBUG eResult => eResult_14 # DEBUG BEGIN_STMT if (eResult_14 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 896574424]: # eResult_17 = PHI # DEBUG eResult => NULL _4 = Flexcan_Ip_pData_11(D)->is_enhanced_rx_fifo_needed; if (_4 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 295869560]: # DEBUG BEGIN_STMT _5 = Flexcan_Ip_pData_11(D)->num_enhanced_std_id_filters; _6 = Flexcan_Ip_pData_11(D)->num_enhanced_ext_id_filters; _7 = Flexcan_Ip_pData_11(D)->num_enhanced_watermark; eResult_16 = FlexCAN_EnableEnhancedRxFifo (pBase_12(D), _5, _6, _7); # DEBUG eResult => eResult_16 [local count: 1073741824]: # eResult_8 = PHI # DEBUG eResult => eResult_8 # DEBUG BEGIN_STMT return eResult_8; } FlexCAN_SetRegDefaultVal (struct FLEXCAN_Type * base) { _Bool _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = FlexCAN_IsEnhancedRxFifoAvailable (base_16(D)); if (_1 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT base_16(D)->ERFSR ={v} 4160749568; # DEBUG BEGIN_STMT base_16(D)->ERFIER ={v} 0; # DEBUG BEGIN_STMT base_16(D)->ERFCR ={v} 0; [local count: 1073741824]: # DEBUG BEGIN_STMT base_16(D)->FDCBT ={v} 0; # DEBUG BEGIN_STMT base_16(D)->FDCTRL ={v} 2147500288; # DEBUG BEGIN_STMT base_16(D)->ERRSR ={v} 851981; # DEBUG BEGIN_STMT base_16(D)->ERRIPPR ={v} 0; # DEBUG BEGIN_STMT base_16(D)->ERRIDPR ={v} 0; # DEBUG BEGIN_STMT base_16(D)->ERRIAR ={v} 0; # DEBUG BEGIN_STMT _2 ={v} base_16(D)->CTRL2; _3 = _2 | 536870912; base_16(D)->CTRL2 ={v} _3; # DEBUG BEGIN_STMT _4 ={v} base_16(D)->MECR; _5 = _4 & 2147483647; base_16(D)->MECR ={v} _5; # DEBUG BEGIN_STMT base_16(D)->MECR ={v} 786560; # DEBUG BEGIN_STMT _6 ={v} base_16(D)->MECR; _7 = _6 | 2147483648; base_16(D)->MECR ={v} _7; # DEBUG BEGIN_STMT _8 ={v} base_16(D)->CTRL2; _9 = _8 & 3758096383; base_16(D)->CTRL2 ={v} _9; # DEBUG BEGIN_STMT _10 = FlexCAN_GetMaxMbNum (base_16(D)); if (_10 > 64) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT base_16(D)->IFLAG3 ={v} 4294967295; # DEBUG BEGIN_STMT base_16(D)->IMASK3 ={v} 0; [local count: 1073741824]: # DEBUG BEGIN_STMT _11 = FlexCAN_GetMaxMbNum (base_16(D)); if (_11 > 32) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT base_16(D)->IFLAG2 ={v} 4294967295; # DEBUG BEGIN_STMT base_16(D)->IMASK2 ={v} 0; [local count: 1073741824]: # DEBUG BEGIN_STMT base_16(D)->IFLAG1 ={v} 4294967295; # DEBUG BEGIN_STMT base_16(D)->IMASK1 ={v} 0; # DEBUG BEGIN_STMT base_16(D)->CBT ={v} 0; # DEBUG BEGIN_STMT base_16(D)->CTRL2 ={v} 1048576; # DEBUG BEGIN_STMT base_16(D)->ESR1 ={v} 241670; # DEBUG BEGIN_STMT base_16(D)->ECR ={v} 0; # DEBUG BEGIN_STMT base_16(D)->TIMER ={v} 0; # DEBUG BEGIN_STMT base_16(D)->CTRL1 ={v} 0; # DEBUG BEGIN_STMT base_16(D)->EPRS ={v} 0; # DEBUG BEGIN_STMT base_16(D)->ENCBT ={v} 0; # DEBUG BEGIN_STMT base_16(D)->EDCBT ={v} 0; # DEBUG BEGIN_STMT base_16(D)->ETDC ={v} 0; # DEBUG BEGIN_STMT base_16(D)->MCR ={v} 3633315855; return; } FlexCAN_GetEnhancedRxFIFOIntStatusFlag (const struct FLEXCAN_Type * base, uint32 intFlag) { long unsigned int _1; int _2; int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; uint8 _10; long unsigned int _11; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_8(D)->ERFIER; _11 = intFlag_9(D) & 255; _2 = (int) _11; _3 = _2 & 31; _4 = 1 << _3; _5 = _1 & _4; _6 = _5 >> _3; _10 = (uint8) _6; return _10; } FlexCAN_GetEnhancedRxFIFOStatusFlag (const struct FLEXCAN_Type * base, uint32 intFlag) { long unsigned int _1; int _2; int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; uint8 _10; long unsigned int _11; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_8(D)->ERFSR; _11 = intFlag_9(D) & 255; _2 = (int) _11; _3 = _2 & 31; _4 = 1 << _3; _5 = _1 & _4; _6 = _5 >> _3; _10 = (uint8) _6; return _10; } FlexCAN_SetRxMaskType (struct FLEXCAN_Type * base, Flexcan_Ip_RxMaskType type) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; [local count: 1073741824]: # DEBUG BEGIN_STMT if (type_6(D) == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _1 ={v} base_8(D)->MCR; _2 = _1 & 4294901759; base_8(D)->MCR ={v} _2; goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _3 ={v} base_8(D)->MCR; _4 = _3 | 65536; base_8(D)->MCR ={v} _4; [local count: 1073741824]: return; } FlexCAN_SetTxArbitrationStartDelay (struct FLEXCAN_Type * base, uint8 tasd) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_8(D)->CTRL2; _2 = _1 & 4278714367; _3 = (long unsigned int) tasd_9(D); _4 = _3 << 19; _5 = _4 & 16252928; _6 = _2 | _5; base_8(D)->CTRL2 ={v} _6; return; } FlexCAN_GetMsgBuffIntStatusFlag (const struct FLEXCAN_Type * base, uint32 msgBuffIdx) { uint32 mask; uint8 flag; long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; unsigned char _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; unsigned char _10; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG flag => 0 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT if (msgBuffIdx_13(D) <= 31) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT mask_18 ={v} base_15(D)->IMASK1; # DEBUG mask => mask_18 # DEBUG BEGIN_STMT _1 ={v} base_15(D)->IFLAG1; _2 = _1 & mask_18; _3 = msgBuffIdx_13(D); _4 = _2 >> _3; _5 = (unsigned char) _4; flag_19 = _5 & 1; # DEBUG flag => flag_19 goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT if (msgBuffIdx_13(D) <= 63) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: # DEBUG BEGIN_STMT mask_16 ={v} base_15(D)->IMASK2; # DEBUG mask => mask_16 # DEBUG BEGIN_STMT _6 ={v} base_15(D)->IFLAG2; _7 = _6 & mask_16; _8 = msgBuffIdx_13(D) & 31; _9 = _7 >> _8; _10 = (unsigned char) _9; flag_17 = _10 & 1; # DEBUG flag => flag_17 goto ; [100.00%] [local count: 268435456]: # DEBUG BEGIN_STMT if (msgBuffIdx_13(D) <= 95) goto ; [50.00%] else goto ; [50.00%] [local count: 134217728]: flag_20 = FlexCAN_GetMsgBuffIntStatusFlag.part.0 (base_15(D), msgBuffIdx_13(D)); [local count: 1073741824]: # flag_11 = PHI # DEBUG flag => flag_11 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return flag_11; } RxFifoOcuppiedLastMsgBuff (uint32 x) { long unsigned int _1; long unsigned int _2; long unsigned int _3; uint32 _5; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = x_4(D) + 1; _2 = _1 * 8; _3 = _2 >> 2; _5 = _3 + 5; return _5; } FlexCAN_EnhCbtEnable (struct FLEXCAN_Type * base, boolean enableCBT) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int iftmp.6_4; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_6(D)->CTRL2; _2 = _1 & 4294959103; if (enableCBT_7(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: [local count: 1073741824]: # iftmp.6_4 = PHI <8192(2), 0(3)> _3 = _2 | iftmp.6_4; base_6(D)->CTRL2 ={v} _3; return; } FlexCAN_EnableExtCbt (struct FLEXCAN_Type * base, boolean enableCBT) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int iftmp.4_4; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_6(D)->CBT; _2 = _1 & 2147483647; if (enableCBT_7(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: [local count: 1073741824]: # iftmp.4_4 = PHI <2147483648(2), 0(3)> _3 = _2 | iftmp.4_4; base_6(D)->CBT ={v} _3; return; } FlexCAN_GetFDTimeSegments (const struct FLEXCAN_Type * base, struct Flexcan_Ip_TimeSegmentType * timeSeg) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; long unsigned int _14; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_16(D)->FDCBT; _2 = _1 >> 20; _3 = _2 & 1023; timeSeg_17(D)->preDivider = _3; # DEBUG BEGIN_STMT _4 ={v} base_16(D)->FDCBT; _5 = _4 >> 10; _6 = _5 & 31; timeSeg_17(D)->propSeg = _6; # DEBUG BEGIN_STMT _7 ={v} base_16(D)->FDCBT; _8 = _7 >> 5; _9 = _8 & 7; timeSeg_17(D)->phaseSeg1 = _9; # DEBUG BEGIN_STMT _10 ={v} base_16(D)->FDCBT; _11 = _10 & 7; timeSeg_17(D)->phaseSeg2 = _11; # DEBUG BEGIN_STMT _12 ={v} base_16(D)->FDCBT; _13 = _12 >> 16; _14 = _13 & 7; timeSeg_17(D)->rJumpwidth = _14; return; } FlexCAN_GetTimeSegments (const struct FLEXCAN_Type * base, struct Flexcan_Ip_TimeSegmentType * timeSeg) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_15(D)->CTRL1; _2 = _1 >> 24; timeSeg_16(D)->preDivider = _2; # DEBUG BEGIN_STMT _3 ={v} base_15(D)->CTRL1; _4 = _3 & 7; timeSeg_16(D)->propSeg = _4; # DEBUG BEGIN_STMT _5 ={v} base_15(D)->CTRL1; _6 = _5 >> 19; _7 = _6 & 7; timeSeg_16(D)->phaseSeg1 = _7; # DEBUG BEGIN_STMT _8 ={v} base_15(D)->CTRL1; _9 = _8 >> 16; _10 = _9 & 7; timeSeg_16(D)->phaseSeg2 = _10; # DEBUG BEGIN_STMT _11 ={v} base_15(D)->CTRL1; _12 = _11 >> 22; _13 = _12 & 3; timeSeg_16(D)->rJumpwidth = _13; return; } FlexCAN_GetExtendedTimeSegments (const struct FLEXCAN_Type * base, struct Flexcan_Ip_TimeSegmentType * timeSeg) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; long unsigned int _13; long unsigned int _14; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_16(D)->CBT; _2 = _1 >> 21; _3 = _2 & 1023; timeSeg_17(D)->preDivider = _3; # DEBUG BEGIN_STMT _4 ={v} base_16(D)->CBT; _5 = _4 >> 10; _6 = _5 & 63; timeSeg_17(D)->propSeg = _6; # DEBUG BEGIN_STMT _7 ={v} base_16(D)->CBT; _8 = _7 >> 5; _9 = _8 & 31; timeSeg_17(D)->phaseSeg1 = _9; # DEBUG BEGIN_STMT _10 ={v} base_16(D)->CBT; _11 = _10 & 31; timeSeg_17(D)->phaseSeg2 = _11; # DEBUG BEGIN_STMT _12 ={v} base_16(D)->CBT; _13 = _12 >> 16; _14 = _13 & 31; timeSeg_17(D)->rJumpwidth = _14; return; } FlexCAN_GetEnhancedDataTimeSegments (const struct FLEXCAN_Type * base, struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; _Bool _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; _Bool x.0_21; [local count: 214748]: # DEBUG BEGIN_STMT _1 = timeSeg_13(D) != 0B; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_21 ={v} x; if (x.0_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: # DEBUG BEGIN_STMT # DEBUG x => NULL # DEBUG BEGIN_STMT timeSeg_13(D)->propSeg = 0; # DEBUG BEGIN_STMT _2 ={v} base_16(D)->EDCBT; _3 = _2 & 31; timeSeg_13(D)->phaseSeg1 = _3; # DEBUG BEGIN_STMT _4 ={v} base_16(D)->EDCBT; _5 = _4 >> 12; _6 = _5 & 15; timeSeg_13(D)->phaseSeg2 = _6; # DEBUG BEGIN_STMT _7 ={v} base_16(D)->EDCBT; _8 = _7 >> 22; _9 = _8 & 15; timeSeg_13(D)->rJumpwidth = _9; # DEBUG BEGIN_STMT _10 ={v} base_16(D)->EPRS; _11 = _10 >> 16; _12 = _11 & 1023; timeSeg_13(D)->preDivider = _12; return; } FlexCAN_SetEnhancedDataTimeSegments (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; _Bool _1; _Bool x.0_6; [local count: 214748]: # DEBUG BEGIN_STMT _1 = timeSeg_2(D) != 0B; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_6 ={v} x; if (x.0_6 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: FlexCAN_SetEnhancedDataTimeSegments.part.0 (base_5(D), timeSeg_2(D)); return; } FlexCAN_GetEnhancedNominalTimeSegments (const struct FLEXCAN_Type * base, struct Flexcan_Ip_TimeSegmentType * timeSeg) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; [local count: 1073741824]: # DEBUG BEGIN_STMT timeSeg_12(D)->propSeg = 0; # DEBUG BEGIN_STMT _1 ={v} base_14(D)->EPRS; _2 = _1 & 1023; timeSeg_12(D)->preDivider = _2; # DEBUG BEGIN_STMT _3 ={v} base_14(D)->ENCBT; _4 = _3 & 255; timeSeg_12(D)->phaseSeg1 = _4; # DEBUG BEGIN_STMT _5 ={v} base_14(D)->ENCBT; _6 = _5 >> 12; _7 = _6 & 127; timeSeg_12(D)->phaseSeg2 = _7; # DEBUG BEGIN_STMT _8 ={v} base_14(D)->ENCBT; _9 = _8 >> 22; _10 = _9 & 127; timeSeg_12(D)->rJumpwidth = _10; return; } FlexCAN_SetEnhancedNominalTimeSegments (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; _Bool _1; _Bool x.0_6; [local count: 214748]: # DEBUG BEGIN_STMT _1 = timeSeg_2(D) != 0B; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_6 ={v} x; if (x.0_6 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: FlexCAN_SetEnhancedNominalTimeSegments.part.0 (base_5(D), timeSeg_2(D)); return; } FlexCAN_SetExtendedTimeSegments (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; _Bool _1; _Bool x.0_6; [local count: 214748]: # DEBUG BEGIN_STMT _1 = timeSeg_2(D) != 0B; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_6 ={v} x; if (x.0_6 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: FlexCAN_SetExtendedTimeSegments.part.0 (base_5(D), timeSeg_2(D)); return; } FlexCAN_SetTimeSegments (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; _Bool _1; _Bool x.0_6; [local count: 214748]: # DEBUG BEGIN_STMT _1 = timeSeg_2(D) != 0B; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_6 ={v} x; if (x.0_6 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: FlexCAN_SetTimeSegments.part.0 (base_5(D), timeSeg_2(D)); return; } FlexCAN_SetFDTimeSegments (struct FLEXCAN_Type * base, const struct Flexcan_Ip_TimeSegmentType * timeSeg) { volatile boolean x; _Bool _1; _Bool x.0_6; [local count: 214748]: # DEBUG BEGIN_STMT _1 = timeSeg_2(D) != 0B; x ={v} _1; # DEBUG x => x # DEBUG INLINE_ENTRY DevAssert # DEBUG BEGIN_STMT x.0_6 ={v} x; if (x.0_6 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] [local count: 107374]: FlexCAN_SetFDTimeSegments.part.0 (base_5(D), timeSeg_2(D)); return; } FlexCAN_GetBuffStatusImask (const struct FLEXCAN_Type * base, uint32 msgBuffIdx) { uint32 u32Imask; long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; uint8 _20; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG u32Imask => 0 # DEBUG BEGIN_STMT if (msgBuffIdx_14(D) <= 31) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _1 ={v} base_16(D)->IMASK1; _2 = msgBuffIdx_14(D); _3 = 1 << _2; _4 = _1 & _3; u32Imask_19 = _4 >> _2; # DEBUG u32Imask => u32Imask_19 goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT if (msgBuffIdx_14(D) <= 63) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: # DEBUG BEGIN_STMT _5 ={v} base_16(D)->IMASK2; _6 = msgBuffIdx_14(D) & 31; _7 = 1 << _6; _8 = _5 & _7; u32Imask_18 = _8 >> _6; # DEBUG u32Imask => u32Imask_18 goto ; [100.00%] [local count: 268435456]: # DEBUG BEGIN_STMT if (msgBuffIdx_14(D) <= 95) goto ; [50.00%] else goto ; [50.00%] [local count: 134217728]: # DEBUG BEGIN_STMT _9 ={v} base_16(D)->IMASK3; _10 = msgBuffIdx_14(D) & 31; _11 = 1 << _10; _12 = _9 & _11; u32Imask_17 = _12 >> _10; # DEBUG u32Imask => u32Imask_17 [local count: 1073741824]: # u32Imask_13 = PHI # DEBUG u32Imask => u32Imask_13 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _20 = (uint8) u32Imask_13; return _20; } FlexCAN_GetBuffStatusFlag (const struct FLEXCAN_Type * base, uint32 msgBuffIdx) { uint32 flag; long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; long unsigned int _11; long unsigned int _12; uint8 _20; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG flag => 0 # DEBUG BEGIN_STMT if (msgBuffIdx_14(D) <= 31) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _1 ={v} base_16(D)->IFLAG1; _2 = msgBuffIdx_14(D); _3 = 1 << _2; _4 = _1 & _3; flag_19 = _4 >> _2; # DEBUG flag => flag_19 goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT if (msgBuffIdx_14(D) <= 63) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: # DEBUG BEGIN_STMT _5 ={v} base_16(D)->IFLAG2; _6 = msgBuffIdx_14(D) & 31; _7 = 1 << _6; _8 = _5 & _7; flag_18 = _8 >> _6; # DEBUG flag => flag_18 goto ; [100.00%] [local count: 268435456]: # DEBUG BEGIN_STMT if (msgBuffIdx_14(D) <= 95) goto ; [50.00%] else goto ; [50.00%] [local count: 134217728]: # DEBUG BEGIN_STMT _9 ={v} base_16(D)->IFLAG3; _10 = msgBuffIdx_14(D) & 31; _11 = 1 << _10; _12 = _9 & _11; flag_17 = _12 >> _10; # DEBUG flag => flag_17 [local count: 1073741824]: # flag_13 = PHI # DEBUG flag => flag_13 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _20 = (uint8) flag_13; return _20; } FlexCAN_ClearMsgBuffIntStatusFlag (struct FLEXCAN_Type * base, uint32 msgBuffIdx) { uint32 flag; long unsigned int _1; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = msgBuffIdx_3(D) & 31; flag_4 = 1 << _1; # DEBUG flag => flag_4 # DEBUG BEGIN_STMT if (msgBuffIdx_3(D) <= 31) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT base_6(D)->IFLAG1 ={v} flag_4; goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT if (msgBuffIdx_3(D) <= 63) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: # DEBUG BEGIN_STMT base_6(D)->IFLAG2 ={v} flag_4; goto ; [100.00%] [local count: 268435456]: # DEBUG BEGIN_STMT if (msgBuffIdx_3(D) <= 95) goto ; [50.00%] else goto ; [50.00%] [local count: 134217728]: # DEBUG BEGIN_STMT base_6(D)->IFLAG3 ={v} flag_4; [local count: 1073741824]: # DEBUG BEGIN_STMT return; } FlexCAN_SetListenOnlyMode (struct FLEXCAN_Type * base, boolean enableListenOnly) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int iftmp.7_4; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_6(D)->CTRL1; _2 = _1 & 4294967287; if (enableListenOnly_7(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: [local count: 1073741824]: # iftmp.7_4 = PHI <8(2), 0(3)> _3 = _2 | iftmp.7_4; base_6(D)->CTRL1 ={v} _3; return; } FlexCAN_SetFDEnabled (struct FLEXCAN_Type * base, boolean enableFD, boolean enableBRS) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int iftmp.1_9; long unsigned int iftmp.2_10; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_12(D)->MCR; _2 = _1 & 4294965247; if (enableFD_13(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: [local count: 1073741824]: # iftmp.1_9 = PHI <2048(2), 0(3)> _3 = _2 | iftmp.1_9; base_12(D)->MCR ={v} _3; # DEBUG BEGIN_STMT _4 ={v} base_12(D)->FDCTRL; _5 = _4 & 2147483647; if (enableBRS_15(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: [local count: 1073741824]: # iftmp.2_10 = PHI <2147483648(4), 0(5)> _6 = _5 | iftmp.2_10; base_12(D)->FDCTRL ={v} _6; # DEBUG BEGIN_STMT _7 ={v} base_12(D)->FDCTRL; _8 = _7 & 4294926591; base_12(D)->FDCTRL ={v} _8; return; } FlexCAN_DisableMemErrorDetection (struct FLEXCAN_Type * base) { long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} base_7(D)->CTRL2; _2 = _1 | 536870912; base_7(D)->CTRL2 ={v} _2; # DEBUG BEGIN_STMT base_7(D)->MECR ={v} 0; # DEBUG BEGIN_STMT base_7(D)->MECR ={v} 0; # DEBUG BEGIN_STMT _3 ={v} base_7(D)->MECR; _4 = _3 | 256; base_7(D)->MECR ={v} _4; # DEBUG BEGIN_STMT _5 ={v} base_7(D)->CTRL2; base_7(D)->CTRL2 ={v} _5; return; } FlexCAN_SetEnhancedTDCOffset (struct FLEXCAN_Type * base, boolean enable, uint8 offset) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_7 ={v} base_6(D)->ETDC; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT tmp_8 = tmp_7 & 2139160575; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT if (enable_9(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT tmp_10 = tmp_8 | 2147483648; # DEBUG tmp => tmp_10 # DEBUG BEGIN_STMT _1 = (long unsigned int) offset_11(D); _2 = _1 << 16; _3 = _2 & 8323072; tmp_12 = _3 | tmp_10; # DEBUG tmp => tmp_12 [local count: 1073741824]: # tmp_4 = PHI # DEBUG tmp => tmp_4 # DEBUG BEGIN_STMT base_6(D)->ETDC ={v} tmp_4; return; } FlexCAN_SetTDCOffset (struct FLEXCAN_Type * base, boolean enable, uint8 offset) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_7 ={v} base_6(D)->FDCTRL; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT tmp_8 = tmp_7 & 4294926591; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT if (enable_9(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT tmp_10 = tmp_8 | 32768; # DEBUG tmp => tmp_10 # DEBUG BEGIN_STMT _1 = (long unsigned int) offset_11(D); _2 = _1 << 8; _3 = _2 & 7936; tmp_12 = _3 | tmp_10; # DEBUG tmp => tmp_12 [local count: 1073741824]: # tmp_4 = PHI # DEBUG tmp => tmp_4 # DEBUG BEGIN_STMT base_6(D)->FDCTRL ={v} tmp_4; return; }