IPA summary for Can_Ipw_ProcessPN/29 is missing.
IPA summary for Can_Ipw_SetIcomConfiguration/28 is missing.
IPA summary for Can_Ipw_DeactivateIcomConfiguration/27 is missing.
IPA summary for Can_Ipw_MainFunction_Mode/26 is missing.
IPA summary for Can_Ipw_MainFunction_BusOff/25 is missing.
IPA summary for Can_Ipw_MainFunction_Read/24 is missing.
IPA summary for Can_Ipw_MainFunction_Write/23 is missing.
IPA summary for Can_Ipw_AbortMb/22 is missing.
IPA summary for Can_Ipw_InitRx/21 is missing.
IPA summary for Can_Ipw_Write/20 is missing.
IPA summary for Can_Ipw_GetControllerRxErrorCounter/19 is missing.
IPA summary for Can_Ipw_GetControllerTxErrorCounter/18 is missing.
IPA summary for Can_Ipw_GetControllerErrorState/17 is missing.
IPA summary for Can_Ipw_EnableControllerInterrupts/16 is missing.
IPA summary for Can_Ipw_DisableControllerInterrupts/15 is missing.
IPA summary for Can_Ipw_SetControllerToStopMode/14 is missing.
IPA summary for Can_Ipw_SetControllerToStartMode/13 is missing.
IPA summary for Can_Ipw_SetControlerErrorInit/12 is missing.
IPA summary for Can_Ipw_SetBaudrate/11 is missing.
IPA summary for Can_Ipw_DeInit/10 is missing.
IPA summary for Can_Ipw_Init/9 is missing.
IPA summary for Can_Ipw_SetRxMb/8 is missing.
IPA summary for Can_Ipw_ProcessLegacyFifoPolling/7 is missing.
IPA summary for Can_Ipw_InitLegacyFifoFilter/6 is missing.
IPA summary for Can_Ipw_ParseData/5 is missing.

Flattening functions:
Overall time estimate: 0.000000 weighted by profile: 0.000000

Deciding on inlining of small functions.  Starting with size 0.

Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:

Deciding on functions to be inlined into all callers and removing useless speculations:
Overall time estimate: 0.000000 weighted by profile: 0.000000

Why inlining failed?
function not considered for inlining              :        6 calls, 6.000000 freq, 0 count
function body not available                       :       73 calls, 73.000000 freq, 0 count
IPA summary for Can_Ipw_ProcessPN/29 is missing.
IPA summary for Can_Ipw_SetIcomConfiguration/28 is missing.
IPA summary for Can_Ipw_DeactivateIcomConfiguration/27 is missing.
IPA summary for Can_Ipw_MainFunction_Mode/26 is missing.
IPA summary for Can_Ipw_MainFunction_BusOff/25 is missing.
IPA summary for Can_Ipw_MainFunction_Read/24 is missing.
IPA summary for Can_Ipw_MainFunction_Write/23 is missing.
IPA summary for Can_Ipw_AbortMb/22 is missing.
IPA summary for Can_Ipw_InitRx/21 is missing.
IPA summary for Can_Ipw_Write/20 is missing.
IPA summary for Can_Ipw_GetControllerRxErrorCounter/19 is missing.
IPA summary for Can_Ipw_GetControllerTxErrorCounter/18 is missing.
IPA summary for Can_Ipw_GetControllerErrorState/17 is missing.
IPA summary for Can_Ipw_EnableControllerInterrupts/16 is missing.
IPA summary for Can_Ipw_DisableControllerInterrupts/15 is missing.
IPA summary for Can_Ipw_SetControllerToStopMode/14 is missing.
IPA summary for Can_Ipw_SetControllerToStartMode/13 is missing.
IPA summary for Can_Ipw_SetControlerErrorInit/12 is missing.
IPA summary for Can_Ipw_SetBaudrate/11 is missing.
IPA summary for Can_Ipw_DeInit/10 is missing.
IPA summary for Can_Ipw_Init/9 is missing.
IPA summary for Can_Ipw_SetRxMb/8 is missing.
IPA summary for Can_Ipw_ProcessLegacyFifoPolling/7 is missing.
IPA summary for Can_Ipw_InitLegacyFifoFilter/6 is missing.
IPA summary for Can_Ipw_ParseData/5 is missing.
Symbol table:

CanIf_PduInfo.7008/74 (CanIf_PduInfo) @071ddbd0
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_ProcessPN/29 (write)Can_Ipw_ProcessPN/29 (write)Can_Ipw_ProcessPN/29 (addr)
  Availability: available
  Varpool flags:
CanIf_Mailbox.7007/73 (CanIf_Mailbox) @071ddb88
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_ProcessPN/29 (write)Can_Ipw_ProcessPN/29 (read)Can_Ipw_ProcessPN/29 (write)Can_Ipw_ProcessPN/29 (write)Can_Ipw_ProcessPN/29 (write)Can_Ipw_ProcessPN/29 (addr)
  Availability: available
  Varpool flags:
FlexCAN_Ip_GetWMB/72 (FlexCAN_Ip_GetWMB) @071dc460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_ProcessPN/29 
  Calls: 
FlexCAN_Ip_ExitFreezeMode_Privileged/71 (FlexCAN_Ip_ExitFreezeMode_Privileged) @071dc1c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetIcomConfiguration/28 Can_Ipw_DeactivateIcomConfiguration/27 
  Calls: 
CanIf_ControllerModeIndication/70 (CanIf_ControllerModeIndication) @071dc000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_MainFunction_Mode/26 Can_Ipw_MainFunction_Mode/26 
  Calls: 
FlexCAN_Ip_GetStartMode_Privileged/69 (FlexCAN_Ip_GetStartMode_Privileged) @071cbee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_DeactivateIcomConfiguration/27 Can_Ipw_MainFunction_Mode/26 Can_Ipw_MainFunction_Mode/26 
  Calls: 
FlexCAN_Ip_MainFunctionBusOff_Privileged/68 (FlexCAN_Ip_MainFunctionBusOff_Privileged) @071cbd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_MainFunction_BusOff/25 
  Calls: 
CanIf_PduInfo.6985/67 (CanIf_PduInfo) @071d4ab0
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_MainFunction_Read/24 (addr)Can_Ipw_MainFunction_Read/24 (addr)
  Availability: available
  Varpool flags:
CanIf_Mailbox.6984/66 (CanIf_Mailbox) @071d4a68
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_MainFunction_Read/24 (addr)Can_Ipw_MainFunction_Read/24 (addr)
  Availability: available
  Varpool flags:
ReceivedDataBuffer.6983/65 (ReceivedDataBuffer) @071d4948
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_MainFunction_Read/24 (addr)Can_Ipw_MainFunction_Read/24 (addr)Can_Ipw_MainFunction_Read/24 (addr)
  Availability: available
  Varpool flags:
FlexCAN_Ip_Receive/64 (FlexCAN_Ip_Receive) @071cba80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_MainFunction_Read/24 
  Calls: 
FlexCAN_Ip_GetStopMode_Privileged/63 (FlexCAN_Ip_GetStopMode_Privileged) @071cb9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_MainFunction_Read/24 
  Calls: 
CanIf_TxConfirmation/62 (CanIf_TxConfirmation) @071cb7e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_MainFunction_Write/23 
  Calls: 
FlexCAN_Ip_MainFunctionWrite/61 (FlexCAN_Ip_MainFunctionWrite) @071cb700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_MainFunction_Write/23 
  Calls: 
FlexCAN_Ip_SetRxMaskType_Privileged/60 (FlexCAN_Ip_SetRxMaskType_Privileged) @071cb460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_InitRx/21 
  Calls: 
FlexCAN_Ip_Send/59 (FlexCAN_Ip_Send) @071cb2a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_Write/20 
  Calls: 
FlexCAN_Ip_GetControllerRxErrorCounter/58 (FlexCAN_Ip_GetControllerRxErrorCounter) @071cb0e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_GetControllerRxErrorCounter/19 
  Calls: 
FlexCAN_Ip_GetControllerTxErrorCounter/57 (FlexCAN_Ip_GetControllerTxErrorCounter) @071bfee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_GetControllerTxErrorCounter/18 
  Calls: 
FlexCAN_Ip_GetErrorStatus/56 (FlexCAN_Ip_GetErrorStatus) @071bfd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_GetControllerErrorState/17 
  Calls: 
FlexCAN_Ip_AbortTransfer/55 (FlexCAN_Ip_AbortTransfer) @071bf9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_AbortMb/22 Can_Ipw_SetControllerToStopMode/14 Can_Ipw_SetControllerToStopMode/14 
  Calls: 
FlexCAN_Ip_ConfigPN_Privileged/54 (FlexCAN_Ip_ConfigPN_Privileged) @071bf7e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetIcomConfiguration/28 Can_Ipw_DeactivateIcomConfiguration/27 Can_Ipw_SetControllerToStopMode/14 Can_Ipw_SetControllerToStartMode/13 
  Calls: 
FlexCAN_Ip_ManualBusOffRecovery/53 (FlexCAN_Ip_ManualBusOffRecovery) @071bf620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetControlerErrorInit/12 
  Calls: 
FlexCAN_Ip_SetStartMode_Privileged/52 (FlexCAN_Ip_SetStartMode_Privileged) @071bf540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetControlerErrorInit/12 
  Calls: 
FlexCAN_Ip_EnableInterrupts_Privileged/51 (FlexCAN_Ip_EnableInterrupts_Privileged) @071bf460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_EnableControllerInterrupts/16 Can_Ipw_SetControlerErrorInit/12 
  Calls: 
FlexCAN_Ip_ClearErrorStatus/50 (FlexCAN_Ip_ClearErrorStatus) @071bf380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetControlerErrorInit/12 
  Calls: 
FlexCAN_Ip_SetStopMode_Privileged/49 (FlexCAN_Ip_SetStopMode_Privileged) @071bf1c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_DeactivateIcomConfiguration/27 Can_Ipw_InitRx/21 Can_Ipw_SetControllerToStopMode/14 Can_Ipw_SetBaudrate/11 
  Calls: 
FlexCAN_Ip_SetBitrateCbt_Privileged/48 (FlexCAN_Ip_SetBitrateCbt_Privileged) @071bf0e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetBaudrate/11 
  Calls: 
FlexCAN_Ip_SetBitrate_Privileged/47 (FlexCAN_Ip_SetBitrate_Privileged) @071bf000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetBaudrate/11 
  Calls: 
FlexCAN_Ip_EnterFreezeMode_Privileged/46 (FlexCAN_Ip_EnterFreezeMode_Privileged) @071aeee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetIcomConfiguration/28 Can_Ipw_DeactivateIcomConfiguration/27 Can_Ipw_SetControllerToStopMode/14 Can_Ipw_SetControllerToStartMode/13 Can_Ipw_SetBaudrate/11 
  Calls: 
FlexCAN_Ip_Deinit_Privileged/45 (FlexCAN_Ip_Deinit_Privileged) @071aee00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_DeInit/10 
  Calls: 
FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/44 (FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged) @071aec40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetBaudrate/11 Can_Ipw_Init/9 
  Calls: 
FlexCAN_Ip_SetTDCOffset_Privileged/43 (FlexCAN_Ip_SetTDCOffset_Privileged) @071aeb60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_SetBaudrate/11 Can_Ipw_Init/9 
  Calls: 
FlexCAN_Ip_DisableInterrupts_Privileged/42 (FlexCAN_Ip_DisableInterrupts_Privileged) @071aea80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_DisableControllerInterrupts/15 Can_Ipw_SetControllerToStopMode/14 Can_Ipw_Init/9 
  Calls: 
FlexCAN_Ip_Init_Privileged/41 (FlexCAN_Ip_Init_Privileged) @071ae9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_Init/9 
  Calls: 
FlexCAN_Ip_ConfigRxMb/40 (FlexCAN_Ip_ConfigRxMb) @071ae7e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_InitRx/21 Can_Ipw_SetRxMb/8 
  Calls: 
FlexCAN_Ip_GetTransferStatus/39 (FlexCAN_Ip_GetTransferStatus) @071ae620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_MainFunction_Read/24 Can_Ipw_MainFunction_Write/23 Can_Ipw_Write/20 Can_Ipw_ProcessLegacyFifoPolling/7 
  Calls: 
FlexCAN_Ip_MainFunctionRead/38 (FlexCAN_Ip_MainFunctionRead) @071ae540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_MainFunction_Read/24 Can_Ipw_ProcessLegacyFifoPolling/7 
  Calls: 
FlexCAN_Ip_RxFifo/37 (FlexCAN_Ip_RxFifo) @071ae460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_ProcessLegacyFifoPolling/7 
  Calls: 
FlexCAN_Ip_ClearBuffStatusFlag/36 (FlexCAN_Ip_ClearBuffStatusFlag) @071ae380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_ProcessLegacyFifoPolling/7 Can_Ipw_ProcessLegacyFifoPolling/7 
  Calls: 
FlexCAN_Ip_GetBuffStatusFlag/35 (FlexCAN_Ip_GetBuffStatusFlag) @071ae2a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_ProcessLegacyFifoPolling/7 Can_Ipw_ProcessLegacyFifoPolling/7 Can_Ipw_ProcessLegacyFifoPolling/7 Can_Ipw_ProcessLegacyFifoPolling/7 
  Calls: 
FlexCAN_Ip_ConfigRxFifo_Privileged/34 (FlexCAN_Ip_ConfigRxFifo_Privileged) @071ae0e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_InitLegacyFifoFilter/6 
  Calls: 
FlexCAN_Ip_SetRxFifoGlobalMask_Privileged/33 (FlexCAN_Ip_SetRxFifoGlobalMask_Privileged) @071ae000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_InitLegacyFifoFilter/6 
  Calls: 
FlexCAN_Ip_SetRxIndividualMask_Privileged/32 (FlexCAN_Ip_SetRxIndividualMask_Privileged) @07136ee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_InitRx/21 Can_Ipw_InitLegacyFifoFilter/6 
  Calls: 
CanIf_RxIndication/31 (CanIf_RxIndication) @07136e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_ProcessPN/29 Can_Ipw_ParseData/5 
  Calls: 
Det_ReportRuntimeError/30 (Det_ReportRuntimeError) @07136d20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Can_Ipw_ProcessLegacyFifoPolling/7 Can_Ipw_ParseData/5 
  Calls: 
Can_Ipw_ProcessPN/29 (Can_Ipw_ProcessPN) @071368c0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: CanIf_Mailbox.7007/73 (write)CanIf_Mailbox.7007/73 (read)CanIf_Mailbox.7007/73 (write)CanIf_Mailbox.7007/73 (write)CanIf_Mailbox.7007/73 (write)CanIf_PduInfo.7008/74 (write)CanIf_PduInfo.7008/74 (write)CanIf_Mailbox.7007/73 (addr)CanIf_PduInfo.7008/74 (addr)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: CanIf_RxIndication/31 FlexCAN_Ip_GetWMB/72 
Can_Ipw_SetIcomConfiguration/28 (Can_Ipw_SetIcomConfiguration) @07136620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_ExitFreezeMode_Privileged/71 FlexCAN_Ip_ConfigPN_Privileged/54 FlexCAN_Ip_EnterFreezeMode_Privileged/46 
Can_Ipw_DeactivateIcomConfiguration/27 (Can_Ipw_DeactivateIcomConfiguration) @071361c0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_SetStopMode_Privileged/49 FlexCAN_Ip_ExitFreezeMode_Privileged/71 FlexCAN_Ip_ConfigPN_Privileged/54 FlexCAN_Ip_EnterFreezeMode_Privileged/46 FlexCAN_Ip_GetStartMode_Privileged/69 
Can_Ipw_MainFunction_Mode/26 (Can_Ipw_MainFunction_Mode) @0712aa80
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: CanIf_ControllerModeIndication/70 FlexCAN_Ip_GetStartMode_Privileged/69 CanIf_ControllerModeIndication/70 FlexCAN_Ip_GetStartMode_Privileged/69 
Can_Ipw_MainFunction_BusOff/25 (Can_Ipw_MainFunction_BusOff) @0712a380
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_MainFunctionBusOff_Privileged/68 
Can_Ipw_MainFunction_Read/24 (Can_Ipw_MainFunction_Read) @0712aee0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: ReceivedDataBuffer.6983/65 (addr)CanIf_Mailbox.6984/66 (addr)CanIf_PduInfo.6985/67 (addr)ReceivedDataBuffer.6983/65 (addr)CanIf_Mailbox.6984/66 (addr)CanIf_PduInfo.6985/67 (addr)ReceivedDataBuffer.6983/65 (addr)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Can_Ipw_ProcessLegacyFifoPolling/7 Can_Ipw_ParseData/5 FlexCAN_Ip_GetTransferStatus/39 FlexCAN_Ip_MainFunctionRead/38 FlexCAN_Ip_Receive/64 FlexCAN_Ip_GetStopMode_Privileged/63 
Can_Ipw_MainFunction_Write/23 (Can_Ipw_MainFunction_Write) @0712ac40
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Can_Ipw_xStatus0/0 (addr)Can_Ipw_au16TxPduId/2 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: CanIf_TxConfirmation/62 FlexCAN_Ip_GetTransferStatus/39 FlexCAN_Ip_MainFunctionWrite/61 
Can_Ipw_AbortMb/22 (Can_Ipw_AbortMb) @0712a9a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_AbortTransfer/55 
Can_Ipw_InitRx/21 (Can_Ipw_InitRx) @0712a700
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_SetStopMode_Privileged/49 Can_Ipw_InitLegacyFifoFilter/6 FlexCAN_Ip_SetRxIndividualMask_Privileged/32 FlexCAN_Ip_ConfigRxMb/40 FlexCAN_Ip_SetRxMaskType_Privileged/60 
Can_Ipw_Write/20 (Can_Ipw_Write) @0712a2a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Can_au16ControllerBaudRateSel/3 (read)Can_Ipw_au16TxPduId/2 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_Send/59 FlexCAN_Ip_GetTransferStatus/39 
Can_Ipw_GetControllerRxErrorCounter/19 (Can_Ipw_GetControllerRxErrorCounter) @0712a000
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_GetControllerRxErrorCounter/58 
Can_Ipw_GetControllerTxErrorCounter/18 (Can_Ipw_GetControllerTxErrorCounter) @07121c40
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_GetControllerTxErrorCounter/57 
Can_Ipw_GetControllerErrorState/17 (Can_Ipw_GetControllerErrorState) @07121540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_GetErrorStatus/56 
Can_Ipw_EnableControllerInterrupts/16 (Can_Ipw_EnableControllerInterrupts) @07121e00
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Can_Ipw_abIsInterruptEnabled/4 (read)Can_Ipw_abIsInterruptEnabled/4 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_EnableInterrupts_Privileged/51 
Can_Ipw_DisableControllerInterrupts/15 (Can_Ipw_DisableControllerInterrupts) @07121b60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Can_Ipw_abIsInterruptEnabled/4 (read)Can_Ipw_abIsInterruptEnabled/4 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_DisableInterrupts_Privileged/42 
Can_Ipw_SetControllerToStopMode/14 (Can_Ipw_SetControllerToStopMode) @071218c0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Can_Ipw_abIsInterruptEnabled/4 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_SetStopMode_Privileged/49 FlexCAN_Ip_AbortTransfer/55 FlexCAN_Ip_AbortTransfer/55 FlexCAN_Ip_DisableInterrupts_Privileged/42 FlexCAN_Ip_ConfigPN_Privileged/54 FlexCAN_Ip_EnterFreezeMode_Privileged/46 
Can_Ipw_SetControllerToStartMode/13 (Can_Ipw_SetControllerToStartMode) @07121460
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Can_Ipw_SetControlerErrorInit/12 Can_Ipw_SetRxMb/8 FlexCAN_Ip_ConfigPN_Privileged/54 FlexCAN_Ip_EnterFreezeMode_Privileged/46 
Can_Ipw_SetControlerErrorInit/12 (Can_Ipw_SetControlerErrorInit) @07121000
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Can_Ipw_abIsInterruptEnabled/4 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Can_Ipw_SetControllerToStartMode/13 
  Calls: FlexCAN_Ip_ManualBusOffRecovery/53 FlexCAN_Ip_SetStartMode_Privileged/52 FlexCAN_Ip_EnableInterrupts_Privileged/51 FlexCAN_Ip_ClearErrorStatus/50 
Can_Ipw_SetBaudrate/11 (Can_Ipw_SetBaudrate) @07115700
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Can_au16ControllerBaudRateSel/3 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_SetStopMode_Privileged/49 FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/44 FlexCAN_Ip_SetTDCOffset_Privileged/43 FlexCAN_Ip_SetBitrateCbt_Privileged/48 FlexCAN_Ip_SetBitrate_Privileged/47 FlexCAN_Ip_EnterFreezeMode_Privileged/46 
Can_Ipw_DeInit/10 (Can_Ipw_DeInit) @071158c0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_Deinit_Privileged/45 
Can_Ipw_Init/9 (Can_Ipw_Init) @07115620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Can_au16ControllerBaudRateSel/3 (write)Can_Ipw_xStatus0/0 (addr)Can_Ipw_abIsInterruptEnabled/4 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/44 FlexCAN_Ip_SetTDCOffset_Privileged/43 FlexCAN_Ip_DisableInterrupts_Privileged/42 FlexCAN_Ip_Init_Privileged/41 
Can_Ipw_SetRxMb/8 (Can_Ipw_SetRxMb) @0705dd20
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: Can_Ipw_SetControllerToStartMode/13 
  Calls: FlexCAN_Ip_ConfigRxMb/40 
Can_Ipw_ProcessLegacyFifoPolling/7 (Can_Ipw_ProcessLegacyFifoPolling) @0705dee0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: Can_Ipw_MainFunction_Read/24 
  Calls: FlexCAN_Ip_GetBuffStatusFlag/35 Can_Ipw_ParseData/5 FlexCAN_Ip_GetTransferStatus/39 FlexCAN_Ip_MainFunctionRead/38 FlexCAN_Ip_RxFifo/37 FlexCAN_Ip_ClearBuffStatusFlag/36 FlexCAN_Ip_GetBuffStatusFlag/35 FlexCAN_Ip_ClearBuffStatusFlag/36 Det_ReportRuntimeError/30 FlexCAN_Ip_GetBuffStatusFlag/35 FlexCAN_Ip_GetBuffStatusFlag/35 
   Indirect call
   Indirect call
Can_Ipw_InitLegacyFifoFilter/6 (Can_Ipw_InitLegacyFifoFilter) @0705dc40
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: Can_Ipw_InitRx/21 
  Calls: FlexCAN_Ip_ConfigRxFifo_Privileged/34 FlexCAN_Ip_SetRxFifoGlobalMask_Privileged/33 FlexCAN_Ip_SetRxIndividualMask_Privileged/32 
Can_Ipw_ParseData/5 (Can_Ipw_ParseData) @0705d7e0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: Can_Ipw_MainFunction_Read/24 Can_Ipw_ProcessLegacyFifoPolling/7 
  Calls: CanIf_RxIndication/31 Det_ReportRuntimeError/30 
Can_Ipw_abIsInterruptEnabled/4 (Can_Ipw_abIsInterruptEnabled) @06f19678
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_SetControllerToStopMode/14 (read)Can_Ipw_DisableControllerInterrupts/15 (write)Can_Ipw_Init/9 (write)Can_Ipw_DisableControllerInterrupts/15 (read)Can_Ipw_SetControlerErrorInit/12 (read)Can_Ipw_EnableControllerInterrupts/16 (read)Can_Ipw_EnableControllerInterrupts/16 (write)
  Availability: available
  Varpool flags:
Can_au16ControllerBaudRateSel/3 (Can_au16ControllerBaudRateSel) @06f195e8
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_Init/9 (write)Can_Ipw_SetBaudrate/11 (write)Can_Ipw_Write/20 (read)
  Availability: available
  Varpool flags:
Can_Ipw_au16TxPduId/2 (Can_Ipw_au16TxPduId) @06f194c8
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_Write/20 (write)Can_Ipw_MainFunction_Write/23 (read)
  Availability: available
  Varpool flags:
Can_Ipw_apxStatus/1 (Can_Ipw_apxStatus) @06f19438
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Can_Ipw_xStatus0/0 (addr)
  Referring: 
  Availability: available
  Varpool flags: initialized read-only const-value-known
Can_Ipw_xStatus0/0 (Can_Ipw_xStatus0) @06f191b0
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Can_Ipw_apxStatus/1 (addr)Can_Ipw_Init/9 (addr)Can_Ipw_MainFunction_Write/23 (addr)
  Availability: available
  Varpool flags:

;; Function Can_Ipw_ParseData (Can_Ipw_ParseData, funcdef_no=0, decl_uid=6840, cgraph_uid=1, symbol_order=5)

Can_Ipw_ParseData (struct Can_HwType * CanIf_Mailbox, struct PduInfoType * CanIf_PduInfo, struct Flexcan_Ip_MsgBuffType * pReceivedDataBuffer, const struct Can_ControllerConfigType * Can_pControllerConfig, const struct Can_HwObjectConfigType * Can_pHwObjectConfig)
{
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  <unnamed type> _6;
  long unsigned int _7;
  long unsigned int _8;
  <unnamed type> _9;
  long unsigned int _10;
  signed int _11;
  long unsigned int _12;
  long unsigned int _13;
  short unsigned int _14;
  unsigned char _15;
  unsigned char _16;
  long unsigned int _17;
  uint8 * _18;

  <bb 2> :
  _1 = pReceivedDataBuffer_23(D)->msgId;
  CanIf_Mailbox_24(D)->CanId = _1;
  _2 = pReceivedDataBuffer_23(D)->cs;
  _3 = _2 & 2097152;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _4 = CanIf_Mailbox_24(D)->CanId;
  _5 = _4 | 2147483648;
  CanIf_Mailbox_24(D)->CanId = _5;

  <bb 4> :
  _6 = Can_pHwObjectConfig_27(D)->Can_eReceiveType;
  if (_6 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 5> :
  _7 = pReceivedDataBuffer_23(D)->cs;
  _8 = _7 & 251658240;
  if (_8 == 100663296)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  Det_ReportRuntimeError (80, 0, 8, 1);

  <bb 7> :
  _9 = Can_pHwObjectConfig_27(D)->Can_eReceiveType;
  if (_9 != 1)
    goto <bb 8>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 8> :
  _10 = pReceivedDataBuffer_23(D)->cs;
  _11 = (signed int) _10;
  if (_11 < 0)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  _12 = CanIf_Mailbox_24(D)->CanId;
  _13 = _12 | 1073741824;
  CanIf_Mailbox_24(D)->CanId = _13;

  <bb 10> :
  _14 = Can_pHwObjectConfig_27(D)->Can_HwObjectID;
  CanIf_Mailbox_24(D)->Hoh = _14;
  _15 = Can_pControllerConfig_31(D)->Can_u8AbstControllerID;
  CanIf_Mailbox_24(D)->ControllerId = _15;
  _16 = pReceivedDataBuffer_23(D)->dataLen;
  _17 = (long unsigned int) _16;
  CanIf_PduInfo_33(D)->SduLength = _17;
  _18 = &pReceivedDataBuffer_23(D)->data[0];
  CanIf_PduInfo_33(D)->SduDataPtr = _18;
  CanIf_RxIndication (CanIf_Mailbox_24(D), CanIf_PduInfo_33(D));
  return;

}



;; Function Can_Ipw_InitLegacyFifoFilter (Can_Ipw_InitLegacyFifoFilter, funcdef_no=1, decl_uid=6845, cgraph_uid=2, symbol_order=6)

Can_Ipw_InitLegacyFifoFilter (const struct Can_ControllerConfigType * Can_pController, const struct Can_HwObjectConfigType * Can_pHwObject)
{
  struct Flexcan_Ip_IdTableType RxFifoFilters[128];
  Flexcan_Ip_RxFifoIdElementFormatType eElementFormat;
  uint8 u8FiFoFilterIndvCount;
  uint32 u32HwFilterMask;
  uint8 u8HwFilterCount;
  uint8 u8FilterIdx;
  unsigned char _1;
  unsigned char _2;
  unsigned int _3;
  unsigned int _4;
  unsigned char _5;
  unsigned char _6;
  <unnamed type> _7;
  <unnamed type> _8;
  const struct Can_HwFilterType * _9;
  unsigned int _10;
  unsigned int _11;
  const struct Can_HwFilterType * _12;
  long unsigned int _13;
  long unsigned int _14;
  const struct Can_HwFilterType * _15;
  unsigned int _16;
  unsigned int _17;
  const struct Can_HwFilterType * _18;
  long unsigned int _19;
  long unsigned int _20;
  <unnamed type> _21;
  unsigned char _22;
  <unnamed type> _23;
  const struct Can_HwFilterType * _24;
  unsigned int _25;
  unsigned int _26;
  const struct Can_HwFilterType * _27;
  long unsigned int _28;
  long unsigned int _29;
  long unsigned int _30;
  const struct Can_HwFilterType * _31;
  unsigned int _32;
  unsigned int _33;
  sizetype _34;
  const struct Can_HwFilterType * _35;
  long unsigned int _36;
  long unsigned int _37;
  const struct Can_HwFilterType * _38;
  unsigned int _39;
  unsigned int _40;
  const struct Can_HwFilterType * _41;
  long unsigned int _42;
  long unsigned int _43;
  const struct Can_HwFilterType * _44;
  unsigned int _45;
  unsigned int _46;
  sizetype _47;
  const struct Can_HwFilterType * _48;
  long unsigned int _49;
  long unsigned int _50;
  unsigned char _51;
  <unnamed type> _52;
  const struct Can_HwFilterType * _53;
  unsigned int _54;
  unsigned int _55;
  const struct Can_HwFilterType * _56;
  long unsigned int _57;
  long unsigned int _58;
  long unsigned int _59;
  const struct Can_HwFilterType * _60;
  unsigned int _61;
  unsigned int _62;
  sizetype _63;
  const struct Can_HwFilterType * _64;
  long unsigned int _65;
  long unsigned int _66;
  long unsigned int _67;
  const struct Can_HwFilterType * _68;
  unsigned int _69;
  unsigned int _70;
  sizetype _71;
  const struct Can_HwFilterType * _72;
  long unsigned int _73;
  long unsigned int _74;
  long unsigned int _75;
  const struct Can_HwFilterType * _76;
  unsigned int _77;
  unsigned int _78;
  sizetype _79;
  const struct Can_HwFilterType * _80;
  long unsigned int _81;
  long unsigned int _82;
  const struct Can_HwFilterType * _83;
  unsigned int _84;
  unsigned int _85;
  const struct Can_HwFilterType * _86;
  long unsigned int _87;
  long unsigned int _88;
  long unsigned int _89;
  const struct Can_HwFilterType * _90;
  unsigned int _91;
  unsigned int _92;
  sizetype _93;
  const struct Can_HwFilterType * _94;
  long unsigned int _95;
  long unsigned int _96;
  long unsigned int _97;
  const struct Can_HwFilterType * _98;
  unsigned int _99;
  unsigned int _100;
  sizetype _101;
  const struct Can_HwFilterType * _102;
  long unsigned int _103;
  long unsigned int _104;
  long unsigned int _105;
  const struct Can_HwFilterType * _106;
  unsigned int _107;
  unsigned int _108;
  sizetype _109;
  const struct Can_HwFilterType * _110;
  long unsigned int _111;
  long unsigned int _112;
  unsigned char _113;
  unsigned char u8FilterIdx.0_114;
  unsigned char _115;
  unsigned char _116;
  long unsigned int _117;
  const struct Can_HwFilterType * _118;
  unsigned int _119;
  unsigned int _120;
  const struct Can_HwFilterType * _121;
  int _122;
  long unsigned int _123;
  <unnamed type> _124;
  int _125;
  int _126;
  int _127;
  unsigned char u8FilterIdx.1_128;
  unsigned char _129;

  <bb 2> :
  u8FilterIdx_141 = 0;
  u8HwFilterCount_142 = 0;
  u32HwFilterMask_143 = 0;
  u8FiFoFilterIndvCount_144 = 0;
  eElementFormat_145 = 0;
  _1 = Can_pHwObject_147(D)->Can_u8HwFilterCount;
  _2 = _1 / 4;
  _3 = (unsigned int) _2;
  _4 = _3 + 6;
  if (_4 <= 32)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _5 = Can_pHwObject_147(D)->Can_u8HwFilterCount;
  _6 = _5 / 4;
  u8FiFoFilterIndvCount_149 = _6 + 6;
  goto <bb 5>; [INV]

  <bb 4> :
  u8FiFoFilterIndvCount_148 = 32;

  <bb 5> :
  # u8FiFoFilterIndvCount_135 = PHI <u8FiFoFilterIndvCount_149(3), u8FiFoFilterIndvCount_148(4)>
  u8FilterIdx_150 = 0;
  goto <bb 18>; [INV]

  <bb 6> :
  _7 = Can_pController_151(D)->Can_eLegacyAcceptanceMode;
  if (_7 == 0)
    goto <bb 7>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 7> :
  u8HwFilterCount_170 = Can_pHwObject_147(D)->Can_u8HwFilterCount;
  u32HwFilterMask_171 = 3221225472;
  eElementFormat_172 = 0;
  _8 = Can_pHwObject_147(D)->Can_IdMessage;
  if (_8 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  _9 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _10 = (unsigned int) u8FilterIdx_130;
  _11 = _10 * 8;
  _12 = _9 + _11;
  _13 = _12->Can_u32HwFilterMask;
  _14 = _13 << 1;
  u32HwFilterMask_174 = u32HwFilterMask_171 | _14;
  goto <bb 17>; [INV]

  <bb 9> :
  _15 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _16 = (unsigned int) u8FilterIdx_130;
  _17 = _16 * 8;
  _18 = _15 + _17;
  _19 = _18->Can_u32HwFilterMask;
  _20 = _19 << 19;
  u32HwFilterMask_173 = u32HwFilterMask_171 | _20;
  goto <bb 17>; [INV]

  <bb 10> :
  _21 = Can_pController_151(D)->Can_eLegacyAcceptanceMode;
  if (_21 == 1)
    goto <bb 11>; [INV]
  else
    goto <bb 14>; [INV]

  <bb 11> :
  _22 = Can_pHwObject_147(D)->Can_u8HwFilterCount;
  u8HwFilterCount_163 = _22 * 2;
  u32HwFilterMask_164 = 3221274624;
  eElementFormat_165 = 1;
  _23 = Can_pHwObject_147(D)->Can_IdMessage;
  if (_23 != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  _24 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _25 = (unsigned int) u8FilterIdx_130;
  _26 = _25 * 16;
  _27 = _24 + _26;
  _28 = _27->Can_u32HwFilterMask;
  _29 = _28 >> 15;
  _30 = _29 << 16;
  u32HwFilterMask_168 = u32HwFilterMask_164 | _30;
  _31 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _32 = (unsigned int) u8FilterIdx_130;
  _33 = _32 * 16;
  _34 = _33 + 8;
  _35 = _31 + _34;
  _36 = _35->Can_u32HwFilterMask;
  _37 = _36 >> 15;
  u32HwFilterMask_169 = u32HwFilterMask_168 | _37;
  goto <bb 17>; [INV]

  <bb 13> :
  _38 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _39 = (unsigned int) u8FilterIdx_130;
  _40 = _39 * 16;
  _41 = _38 + _40;
  _42 = _41->Can_u32HwFilterMask;
  _43 = _42 << 19;
  u32HwFilterMask_166 = u32HwFilterMask_164 | _43;
  _44 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _45 = (unsigned int) u8FilterIdx_130;
  _46 = _45 * 16;
  _47 = _46 + 8;
  _48 = _44 + _47;
  _49 = _48->Can_u32HwFilterMask;
  _50 = _49 << 3;
  u32HwFilterMask_167 = u32HwFilterMask_166 | _50;
  goto <bb 17>; [INV]

  <bb 14> :
  _51 = Can_pHwObject_147(D)->Can_u8HwFilterCount;
  u8HwFilterCount_152 = _51 * 4;
  u32HwFilterMask_153 = 0;
  eElementFormat_154 = 2;
  _52 = Can_pHwObject_147(D)->Can_IdMessage;
  if (_52 != 0)
    goto <bb 15>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 15> :
  _53 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _54 = (unsigned int) u8FilterIdx_130;
  _55 = _54 * 32;
  _56 = _53 + _55;
  _57 = _56->Can_u32HwFilterMask;
  _58 = _57 >> 21;
  _59 = _58 << 24;
  u32HwFilterMask_159 = u32HwFilterMask_153 | _59;
  _60 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _61 = (unsigned int) u8FilterIdx_130;
  _62 = _61 * 32;
  _63 = _62 + 8;
  _64 = _60 + _63;
  _65 = _64->Can_u32HwFilterMask;
  _66 = _65 >> 21;
  _67 = _66 << 16;
  u32HwFilterMask_160 = u32HwFilterMask_159 | _67;
  _68 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _69 = (unsigned int) u8FilterIdx_130;
  _70 = _69 * 32;
  _71 = _70 + 16;
  _72 = _68 + _71;
  _73 = _72->Can_u32HwFilterMask;
  _74 = _73 >> 21;
  _75 = _74 << 8;
  u32HwFilterMask_161 = u32HwFilterMask_160 | _75;
  _76 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _77 = (unsigned int) u8FilterIdx_130;
  _78 = _77 * 32;
  _79 = _78 + 24;
  _80 = _76 + _79;
  _81 = _80->Can_u32HwFilterMask;
  _82 = _81 >> 21;
  u32HwFilterMask_162 = u32HwFilterMask_161 | _82;
  goto <bb 17>; [INV]

  <bb 16> :
  _83 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _84 = (unsigned int) u8FilterIdx_130;
  _85 = _84 * 32;
  _86 = _83 + _85;
  _87 = _86->Can_u32HwFilterMask;
  _88 = _87 >> 3;
  _89 = _88 << 24;
  u32HwFilterMask_155 = u32HwFilterMask_153 | _89;
  _90 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _91 = (unsigned int) u8FilterIdx_130;
  _92 = _91 * 32;
  _93 = _92 + 8;
  _94 = _90 + _93;
  _95 = _94->Can_u32HwFilterMask;
  _96 = _95 >> 3;
  _97 = _96 << 16;
  u32HwFilterMask_156 = u32HwFilterMask_155 | _97;
  _98 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _99 = (unsigned int) u8FilterIdx_130;
  _100 = _99 * 32;
  _101 = _100 + 16;
  _102 = _98 + _101;
  _103 = _102->Can_u32HwFilterMask;
  _104 = _103 >> 3;
  _105 = _104 << 8;
  u32HwFilterMask_157 = u32HwFilterMask_156 | _105;
  _106 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _107 = (unsigned int) u8FilterIdx_130;
  _108 = _107 * 32;
  _109 = _108 + 24;
  _110 = _106 + _109;
  _111 = _110->Can_u32HwFilterMask;
  _112 = _111 >> 3;
  u32HwFilterMask_158 = u32HwFilterMask_157 | _112;

  <bb 17> :
  # u8HwFilterCount_132 = PHI <u8HwFilterCount_170(9), u8HwFilterCount_163(13), u8HwFilterCount_152(15), u8HwFilterCount_152(16), u8HwFilterCount_170(8), u8HwFilterCount_163(12)>
  # u32HwFilterMask_134 = PHI <u32HwFilterMask_173(9), u32HwFilterMask_167(13), u32HwFilterMask_162(15), u32HwFilterMask_158(16), u32HwFilterMask_174(8), u32HwFilterMask_169(12)>
  # eElementFormat_136 = PHI <eElementFormat_172(9), eElementFormat_165(13), eElementFormat_154(15), eElementFormat_154(16), eElementFormat_172(8), eElementFormat_165(12)>
  _113 = Can_pController_151(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_SetRxIndividualMask_Privileged (_113, u8FilterIdx_130, u32HwFilterMask_134);
  u8FilterIdx.0_114 = u8FilterIdx_130;
  u8FilterIdx_176 = u8FilterIdx.0_114 + 1;

  <bb 18> :
  # u8FilterIdx_130 = PHI <u8FilterIdx_150(5), u8FilterIdx_176(17)>
  # u8HwFilterCount_133 = PHI <u8HwFilterCount_142(5), u8HwFilterCount_132(17)>
  # eElementFormat_137 = PHI <eElementFormat_145(5), eElementFormat_136(17)>
  if (u8FilterIdx_130 < u8FiFoFilterIndvCount_135)
    goto <bb 19>; [INV]
  else
    goto <bb 20>; [INV]

  <bb 19> :
  _115 = Can_pHwObject_147(D)->Can_u8HwFilterCount;
  if (u8FilterIdx_130 < _115)
    goto <bb 6>; [INV]
  else
    goto <bb 20>; [INV]

  <bb 20> :
  _116 = Can_pController_151(D)->Can_u8ControllerOffset;
  _117 = Can_pController_151(D)->Can_u32LegacyGlobalMask;
  FlexCAN_Ip_SetRxFifoGlobalMask_Privileged (_116, _117);
  u8FilterIdx_178 = 0;
  goto <bb 25>; [INV]

  <bb 21> :
  _118 = Can_pHwObject_147(D)->Can_pHwFilterConfig;
  _119 = (unsigned int) u8FilterIdx_131;
  _120 = _119 * 8;
  _121 = _118 + _120;
  _122 = (int) u8FilterIdx_131;
  _123 = _121->Can_u32HwFilterCode;
  RxFifoFilters[_122].id = _123;
  _124 = Can_pHwObject_147(D)->Can_IdMessage;
  if (_124 != 0)
    goto <bb 22>; [INV]
  else
    goto <bb 23>; [INV]

  <bb 22> :
  _125 = (int) u8FilterIdx_131;
  RxFifoFilters[_125].isExtendedFrame = 1;
  goto <bb 24>; [INV]

  <bb 23> :
  _126 = (int) u8FilterIdx_131;
  RxFifoFilters[_126].isExtendedFrame = 0;

  <bb 24> :
  _127 = (int) u8FilterIdx_131;
  RxFifoFilters[_127].isRemoteFrame = 0;
  u8FilterIdx.1_128 = u8FilterIdx_131;
  u8FilterIdx_185 = u8FilterIdx.1_128 + 1;

  <bb 25> :
  # u8FilterIdx_131 = PHI <u8FilterIdx_178(20), u8FilterIdx_185(24)>
  if (u8FilterIdx_131 < u8HwFilterCount_133)
    goto <bb 21>; [INV]
  else
    goto <bb 26>; [INV]

  <bb 26> :
  _129 = Can_pController_151(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_ConfigRxFifo_Privileged (_129, eElementFormat_137, &RxFifoFilters[0]);
  RxFifoFilters ={v} {CLOBBER};
  return;

}



;; Function Can_Ipw_ProcessLegacyFifoPolling (Can_Ipw_ProcessLegacyFifoPolling, funcdef_no=2, decl_uid=6851, cgraph_uid=3, symbol_order=7)

Can_Ipw_ProcessLegacyFifoPolling (struct Can_HwType * CanIf_Mailbox, struct PduInfoType * CanIf_PduInfo, struct Flexcan_Ip_MsgBuffType * pReceivedDataBuffer, const struct Can_ControllerConfigType * Can_pControllerConfig, const struct Can_HwObjectConfigType * Can_pHwObjectConfig)
{
  boolean returnResult;
  uint8 u8ObjIdx;
  unsigned char _1;
  unsigned char u8ObjIdx.2_2;
  unsigned char _3;
  _Bool _4;
  void (*<T6b6>) (void) _5;
  void (*<T6b6>) (void) _6;
  unsigned char _7;
  unsigned char _8;
  _Bool _9;
  void (*<T6b6>) (void) _10;
  void (*<T6b6>) (void) _11;
  unsigned char _12;
  unsigned char _13;
  unsigned char _14;
  unsigned char _15;
  unsigned char _16;
  unsigned char _17;
  <unnamed type> _18;
  unsigned char _19;
  unsigned char _20;

  <bb 2> :
  u8ObjIdx_29 = 0;
  returnResult_30 = 1;
  _1 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  returnResult_34 = FlexCAN_Ip_GetBuffStatusFlag (_1, 5);
  goto <bb 14>; [INV]

  <bb 3> :
  u8ObjIdx.2_2 = u8ObjIdx_21;
  u8ObjIdx_36 = u8ObjIdx.2_2 + 1;
  _3 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  _4 = FlexCAN_Ip_GetBuffStatusFlag (_3, 7);
  if (_4 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 4> :
  Det_ReportRuntimeError (80, 0, 8, 1);
  _5 = Can_pControllerConfig_32(D)->Can_pLegacyFiFoOvfNotif;
  if (_5 != 0B)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _6 = Can_pControllerConfig_32(D)->Can_pLegacyFiFoOvfNotif;
  _6 ();

  <bb 6> :
  _7 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_ClearBuffStatusFlag (_7, 7);

  <bb 7> :
  _8 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  _9 = FlexCAN_Ip_GetBuffStatusFlag (_8, 6);
  if (_9 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 8> :
  _10 = Can_pControllerConfig_32(D)->Can_pLegacyFiFoWarnNotif;
  if (_10 != 0B)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  _11 = Can_pControllerConfig_32(D)->Can_pLegacyFiFoWarnNotif;
  _11 ();

  <bb 10> :
  _12 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_ClearBuffStatusFlag (_12, 6);

  <bb 11> :
  _13 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_RxFifo (_13, pReceivedDataBuffer_44(D));
  _14 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  _15 = Can_pHwObjectConfig_35(D)->Can_u8HwBufferIndex;
  FlexCAN_Ip_MainFunctionRead (_14, _15);
  _16 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  _17 = Can_pHwObjectConfig_35(D)->Can_u8HwBufferIndex;
  _18 = FlexCAN_Ip_GetTransferStatus (_16, _17);
  if (_18 == 0)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  Can_Ipw_ParseData (CanIf_Mailbox_48(D), CanIf_PduInfo_49(D), pReceivedDataBuffer_44(D), Can_pControllerConfig_32(D), Can_pHwObjectConfig_35(D));

  <bb 13> :
  _19 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  returnResult_52 = FlexCAN_Ip_GetBuffStatusFlag (_19, 5);

  <bb 14> :
  # u8ObjIdx_21 = PHI <u8ObjIdx_29(2), u8ObjIdx_36(13)>
  # returnResult_22 = PHI <returnResult_34(2), returnResult_52(13)>
  _20 = Can_pHwObjectConfig_35(D)->Can_u8ObjectCount;
  if (u8ObjIdx_21 < _20)
    goto <bb 15>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 15> :
  if (returnResult_22 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 16> :
  return;

}



;; Function Can_Ipw_SetRxMb (Can_Ipw_SetRxMb, funcdef_no=3, decl_uid=6889, cgraph_uid=4, symbol_order=8)

Can_Ipw_SetRxMb (const uint8 u8Controller, const struct Can_HwObjectConfigType * Can_pHwObject)
{
  struct Flexcan_Ip_DataInfoType dataInfo;
  <unnamed type> _1;
  unsigned char _2;
  const struct Can_HwFilterType * _3;
  long unsigned int _4;

  <bb 2> :
  dataInfo.fd_enable = 0;
  dataInfo.data_length = 0;
  _1 = Can_pHwObject_9(D)->Can_IdMessage;
  if (_1 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  dataInfo.msg_id_type = 1;
  goto <bb 5>; [INV]

  <bb 4> :
  dataInfo.msg_id_type = 0;

  <bb 5> :
  _2 = Can_pHwObject_9(D)->Can_u8HwBufferIndex;
  _3 = Can_pHwObject_9(D)->Can_pHwFilterConfig;
  _4 = _3->Can_u32HwFilterCode;
  FlexCAN_Ip_ConfigRxMb (u8Controller_12(D), _2, &dataInfo, _4);
  dataInfo ={v} {CLOBBER};
  return;

}



;; Function Can_Ipw_Init (Can_Ipw_Init, funcdef_no=4, decl_uid=6692, cgraph_uid=5, symbol_order=9)

Can_Ipw_Init (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  Std_ReturnType eRetVal;
  Std_ReturnType D.7069;
  unsigned char _1;
  int _2;
  short unsigned int _3;
  unsigned char _4;
  unsigned char _5;
  int _6;
  struct Flexcan_Ip_StateType * _7;
  const struct Can_Ipw_HwChannelConfigType * _8;
  const struct Flexcan_Ip_ConfigType * _9;
  <unnamed type> _10;
  unsigned char _11;
  unsigned char _12;
  int _13;
  const struct Can_BaudrateConfigType * _14;
  short unsigned int _15;
  unsigned int _16;
  unsigned int _17;
  const struct Can_BaudrateConfigType * _18;
  _Bool _19;
  unsigned char _20;
  const struct Can_BaudrateConfigType * _21;
  short unsigned int _22;
  unsigned int _23;
  unsigned int _24;
  const struct Can_BaudrateConfigType * _25;
  _Bool _26;
  const struct Can_BaudrateConfigType * _27;
  short unsigned int _28;
  unsigned int _29;
  unsigned int _30;
  const struct Can_BaudrateConfigType * _31;
  unsigned char _32;
  unsigned char _33;
  const struct Can_BaudrateConfigType * _34;
  short unsigned int _35;
  unsigned int _36;
  unsigned int _37;
  const struct Can_BaudrateConfigType * _38;
  unsigned char _39;
  Std_ReturnType _52;

  <bb 2> :
  eRetVal_42 = 1;
  _1 = Can_pControllerConfig_44(D)->Can_u8ControllerID;
  _2 = (int) _1;
  _3 = Can_pControllerConfig_44(D)->Can_u16DefaultBaudrateID;
  Can_au16ControllerBaudRateSel[_2] = _3;
  _4 = Can_pControllerConfig_44(D)->Can_u8ControllerOffset;
  _5 = Can_pControllerConfig_44(D)->Can_u8ControllerID;
  _6 = (int) _5;
  _7 = &Can_Ipw_xStatus0;
  _8 = Can_pControllerConfig_44(D)->HwChannelIpConfig;
  _9 = _8->pFlexcanIpHwConfig;
  _10 = FlexCAN_Ip_Init_Privileged (_4, _7, _9);
  eRetVal_47 = (Std_ReturnType) _10;
  _11 = Can_pControllerConfig_44(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_DisableInterrupts_Privileged (_11);
  _12 = Can_pControllerConfig_44(D)->Can_u8ControllerID;
  _13 = (int) _12;
  Can_Ipw_abIsInterruptEnabled[_13] = 1;
  if (eRetVal_47 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 3> :
  _14 = Can_pControllerConfig_44(D)->Can_pBaudrateConfig;
  _15 = Can_pControllerConfig_44(D)->Can_u16DefaultBaudrateID;
  _16 = (unsigned int) _15;
  _17 = _16 * 24;
  _18 = _14 + _17;
  _19 = _18->Can_bFDFrame;
  if (_19 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _20 = Can_pControllerConfig_44(D)->Can_u8ControllerOffset;
  _21 = Can_pControllerConfig_44(D)->Can_pBaudrateConfig;
  _22 = Can_pControllerConfig_44(D)->Can_u16DefaultBaudrateID;
  _23 = (unsigned int) _22;
  _24 = _23 * 24;
  _25 = _21 + _24;
  _26 = _25->Can_bTrcvDelayEnable;
  _27 = Can_pControllerConfig_44(D)->Can_pBaudrateConfig;
  _28 = Can_pControllerConfig_44(D)->Can_u16DefaultBaudrateID;
  _29 = (unsigned int) _28;
  _30 = _29 * 24;
  _31 = _27 + _30;
  _32 = _31->Can_u8TrcvDelayCompOffset;
  FlexCAN_Ip_SetTDCOffset_Privileged (_20, _26, _32);

  <bb 5> :
  _33 = Can_pControllerConfig_44(D)->Can_u8ControllerOffset;
  _34 = Can_pControllerConfig_44(D)->Can_pBaudrateConfig;
  _35 = Can_pControllerConfig_44(D)->Can_u16DefaultBaudrateID;
  _36 = (unsigned int) _35;
  _37 = _36 * 24;
  _38 = _34 + _37;
  _39 = _38->Can_u8TxArbitrationStartDelay;
  FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged (_33, _39);

  <bb 6> :
  _52 = eRetVal_47;

  <bb 7> :
<L4>:
  return _52;

}



;; Function Can_Ipw_DeInit (Can_Ipw_DeInit, funcdef_no=5, decl_uid=6696, cgraph_uid=6, symbol_order=10)

Can_Ipw_DeInit (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  unsigned char _1;

  <bb 2> :
  _1 = Can_pControllerConfig_3(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_Deinit_Privileged (_1);
  return;

}



;; Function Can_Ipw_SetBaudrate (Can_Ipw_SetBaudrate, funcdef_no=6, decl_uid=6699, cgraph_uid=7, symbol_order=11)

Can_Ipw_SetBaudrate (const struct Can_ControllerConfigType * Can_pControllerConfig, uint16 BaudRateConfigID)
{
  struct Flexcan_Ip_TimeSegmentType FlexCANTimeSeg;
  Flexcan_Ip_StatusType eRetVal;
  Std_ReturnType D.7075;
  unsigned char _1;
  int _2;
  unsigned char _3;
  const struct Can_BaudrateConfigType * _4;
  unsigned int _5;
  unsigned int _6;
  const struct Can_BaudrateConfigType * _7;
  short unsigned int _8;
  long unsigned int _9;
  const struct Can_BaudrateConfigType * _10;
  unsigned int _11;
  unsigned int _12;
  const struct Can_BaudrateConfigType * _13;
  unsigned char _14;
  long unsigned int _15;
  const struct Can_BaudrateConfigType * _16;
  unsigned int _17;
  unsigned int _18;
  const struct Can_BaudrateConfigType * _19;
  unsigned char _20;
  long unsigned int _21;
  const struct Can_BaudrateConfigType * _22;
  unsigned int _23;
  unsigned int _24;
  const struct Can_BaudrateConfigType * _25;
  unsigned char _26;
  long unsigned int _27;
  const struct Can_BaudrateConfigType * _28;
  unsigned int _29;
  unsigned int _30;
  const struct Can_BaudrateConfigType * _31;
  unsigned char _32;
  long unsigned int _33;
  unsigned char _34;
  const struct Can_BaudrateConfigType * _35;
  unsigned int _36;
  unsigned int _37;
  const struct Can_BaudrateConfigType * _38;
  _Bool _39;
  const struct Can_BaudrateConfigType * _40;
  unsigned int _41;
  unsigned int _42;
  const struct Can_BaudrateConfigType * _43;
  short unsigned int _44;
  long unsigned int _45;
  const struct Can_BaudrateConfigType * _46;
  unsigned int _47;
  unsigned int _48;
  const struct Can_BaudrateConfigType * _49;
  _Bool _50;
  const struct Can_BaudrateConfigType * _51;
  unsigned int _52;
  unsigned int _53;
  const struct Can_BaudrateConfigType * _54;
  unsigned char _55;
  long unsigned int _56;
  const struct Can_BaudrateConfigType * _57;
  unsigned int _58;
  unsigned int _59;
  const struct Can_BaudrateConfigType * _60;
  unsigned char _61;
  long unsigned int _62;
  const struct Can_BaudrateConfigType * _63;
  unsigned int _64;
  unsigned int _65;
  const struct Can_BaudrateConfigType * _66;
  unsigned char _67;
  long unsigned int _68;
  const struct Can_BaudrateConfigType * _69;
  unsigned int _70;
  unsigned int _71;
  const struct Can_BaudrateConfigType * _72;
  unsigned char _73;
  long unsigned int _74;
  unsigned char _75;
  const struct Can_BaudrateConfigType * _76;
  unsigned int _77;
  unsigned int _78;
  const struct Can_BaudrateConfigType * _79;
  _Bool _80;
  unsigned char _81;
  const struct Can_BaudrateConfigType * _82;
  unsigned int _83;
  unsigned int _84;
  const struct Can_BaudrateConfigType * _85;
  _Bool _86;
  const struct Can_BaudrateConfigType * _87;
  unsigned int _88;
  unsigned int _89;
  const struct Can_BaudrateConfigType * _90;
  unsigned char _91;
  unsigned char _92;
  const struct Can_BaudrateConfigType * _93;
  unsigned int _94;
  unsigned int _95;
  const struct Can_BaudrateConfigType * _96;
  unsigned char _97;
  unsigned char _98;
  _Bool _99;
  Std_ReturnType _126;

  <bb 2> :
  eRetVal_103 = 1;
  _1 = Can_pControllerConfig_105(D)->Can_u8ControllerID;
  _2 = (int) _1;
  Can_au16ControllerBaudRateSel[_2] = BaudRateConfigID_106(D);
  _3 = Can_pControllerConfig_105(D)->Can_u8ControllerOffset;
  eRetVal_109 = FlexCAN_Ip_EnterFreezeMode_Privileged (_3);
  if (eRetVal_109 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 3> :
  _4 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _5 = (unsigned int) BaudRateConfigID_106(D);
  _6 = _5 * 24;
  _7 = _4 + _6;
  _8 = _7->Can_NominalBitRate.Can_u16Prescaler;
  _9 = (long unsigned int) _8;
  FlexCANTimeSeg.preDivider = _9;
  _10 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _11 = (unsigned int) BaudRateConfigID_106(D);
  _12 = _11 * 24;
  _13 = _10 + _12;
  _14 = _13->Can_NominalBitRate.Can_u8PropSeg;
  _15 = (long unsigned int) _14;
  FlexCANTimeSeg.propSeg = _15;
  _16 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _17 = (unsigned int) BaudRateConfigID_106(D);
  _18 = _17 * 24;
  _19 = _16 + _18;
  _20 = _19->Can_NominalBitRate.Can_u8PhaseSeg1;
  _21 = (long unsigned int) _20;
  FlexCANTimeSeg.phaseSeg1 = _21;
  _22 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _23 = (unsigned int) BaudRateConfigID_106(D);
  _24 = _23 * 24;
  _25 = _22 + _24;
  _26 = _25->Can_NominalBitRate.Can_u8PhaseSeg2;
  _27 = (long unsigned int) _26;
  FlexCANTimeSeg.phaseSeg2 = _27;
  _28 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _29 = (unsigned int) BaudRateConfigID_106(D);
  _30 = _29 * 24;
  _31 = _28 + _30;
  _32 = _31->Can_NominalBitRate.Can_u8ResyncJumpWidth;
  _33 = (long unsigned int) _32;
  FlexCANTimeSeg.rJumpwidth = _33;
  _34 = Can_pControllerConfig_105(D)->Can_u8ControllerOffset;
  _35 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _36 = (unsigned int) BaudRateConfigID_106(D);
  _37 = _36 * 24;
  _38 = _35 + _37;
  _39 = _38->Can_bEnhanceCBTEnable;
  FlexCAN_Ip_SetBitrate_Privileged (_34, &FlexCANTimeSeg, _39);
  _40 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _41 = (unsigned int) BaudRateConfigID_106(D);
  _42 = _41 * 24;
  _43 = _40 + _42;
  _44 = _43->Can_DataBitRate.Can_u16Prescaler;
  _45 = (long unsigned int) _44;
  FlexCANTimeSeg.preDivider = _45;
  _46 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _47 = (unsigned int) BaudRateConfigID_106(D);
  _48 = _47 * 24;
  _49 = _46 + _48;
  _50 = _49->Can_bFDFrame;
  if (_50 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _51 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _52 = (unsigned int) BaudRateConfigID_106(D);
  _53 = _52 * 24;
  _54 = _51 + _53;
  _55 = _54->Can_DataBitRate.Can_u8PropSeg;
  _56 = (long unsigned int) _55;
  FlexCANTimeSeg.propSeg = _56;
  _57 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _58 = (unsigned int) BaudRateConfigID_106(D);
  _59 = _58 * 24;
  _60 = _57 + _59;
  _61 = _60->Can_DataBitRate.Can_u8PhaseSeg1;
  _62 = (long unsigned int) _61;
  FlexCANTimeSeg.phaseSeg1 = _62;
  _63 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _64 = (unsigned int) BaudRateConfigID_106(D);
  _65 = _64 * 24;
  _66 = _63 + _65;
  _67 = _66->Can_DataBitRate.Can_u8PhaseSeg2;
  _68 = (long unsigned int) _67;
  FlexCANTimeSeg.phaseSeg2 = _68;
  _69 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _70 = (unsigned int) BaudRateConfigID_106(D);
  _71 = _70 * 24;
  _72 = _69 + _71;
  _73 = _72->Can_DataBitRate.Can_u8ResyncJumpWidth;
  _74 = (long unsigned int) _73;
  FlexCANTimeSeg.rJumpwidth = _74;
  _75 = Can_pControllerConfig_105(D)->Can_u8ControllerOffset;
  _76 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _77 = (unsigned int) BaudRateConfigID_106(D);
  _78 = _77 * 24;
  _79 = _76 + _78;
  _80 = _79->Can_bBitRateSwitch;
  FlexCAN_Ip_SetBitrateCbt_Privileged (_75, &FlexCANTimeSeg, _80);
  _81 = Can_pControllerConfig_105(D)->Can_u8ControllerOffset;
  _82 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _83 = (unsigned int) BaudRateConfigID_106(D);
  _84 = _83 * 24;
  _85 = _82 + _84;
  _86 = _85->Can_bTrcvDelayEnable;
  _87 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _88 = (unsigned int) BaudRateConfigID_106(D);
  _89 = _88 * 24;
  _90 = _87 + _89;
  _91 = _90->Can_u8TrcvDelayCompOffset;
  FlexCAN_Ip_SetTDCOffset_Privileged (_81, _86, _91);

  <bb 5> :
  _92 = Can_pControllerConfig_105(D)->Can_u8ControllerOffset;
  _93 = Can_pControllerConfig_105(D)->Can_pBaudrateConfig;
  _94 = (unsigned int) BaudRateConfigID_106(D);
  _95 = _94 * 24;
  _96 = _93 + _95;
  _97 = _96->Can_u8TxArbitrationStartDelay;
  FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged (_92, _97);
  _98 = Can_pControllerConfig_105(D)->Can_u8ControllerOffset;
  eRetVal_125 = FlexCAN_Ip_SetStopMode_Privileged (_98);

  <bb 6> :
  # eRetVal_100 = PHI <eRetVal_109(2), eRetVal_125(5)>
  _99 = eRetVal_100 != 0;
  _126 = (Std_ReturnType) _99;
  FlexCANTimeSeg ={v} {CLOBBER};

  <bb 7> :
<L5>:
  return _126;

}



;; Function Can_Ipw_SetControlerErrorInit (Can_Ipw_SetControlerErrorInit, funcdef_no=7, decl_uid=6842, cgraph_uid=8, symbol_order=12)

Can_Ipw_SetControlerErrorInit (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  Flexcan_Ip_StatusType eRetVal;
  Std_ReturnType D.7084;
  unsigned char _1;
  unsigned char _2;
  int _3;
  _Bool _4;
  unsigned char _5;
  unsigned char _6;
  const struct Can_Ipw_HwChannelConfigType * _7;
  const struct Flexcan_Ip_ConfigType * _8;
  long unsigned int _9;
  long unsigned int _10;
  unsigned char _11;
  Std_ReturnType _24;

  <bb 2> :
  eRetVal_15 = 0;
  _1 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_ClearErrorStatus (_1, 3866630);
  _2 = Can_pControllerConfig_17(D)->Can_u8ControllerID;
  _3 = (int) _2;
  _4 = Can_Ipw_abIsInterruptEnabled[_3];
  if (_4 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _5 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_EnableInterrupts_Privileged (_5);

  <bb 4> :
  _6 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  eRetVal_21 = FlexCAN_Ip_SetStartMode_Privileged (_6);
  _7 = Can_pControllerConfig_17(D)->HwChannelIpConfig;
  _8 = _7->pFlexcanIpHwConfig;
  _9 = _8->ctrlOptions;
  _10 = _9 & 4;
  if (_10 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 5> :
  if (eRetVal_21 == 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  _11 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  eRetVal_23 = FlexCAN_Ip_ManualBusOffRecovery (_11);

  <bb 7> :
  # eRetVal_12 = PHI <eRetVal_21(4), eRetVal_21(5), eRetVal_23(6)>
  _24 = (Std_ReturnType) eRetVal_12;

  <bb 8> :
<L6>:
  return _24;

}



;; Function Can_Ipw_SetControllerToStartMode (Can_Ipw_SetControllerToStartMode, funcdef_no=8, decl_uid=6701, cgraph_uid=9, symbol_order=13)

Can_Ipw_SetControllerToStartMode (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  Flexcan_Ip_StatusType eRetVal;
  const struct Can_HwObjectConfigType * Can_pHwObject;
  uint8 u8HwObjRefIdx;
  Std_ReturnType D.7090;
  unsigned char _1;
  unsigned char _2;
  const struct Can_HwObjectConfigType * const * _3;
  unsigned int _4;
  unsigned int _5;
  const struct Can_HwObjectConfigType * const * _6;
  <unnamed type> _7;
  unsigned char _8;
  unsigned char u8HwObjRefIdx.3_9;
  unsigned char _10;
  unsigned char _11;
  _Bool _12;
  Std_ReturnType _31;

  <bb 2> :
  u8HwObjRefIdx_18 = 0;
  Can_pHwObject_19 = 0B;
  _1 = Can_pControllerConfig_21(D)->Can_u8ControllerOffset;
  eRetVal_23 = FlexCAN_Ip_EnterFreezeMode_Privileged (_1);
  if (eRetVal_23 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 3> :
  _2 = Can_pControllerConfig_21(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_ConfigPN_Privileged (_2, 0, 0B);
  u8HwObjRefIdx_25 = 0;
  goto <bb 7>; [INV]

  <bb 4> :
  _3 = Can_pControllerConfig_21(D)->Can_ppHwObject;
  _4 = (unsigned int) u8HwObjRefIdx_13;
  _5 = _4 * 4;
  _6 = _3 + _5;
  Can_pHwObject_28 = *_6;
  _7 = Can_pHwObject_28->Can_eReceiveType;
  if (_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _8 = Can_pControllerConfig_21(D)->Can_u8ControllerOffset;
  Can_Ipw_SetRxMb (_8, Can_pHwObject_28);

  <bb 6> :
  u8HwObjRefIdx.3_9 = u8HwObjRefIdx_13;
  u8HwObjRefIdx_30 = u8HwObjRefIdx.3_9 + 1;

  <bb 7> :
  # u8HwObjRefIdx_13 = PHI <u8HwObjRefIdx_25(3), u8HwObjRefIdx_30(6)>
  _10 = Can_pControllerConfig_21(D)->Can_u8HwObjectRefCount;
  if (u8HwObjRefIdx_13 < _10)
    goto <bb 4>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 8> :
  _11 = Can_Ipw_SetControlerErrorInit (Can_pControllerConfig_21(D));
  _12 = _11 != 0;
  eRetVal_27 = (Flexcan_Ip_StatusType) _12;

  <bb 9> :
  # eRetVal_14 = PHI <eRetVal_23(2), eRetVal_27(8)>
  _31 = (Std_ReturnType) eRetVal_14;

  <bb 10> :
<L7>:
  return _31;

}



;; Function Can_Ipw_SetControllerToStopMode (Can_Ipw_SetControllerToStopMode, funcdef_no=9, decl_uid=6703, cgraph_uid=10, symbol_order=14)

Can_Ipw_SetControllerToStopMode (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  uint8 u8Idx;
  const struct Can_HwObjectConfigType * Can_pHwObject;
  uint8 u8HwObjRefIdx;
  Std_ReturnType eReturnValue;
  Std_ReturnType D.7100;
  unsigned char _1;
  <unnamed type> _2;
  unsigned char _3;
  unsigned char _4;
  int _5;
  _Bool _6;
  unsigned char _7;
  const struct Can_HwObjectConfigType * const * _8;
  unsigned int _9;
  unsigned int _10;
  const struct Can_HwObjectConfigType * const * _11;
  <unnamed type> _12;
  unsigned char _13;
  unsigned char _14;
  unsigned char _15;
  unsigned char u8Idx.4_16;
  unsigned char _17;
  unsigned char _18;
  unsigned char _19;
  unsigned char u8HwObjRefIdx.5_20;
  unsigned char _21;
  unsigned char _22;
  <unnamed type> _23;
  Std_ReturnType _49;

  <bb 2> :
  u8HwObjRefIdx_32 = 0;
  u8Idx_33 = 0;
  _1 = Can_pControllerConfig_35(D)->Can_u8ControllerOffset;
  _2 = FlexCAN_Ip_EnterFreezeMode_Privileged (_1);
  if (_2 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 3> :
  _3 = Can_pControllerConfig_35(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_ConfigPN_Privileged (_3, 0, 0B);
  _4 = Can_pControllerConfig_35(D)->Can_u8ControllerID;
  _5 = (int) _4;
  _6 = Can_Ipw_abIsInterruptEnabled[_5];
  if (_6 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _7 = Can_pControllerConfig_35(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_DisableInterrupts_Privileged (_7);

  <bb 5> :
  u8HwObjRefIdx_40 = 0;
  goto <bb 11>; [INV]

  <bb 6> :
  _8 = Can_pControllerConfig_35(D)->Can_ppHwObject;
  _9 = (unsigned int) u8HwObjRefIdx_25;
  _10 = _9 * 4;
  _11 = _8 + _10;
  Can_pHwObject_43 = *_11;
  _12 = Can_pHwObject_43->Can_eReceiveType;
  if (_12 == 3)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  u8Idx_45 = 0;

  <bb 8> :
  # u8Idx_26 = PHI <u8Idx_45(7), u8Idx_47(8)>
  _13 = Can_pControllerConfig_35(D)->Can_u8ControllerOffset;
  _14 = Can_pHwObject_43->Can_u8HwBufferIndex;
  _15 = u8Idx_26 + _14;
  FlexCAN_Ip_AbortTransfer (_13, _15);
  u8Idx.4_16 = u8Idx_26;
  u8Idx_47 = u8Idx.4_16 + 1;
  _17 = Can_pHwObject_43->Can_u8ObjectCount;
  if (u8Idx_47 < _17)
    goto <bb 8>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  _18 = Can_pControllerConfig_35(D)->Can_u8ControllerOffset;
  _19 = Can_pHwObject_43->Can_u8HwBufferIndex;
  FlexCAN_Ip_AbortTransfer (_18, _19);

  <bb 10> :
  u8HwObjRefIdx.5_20 = u8HwObjRefIdx_25;
  u8HwObjRefIdx_48 = u8HwObjRefIdx.5_20 + 1;

  <bb 11> :
  # u8HwObjRefIdx_25 = PHI <u8HwObjRefIdx_40(5), u8HwObjRefIdx_48(10)>
  _21 = Can_pControllerConfig_35(D)->Can_u8HwObjectRefCount;
  if (u8HwObjRefIdx_25 < _21)
    goto <bb 6>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 12> :
  _22 = Can_pControllerConfig_35(D)->Can_u8ControllerOffset;
  _23 = FlexCAN_Ip_SetStopMode_Privileged (_22);
  eReturnValue_42 = (Std_ReturnType) _23;
  goto <bb 14>; [INV]

  <bb 13> :
  eReturnValue_37 = 1;

  <bb 14> :
  # eReturnValue_24 = PHI <eReturnValue_42(12), eReturnValue_37(13)>
  _49 = eReturnValue_24;

  <bb 15> :
<L13>:
  return _49;

}



;; Function Can_Ipw_DisableControllerInterrupts (Can_Ipw_DisableControllerInterrupts, funcdef_no=10, decl_uid=6705, cgraph_uid=11, symbol_order=15)

Can_Ipw_DisableControllerInterrupts (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  unsigned char _1;
  int _2;
  _Bool _3;
  unsigned char _4;
  unsigned char _5;
  int _6;

  <bb 2> :
  _1 = Can_pControllerConfig_9(D)->Can_u8ControllerID;
  _2 = (int) _1;
  _3 = Can_Ipw_abIsInterruptEnabled[_2];
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _4 = Can_pControllerConfig_9(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_DisableInterrupts_Privileged (_4);
  _5 = Can_pControllerConfig_9(D)->Can_u8ControllerID;
  _6 = (int) _5;
  Can_Ipw_abIsInterruptEnabled[_6] = 0;

  <bb 4> :
  return;

}



;; Function Can_Ipw_EnableControllerInterrupts (Can_Ipw_EnableControllerInterrupts, funcdef_no=11, decl_uid=6707, cgraph_uid=12, symbol_order=16)

Can_Ipw_EnableControllerInterrupts (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  unsigned char _1;
  int _2;
  _Bool _3;
  _Bool _4;
  unsigned char _5;
  unsigned char _6;
  int _7;

  <bb 2> :
  _1 = Can_pControllerConfig_10(D)->Can_u8ControllerID;
  _2 = (int) _1;
  _3 = Can_Ipw_abIsInterruptEnabled[_2];
  _4 = ~_3;
  if (_4 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _5 = Can_pControllerConfig_10(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_EnableInterrupts_Privileged (_5);
  _6 = Can_pControllerConfig_10(D)->Can_u8ControllerID;
  _7 = (int) _6;
  Can_Ipw_abIsInterruptEnabled[_7] = 1;

  <bb 4> :
  return;

}



;; Function Can_Ipw_GetControllerErrorState (Can_Ipw_GetControllerErrorState, funcdef_no=12, decl_uid=6709, cgraph_uid=13, symbol_order=17)

Can_Ipw_GetControllerErrorState (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  uint32 Error;
  uint8 D.7106;
  unsigned char _1;
  long unsigned int _2;
  unsigned char _3;
  uint8 _9;

  <bb 2> :
  Error_4 = 0;
  _1 = Can_pControllerConfig_6(D)->Can_u8ControllerOffset;
  Error_8 = FlexCAN_Ip_GetErrorStatus (_1);
  _2 = Error_8 >> 4;
  _3 = (unsigned char) _2;
  _9 = _3 & 3;

  <bb 3> :
<L0>:
  return _9;

}



;; Function Can_Ipw_GetControllerTxErrorCounter (Can_Ipw_GetControllerTxErrorCounter, funcdef_no=13, decl_uid=6713, cgraph_uid=14, symbol_order=18)

Can_Ipw_GetControllerTxErrorCounter (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  uint8 D.7108;
  unsigned char _1;
  uint8 _5;

  <bb 2> :
  _1 = Can_pControllerConfig_3(D)->Can_u8ControllerOffset;
  _5 = FlexCAN_Ip_GetControllerTxErrorCounter (_1);

  <bb 3> :
<L0>:
  return _5;

}



;; Function Can_Ipw_GetControllerRxErrorCounter (Can_Ipw_GetControllerRxErrorCounter, funcdef_no=14, decl_uid=6711, cgraph_uid=15, symbol_order=19)

Can_Ipw_GetControllerRxErrorCounter (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  uint8 D.7110;
  unsigned char _1;
  uint8 _5;

  <bb 2> :
  _1 = Can_pControllerConfig_3(D)->Can_u8ControllerOffset;
  _5 = FlexCAN_Ip_GetControllerRxErrorCounter (_1);

  <bb 3> :
<L0>:
  return _5;

}



;; Function Can_Ipw_Write (Can_Ipw_Write, funcdef_no=15, decl_uid=6717, cgraph_uid=16, symbol_order=20)

Can_Ipw_Write (const struct Can_ControllerConfigType * Can_pControllerConfig, const struct Can_HwObjectConfigType * Can_pHwObjectConfig, const struct Can_PduType * PduInfo)
{
  uint8 u8ObjIdx;
  struct Flexcan_Ip_DataInfoType DataInfo;
  Flexcan_Ip_StatusType eRetVal;
  Std_ReturnType iftmp.7;
  Std_ReturnType D.7121;
  <unnamed type> _1;
  long unsigned int _2;
  unsigned int _3;
  unsigned char _4;
  long unsigned int _5;
  unsigned char _6;
  long unsigned int _7;
  long unsigned int _8;
  int _9;
  int _10;
  _Bool _11;
  const struct Can_BaudrateConfigType * _12;
  unsigned char _13;
  int _14;
  short unsigned int _15;
  unsigned int _16;
  unsigned int _17;
  const struct Can_BaudrateConfigType * _18;
  _Bool _19;
  _Bool _20;
  unsigned char _21;
  unsigned char _22;
  unsigned char _23;
  unsigned char _24;
  int _25;
  unsigned char _26;
  int _27;
  int _28;
  int _29;
  short unsigned int _30;
  unsigned char _31;
  unsigned char _32;
  unsigned char _33;
  long unsigned int _34;
  uint8 * _35;
  unsigned char u8ObjIdx.6_36;
  unsigned char _37;
  Std_ReturnType iftmp.7_42;
  Std_ReturnType iftmp.7_73;
  Std_ReturnType iftmp.7_74;
  Std_ReturnType _75;

  <bb 2> :
  eRetVal_46 = 1;
  u8ObjIdx_47 = 0;
  DataInfo.msg_id_type = 0;
  DataInfo.data_length = 0;
  DataInfo.fd_padding = 0;
  DataInfo.fd_enable = 0;
  DataInfo.enable_brs = 0;
  DataInfo.is_remote = 0;
  DataInfo.is_polling = 0;
  _1 = Can_pHwObjectConfig_56(D)->Can_eReceiveType;
  if (_1 == 3)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  _2 = PduInfo_57(D)->id;
  _3 = _2 >> 31;
  DataInfo.msg_id_type = _3;
  _4 = PduInfo_57(D)->length;
  _5 = (long unsigned int) _4;
  DataInfo.data_length = _5;
  _6 = Can_pHwObjectConfig_56(D)->Can_u8PaddingValue;
  DataInfo.fd_padding = _6;
  _7 = PduInfo_57(D)->id;
  _8 = _7 >> 30;
  _9 = (int) _8;
  _10 = _9 & 1;
  _11 = _10 != 0;
  DataInfo.fd_enable = _11;
  _12 = Can_pControllerConfig_62(D)->Can_pBaudrateConfig;
  _13 = Can_pControllerConfig_62(D)->Can_u8ControllerID;
  _14 = (int) _13;
  _15 = Can_au16ControllerBaudRateSel[_14];
  _16 = (unsigned int) _15;
  _17 = _16 * 24;
  _18 = _12 + _17;
  _19 = _18->Can_bBitRateSwitch;
  DataInfo.enable_brs = _19;
  DataInfo.is_remote = 0;
  _20 = Can_pHwObjectConfig_56(D)->Can_bHwObjectUsesPolling;
  DataInfo.is_polling = _20;

  <bb 4> :
  # u8ObjIdx_41 = PHI <u8ObjIdx_47(3), u8ObjIdx_71(7)>
  _21 = Can_pControllerConfig_62(D)->Can_u8ControllerOffset;
  _22 = Can_pHwObjectConfig_56(D)->Can_u8HwBufferIndex;
  _23 = u8ObjIdx_41 + _22;
  eRetVal_67 = FlexCAN_Ip_GetTransferStatus (_21, _23);
  if (eRetVal_67 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _24 = Can_pControllerConfig_62(D)->Can_u8ControllerID;
  _25 = (int) _24;
  _26 = Can_pHwObjectConfig_56(D)->Can_u8HwBufferIndex;
  _27 = (int) _26;
  _28 = (int) u8ObjIdx_41;
  _29 = _27 + _28;
  _30 = PduInfo_57(D)->swPduHandle;
  Can_Ipw_au16TxPduId[_25][_29] = _30;
  _31 = Can_pControllerConfig_62(D)->Can_u8ControllerOffset;
  _32 = Can_pHwObjectConfig_56(D)->Can_u8HwBufferIndex;
  _33 = u8ObjIdx_41 + _32;
  _34 = PduInfo_57(D)->id;
  _35 = PduInfo_57(D)->sdu;
  eRetVal_70 = FlexCAN_Ip_Send (_31, _33, &DataInfo, _34, _35);

  <bb 6> :
  # eRetVal_38 = PHI <eRetVal_67(4), eRetVal_70(5)>
  u8ObjIdx.6_36 = u8ObjIdx_41;
  u8ObjIdx_71 = u8ObjIdx.6_36 + 1;
  _37 = Can_pHwObjectConfig_56(D)->Can_u8ObjectCount;
  if (u8ObjIdx_71 < _37)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  if (eRetVal_38 == 2)
    goto <bb 4>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 8> :
  # eRetVal_39 = PHI <eRetVal_46(2), eRetVal_38(6), eRetVal_38(7)>
  if (eRetVal_39 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 9> :
  if (eRetVal_39 != 2)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  eRetVal_72 = 1;

  <bb 11> :
  # eRetVal_40 = PHI <eRetVal_39(8), eRetVal_39(9), eRetVal_72(10)>
  if (eRetVal_40 != 2)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  iftmp.7_74 = (Std_ReturnType) eRetVal_40;
  goto <bb 14>; [INV]

  <bb 13> :
  iftmp.7_73 = 2;

  <bb 14> :
  # iftmp.7_42 = PHI <iftmp.7_74(12), iftmp.7_73(13)>
  _75 = iftmp.7_42;
  DataInfo ={v} {CLOBBER};

  <bb 15> :
<L15>:
  return _75;

}



;; Function Can_Ipw_InitRx (Can_Ipw_InitRx, funcdef_no=16, decl_uid=6694, cgraph_uid=17, symbol_order=21)

Can_Ipw_InitRx (const struct Can_ControllerConfigType * Can_pController)
{
  struct Flexcan_Ip_DataInfoType DataInfo;
  const struct Can_HwObjectConfigType * Can_pHwObject;
  uint8 u8HwObjRefIdx;
  Std_ReturnType D.7135;
  unsigned char _1;
  const struct Can_HwObjectConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_HwObjectConfigType * const * _5;
  <unnamed type> _6;
  <unnamed type> _7;
  unsigned char _8;
  unsigned char _9;
  const struct Can_HwFilterType * _10;
  long unsigned int _11;
  unsigned char _12;
  unsigned char _13;
  const struct Can_HwFilterType * _14;
  long unsigned int _15;
  <unnamed type> _16;
  unsigned char u8HwObjRefIdx.8_17;
  unsigned char _18;
  unsigned char _19;
  <unnamed type> _20;
  _Bool _21;
  Std_ReturnType _33;

  <bb 2> :
  u8HwObjRefIdx_27 = 0;
  _1 = Can_pController_29(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_SetRxMaskType_Privileged (_1, 1);
  u8HwObjRefIdx_31 = 0;
  goto <bb 11>; [INV]

  <bb 3> :
  _2 = Can_pController_29(D)->Can_ppHwObject;
  _3 = (unsigned int) u8HwObjRefIdx_22;
  _4 = _3 * 4;
  _5 = _2 + _4;
  Can_pHwObject_35 = *_5;
  _6 = Can_pHwObject_35->Can_eReceiveType;
  if (_6 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 4> :
  DataInfo.fd_enable = 0;
  DataInfo.data_length = 0;
  _7 = Can_pHwObject_35->Can_IdMessage;
  if (_7 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  DataInfo.msg_id_type = 1;
  goto <bb 7>; [INV]

  <bb 6> :
  DataInfo.msg_id_type = 0;

  <bb 7> :
  _8 = Can_pController_29(D)->Can_u8ControllerOffset;
  _9 = Can_pHwObject_35->Can_u8HwBufferIndex;
  _10 = Can_pHwObject_35->Can_pHwFilterConfig;
  _11 = _10->Can_u32HwFilterCode;
  FlexCAN_Ip_ConfigRxMb (_8, _9, &DataInfo, _11);
  _12 = Can_pController_29(D)->Can_u8ControllerOffset;
  _13 = Can_pHwObject_35->Can_u8HwBufferIndex;
  _14 = Can_pHwObject_35->Can_pHwFilterConfig;
  _15 = _14->Can_u32HwFilterMask;
  FlexCAN_Ip_SetRxIndividualMask_Privileged (_12, _13, _15);

  <bb 8> :
  _16 = Can_pHwObject_35->Can_eReceiveType;
  if (_16 == 1)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  Can_Ipw_InitLegacyFifoFilter (Can_pController_29(D), Can_pHwObject_35);

  <bb 10> :
  u8HwObjRefIdx.8_17 = u8HwObjRefIdx_22;
  u8HwObjRefIdx_43 = u8HwObjRefIdx.8_17 + 1;

  <bb 11> :
  # u8HwObjRefIdx_22 = PHI <u8HwObjRefIdx_31(2), u8HwObjRefIdx_43(10)>
  _18 = Can_pController_29(D)->Can_u8HwObjectRefCount;
  if (u8HwObjRefIdx_22 < _18)
    goto <bb 3>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 12> :
  _19 = Can_pController_29(D)->Can_u8ControllerOffset;
  _20 = FlexCAN_Ip_SetStopMode_Privileged (_19);
  _21 = _20 != 0;
  _33 = (Std_ReturnType) _21;
  DataInfo ={v} {CLOBBER};

  <bb 13> :
<L11>:
  return _33;

}



;; Function Can_Ipw_AbortMb (Can_Ipw_AbortMb, funcdef_no=17, decl_uid=6720, cgraph_uid=18, symbol_order=22)

Can_Ipw_AbortMb (const struct Can_ControllerConfigType * Can_pControllerConfig, const struct Can_HwObjectConfigType * Can_pHwObjectConfig)
{
  uint8 u8Idx;
  unsigned char _1;
  unsigned char _2;
  unsigned char _3;
  unsigned char u8Idx.9_4;
  unsigned char _5;

  <bb 2> :
  u8Idx_8 = 0;

  <bb 3> :
  # u8Idx_6 = PHI <u8Idx_8(2), u8Idx_13(3)>
  _1 = Can_pControllerConfig_10(D)->Can_u8ControllerOffset;
  _2 = Can_pHwObjectConfig_11(D)->Can_u8HwBufferIndex;
  _3 = u8Idx_6 + _2;
  FlexCAN_Ip_AbortTransfer (_1, _3);
  u8Idx.9_4 = u8Idx_6;
  u8Idx_13 = u8Idx.9_4 + 1;
  _5 = Can_pHwObjectConfig_11(D)->Can_u8ObjectCount;
  if (u8Idx_13 < _5)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 4> :
  return;

}



;; Function Can_Ipw_MainFunction_Write (Can_Ipw_MainFunction_Write, funcdef_no=18, decl_uid=6723, cgraph_uid=19, symbol_order=23)

Can_Ipw_MainFunction_Write (const struct Can_ControllerConfigType * Can_pControllerConfig, const struct Can_HwObjectConfigType * Can_pHwObjectConfig)
{
  uint8 u8ObjIdx;
  unsigned char _1;
  int _2;
  struct Flexcan_Ip_StateType * _3;
  unsigned char _4;
  int _5;
  int _6;
  int _7;
  <unnamed type> _8;
  unsigned char _9;
  unsigned char _10;
  unsigned char _11;
  unsigned char _12;
  unsigned char _13;
  unsigned char _14;
  <unnamed type> _15;
  unsigned char _16;
  int _17;
  unsigned char _18;
  int _19;
  int _20;
  int _21;
  short unsigned int _22;
  unsigned char u8ObjIdx.10_23;
  unsigned char _24;

  <bb 2> :
  u8ObjIdx_28 = 0;

  <bb 3> :
  # u8ObjIdx_25 = PHI <u8ObjIdx_28(2), u8ObjIdx_35(6)>
  _1 = Can_pControllerConfig_30(D)->Can_u8ControllerID;
  _2 = (int) _1;
  _3 = &Can_Ipw_xStatus0;
  _4 = Can_pHwObjectConfig_31(D)->Can_u8HwBufferIndex;
  _5 = (int) _4;
  _6 = (int) u8ObjIdx_25;
  _7 = _5 + _6;
  _8 ={v} _3->mbs[_7].state;
  if (_8 == 2)
    goto <bb 4>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 4> :
  _9 = Can_pControllerConfig_30(D)->Can_u8ControllerOffset;
  _10 = Can_pHwObjectConfig_31(D)->Can_u8HwBufferIndex;
  _11 = u8ObjIdx_25 + _10;
  FlexCAN_Ip_MainFunctionWrite (_9, _11);
  _12 = Can_pControllerConfig_30(D)->Can_u8ControllerOffset;
  _13 = Can_pHwObjectConfig_31(D)->Can_u8HwBufferIndex;
  _14 = u8ObjIdx_25 + _13;
  _15 = FlexCAN_Ip_GetTransferStatus (_12, _14);
  if (_15 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _16 = Can_pControllerConfig_30(D)->Can_u8ControllerID;
  _17 = (int) _16;
  _18 = Can_pHwObjectConfig_31(D)->Can_u8HwBufferIndex;
  _19 = (int) _18;
  _20 = (int) u8ObjIdx_25;
  _21 = _19 + _20;
  _22 = Can_Ipw_au16TxPduId[_17][_21];
  CanIf_TxConfirmation (_22);

  <bb 6> :
  u8ObjIdx.10_23 = u8ObjIdx_25;
  u8ObjIdx_35 = u8ObjIdx.10_23 + 1;
  _24 = Can_pHwObjectConfig_31(D)->Can_u8ObjectCount;
  if (u8ObjIdx_35 < _24)
    goto <bb 3>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 7> :
  return;

}



;; Function Can_Ipw_MainFunction_Read (Can_Ipw_MainFunction_Read, funcdef_no=19, decl_uid=6726, cgraph_uid=20, symbol_order=24)

Can_Ipw_MainFunction_Read (const struct Can_ControllerConfigType * Can_pControllerConfig, const struct Can_HwObjectConfigType * Can_pHwObjectConfig)
{
  static struct PduInfoType CanIf_PduInfo;
  static struct Can_HwType CanIf_Mailbox;
  static struct Flexcan_Ip_MsgBuffType ReceivedDataBuffer;
  unsigned char _1;
  _Bool _2;
  _Bool _3;
  <unnamed type> _4;
  unsigned char _5;
  unsigned char _6;
  _Bool _7;
  unsigned char _8;
  unsigned char _9;
  unsigned char _10;
  unsigned char _11;
  <unnamed type> _12;
  <unnamed type> _13;

  <bb 2> :
  _1 = Can_pControllerConfig_16(D)->Can_u8ControllerOffset;
  _2 = FlexCAN_Ip_GetStopMode_Privileged (_1);
  _3 = ~_2;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  _4 = Can_pHwObjectConfig_18(D)->Can_eReceiveType;
  if (_4 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 4> :
  _5 = Can_pControllerConfig_16(D)->Can_u8ControllerOffset;
  _6 = Can_pHwObjectConfig_18(D)->Can_u8HwBufferIndex;
  _7 = Can_pHwObjectConfig_18(D)->Can_bHwObjectUsesPolling;
  FlexCAN_Ip_Receive (_5, _6, &ReceivedDataBuffer, _7);
  _8 = Can_pControllerConfig_16(D)->Can_u8ControllerOffset;
  _9 = Can_pHwObjectConfig_18(D)->Can_u8HwBufferIndex;
  FlexCAN_Ip_MainFunctionRead (_8, _9);
  _10 = Can_pControllerConfig_16(D)->Can_u8ControllerOffset;
  _11 = Can_pHwObjectConfig_18(D)->Can_u8HwBufferIndex;
  _12 = FlexCAN_Ip_GetTransferStatus (_10, _11);
  if (_12 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 5> :
  Can_Ipw_ParseData (&CanIf_Mailbox, &CanIf_PduInfo, &ReceivedDataBuffer, Can_pControllerConfig_16(D), Can_pHwObjectConfig_18(D));
  goto <bb 8>; [INV]

  <bb 6> :
  _13 = Can_pHwObjectConfig_18(D)->Can_eReceiveType;
  if (_13 == 1)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  Can_Ipw_ProcessLegacyFifoPolling (&CanIf_Mailbox, &CanIf_PduInfo, &ReceivedDataBuffer, Can_pControllerConfig_16(D), Can_pHwObjectConfig_18(D));

  <bb 8> :
  return;

}



;; Function Can_Ipw_MainFunction_BusOff (Can_Ipw_MainFunction_BusOff, funcdef_no=20, decl_uid=6728, cgraph_uid=21, symbol_order=25)

Can_Ipw_MainFunction_BusOff (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  unsigned char _1;

  <bb 2> :
  _1 = Can_pControllerConfig_3(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_MainFunctionBusOff_Privileged (_1);
  return;

}



;; Function Can_Ipw_MainFunction_Mode (Can_Ipw_MainFunction_Mode, funcdef_no=21, decl_uid=6731, cgraph_uid=22, symbol_order=26)

Can_Ipw_MainFunction_Mode (const struct Can_ControllerConfigType * Can_pControllerConfig, Can_ControllerStateType * Can_pControllerState)
{
  <unnamed type> _1;
  unsigned char _2;
  _Bool _3;
  _Bool _4;
  unsigned char _5;
  <unnamed type> _6;
  unsigned char _7;
  _Bool _8;
  unsigned char _9;

  <bb 2> :
  _1 = *Can_pControllerState_12(D);
  if (_1 == 1)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _2 = Can_pControllerConfig_13(D)->Can_u8ControllerOffset;
  _3 = FlexCAN_Ip_GetStartMode_Privileged (_2);
  _4 = ~_3;
  if (_4 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 4> :
  *Can_pControllerState_12(D) = 2;
  _5 = Can_pControllerConfig_13(D)->Can_u8AbstControllerID;
  CanIf_ControllerModeIndication (_5, 2);
  goto <bb 8>; [INV]

  <bb 5> :
  _6 = *Can_pControllerState_12(D);
  if (_6 == 2)
    goto <bb 6>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 6> :
  _7 = Can_pControllerConfig_13(D)->Can_u8ControllerOffset;
  _8 = FlexCAN_Ip_GetStartMode_Privileged (_7);
  if (_8 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  *Can_pControllerState_12(D) = 1;
  _9 = Can_pControllerConfig_13(D)->Can_u8AbstControllerID;
  CanIf_ControllerModeIndication (_9, 1);

  <bb 8> :
  return;

}



;; Function Can_Ipw_DeactivateIcomConfiguration (Can_Ipw_DeactivateIcomConfiguration, funcdef_no=22, decl_uid=6733, cgraph_uid=23, symbol_order=27)

Can_Ipw_DeactivateIcomConfiguration (const struct Can_ControllerConfigType * Can_pControllerConfig)
{
  Std_ReturnType ReturnValue;
  boolean IsStart;
  Std_ReturnType D.7169;
  unsigned char _1;
  unsigned char _2;
  unsigned char _3;
  <unnamed type> _4;
  unsigned char _5;
  unsigned char _6;
  <unnamed type> _7;
  _Bool _8;
  unsigned char _9;
  <unnamed type> _10;
  _Bool _11;
  Std_ReturnType _26;

  <bb 2> :
  IsStart_14 = 1;
  ReturnValue_15 = 1;
  _1 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  if (_1 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 3> :
  _2 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  IsStart_19 = FlexCAN_Ip_GetStartMode_Privileged (_2);
  _3 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  _4 = FlexCAN_Ip_EnterFreezeMode_Privileged (_3);
  if (_4 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 4> :
  _5 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_ConfigPN_Privileged (_5, 0, 0B);
  if (IsStart_19 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _6 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  _7 = FlexCAN_Ip_ExitFreezeMode_Privileged (_6);
  _8 = _7 != 0;
  ReturnValue_25 = (Std_ReturnType) _8;
  goto <bb 7>; [INV]

  <bb 6> :
  _9 = Can_pControllerConfig_17(D)->Can_u8ControllerOffset;
  _10 = FlexCAN_Ip_SetStopMode_Privileged (_9);
  _11 = _10 != 0;
  ReturnValue_23 = (Std_ReturnType) _11;

  <bb 7> :
  # ReturnValue_12 = PHI <ReturnValue_15(2), ReturnValue_15(3), ReturnValue_25(5), ReturnValue_23(6)>
  _26 = ReturnValue_12;

  <bb 8> :
<L7>:
  return _26;

}



;; Function Can_Ipw_SetIcomConfiguration (Can_Ipw_SetIcomConfiguration, funcdef_no=23, decl_uid=6736, cgraph_uid=24, symbol_order=28)

Can_Ipw_SetIcomConfiguration (const struct Can_ControllerConfigType * Can_pControllerConfig, const struct Can_IcomConfigsType * pIcomConfig)
{
  Std_ReturnType ReturnValue;
  Std_ReturnType D.7175;
  unsigned char _1;
  unsigned char _2;
  <unnamed type> _3;
  unsigned char _4;
  const struct Can_Ipw_IcomRxMessageConfigsType * _5;
  const struct Flexcan_Ip_PnConfigType * _6;
  unsigned char _7;
  <unnamed type> _8;
  _Bool _9;
  Std_ReturnType _20;

  <bb 2> :
  ReturnValue_12 = 1;
  _1 = Can_pControllerConfig_14(D)->Can_u8ControllerOffset;
  if (_1 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _2 = Can_pControllerConfig_14(D)->Can_u8ControllerOffset;
  _3 = FlexCAN_Ip_EnterFreezeMode_Privileged (_2);
  if (_3 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _4 = Can_pControllerConfig_14(D)->Can_u8ControllerOffset;
  _5 = pIcomConfig_16(D)->pCanIcomRxMessageConfigs;
  _6 = _5->pFlexcanIpPnConfig;
  FlexCAN_Ip_ConfigPN_Privileged (_4, 1, _6);
  _7 = Can_pControllerConfig_14(D)->Can_u8ControllerOffset;
  _8 = FlexCAN_Ip_ExitFreezeMode_Privileged (_7);
  _9 = _8 != 0;
  ReturnValue_19 = (Std_ReturnType) _9;

  <bb 5> :
  # ReturnValue_10 = PHI <ReturnValue_12(2), ReturnValue_12(3), ReturnValue_19(4)>
  _20 = ReturnValue_10;

  <bb 6> :
<L4>:
  return _20;

}



;; Function Can_Ipw_ProcessPN (Can_Ipw_ProcessPN, funcdef_no=24, decl_uid=6739, cgraph_uid=25, symbol_order=29)

Can_Ipw_ProcessPN (const struct Can_ControllerConfigType * Can_pControllerConfig, const struct Can_IcomConfigsType * pIcomConfig)
{
  uint8 u8NumOfWmb;
  uint8 u8WmbIndex;
  struct Flexcan_Ip_MsgBuffType ReceivedDataBuffer;
  static struct PduInfoType CanIf_PduInfo;
  static struct Can_HwType CanIf_Mailbox;
  uint8 iftmp.11;
  const struct Can_Ipw_IcomRxMessageConfigsType * _1;
  const struct Flexcan_Ip_PnConfigType * _2;
  short unsigned int _3;
  const struct Can_Ipw_IcomRxMessageConfigsType * _4;
  const struct Flexcan_Ip_PnConfigType * _5;
  short unsigned int _6;
  unsigned char _7;
  long unsigned int _8;
  long unsigned int _9;
  long unsigned int _10;
  long unsigned int _11;
  long unsigned int _12;
  unsigned char _13;
  short unsigned int _14;
  unsigned char _15;
  unsigned char _16;
  long unsigned int _17;
  unsigned char u8WmbIndex.12_18;
  uint8 iftmp.11_20;
  uint8 iftmp.11_27;
  uint8 iftmp.11_28;

  <bb 2> :
  u8WmbIndex_23 = 0;
  u8NumOfWmb_24 = 0;
  _1 = pIcomConfig_26(D)->pCanIcomRxMessageConfigs;
  _2 = _1->pFlexcanIpPnConfig;
  _3 = _2->u16NumMatches;
  if (_3 <= 3)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _4 = pIcomConfig_26(D)->pCanIcomRxMessageConfigs;
  _5 = _4->pFlexcanIpPnConfig;
  _6 = _5->u16NumMatches;
  iftmp.11_28 = (uint8) _6;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.11_27 = 4;

  <bb 5> :
  # iftmp.11_20 = PHI <iftmp.11_28(3), iftmp.11_27(4)>
  u8NumOfWmb_29 = iftmp.11_20;
  u8WmbIndex_30 = 0;
  goto <bb 9>; [INV]

  <bb 6> :
  _7 = Can_pControllerConfig_32(D)->Can_u8ControllerOffset;
  FlexCAN_Ip_GetWMB (_7, u8WmbIndex_19, &ReceivedDataBuffer);
  _8 = ReceivedDataBuffer.msgId;
  CanIf_Mailbox.CanId = _8;
  _9 = ReceivedDataBuffer.cs;
  _10 = _9 & 2097152;
  if (_10 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  _11 = CanIf_Mailbox.CanId;
  _12 = _11 | 2147483648;
  CanIf_Mailbox.CanId = _12;

  <bb 8> :
  _13 = pIcomConfig_26(D)->u8CanIcomConfigId;
  _14 = (short unsigned int) _13;
  CanIf_Mailbox.Hoh = _14;
  _15 = Can_pControllerConfig_32(D)->Can_u8AbstControllerID;
  CanIf_Mailbox.ControllerId = _15;
  _16 = ReceivedDataBuffer.dataLen;
  _17 = (long unsigned int) _16;
  CanIf_PduInfo.SduLength = _17;
  CanIf_PduInfo.SduDataPtr = &ReceivedDataBuffer.data[0];
  CanIf_RxIndication (&CanIf_Mailbox, &CanIf_PduInfo);
  u8WmbIndex.12_18 = u8WmbIndex_19;
  u8WmbIndex_41 = u8WmbIndex.12_18 + 1;

  <bb 9> :
  # u8WmbIndex_19 = PHI <u8WmbIndex_30(5), u8WmbIndex_41(8)>
  if (u8WmbIndex_19 < u8NumOfWmb_29)
    goto <bb 6>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 10> :
  ReceivedDataBuffer ={v} {CLOBBER};
  return;

}


