Symbol table:

SchM_Exit_Can_CAN_EXCLUSIVE_AREA_20/172 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_20) @0726dee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ManualBusOffRecovery/124 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_20/171 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_20) @0726de00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ManualBusOffRecovery/124 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_12/170 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_12) @0726d460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ConfigPN_Privileged/121 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_12/169 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_12) @0726d380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ConfigPN_Privileged/121 
  Calls: 
FlexCAN_ConfigPN/168 (FlexCAN_ConfigPN) @0726d2a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ConfigPN_Privileged/121 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_10/167 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_10) @0725dee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetListenOnlyMode_Privileged/119 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_10/166 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_10) @0725de00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetListenOnlyMode_Privileged/119 
  Calls: 
FlexCAN_SetErrIntCmd/165 (FlexCAN_SetErrIntCmd) @0725d9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetErrorInt_Privileged/115 FlexCAN_Ip_SetErrorInt_Privileged/115 FlexCAN_Ip_SetErrorInt_Privileged/115 FlexCAN_Ip_SetErrorInt_Privileged/115 FlexCAN_Ip_SetErrorInt_Privileged/115 
  Calls: 
FlexCAN_DisableInterrupts/164 (FlexCAN_DisableInterrupts) @0725d7e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_DisableInterrupts_Privileged/114 
  Calls: 
FlexCAN_EnableInterrupts/163 (FlexCAN_EnableInterrupts) @0725d620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_EnableInterrupts_Privileged/113 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_17/162 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_17) @0725d1c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/110 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_17/161 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_17) @0725d0e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/110 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_16/160 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_16) @0724fe00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetTDCOffset_Privileged/109 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_16/159 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_16) @0724fd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetTDCOffset_Privileged/109 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_15/158 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_15) @0724f8c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetBitrateCbt_Privileged/107 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_15/157 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_15) @0724f7e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetBitrateCbt_Privileged/107 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_09/156 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_09) @0724f460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ClearTDCFail/104 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_09/155 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_09) @0724f380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ClearTDCFail/104 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_14/154 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_14) @07240e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetBitrate_Privileged/102 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_14/153 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_14) @07240d20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetBitrate_Privileged/102 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_08/152 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_08) @07240a80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetRxMaskType_Privileged/101 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_08/151 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_08) @072409a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetRxMaskType_Privileged/101 
  Calls: 
SchM_Exit_Can_CAN_EXCLUSIVE_AREA_07/150 (SchM_Exit_Can_CAN_EXCLUSIVE_AREA_07) @07240700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetStartMode_Privileged/99 
  Calls: 
SchM_Enter_Can_CAN_EXCLUSIVE_AREA_07/149 (SchM_Enter_Can_CAN_EXCLUSIVE_AREA_07) @07240620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetStartMode_Privileged/99 
  Calls: 
FlexCAN_ExitFreezeMode/148 (FlexCAN_ExitFreezeMode) @0722ba80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetStartMode_Privileged/99 FlexCAN_Ip_ExitFreezeMode_Privileged/90 
  Calls: 
FlexCAN_SetRxFifoFilter/147 (FlexCAN_SetRxFifoFilter) @07214700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ConfigRxFifo_Privileged/76 
  Calls: 
FlexCAN_Enable/146 (FlexCAN_Enable) @07214620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ConfigPN_Privileged/121 FlexCAN_Ip_SetListenOnlyMode_Privileged/119 FlexCAN_Ip_SetRxMb15Mask_Privileged/118 FlexCAN_Ip_SetRxMb14Mask_Privileged/117 FlexCAN_Ip_SetErrorInt_Privileged/115 FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/110 FlexCAN_Ip_SetTDCOffset_Privileged/109 FlexCAN_Ip_SetBitrateCbt_Privileged/107 FlexCAN_Ip_SetBitrate_Privileged/102 FlexCAN_Ip_SetRxMaskType_Privileged/101 FlexCAN_Ip_SetRxFifoGlobalMask_Privileged/92 FlexCAN_Ip_SetRxIndividualMask_Privileged/91 FlexCAN_Ip_SetRxMbGlobalMask_Privileged/88 FlexCAN_Ip_ConfigRxFifo_Privileged/76 
  Calls: 
FlexCAN_SetRxMsgBuff/145 (FlexCAN_SetRxMsgBuff) @07214000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ConfigRxMb/71 FlexCAN_Ip_ConfigRxMb/71 FlexCAN_Ip_ConfigRxMb/71 
  Calls: 
FlexCAN_SetOperationMode/144 (FlexCAN_SetOperationMode) @071fe8c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_Init_Privileged/69 
  Calls: 
FLEXCAN_ClearMsgBuffIntCmd/143 (FLEXCAN_ClearMsgBuffIntCmd) @071fe620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_AbortTransfer/116 FlexCAN_AbortRxTransfer/68 
  Calls: 
FlexCAN_GetMsgBuffTimestamp/142 (FlexCAN_GetMsgBuffTimestamp) @071fe380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_MainFunctionWrite/96 FlexCAN_IRQHandlerTxMB/64 
  Calls: 
FlexCAN_GetMsgBuff/141 (FlexCAN_GetMsgBuff) @071fe0e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerRxMB/63 
  Calls: 
FlexCAN_LockRxMsgBuff/140 (FlexCAN_LockRxMsgBuff) @071fe000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerRxMB/63 
  Calls: 
FlexCAN_SetTxMsgBuff/139 (FlexCAN_SetTxMsgBuff) @071e8c40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ConfigRemoteResponseMb/77 FlexCAN_StartSendData/61 
  Calls: 
FlexCAN_GetMsgBuffRegion/138 (FlexCAN_GetMsgBuffRegion) @071e8b60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SendBlocking/87 FlexCAN_Ip_ConfigRemoteResponseMb/77 FlexCAN_AbortRxTransfer/68 FlexCAN_AbortRxTransfer/68 FlexCAN_AbortTxTransfer/67 FlexCAN_IRQHandlerRxMB/63 FlexCAN_StartSendData/61 
  Calls: 
FlexCAN_ReadRxFifo/137 (FlexCAN_ReadRxFifo) @071e87e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_IRQHandlerRxFIFO/65 
  Calls: 
FlexCAN_SetMsgBuffIntCmd/136 (FlexCAN_SetMsgBuffIntCmd) @071e8540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_ProccessLegacyRxFIFO/59 FlexCAN_ProccessLegacyRxFIFO/59 FlexCAN_ProccessLegacyRxFIFO/59 FlexCAN_CompleteRxMessageFifoData/79 FlexCAN_CompleteRxMessageFifoData/79 FlexCAN_CompleteRxMessageFifoData/79 FlexCAN_Ip_ConfigRemoteResponseMb/77 FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerRxMB/63 FlexCAN_IRQHandlerRxMB/63 FlexCAN_StartRxMessageFifoData/62 FlexCAN_StartRxMessageFifoData/62 FlexCAN_StartRxMessageFifoData/62 
  Calls: 
OsIf_GetElapsed/135 (OsIf_GetElapsed) @071e8460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ManualBusOffRecovery/124 FlexCAN_Ip_SendBlocking/87 FlexCAN_Ip_SendBlocking/87 FlexCAN_ProccessLegacyRxFIFO/59 FlexCAN_Ip_ReceiveBlocking/73 FlexCAN_AbortTxTransfer/67 
  Calls: 
OsIf_GetCounter/134 (OsIf_GetCounter) @071e8380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ManualBusOffRecovery/124 FlexCAN_Ip_SendBlocking/87 FlexCAN_Ip_SendBlocking/87 FlexCAN_ProccessLegacyRxFIFO/59 FlexCAN_Ip_ReceiveBlocking/73 FlexCAN_AbortTxTransfer/67 
  Calls: 
OsIf_MicrosToTicks/133 (OsIf_MicrosToTicks) @071e82a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ManualBusOffRecovery/124 FlexCAN_Ip_SendBlocking/87 FlexCAN_Ip_SendBlocking/87 FlexCAN_ProccessLegacyRxFIFO/59 FlexCAN_Ip_ReceiveBlocking/73 FlexCAN_AbortTxTransfer/67 
  Calls: 
FlexCAN_ConfigCtrlOptions/132 (FlexCAN_ConfigCtrlOptions) @071d0d20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_InitController/58 
  Calls: 
FlexCAN_IsFDAvailable/131 (FlexCAN_IsFDAvailable) @071d0c40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_InitController/58 FlexCAN_SetRegDefaultVal/35 
  Calls: 
FlexCAN_Init/130 (FlexCAN_Init) @071d0b60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_InitController/58 
  Calls: 
FlexCAN_SetMaxMsgBuffNum/129 (FlexCAN_SetMaxMsgBuffNum) @071d08c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_InitCtroll/57 
  Calls: 
FlexCAN_SetPayloadSize/128 (FlexCAN_SetPayloadSize) @071d07e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_InitCtroll/57 
  Calls: 
FlexCAN_Disable/127 (FlexCAN_Disable) @071d0700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_ConfigPN_Privileged/121 FlexCAN_Ip_SetListenOnlyMode_Privileged/119 FlexCAN_Ip_SetRxMb15Mask_Privileged/118 FlexCAN_Ip_SetRxMb14Mask_Privileged/117 FlexCAN_Ip_SetErrorInt_Privileged/115 FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/110 FlexCAN_Ip_SetTDCOffset_Privileged/109 FlexCAN_Ip_SetBitrateCbt_Privileged/107 FlexCAN_Ip_SetBitrate_Privileged/102 FlexCAN_Ip_SetRxMaskType_Privileged/101 FlexCAN_Ip_SetStopMode_Privileged/100 FlexCAN_Ip_Deinit_Privileged/93 FlexCAN_Ip_SetRxFifoGlobalMask_Privileged/92 FlexCAN_Ip_SetRxIndividualMask_Privileged/91 FlexCAN_Ip_SetRxMbGlobalMask_Privileged/88 FlexCAN_Ip_ConfigRxFifo_Privileged/76 FlexCAN_InitController/58 FlexCAN_InitController/58 FlexCAN_InitCtroll/57 
  Calls: 
FlexCAN_EnterFreezeMode/126 (FlexCAN_EnterFreezeMode) @071d0620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_Ip_SetStopMode_Privileged/100 FlexCAN_Ip_Deinit_Privileged/93 FlexCAN_Ip_EnterFreezeMode_Privileged/89 FlexCAN_InitController/58 FlexCAN_InitController/58 FlexCAN_InitCtroll/57 
  Calls: 
FlexCAN_EnableRxFifo/125 (FlexCAN_EnableRxFifo) @071d0460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: FlexCAN_InitRxFifo/56 
  Calls: 
FlexCAN_Ip_ManualBusOffRecovery/124 (FlexCAN_Ip_ManualBusOffRecovery) @071d0000
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: OsIf_GetElapsed/135 OsIf_GetCounter/134 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_20/172 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_20/171 OsIf_MicrosToTicks/133 
FlexCAN_WakeUp_IRQHandler/123 (FlexCAN_WakeUp_IRQHandler) @071c1b60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_ClearWUMF/53 FlexCAN_ClearWTOF/50 FlexCAN_GetWUMIE/52 FlexCAN_ClearWUMF/53 FlexCAN_GetWUMF/51 FlexCAN_GetWTOIE/49 FlexCAN_ClearWTOF/50 FlexCAN_GetWTOF/48 
   Indirect call
   Indirect call
FlexCAN_Ip_GetWMB/122 (FlexCAN_Ip_GetWMB) @071c1620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_ConfigPN_Privileged/121 (FlexCAN_Ip_ConfigPN_Privileged) @071c10e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_12/170 FlexCAN_SetPN/46 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_12/169 FlexCAN_ConfigPN/168 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_GetListenOnlyMode/120 (FlexCAN_Ip_GetListenOnlyMode) @071c1d20
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_IsListenOnlyModeEnabled/19 
FlexCAN_Ip_SetListenOnlyMode_Privileged/119 (FlexCAN_Ip_SetListenOnlyMode_Privileged) @071c1a80
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_10/167 FlexCAN_SetListenOnlyMode/4 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_10/166 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_SetRxMb15Mask_Privileged/118 (FlexCAN_Ip_SetRxMb15Mask_Privileged) @071c17e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_SetRxMb14Mask_Privileged/117 (FlexCAN_Ip_SetRxMb14Mask_Privileged) @071c1540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_AbortTransfer/116 (FlexCAN_Ip_AbortTransfer) @071c12a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_AbortRxTransfer/68 FlexCAN_AbortTxTransfer/67 FLEXCAN_ClearMsgBuffIntCmd/143 
FlexCAN_Ip_SetErrorInt_Privileged/115 (FlexCAN_Ip_SetErrorInt_Privileged) @071c1000
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_SetErrIntCmd/165 FlexCAN_SetErrIntCmd/165 FlexCAN_SetErrIntCmd/165 FlexCAN_SetErrIntCmd/165 FlexCAN_SetErrIntCmd/165 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_DisableInterrupts_Privileged/114 (FlexCAN_Ip_DisableInterrupts_Privileged) @071b9b60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_DisableInterrupts/164 FlexCAN_IsEnabled/2 
FlexCAN_Ip_EnableInterrupts_Privileged/113 (FlexCAN_Ip_EnableInterrupts_Privileged) @071b9620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_EnableInterrupts/163 FlexCAN_IsEnabled/2 
FlexCAN_Ip_ClearBuffStatusFlag/112 (FlexCAN_Ip_ClearBuffStatusFlag) @071b90e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_ClearMsgBuffIntStatusFlag/6 
FlexCAN_Ip_GetBuffStatusFlag/111 (FlexCAN_Ip_GetBuffStatusFlag) @071b9d20
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_GetBuffStatusFlag/7 
FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/110 (FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged) @071b9a80
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_17/162 FlexCAN_SetTxArbitrationStartDelay/33 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_17/161 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_SetTDCOffset_Privileged/109 (FlexCAN_Ip_SetTDCOffset_Privileged) @071b97e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_16/160 FlexCAN_SetTDCOffset/1 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_16/159 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_GetBitrateFD/108 (FlexCAN_Ip_GetBitrateFD) @071b9540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_GetFDTimeSegments/14 
FlexCAN_Ip_SetBitrateCbt_Privileged/107 (FlexCAN_Ip_SetBitrateCbt_Privileged) @071b92a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_15/158 FlexCAN_SetFDTimeSegments/9 FlexCAN_SetFDEnabled/3 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_15/157 FlexCAN_Enable/146 FlexCAN_IsFDEnabled/18 FlexCAN_IsEnabled/2 
FlexCAN_Ip_GetTDCValue/106 (FlexCAN_Ip_GetTDCValue) @071b9000
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_GetTDCFail/105 (FlexCAN_Ip_GetTDCFail) @071b1b60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_ClearTDCFail/104 (FlexCAN_Ip_ClearTDCFail) @071b1620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: SchM_Exit_Can_CAN_EXCLUSIVE_AREA_09/156 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_09/155 
FlexCAN_Ip_GetBitrate/103 (FlexCAN_Ip_GetBitrate) @071b10e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_GetTimeSegments/13 FlexCAN_GetExtendedTimeSegments/12 FlexCAN_IsExCbtEnabled/15 
FlexCAN_Ip_SetBitrate_Privileged/102 (FlexCAN_Ip_SetBitrate_Privileged) @071b1d20
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_14/154 FlexCAN_SetTimeSegments/10 FlexCAN_SetExtendedTimeSegments/11 FlexCAN_IsExCbtEnabled/15 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_14/153 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_SetRxMaskType_Privileged/101 (FlexCAN_Ip_SetRxMaskType_Privileged) @071b1a80
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_08/152 FlexCAN_SetRxMaskType/34 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_08/151 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_SetStopMode_Privileged/100 (FlexCAN_Ip_SetStopMode_Privileged) @071b17e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_EnterFreezeMode/126 
FlexCAN_Ip_SetStartMode_Privileged/99 (FlexCAN_Ip_SetStartMode_Privileged) @071b1540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_ExitFreezeMode/148 SchM_Exit_Can_CAN_EXCLUSIVE_AREA_07/150 SchM_Enter_Can_CAN_EXCLUSIVE_AREA_07/149 
FlexCAN_Ip_GetStartMode_Privileged/98 (FlexCAN_Ip_GetStartMode_Privileged) @071b12a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_GetStopMode_Privileged/97 (FlexCAN_Ip_GetStopMode_Privileged) @071b1000
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_MainFunctionWrite/96 (FlexCAN_Ip_MainFunctionWrite) @071aab60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_UnlockRxMsgBuff/5 FlexCAN_GetMsgBuffTimestamp/142 FlexCAN_GetBuffStatusFlag/7 
FlexCAN_Ip_MainFunctionBusOff_Privileged/95 (FlexCAN_Ip_MainFunctionBusOff_Privileged) @071aa620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
   Indirect call
FlexCAN_Ip_MainFunctionRead/94 (FlexCAN_Ip_MainFunctionRead) @071aa0e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_IRQHandlerRxMB/63 FlexCAN_GetBuffStatusFlag/7 FlexCAN_IRQHandlerRxFIFO/65 FlexCAN_GetBuffStatusFlag/7 
FlexCAN_Ip_Deinit_Privileged/93 (FlexCAN_Ip_Deinit_Privileged) @071aad20
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_SetRegDefaultVal/35 FlexCAN_EnterFreezeMode/126 
FlexCAN_Ip_SetRxFifoGlobalMask_Privileged/92 (FlexCAN_Ip_SetRxFifoGlobalMask_Privileged) @071aaa80
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_SetRxFifoGlobalMask/0 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_SetRxIndividualMask_Privileged/91 (FlexCAN_Ip_SetRxIndividualMask_Privileged) @071aa7e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_SetRxIndividualMask/31 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_ExitFreezeMode_Privileged/90 (FlexCAN_Ip_ExitFreezeMode_Privileged) @071aa540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_ExitFreezeMode/148 
FlexCAN_Ip_EnterFreezeMode_Privileged/89 (FlexCAN_Ip_EnterFreezeMode_Privileged) @071aa2a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_EnterFreezeMode/126 
FlexCAN_Ip_SetRxMbGlobalMask_Privileged/88 (FlexCAN_Ip_SetRxMbGlobalMask_Privileged) @071aa000
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_SetRxMsgBuffGlobalMask/30 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_SendBlocking/87 (FlexCAN_Ip_SendBlocking) @0719cb60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_GetBuffStatusFlag/7 OsIf_GetElapsed/135 OsIf_GetCounter/134 OsIf_MicrosToTicks/133 FlexCAN_GetMsgBuffRegion/138 FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_GetBuffStatusFlag/7 OsIf_GetElapsed/135 OsIf_GetCounter/134 FlexCAN_StartSendData/61 OsIf_MicrosToTicks/133 
FlexCAN_BusOff_IRQHandler/86 (FlexCAN_BusOff_IRQHandler) @0719c620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
   Indirect call
   Indirect call
   Indirect call
FlexCAN_Error_IRQHandler/85 (FlexCAN_Error_IRQHandler) @0719c0e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
   Indirect call
   Indirect call
FlexCAN_Ip_GetControllerRxErrorCounter/84 (FlexCAN_Ip_GetControllerRxErrorCounter) @0719cd20
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_GetControllerTxErrorCounter/83 (FlexCAN_Ip_GetControllerTxErrorCounter) @0719ca80
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_GetErrorStatus/82 (FlexCAN_Ip_GetErrorStatus) @0719c7e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_ClearErrorStatus/81 (FlexCAN_Ip_ClearErrorStatus) @0719c540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_IRQHandler/80 (FlexCAN_IRQHandler) @0719c2a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_ProcessSpuriousInterruptMB/66 FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_GetMsgBuffIntStatusFlag/29 FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerRxMB/63 FlexCAN_IRQHandlerRxFIFO/65 FlexCAN_GetMsgBuffIntStatusFlag/29 FlexCAN_GetMsgBuffIntStatusFlag/29 
FlexCAN_CompleteRxMessageFifoData/79 (FlexCAN_CompleteRxMessageFifoData) @0719c000
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_IRQHandlerRxFIFO/65 
  Calls: FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetMsgBuffIntCmd/136 
FlexCAN_Ip_GetTransferStatus/78 (FlexCAN_Ip_GetTransferStatus) @07191b60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
FlexCAN_Ip_ConfigRemoteResponseMb/77 (FlexCAN_Ip_ConfigRemoteResponseMb) @07191620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetTxMsgBuff/139 FlexCAN_GetMsgBuffRegion/138 FlexCAN_ClearMsgBuffIntStatusFlag/6 
FlexCAN_Ip_ConfigRxFifo_Privileged/76 (FlexCAN_Ip_ConfigRxFifo_Privileged) @071910e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_Disable/127 FlexCAN_SetRxFifoFilter/147 FlexCAN_Enable/146 FlexCAN_IsEnabled/2 
FlexCAN_Ip_RxFifoBlocking/75 (FlexCAN_Ip_RxFifoBlocking) @07191d20
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_ProccessLegacyRxFIFO/59 FlexCAN_StartRxMessageFifoData/62 
FlexCAN_Ip_RxFifo/74 (FlexCAN_Ip_RxFifo) @07191a80
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_StartRxMessageFifoData/62 
FlexCAN_Ip_ReceiveBlocking/73 (FlexCAN_Ip_ReceiveBlocking) @071917e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxState/55 (read)Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: OsIf_GetElapsed/135 FlexCAN_IRQHandlerRxMB/63 FlexCAN_GetBuffStatusFlag/7 OsIf_GetCounter/134 FlexCAN_StartRxMessageBufferData/60 OsIf_MicrosToTicks/133 
FlexCAN_Ip_Receive/72 (FlexCAN_Ip_Receive) @07191540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_StartRxMessageBufferData/60 
FlexCAN_Ip_ConfigRxMb/71 (FlexCAN_Ip_ConfigRxMb) @071912a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_SetRxMsgBuff/145 FlexCAN_SetRxMsgBuff/145 FlexCAN_SetRxMsgBuff/145 FlexCAN_ClearMsgBuffIntStatusFlag/6 
FlexCAN_Ip_Send/70 (FlexCAN_Ip_Send) @07191000
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_StartSendData/61 FlexCAN_IsListenOnlyModeEnabled/19 
FlexCAN_Ip_Init_Privileged/69 (FlexCAN_Ip_Init_Privileged) @0717bb60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: FlexCAN_SetOperationMode/144 FlexCAN_SetTimeSegments/10 FlexCAN_SetFDTimeSegments/9 FlexCAN_SetExtendedTimeSegments/11 FlexCAN_EnableExtCbt/16 FlexCAN_InitController/58 
FlexCAN_AbortRxTransfer/68 (FlexCAN_AbortRxTransfer) @0717b620
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_Ip_AbortTransfer/116 
  Calls: FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_GetMsgBuffRegion/138 FLEXCAN_ClearMsgBuffIntCmd/143 FlexCAN_GetMsgBuffRegion/138 RxFifoOcuppiedLastMsgBuff/20 
FlexCAN_AbortTxTransfer/67 (FlexCAN_AbortTxTransfer) @0717b0e0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_Ip_AbortTransfer/116 
  Calls: FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_GetBuffStatusFlag/7 OsIf_GetElapsed/135 OsIf_GetCounter/134 OsIf_MicrosToTicks/133 FlexCAN_GetMsgBuffRegion/138 
FlexCAN_ProcessSpuriousInterruptMB/66 (FlexCAN_ProcessSpuriousInterruptMB) @0717bd20
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_IRQHandler/80 
  Calls: FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_GetBuffStatusImask/8 FlexCAN_GetBuffStatusFlag/7 
FlexCAN_IRQHandlerRxFIFO/65 (FlexCAN_IRQHandlerRxFIFO) @0717ba80
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_MainFunctionRead/94 FlexCAN_IRQHandler/80 FlexCAN_ProccessLegacyRxFIFO/59 
  Calls: FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_CompleteRxMessageFifoData/79 FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_ReadRxFifo/137 
   Indirect call
   Indirect call
   Indirect call
FlexCAN_IRQHandlerTxMB/64 (FlexCAN_IRQHandlerTxMB) @0717b7e0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_IRQHandler/80 
  Calls: FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_UnlockRxMsgBuff/5 FlexCAN_GetMsgBuffTimestamp/142 FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_UnlockRxMsgBuff/5 FlexCAN_GetMsgBuff/141 FlexCAN_LockRxMsgBuff/140 
   Indirect call
FlexCAN_IRQHandlerRxMB/63 (FlexCAN_IRQHandlerRxMB) @0717b540
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_Ip_MainFunctionRead/94 FlexCAN_IRQHandler/80 FlexCAN_Ip_ReceiveBlocking/73 
  Calls: FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_UnlockRxMsgBuff/5 FlexCAN_GetMsgBuffRegion/138 FlexCAN_ClearMsgBuffIntStatusFlag/6 FlexCAN_GetMsgBuff/141 FlexCAN_LockRxMsgBuff/140 
   Indirect call
FlexCAN_StartRxMessageFifoData/62 (FlexCAN_StartRxMessageFifoData) @0717b2a0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxBase/54 (read)Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_Ip_RxFifoBlocking/75 FlexCAN_Ip_RxFifo/74 
  Calls: FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetMsgBuffIntCmd/136 
FlexCAN_StartSendData/61 (FlexCAN_StartSendData) @0717b000
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxState/55 (read)Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_Ip_SendBlocking/87 FlexCAN_Ip_Send/70 
  Calls: FlexCAN_SetTxMsgBuff/139 FlexCAN_GetMsgBuffRegion/138 FlexCAN_ClearMsgBuffIntStatusFlag/6 
FlexCAN_StartRxMessageBufferData/60 (FlexCAN_StartRxMessageBufferData) @070c9b60
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxState/55 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_Ip_ReceiveBlocking/73 FlexCAN_Ip_Receive/72 
  Calls: 
FlexCAN_ProccessLegacyRxFIFO/59 (FlexCAN_ProccessLegacyRxFIFO) @070c9620
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Flexcan_Ip_apxState/55 (read)Flexcan_Ip_apxBase/54 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_Ip_RxFifoBlocking/75 
  Calls: FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetMsgBuffIntCmd/136 FlexCAN_SetMsgBuffIntCmd/136 OsIf_GetElapsed/135 FlexCAN_IRQHandlerRxFIFO/65 FlexCAN_GetBuffStatusFlag/7 OsIf_GetCounter/134 OsIf_MicrosToTicks/133 
FlexCAN_InitController/58 (FlexCAN_InitController) @070c9d20
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_Ip_Init_Privileged/69 
  Calls: FlexCAN_InitCtroll/57 FlexCAN_ConfigCtrlOptions/132 FlexCAN_SetFDEnabled/3 FlexCAN_IsFDAvailable/131 FlexCAN_Disable/127 FlexCAN_EnterFreezeMode/126 FlexCAN_Init/130 FlexCAN_SetClkSrc/28 FlexCAN_Disable/127 FlexCAN_EnterFreezeMode/126 FlexCAN_IsEnabled/2 
FlexCAN_InitCtroll/57 (FlexCAN_InitCtroll) @070c9a80
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_InitController/58 
  Calls: FlexCAN_SetMaxMsgBuffNum/129 FlexCAN_SetPayloadSize/128 FlexCAN_Disable/127 FlexCAN_EnterFreezeMode/126 FlexCAN_InitRxFifo/56 FlexCAN_SetSelfReception/17 
FlexCAN_InitRxFifo/56 (FlexCAN_InitRxFifo) @070c97e0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: FlexCAN_InitCtroll/57 
  Calls: FlexCAN_EnableRxFifo/125 
Flexcan_Ip_apxState/55 (Flexcan_Ip_apxState) @070c1798
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: FlexCAN_CompleteRxMessageFifoData/79 (read)FlexCAN_Ip_GetTransferStatus/78 (read)FlexCAN_Ip_AbortTransfer/116 (read)FlexCAN_ProcessSpuriousInterruptMB/66 (read)FlexCAN_StartRxMessageBufferData/60 (read)FlexCAN_StartSendData/61 (read)FlexCAN_StartRxMessageFifoData/62 (read)FlexCAN_IRQHandlerRxMB/63 (read)FlexCAN_IRQHandlerTxMB/64 (read)FlexCAN_AbortTxTransfer/67 (read)FlexCAN_AbortRxTransfer/68 (read)FlexCAN_Ip_Init_Privileged/69 (write)FlexCAN_Ip_ReceiveBlocking/73 (read)FlexCAN_Ip_ConfigRemoteResponseMb/77 (read)FlexCAN_IRQHandlerRxFIFO/65 (read)FlexCAN_Ip_DisableInterrupts_Privileged/114 (read)FlexCAN_ProccessLegacyRxFIFO/59 (read)FlexCAN_IRQHandler/80 (read)FlexCAN_Error_IRQHandler/85 (read)FlexCAN_BusOff_IRQHandler/86 (read)FlexCAN_Ip_SendBlocking/87 (read)FlexCAN_Ip_Deinit_Privileged/93 (write)FlexCAN_Ip_MainFunctionRead/94 (read)FlexCAN_Ip_MainFunctionBusOff_Privileged/95 (read)FlexCAN_Ip_MainFunctionWrite/96 (read)FlexCAN_Ip_EnableInterrupts_Privileged/113 (read)FlexCAN_WakeUp_IRQHandler/123 (read)
  Availability: available
  Varpool flags:
Flexcan_Ip_apxBase/54 (Flexcan_Ip_apxBase) @070c1708
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: FlexCAN_CompleteRxMessageFifoData/79 (read)FlexCAN_Ip_ConfigRemoteResponseMb/77 (read)FlexCAN_WakeUp_IRQHandler/123 (read)FlexCAN_ProcessSpuriousInterruptMB/66 (read)FlexCAN_StartSendData/61 (read)FlexCAN_StartRxMessageFifoData/62 (read)FlexCAN_IRQHandlerRxMB/63 (read)FlexCAN_IRQHandlerTxMB/64 (read)FlexCAN_AbortTxTransfer/67 (read)FlexCAN_AbortRxTransfer/68 (read)FlexCAN_Ip_Init_Privileged/69 (read)FlexCAN_Ip_Send/70 (read)FlexCAN_Ip_ConfigRxMb/71 (read)FlexCAN_Ip_ReceiveBlocking/73 (read)FlexCAN_Ip_ConfigRxFifo_Privileged/76 (read)FlexCAN_IRQHandlerRxFIFO/65 (read)FlexCAN_Ip_GetWMB/122 (read)FlexCAN_ProccessLegacyRxFIFO/59 (read)FlexCAN_IRQHandler/80 (read)FlexCAN_Ip_ClearErrorStatus/81 (read)FlexCAN_Ip_GetErrorStatus/82 (read)FlexCAN_Ip_GetControllerTxErrorCounter/83 (read)FlexCAN_Ip_GetControllerRxErrorCounter/84 (read)FlexCAN_Error_IRQHandler/85 (read)FlexCAN_BusOff_IRQHandler/86 (read)FlexCAN_Ip_SendBlocking/87 (read)FlexCAN_Ip_SetRxMbGlobalMask_Privileged/88 (read)FlexCAN_Ip_EnterFreezeMode_Privileged/89 (read)FlexCAN_Ip_ExitFreezeMode_Privileged/90 (read)FlexCAN_Ip_SetRxIndividualMask_Privileged/91 (read)FlexCAN_Ip_SetRxFifoGlobalMask_Privileged/92 (read)FlexCAN_Ip_Deinit_Privileged/93 (read)FlexCAN_Ip_MainFunctionRead/94 (read)FlexCAN_Ip_MainFunctionBusOff_Privileged/95 (read)FlexCAN_Ip_MainFunctionWrite/96 (read)FlexCAN_Ip_GetStopMode_Privileged/97 (read)FlexCAN_Ip_GetStartMode_Privileged/98 (read)FlexCAN_Ip_SetStartMode_Privileged/99 (read)FlexCAN_Ip_SetStopMode_Privileged/100 (read)FlexCAN_Ip_SetRxMaskType_Privileged/101 (read)FlexCAN_Ip_SetBitrate_Privileged/102 (read)FlexCAN_Ip_GetBitrate/103 (read)FlexCAN_Ip_ClearTDCFail/104 (read)FlexCAN_Ip_GetTDCFail/105 (read)FlexCAN_Ip_GetTDCValue/106 (read)FlexCAN_Ip_SetBitrateCbt_Privileged/107 (read)FlexCAN_Ip_GetBitrateFD/108 (read)FlexCAN_Ip_SetTDCOffset_Privileged/109 (read)FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/110 (read)FlexCAN_Ip_GetBuffStatusFlag/111 (read)FlexCAN_Ip_ClearBuffStatusFlag/112 (read)FlexCAN_Ip_EnableInterrupts_Privileged/113 (read)FlexCAN_Ip_DisableInterrupts_Privileged/114 (read)FlexCAN_Ip_SetErrorInt_Privileged/115 (read)FlexCAN_Ip_AbortTransfer/116 (read)FlexCAN_Ip_SetRxMb14Mask_Privileged/117 (read)FlexCAN_Ip_SetRxMb15Mask_Privileged/118 (read)FlexCAN_Ip_SetListenOnlyMode_Privileged/119 (read)FlexCAN_Ip_GetListenOnlyMode/120 (read)FlexCAN_Ip_ConfigPN_Privileged/121 (read)FlexCAN_Ip_ManualBusOffRecovery/124 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
FlexCAN_ClearWUMF/53 (FlexCAN_ClearWUMF) @06fec2a0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_WakeUp_IRQHandler/123 FlexCAN_WakeUp_IRQHandler/123 
  Calls: 
FlexCAN_GetWUMIE/52 (FlexCAN_GetWUMIE) @06fec000
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_WakeUp_IRQHandler/123 
  Calls: 
FlexCAN_GetWUMF/51 (FlexCAN_GetWUMF) @06fe8d20
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_WakeUp_IRQHandler/123 
  Calls: 
FlexCAN_ClearWTOF/50 (FlexCAN_ClearWTOF) @06fe8a80
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_WakeUp_IRQHandler/123 FlexCAN_WakeUp_IRQHandler/123 
  Calls: 
FlexCAN_GetWTOIE/49 (FlexCAN_GetWTOIE) @06fe87e0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_WakeUp_IRQHandler/123 
  Calls: 
FlexCAN_GetWTOF/48 (FlexCAN_GetWTOF) @06fe8540
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_WakeUp_IRQHandler/123 
  Calls: 
FlexCAN_SetPN/46 (FlexCAN_SetPN) @06fe8000
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_ConfigPN_Privileged/121 
  Calls: 
FlexCAN_SetRegDefaultVal/35 (FlexCAN_SetRegDefaultVal) @06fd3a80
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_Deinit_Privileged/93 
  Calls: FlexCAN_IsFDAvailable/131 
FlexCAN_SetRxMaskType/34 (FlexCAN_SetRxMaskType) @06fd3700
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetRxMaskType_Privileged/101 
  Calls: 
FlexCAN_SetTxArbitrationStartDelay/33 (FlexCAN_SetTxArbitrationStartDelay) @06fd32a0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/110 
  Calls: 
FlexCAN_SetRxIndividualMask/31 (FlexCAN_SetRxIndividualMask) @06fd0c40
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetRxIndividualMask_Privileged/91 
  Calls: 
FlexCAN_SetRxMsgBuffGlobalMask/30 (FlexCAN_SetRxMsgBuffGlobalMask) @06fd09a0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetRxMbGlobalMask_Privileged/88 
  Calls: 
FlexCAN_GetMsgBuffIntStatusFlag/29 (FlexCAN_GetMsgBuffIntStatusFlag) @06fd0700
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_IRQHandler/80 FlexCAN_IRQHandler/80 FlexCAN_IRQHandler/80 
  Calls: 
FlexCAN_SetClkSrc/28 (FlexCAN_SetClkSrc) @06fd0460
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_InitController/58 
  Calls: 
RxFifoOcuppiedLastMsgBuff/20 (RxFifoOcuppiedLastMsgBuff) @06fc9700
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_AbortRxTransfer/68 
  Calls: 
FlexCAN_IsListenOnlyModeEnabled/19 (FlexCAN_IsListenOnlyModeEnabled) @06fc9460
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_GetListenOnlyMode/120 FlexCAN_Ip_Send/70 
  Calls: 
FlexCAN_IsFDEnabled/18 (FlexCAN_IsFDEnabled) @06fc91c0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetBitrateCbt_Privileged/107 
  Calls: 
FlexCAN_SetSelfReception/17 (FlexCAN_SetSelfReception) @0710dee0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_InitCtroll/57 
  Calls: 
FlexCAN_EnableExtCbt/16 (FlexCAN_EnableExtCbt) @0710da80
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_Init_Privileged/69 
  Calls: 
FlexCAN_IsExCbtEnabled/15 (FlexCAN_IsExCbtEnabled) @0710d700
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_GetBitrate/103 FlexCAN_Ip_SetBitrate_Privileged/102 
  Calls: 
FlexCAN_GetFDTimeSegments/14 (FlexCAN_GetFDTimeSegments) @0710d460
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_GetBitrateFD/108 
  Calls: 
FlexCAN_GetTimeSegments/13 (FlexCAN_GetTimeSegments) @0710d1c0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_GetBitrate/103 
  Calls: 
FlexCAN_GetExtendedTimeSegments/12 (FlexCAN_GetExtendedTimeSegments) @0710aee0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_GetBitrate/103 
  Calls: 
FlexCAN_SetExtendedTimeSegments/11 (FlexCAN_SetExtendedTimeSegments) @0710ac40
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetBitrate_Privileged/102 FlexCAN_Ip_Init_Privileged/69 
  Calls: 
FlexCAN_SetTimeSegments/10 (FlexCAN_SetTimeSegments) @0710a540
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetBitrate_Privileged/102 FlexCAN_Ip_Init_Privileged/69 
  Calls: 
FlexCAN_SetFDTimeSegments/9 (FlexCAN_SetFDTimeSegments) @07103e00
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetBitrateCbt_Privileged/107 FlexCAN_Ip_Init_Privileged/69 
  Calls: 
FlexCAN_GetBuffStatusImask/8 (FlexCAN_GetBuffStatusImask) @07103700
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_ProcessSpuriousInterruptMB/66 
  Calls: 
FlexCAN_GetBuffStatusFlag/7 (FlexCAN_GetBuffStatusFlag) @07103460
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_GetBuffStatusFlag/111 FlexCAN_Ip_MainFunctionWrite/96 FlexCAN_Ip_MainFunctionRead/94 FlexCAN_Ip_MainFunctionRead/94 FlexCAN_Ip_SendBlocking/87 FlexCAN_Ip_SendBlocking/87 FlexCAN_ProccessLegacyRxFIFO/59 FlexCAN_Ip_ReceiveBlocking/73 FlexCAN_AbortTxTransfer/67 FlexCAN_ProcessSpuriousInterruptMB/66 
  Calls: 
FlexCAN_ClearMsgBuffIntStatusFlag/6 (FlexCAN_ClearMsgBuffIntStatusFlag) @071031c0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_ClearBuffStatusFlag/112 FlexCAN_Ip_MainFunctionWrite/96 FlexCAN_Ip_SendBlocking/87 FlexCAN_Ip_SendBlocking/87 FlexCAN_IRQHandler/80 FlexCAN_IRQHandler/80 FlexCAN_IRQHandlerRxFIFO/65 FlexCAN_IRQHandlerRxFIFO/65 FlexCAN_IRQHandlerRxFIFO/65 FlexCAN_Ip_ConfigRemoteResponseMb/77 FlexCAN_Ip_ConfigRxMb/71 FlexCAN_AbortRxTransfer/68 FlexCAN_AbortTxTransfer/67 FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerRxMB/63 FlexCAN_StartSendData/61 FlexCAN_ProcessSpuriousInterruptMB/66 
  Calls: 
FlexCAN_UnlockRxMsgBuff/5 (FlexCAN_UnlockRxMsgBuff) @070f0ee0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_MainFunctionWrite/96 FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerTxMB/64 FlexCAN_IRQHandlerRxMB/63 
  Calls: 
FlexCAN_SetListenOnlyMode/4 (FlexCAN_SetListenOnlyMode) @070f0b60
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetListenOnlyMode_Privileged/119 
  Calls: 
FlexCAN_SetFDEnabled/3 (FlexCAN_SetFDEnabled) @070f07e0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetBitrateCbt_Privileged/107 FlexCAN_InitController/58 
  Calls: 
FlexCAN_IsEnabled/2 (FlexCAN_IsEnabled) @070f0380
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_ConfigPN_Privileged/121 FlexCAN_Ip_SetListenOnlyMode_Privileged/119 FlexCAN_Ip_SetRxMb15Mask_Privileged/118 FlexCAN_Ip_SetRxMb14Mask_Privileged/117 FlexCAN_Ip_SetErrorInt_Privileged/115 FlexCAN_Ip_DisableInterrupts_Privileged/114 FlexCAN_Ip_EnableInterrupts_Privileged/113 FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged/110 FlexCAN_Ip_SetTDCOffset_Privileged/109 FlexCAN_Ip_SetBitrateCbt_Privileged/107 FlexCAN_Ip_SetBitrate_Privileged/102 FlexCAN_Ip_SetRxMaskType_Privileged/101 FlexCAN_Ip_SetRxFifoGlobalMask_Privileged/92 FlexCAN_Ip_SetRxIndividualMask_Privileged/91 FlexCAN_Ip_SetRxMbGlobalMask_Privileged/88 FlexCAN_Ip_ConfigRxFifo_Privileged/76 FlexCAN_InitController/58 
  Calls: 
FlexCAN_SetTDCOffset/1 (FlexCAN_SetTDCOffset) @070e9ee0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetTDCOffset_Privileged/109 
  Calls: 
FlexCAN_SetRxFifoGlobalMask/0 (FlexCAN_SetRxFifoGlobalMask) @070e9b60
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: FlexCAN_Ip_SetRxFifoGlobalMask_Privileged/92 
  Calls: 
FlexCAN_Ip_ManualBusOffRecovery (uint8 Instance)
{
  Flexcan_Ip_StatusType RetVal;
  uint32 uS2Ticks;
  uint32 timeElapsed;
  uint32 timeStart;
  struct FLEXCAN_Type * Base;
  Flexcan_Ip_StatusType D.8250;
  long unsigned int D.8247;
  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 _33;
  Flexcan_Ip_StatusType _36;

  <bb 2> :
  _1 = (int) Instance_17(D);
  Base_19 = Flexcan_Ip_apxBase[_1];
  timeStart = 0;
  timeElapsed_21 = 0;
  uS2Ticks_23 = OsIf_MicrosToTicks (1000000, 0);
  RetVal_24 = 1;
  _2 ={v} Base_19->CTRL1;
  _3 = _2 & 64;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  RetVal_25 = 0;
  _4 ={v} Base_19->ESR1;
  _5 = _4 & 32;
  if (_5 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 4> :
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_20 ();
  _6 ={v} Base_19->CTRL1;
  _7 = _6 & 4294967231;
  Base_19->CTRL1 ={v} _7;
  _8 ={v} Base_19->CTRL1;
  _9 = _8 | 64;
  Base_19->CTRL1 ={v} _9;
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_20 ();
  _10 = OsIf_GetCounter (0);
  timeStart = _10;
  goto <bb 7>; [INV]

  <bb 5> :
  _33 = OsIf_GetElapsed (&timeStart, 0);
  timeElapsed_34 = _33 + timeElapsed_13;
  if (timeElapsed_34 >= uS2Ticks_23)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  RetVal_35 = 3;
  goto <bb 8>; [INV]

  <bb 7> :
  # timeElapsed_13 = PHI <timeElapsed_21(4), timeElapsed_34(5)>
  _11 ={v} Base_19->ESR1;
  _12 = _11 & 32;
  if (_12 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 8> :
  # RetVal_14 = PHI <RetVal_24(2), RetVal_25(3), RetVal_35(6), RetVal_25(7)>
  _36 = RetVal_14;
  timeStart ={v} {CLOBBER};

  <bb 9> :
<L10>:
  return _36;

}


FlexCAN_WakeUp_IRQHandler (uint8 u8Instance)
{
  const struct Flexcan_Ip_StateType * pState;
  struct FLEXCAN_Type * pBase;
  int _1;
  int _2;
  unsigned char _3;
  unsigned char _4;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _5;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _6;
  unsigned char _7;
  unsigned char _8;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _9;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _10;

  <bb 2> :
  _1 = (int) u8Instance_13(D);
  pBase_15 = Flexcan_Ip_apxBase[_1];
  _2 = (int) u8Instance_13(D);
  pState_16 = Flexcan_Ip_apxState[_2];
  if (pState_16 != 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 3> :
  _3 = FlexCAN_GetWTOF (pBase_15);
  if (_3 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 4> :
  FlexCAN_ClearWTOF (pBase_15);
  _4 = FlexCAN_GetWTOIE (pBase_15);
  if (_4 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 5> :
  _5 = pState_16->callback;
  if (_5 != 0B)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  _6 = pState_16->callback;
  _6 (u8Instance_13(D), 5, 0, pState_16);

  <bb 7> :
  _7 = FlexCAN_GetWUMF (pBase_15);
  if (_7 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 8> :
  FlexCAN_ClearWUMF (pBase_15);
  _8 = FlexCAN_GetWUMIE (pBase_15);
  if (_8 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 9> :
  _9 = pState_16->callback;
  if (_9 != 0B)
    goto <bb 10>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 10> :
  _10 = pState_16->callback;
  _10 (u8Instance_13(D), 6, 0, pState_16);
  goto <bb 12>; [INV]

  <bb 11> :
  FlexCAN_ClearWTOF (pBase_15);
  FlexCAN_ClearWUMF (pBase_15);

  <bb 12> :
  return;

}


FlexCAN_Ip_GetWMB (uint8 u8Instance, uint8 u8WmbIndex, struct Flexcan_Ip_MsgBuffType * pWmb)
{
  uint32 pWmbData;
  uint32 * pTmp;
  const struct FLEXCAN_Type * pBase;
  int _1;
  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;
  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;
  int _22;
  long unsigned int _23;
  long unsigned int _24;
  long unsigned int _25;
  int _26;
  long unsigned int _27;
  int _28;
  long unsigned int _29;
  long unsigned int _30;
  long unsigned int _31;
  long unsigned int _32;
  unsigned char _33;
  unsigned char _34;

  <bb 2> :
  _1 = (int) u8Instance_36(D);
  pBase_38 = Flexcan_Ip_apxBase[_1];
  pTmp_40 = &pWmb_39(D)->data[0];
  _2 = (int) u8WmbIndex_41(D);
  pWmbData_42 ={v} pBase_38->WMB[_2].WMBn_D03;
  _3 = pWmbData_42 >> 24;
  _4 = pWmbData_42 >> 8;
  _5 = _4 & 65280;
  _6 = _3 | _5;
  _7 = pWmbData_42 << 8;
  _8 = _7 & 16711680;
  _9 = _6 | _8;
  _10 = pWmbData_42 << 24;
  _11 = _9 | _10;
  *pTmp_40 = _11;
  pTmp_44 = &pWmb_39(D)->data[4];
  _12 = (int) u8WmbIndex_41(D);
  pWmbData_45 ={v} pBase_38->WMB[_12].WMBn_D47;
  _13 = pWmbData_45 >> 24;
  _14 = pWmbData_45 >> 8;
  _15 = _14 & 65280;
  _16 = _13 | _15;
  _17 = pWmbData_45 << 8;
  _18 = _17 & 16711680;
  _19 = _16 | _18;
  _20 = pWmbData_45 << 24;
  _21 = _19 | _20;
  *pTmp_44 = _21;
  _22 = (int) u8WmbIndex_41(D);
  _23 ={v} pBase_38->WMB[_22].WMBn_CS;
  pWmb_39(D)->cs = _23;
  _24 = pWmb_39(D)->cs;
  _25 = _24 & 2097152;
  if (_25 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _26 = (int) u8WmbIndex_41(D);
  _27 ={v} pBase_38->WMB[_26].WMBn_ID;
  pWmb_39(D)->msgId = _27;
  goto <bb 5>; [INV]

  <bb 4> :
  _28 = (int) u8WmbIndex_41(D);
  _29 ={v} pBase_38->WMB[_28].WMBn_ID;
  _30 = _29 >> 18;
  pWmb_39(D)->msgId = _30;

  <bb 5> :
  _31 = pWmb_39(D)->cs;
  _32 = _31 >> 16;
  _33 = (unsigned char) _32;
  _34 = _33 & 15;
  pWmb_39(D)->dataLen = _34;
  return;

}


FlexCAN_Ip_ConfigPN_Privileged (uint8 u8Instance, boolean bEnable, const struct Flexcan_Ip_PnConfigType * pPnConfig)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8211;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _32;

  <bb 2> :
  result_13 = 0;
  status_14 = 0;
  _1 = (int) u8Instance_15(D);
  pBase_17 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_17);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_19 = (boolean) _6;
  if (u8Instance_15(D) == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 3> :
  if (disabled_19 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  result_22 = FlexCAN_Enable (pBase_17);

  <bb 5> :
  # result_7 = PHI <result_13(3), result_22(4)>
  if (result_7 == 0)
    goto <bb 6>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 6> :
  if (bEnable_23(D) != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  FlexCAN_ConfigPN (pBase_17, pPnConfig_24(D));

  <bb 8> :
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_12 ();
  FlexCAN_SetPN (pBase_17, bEnable_23(D));
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_12 ();

  <bb 9> :
  if (disabled_19 != 0)
    goto <bb 10>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 10> :
  status_30 = FlexCAN_Disable (pBase_17);
  if (status_30 != 0)
    goto <bb 11>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 11> :
  result_31 = status_30;
  goto <bb 13>; [INV]

  <bb 12> :
  result_20 = 1;

  <bb 13> :
  # result_8 = PHI <result_7(10), result_20(12), result_7(9), result_31(11)>
  _32 = result_8;

  <bb 14> :
<L13>:
  return _32;

}


FlexCAN_Ip_GetListenOnlyMode (uint8 instance)
{
  const struct FLEXCAN_Type * base;
  boolean D.8196;
  int _1;
  boolean _6;

  <bb 2> :
  _1 = (int) instance_2(D);
  base_4 = Flexcan_Ip_apxBase[_1];
  _6 = FlexCAN_IsListenOnlyModeEnabled (base_4);

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

}


FlexCAN_Ip_SetListenOnlyMode_Privileged (uint8 instance, const boolean enable)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8190;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _28;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_10 ();
  FlexCAN_SetListenOnlyMode (pBase_16, enable_22(D));
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_10 ();

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_26 = FlexCAN_Disable (pBase_16);
  if (status_26 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_27 = status_26;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_27(8)>
  _28 = result_8;

  <bb 10> :
<L8>:
  return _28;

}


FlexCAN_Ip_SetRxMb15Mask_Privileged (uint8 instance, uint32 mask)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8180;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _26;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  pBase_16->RX15MASK ={v} mask_21(D);

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_24 = FlexCAN_Disable (pBase_16);
  if (status_24 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_25 = status_24;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_25(8)>
  _26 = result_8;

  <bb 10> :
<L8>:
  return _26;

}


FlexCAN_Ip_SetRxMb14Mask_Privileged (uint8 instance, uint32 mask)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8170;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _26;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  pBase_16->RX14MASK ={v} mask_21(D);

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_24 = FlexCAN_Disable (pBase_16);
  if (status_24 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_25 = status_24;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_25(8)>
  _26 = result_8;

  <bb 10> :
<L8>:
  return _26;

}


FlexCAN_Ip_AbortTransfer (uint8 u8Instance, uint8 mb_idx)
{
  Flexcan_Ip_StatusType result;
  const struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType D.8160;
  int _1;
  int _2;
  int _3;
  <unnamed type> _4;
  long unsigned int _5;
  _Bool _6;
  int _7;
  <unnamed type> _8;
  int _9;
  <unnamed type> _10;
  Flexcan_Ip_StatusType _26;

  <bb 2> :
  _1 = (int) u8Instance_15(D);
  pBase_17 = Flexcan_Ip_apxBase[_1];
  _2 = (int) u8Instance_15(D);
  state_18 = Flexcan_Ip_apxState[_2];
  result_19 = 0;
  if (mb_idx_20(D) <= 31)
    goto <bb 3>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 3> :
  _3 = (int) mb_idx_20(D);
  _4 ={v} state_18->mbs[_3].state;
  if (_4 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  result_25 = 5;
  goto <bb 9>; [INV]

  <bb 5> :
  _5 = (long unsigned int) mb_idx_20(D);
  _6 = state_18->isIntActive;
  FLEXCAN_ClearMsgBuffIntCmd (pBase_17, u8Instance_15(D), _5, _6);
  _7 = (int) mb_idx_20(D);
  _8 ={v} state_18->mbs[_7].state;
  if (_8 == 2)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  result_23 = FlexCAN_AbortTxTransfer (u8Instance_15(D), mb_idx_20(D));

  <bb 7> :
  # result_11 = PHI <result_19(5), result_23(6)>
  _9 = (int) mb_idx_20(D);
  _10 ={v} state_18->mbs[_9].state;
  if (_10 == 1)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  FlexCAN_AbortRxTransfer (u8Instance_15(D), mb_idx_20(D));

  <bb 9> :
  # result_12 = PHI <result_19(2), result_25(4), result_11(7), result_11(8)>
  _26 = result_12;

  <bb 10> :
<L9>:
  return _26;

}


FlexCAN_Ip_SetErrorInt_Privileged (uint8 u8Instance, Flexcan_Ip_ErrorIntType type, boolean enable)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8149;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _31;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) u8Instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 5> :
  switch (type_21(D)) <default: <L8> [INV], case 0: <L6> [INV], case 1: <L7> [INV], case 2: <L4> [INV], case 3: <L5> [INV], case 4: <L3> [INV]>

  <bb 6> :
<L3>:
  FlexCAN_SetErrIntCmd (pBase_16, 32768, enable_22(D));
  goto <bb 12>; [INV]

  <bb 7> :
<L4>:
  FlexCAN_SetErrIntCmd (pBase_16, 16384, enable_22(D));
  goto <bb 12>; [INV]

  <bb 8> :
<L5>:
  FlexCAN_SetErrIntCmd (pBase_16, 16385, enable_22(D));
  goto <bb 12>; [INV]

  <bb 9> :
<L6>:
  FlexCAN_SetErrIntCmd (pBase_16, 1024, enable_22(D));
  goto <bb 12>; [INV]

  <bb 10> :
<L7>:
  FlexCAN_SetErrIntCmd (pBase_16, 2048, enable_22(D));
  goto <bb 12>; [INV]

  <bb 11> :
<L8>:

  <bb 12> :
  if (disabled_18 != 0)
    goto <bb 13>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 13> :
  status_29 = FlexCAN_Disable (pBase_16);
  if (status_29 != 0)
    goto <bb 14>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 14> :
  result_30 = status_29;

  <bb 15> :
  # result_8 = PHI <result_7(12), result_7(13), result_30(14)>
  _31 = result_8;

  <bb 16> :
<L15>:
  return _31;

}


FlexCAN_Ip_DisableInterrupts_Privileged (uint8 u8Instance)
{
  struct Flexcan_Ip_StateType * state;
  Flexcan_Ip_StatusType result;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType D.8139;
  int _1;
  int _2;
  _Bool _3;
  Flexcan_Ip_StatusType _15;

  <bb 2> :
  _1 = (int) u8Instance_6(D);
  pBase_8 = Flexcan_Ip_apxBase[_1];
  result_9 = 1;
  _2 = (int) u8Instance_6(D);
  state_10 = Flexcan_Ip_apxState[_2];
  _3 = FlexCAN_IsEnabled (pBase_8);
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  FlexCAN_DisableInterrupts (pBase_8);
  state_10->isIntActive = 0;
  result_14 = 0;

  <bb 4> :
  # result_4 = PHI <result_9(2), result_14(3)>
  _15 = result_4;

  <bb 5> :
<L2>:
  return _15;

}


FlexCAN_Ip_EnableInterrupts_Privileged (uint8 u8Instance)
{
  struct Flexcan_Ip_StateType * state;
  Flexcan_Ip_StatusType result;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType D.8135;
  int _1;
  int _2;
  _Bool _3;
  Flexcan_Ip_StatusType _15;

  <bb 2> :
  _1 = (int) u8Instance_6(D);
  pBase_8 = Flexcan_Ip_apxBase[_1];
  result_9 = 1;
  _2 = (int) u8Instance_6(D);
  state_10 = Flexcan_Ip_apxState[_2];
  _3 = FlexCAN_IsEnabled (pBase_8);
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  FlexCAN_EnableInterrupts (pBase_8, u8Instance_6(D));
  state_10->isIntActive = 1;
  result_14 = 0;

  <bb 4> :
  # result_4 = PHI <result_9(2), result_14(3)>
  _15 = result_4;

  <bb 5> :
<L2>:
  return _15;

}


FlexCAN_Ip_ClearBuffStatusFlag (uint8 instance, uint8 msgBuffIdx)
{
  struct FLEXCAN_Type * pBase;
  int _1;
  long unsigned int _2;

  <bb 2> :
  _1 = (int) instance_3(D);
  pBase_5 = Flexcan_Ip_apxBase[_1];
  _2 = (long unsigned int) msgBuffIdx_6(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (pBase_5, _2);
  return;

}


FlexCAN_Ip_GetBuffStatusFlag (uint8 instance, uint8 msgBuffIdx)
{
  const struct FLEXCAN_Type * pBase;
  boolean returnResult;
  boolean D.8131;
  int _1;
  long unsigned int _2;
  unsigned char _3;
  boolean _11;

  <bb 2> :
  returnResult_4 = 1;
  _1 = (int) instance_5(D);
  pBase_7 = Flexcan_Ip_apxBase[_1];
  _2 = (long unsigned int) msgBuffIdx_8(D);
  _3 = FlexCAN_GetBuffStatusFlag (pBase_7, _2);
  returnResult_10 = _3 == 1;
  _11 = returnResult_10;

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

}


FlexCAN_Ip_SetTxArbitrationStartDelay_Privileged (uint8 instance, uint8 value)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8129;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _28;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_17 ();
  FlexCAN_SetTxArbitrationStartDelay (pBase_16, value_22(D));
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_17 ();

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_26 = FlexCAN_Disable (pBase_16);
  if (status_26 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_27 = status_26;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_27(8)>
  _28 = result_8;

  <bb 10> :
<L8>:
  return _28;

}


FlexCAN_Ip_SetTDCOffset_Privileged (uint8 instance, boolean enable, uint8 offset)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8117;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _29;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_16 ();
  FlexCAN_SetTDCOffset (pBase_16, enable_22(D), offset_23(D));
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_16 ();

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_27 = FlexCAN_Disable (pBase_16);
  if (status_27 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_28 = status_27;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_28(8)>
  _29 = result_8;

  <bb 10> :
<L8>:
  return _29;

}


FlexCAN_Ip_GetBitrateFD (uint8 instance, struct Flexcan_Ip_TimeSegmentType * bitrate)
{
  boolean enhCbt;
  const struct FLEXCAN_Type * pBase;
  boolean D.8107;
  int _1;
  boolean _8;

  <bb 2> :
  _1 = (int) instance_2(D);
  pBase_4 = Flexcan_Ip_apxBase[_1];
  enhCbt_5 = 0;
  FlexCAN_GetFDTimeSegments (pBase_4, bitrate_6(D));
  _8 = enhCbt_5;

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

}


FlexCAN_Ip_SetBitrateCbt_Privileged (uint8 instance, const struct Flexcan_Ip_TimeSegmentType * bitrate, boolean bitRateSwitch)
{
  boolean fd_enable;
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8103;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _32;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  fd_enable_20 = FlexCAN_IsFDEnabled (pBase_16);
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_22 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_22(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_15 ();
  FlexCAN_SetFDEnabled (pBase_16, fd_enable_20, bitRateSwitch_24(D));
  FlexCAN_SetFDTimeSegments (pBase_16, bitrate_26(D));
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_15 ();

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_30 = FlexCAN_Disable (pBase_16);
  if (status_30 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_31 = status_30;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_31(8)>
  _32 = result_8;

  <bb 10> :
<L8>:
  return _32;

}


FlexCAN_Ip_GetTDCValue (uint8 u8Instance)
{
  const struct FLEXCAN_Type * pBase;
  uint8 value;
  uint8 D.8093;
  int _1;
  long unsigned int _2;
  unsigned char _3;
  uint8 _9;

  <bb 2> :
  value_4 = 0;
  _1 = (int) u8Instance_5(D);
  pBase_7 = Flexcan_Ip_apxBase[_1];
  _2 ={v} pBase_7->FDCTRL;
  _3 = (unsigned char) _2;
  value_8 = _3 & 63;
  _9 = value_8;

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

}


FlexCAN_Ip_GetTDCFail (uint8 u8Instance)
{
  const struct FLEXCAN_Type * pBase;
  boolean value;
  boolean D.8091;
  int _1;
  long unsigned int _2;
  long unsigned int _3;
  boolean _9;

  <bb 2> :
  value_4 = 0;
  _1 = (int) u8Instance_5(D);
  pBase_7 = Flexcan_Ip_apxBase[_1];
  _2 ={v} pBase_7->FDCTRL;
  _3 = _2 & 16384;
  value_8 = _3 == 16384;
  _9 = value_8;

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

}


FlexCAN_Ip_ClearTDCFail (uint8 u8Instance)
{
  struct FLEXCAN_Type * pBase;
  int _1;
  long unsigned int _2;
  long unsigned int _3;

  <bb 2> :
  _1 = (int) u8Instance_4(D);
  pBase_6 = Flexcan_Ip_apxBase[_1];
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_09 ();
  _2 ={v} pBase_6->FDCTRL;
  _3 = _2 | 16384;
  pBase_6->FDCTRL ={v} _3;
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_09 ();
  return;

}


FlexCAN_Ip_GetBitrate (uint8 instance, struct Flexcan_Ip_TimeSegmentType * bitrate)
{
  boolean enhCbt;
  const struct FLEXCAN_Type * pBase;
  boolean D.8089;
  int _1;
  _Bool _2;
  boolean _12;

  <bb 2> :
  _1 = (int) instance_4(D);
  pBase_6 = Flexcan_Ip_apxBase[_1];
  enhCbt_7 = 0;
  _2 = FlexCAN_IsExCbtEnabled (pBase_6);
  if (_2 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  FlexCAN_GetExtendedTimeSegments (pBase_6, bitrate_9(D));
  goto <bb 5>; [INV]

  <bb 4> :
  FlexCAN_GetTimeSegments (pBase_6, bitrate_9(D));

  <bb 5> :
  _12 = enhCbt_7;

  <bb 6> :
<L3>:
  return _12;

}


FlexCAN_Ip_SetBitrate_Privileged (uint8 instance, const struct Flexcan_Ip_TimeSegmentType * bitrate, boolean enhExt)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8082;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  _Bool _7;
  Flexcan_Ip_StatusType _32;

  <bb 2> :
  result_14 = 0;
  status_15 = 0;
  _1 = (int) instance_16(D);
  pBase_18 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_18);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_20 = (boolean) _6;
  if (disabled_20 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_22 = FlexCAN_Enable (pBase_18);

  <bb 4> :
  # result_8 = PHI <result_14(2), result_22(3)>
  if (result_8 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 5> :
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_14 ();
  _7 = FlexCAN_IsExCbtEnabled (pBase_18);
  if (_7 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  FlexCAN_SetExtendedTimeSegments (pBase_18, bitrate_25(D));
  goto <bb 8>; [INV]

  <bb 7> :
  FlexCAN_SetTimeSegments (pBase_18, bitrate_25(D));

  <bb 8> :
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_14 ();

  <bb 9> :
  if (disabled_20 != 0)
    goto <bb 10>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 10> :
  status_30 = FlexCAN_Disable (pBase_18);
  if (status_30 != 0)
    goto <bb 11>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 11> :
  result_31 = status_30;

  <bb 12> :
  # result_9 = PHI <result_8(9), result_8(10), result_31(11)>
  _32 = result_9;

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

}


FlexCAN_Ip_SetRxMaskType_Privileged (uint8 instance, Flexcan_Ip_RxMaskType type)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8066;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _28;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_08 ();
  FlexCAN_SetRxMaskType (pBase_16, type_22(D));
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_08 ();

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_26 = FlexCAN_Disable (pBase_16);
  if (status_26 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_27 = status_26;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_27(8)>
  _28 = result_8;

  <bb 10> :
<L8>:
  return _28;

}


FlexCAN_Ip_SetStopMode_Privileged (uint8 instance)
{
  Flexcan_Ip_StatusType status;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType D.8056;
  int _1;
  Flexcan_Ip_StatusType _11;

  <bb 2> :
  _1 = (int) instance_4(D);
  pBase_6 = Flexcan_Ip_apxBase[_1];
  status_8 = FlexCAN_EnterFreezeMode (pBase_6);
  if (status_8 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  status_10 = FlexCAN_Disable (pBase_6);

  <bb 4> :
  # status_2 = PHI <status_8(2), status_10(3)>
  _11 = status_2;

  <bb 5> :
<L2>:
  return _11;

}


FlexCAN_Ip_SetStartMode_Privileged (uint8 instance)
{
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType D.8052;
  int _1;
  long unsigned int _2;
  long unsigned int _3;
  Flexcan_Ip_StatusType _11;

  <bb 2> :
  _1 = (int) instance_4(D);
  pBase_6 = Flexcan_Ip_apxBase[_1];
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_07 ();
  _2 ={v} pBase_6->MCR;
  _3 = _2 & 2147483647;
  pBase_6->MCR ={v} _3;
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_07 ();
  _11 = FlexCAN_ExitFreezeMode (pBase_6);

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

}


FlexCAN_Ip_GetStartMode_Privileged (uint8 instance)
{
  const struct FLEXCAN_Type * base;
  boolean D.8050;
  int _1;
  long unsigned int _2;
  long unsigned int _3;
  boolean _7;

  <bb 2> :
  _1 = (int) instance_4(D);
  base_6 = Flexcan_Ip_apxBase[_1];
  _2 ={v} base_6->MCR;
  _3 = _2 & 17825792;
  _7 = _3 == 0;

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

}


FlexCAN_Ip_GetStopMode_Privileged (uint8 instance)
{
  const struct FLEXCAN_Type * base;
  boolean D.8048;
  int _1;
  long unsigned int _2;
  long unsigned int _3;
  boolean _7;

  <bb 2> :
  _1 = (int) instance_4(D);
  base_6 = Flexcan_Ip_apxBase[_1];
  _2 ={v} base_6->MCR;
  _3 = _2 & 1048576;
  _7 = _3 == 1048576;

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

}


FlexCAN_Ip_MainFunctionWrite (uint8 instance, uint8 mb_idx)
{
  struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  int _1;
  int _2;
  long unsigned int _3;
  unsigned char _4;
  long unsigned int _5;
  int _6;
  long unsigned int _7;
  long unsigned int _8;
  int _9;

  <bb 2> :
  _1 = (int) instance_11(D);
  base_13 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_11(D);
  state_14 = Flexcan_Ip_apxState[_2];
  _3 = (long unsigned int) mb_idx_15(D);
  _4 = FlexCAN_GetBuffStatusFlag (base_13, _3);
  if (_4 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _5 = (long unsigned int) mb_idx_15(D);
  _6 = (int) mb_idx_15(D);
  _7 = FlexCAN_GetMsgBuffTimestamp (base_13, _5);
  state_14->mbs[_6].time_stamp = _7;
  FlexCAN_UnlockRxMsgBuff (base_13);
  _8 = (long unsigned int) mb_idx_15(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (base_13, _8);
  _9 = (int) mb_idx_15(D);
  state_14->mbs[_9].state ={v} 0;

  <bb 4> :
  return;

}


FlexCAN_Ip_MainFunctionBusOff_Privileged (uint8 instance)
{
  uint32 u32ErrStatus;
  const struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  Flexcan_Ip_StatusType eRetVal;
  Flexcan_Ip_StatusType D.8044;
  int _1;
  int _2;
  long unsigned int _3;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _4;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _5;
  Flexcan_Ip_StatusType _19;

  <bb 2> :
  eRetVal_9 = 1;
  _1 = (int) instance_10(D);
  base_12 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_10(D);
  state_13 = Flexcan_Ip_apxState[_2];
  u32ErrStatus_14 = 0;
  u32ErrStatus_15 ={v} base_12->ESR1;
  _3 = u32ErrStatus_15 & 4;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 3> :
  _4 = state_13->error_callback;
  if (_4 != 0B)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _5 = state_13->error_callback;
  _5 (instance_10(D), 9, u32ErrStatus_15, state_13);

  <bb 5> :
  base_12->ESR1 ={v} 4;
  eRetVal_18 = 0;

  <bb 6> :
  # eRetVal_6 = PHI <eRetVal_9(2), eRetVal_18(5)>
  _19 = eRetVal_6;

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

}


FlexCAN_Ip_MainFunctionRead (uint8 instance, uint8 mb_idx)
{
  const struct Flexcan_Ip_StateType * state;
  const struct FLEXCAN_Type * base;
  int _1;
  int _2;
  _Bool _3;
  unsigned char _4;
  long unsigned int _5;
  unsigned char _6;
  int _7;
  <unnamed type> _8;
  long unsigned int _9;

  <bb 2> :
  _1 = (int) instance_12(D);
  base_14 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_12(D);
  state_15 = Flexcan_Ip_apxState[_2];
  _3 = state_15->bIsLegacyFifoEn;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  if (mb_idx_16(D) <= 7)
    goto <bb 4>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 4> :
  if (mb_idx_16(D) == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 5> :
  _4 = FlexCAN_GetBuffStatusFlag (base_14, 5);
  if (_4 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  FlexCAN_IRQHandlerRxFIFO (instance_12(D), 5);

  <bb 7> :
  goto <bb 11>; [INV]

  <bb 8> :
  _5 = (long unsigned int) mb_idx_16(D);
  _6 = FlexCAN_GetBuffStatusFlag (base_14, _5);
  if (_6 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 9> :
  _7 = (int) mb_idx_16(D);
  _8 ={v} state_15->mbs[_7].state;
  if (_8 == 1)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  _9 = (long unsigned int) mb_idx_16(D);
  FlexCAN_IRQHandlerRxMB (instance_12(D), _9);

  <bb 11> :
  return;

}


FlexCAN_Ip_Deinit_Privileged (uint8 instance)
{
  Flexcan_Ip_StatusType result;
  struct FLEXCAN_Type * base;
  Flexcan_Ip_StatusType D.8024;
  int _1;
  int _2;
  Flexcan_Ip_StatusType _13;

  <bb 2> :
  _1 = (int) instance_4(D);
  base_6 = Flexcan_Ip_apxBase[_1];
  result_7 = 1;
  result_9 = FlexCAN_EnterFreezeMode (base_6);
  if (result_9 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  FlexCAN_SetRegDefaultVal (base_6);
  FlexCAN_Disable (base_6);
  _2 = (int) instance_4(D);
  Flexcan_Ip_apxState[_2] = 0B;

  <bb 4> :
  _13 = result_9;

  <bb 5> :
<L2>:
  return _13;

}


FlexCAN_Ip_SetRxFifoGlobalMask_Privileged (uint8 instance, uint32 mask)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8020;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _26;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  FlexCAN_SetRxFifoGlobalMask (pBase_16, mask_21(D));

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_24 = FlexCAN_Disable (pBase_16);
  if (status_24 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_25 = status_24;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_25(8)>
  _26 = result_8;

  <bb 10> :
<L8>:
  return _26;

}


FlexCAN_Ip_SetRxIndividualMask_Privileged (uint8 instance, uint8 mb_idx, uint32 mask)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.8010;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  long unsigned int _7;
  Flexcan_Ip_StatusType _28;

  <bb 2> :
  result_13 = 0;
  status_14 = 0;
  _1 = (int) instance_15(D);
  pBase_17 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_17);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_19 = (boolean) _6;
  if (disabled_19 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_21 = FlexCAN_Enable (pBase_17);

  <bb 4> :
  # result_8 = PHI <result_13(2), result_21(3)>
  if (result_8 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _7 = (long unsigned int) mb_idx_22(D);
  FlexCAN_SetRxIndividualMask (pBase_17, _7, mask_23(D));

  <bb 6> :
  if (disabled_19 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_26 = FlexCAN_Disable (pBase_17);
  if (status_26 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_27 = status_26;

  <bb 9> :
  # result_9 = PHI <result_8(6), result_8(7), result_27(8)>
  _28 = result_9;

  <bb 10> :
<L8>:
  return _28;

}


FlexCAN_Ip_ExitFreezeMode_Privileged (uint8 instance)
{
  struct FLEXCAN_Type * base;
  Flexcan_Ip_StatusType D.8000;
  int _1;
  Flexcan_Ip_StatusType _6;

  <bb 2> :
  _1 = (int) instance_2(D);
  base_4 = Flexcan_Ip_apxBase[_1];
  _6 = FlexCAN_ExitFreezeMode (base_4);

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

}


FlexCAN_Ip_EnterFreezeMode_Privileged (uint8 instance)
{
  struct FLEXCAN_Type * base;
  Flexcan_Ip_StatusType D.7998;
  int _1;
  Flexcan_Ip_StatusType _6;

  <bb 2> :
  _1 = (int) instance_2(D);
  base_4 = Flexcan_Ip_apxBase[_1];
  _6 = FlexCAN_EnterFreezeMode (base_4);

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

}


FlexCAN_Ip_SetRxMbGlobalMask_Privileged (uint8 instance, uint32 mask)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7996;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _26;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  FlexCAN_SetRxMsgBuffGlobalMask (pBase_16, mask_21(D));

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_24 = FlexCAN_Disable (pBase_16);
  if (status_24 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_25 = status_24;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_25(8)>
  _26 = result_8;

  <bb 10> :
<L8>:
  return _26;

}


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 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;
  Flexcan_Ip_StatusType D.7985;
  long unsigned int D.7978;
  long unsigned int D.7971;
  int _1;
  int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  unsigned char _6;
  int _7;
  <unnamed type> _8;
  long unsigned int _9;
  long unsigned int _10;
  long unsigned int _11;
  long unsigned int _12;
  unsigned char _13;
  long unsigned int _14;
  long unsigned int _15;
  long unsigned int _16;
  long unsigned int _17;
  long unsigned int _18;
  int _19;
  long unsigned int _55;
  long unsigned int _72;
  Flexcan_Ip_StatusType _80;

  <bb 2> :
  _1 = (int) instance_33(D);
  base_35 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_33(D);
  state_36 = Flexcan_Ip_apxState[_2];
  timeStart = 0;
  timeElapsed_38 = 0;
  _3 = timeout_ms_39(D) * 1000;
  mS2Ticks_41 = OsIf_MicrosToTicks (_3, 0);
  uS2Ticks_42 = 0;
  flexcan_mb_config_43 = 0;
  flexcan_mb_44 = 0B;
  result_50 = FlexCAN_StartSendData (instance_33(D), mb_idx_45(D), tx_info_46(D), msg_id_47(D), mb_data_48(D));
  if (result_50 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 3> :
  _4 = OsIf_GetCounter (0);
  timeStart = _4;
  goto <bb 6>; [INV]

  <bb 4> :
  _55 = OsIf_GetElapsed (&timeStart, 0);
  timeElapsed_56 = _55 + timeElapsed_25;
  if (timeElapsed_56 >= mS2Ticks_41)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  result_57 = 3;
  goto <bb 7>; [INV]

  <bb 6> :
  # timeElapsed_25 = PHI <timeElapsed_38(3), timeElapsed_56(4)>
  _5 = (long unsigned int) mb_idx_45(D);
  _6 = FlexCAN_GetBuffStatusFlag (base_35, _5);
  if (_6 != 1)
    goto <bb 4>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 7> :
  # result_20 = PHI <result_57(5), result_50(6)>
  if (result_20 == 3)
    goto <bb 8>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 8> :
  _7 = (int) mb_idx_45(D);
  _8 ={v} state_36->mbs[_7].state;
  if (_8 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 9> :
  _9 = (long unsigned int) mb_idx_45(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (base_35, _9);
  _10 = (long unsigned int) mb_idx_45(D);
  flexcan_mb_60 = FlexCAN_GetMsgBuffRegion (base_35, _10);
  flexcan_mb_config_61 ={v} *flexcan_mb_60;
  flexcan_mb_config_62 = flexcan_mb_config_61 & 4043309055;
  flexcan_mb_config_63 = flexcan_mb_config_62 | 150994944;
  *flexcan_mb_60 ={v} flexcan_mb_config_63;
  uS2Ticks_66 = OsIf_MicrosToTicks (1000000, 0);
  _11 = OsIf_GetCounter (0);
  timeStart = _11;
  timeElapsed_69 = 0;
  goto <bb 12>; [INV]

  <bb 10> :
  _72 = OsIf_GetElapsed (&timeStart, 0);
  timeElapsed_73 = _72 + timeElapsed_26;
  if (timeElapsed_73 >= uS2Ticks_66)
    goto <bb 11>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 11> :
  result_74 = 3;
  goto <bb 13>; [INV]

  <bb 12> :
  # timeElapsed_26 = PHI <timeElapsed_69(9), timeElapsed_73(10)>
  _12 = (long unsigned int) mb_idx_45(D);
  _13 = FlexCAN_GetBuffStatusFlag (base_35, _12);
  if (_13 == 0)
    goto <bb 10>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 13> :
  # result_21 = PHI <result_74(11), result_20(12)>
  flexcan_mb_config_75 ={v} *flexcan_mb_60;
  _14 = flexcan_mb_config_75 >> 24;
  _15 = _14 & 15;
  if (_15 == 8)
    goto <bb 14>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 14> :
  result_76 = 0;

  <bb 15> :
  # result_22 = PHI <result_21(13), result_76(14)>
  _16 = flexcan_mb_config_75 >> 24;
  _17 = _16 & 15;
  if (_17 == 9)
    goto <bb 16>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 16> :
  result_77 = 3;

  <bb 17> :
  # result_23 = PHI <result_20(7), result_20(8), result_22(15), result_77(16)>
  _18 = (long unsigned int) mb_idx_45(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (base_35, _18);
  _19 = (int) mb_idx_45(D);
  state_36->mbs[_19].state ={v} 0;

  <bb 18> :
  # result_24 = PHI <result_50(2), result_23(17)>
  _80 = result_24;
  timeStart ={v} {CLOBBER};

  <bb 19> :
<L21>:
  return _80;

}


FlexCAN_BusOff_IRQHandler (uint8 instance)
{
  boolean isSpuriousInt;
  uint32 u32ErrStatus;
  const struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  int _1;
  int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _6;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _7;
  long unsigned int _8;
  long unsigned int _9;
  long unsigned int _10;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _11;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _12;
  long unsigned int _13;
  long unsigned int _14;
  long unsigned int _15;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _16;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _17;

  <bb 2> :
  _1 = (int) instance_32(D);
  base_34 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_32(D);
  state_35 = Flexcan_Ip_apxState[_2];
  u32ErrStatus_36 = 0;
  isSpuriousInt_37 = 1;
  if (state_35 != 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 3> :
  u32ErrStatus_38 ={v} base_34->ESR1;
  _3 = u32ErrStatus_38 & 131072;
  if (_3 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 4> :
  _4 ={v} base_34->CTRL1;
  _5 = _4 & 2048;
  if (_5 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 5> :
  base_34->ESR1 ={v} 131072;
  _6 = state_35->error_callback;
  if (_6 != 0B)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  _7 = state_35->error_callback;
  _7 (instance_32(D), 11, u32ErrStatus_38, state_35);
  u32ErrStatus_41 ={v} base_34->ESR1;

  <bb 7> :
  # u32ErrStatus_18 = PHI <u32ErrStatus_38(5), u32ErrStatus_41(6)>
  isSpuriousInt_42 = 0;

  <bb 8> :
  # u32ErrStatus_19 = PHI <u32ErrStatus_38(3), u32ErrStatus_38(4), u32ErrStatus_18(7)>
  # isSpuriousInt_22 = PHI <isSpuriousInt_37(3), isSpuriousInt_37(4), isSpuriousInt_42(7)>
  _8 = u32ErrStatus_19 & 65536;
  if (_8 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 9> :
  _9 ={v} base_34->CTRL1;
  _10 = _9 & 1024;
  if (_10 != 0)
    goto <bb 10>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 10> :
  base_34->ESR1 ={v} 65536;
  _11 = state_35->error_callback;
  if (_11 != 0B)
    goto <bb 11>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 11> :
  _12 = state_35->error_callback;
  _12 (instance_32(D), 10, u32ErrStatus_19, state_35);
  u32ErrStatus_45 ={v} base_34->ESR1;

  <bb 12> :
  # u32ErrStatus_20 = PHI <u32ErrStatus_19(10), u32ErrStatus_45(11)>
  isSpuriousInt_46 = 0;

  <bb 13> :
  # u32ErrStatus_21 = PHI <u32ErrStatus_19(8), u32ErrStatus_19(9), u32ErrStatus_20(12)>
  # isSpuriousInt_23 = PHI <isSpuriousInt_22(8), isSpuriousInt_22(9), isSpuriousInt_46(12)>
  _13 = u32ErrStatus_21 & 4;
  if (_13 != 0)
    goto <bb 14>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 14> :
  _14 ={v} base_34->CTRL1;
  _15 = _14 & 32768;
  if (_15 != 0)
    goto <bb 15>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 15> :
  base_34->ESR1 ={v} 4;
  _16 = state_35->error_callback;
  if (_16 != 0B)
    goto <bb 16>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 16> :
  _17 = state_35->error_callback;
  _17 (instance_32(D), 9, u32ErrStatus_21, state_35);

  <bb 17> :
  isSpuriousInt_49 = 0;

  <bb 18> :
  # isSpuriousInt_24 = PHI <isSpuriousInt_37(2), isSpuriousInt_23(13), isSpuriousInt_23(14), isSpuriousInt_49(17)>
  if (isSpuriousInt_24 != 0)
    goto <bb 19>; [INV]
  else
    goto <bb 20>; [INV]

  <bb 19> :
  base_34->ESR1 ={v} 720900;

  <bb 20> :
  return;

}


FlexCAN_Error_IRQHandler (uint8 instance)
{
  boolean isSpuriousInt;
  uint32 u32ErrStatus;
  const struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * pBase;
  int _1;
  int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _6;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _7;
  long unsigned int _8;
  long unsigned int _9;
  signed int _10;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _11;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _12;

  <bb 2> :
  _1 = (int) instance_22(D);
  pBase_24 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_22(D);
  state_25 = Flexcan_Ip_apxState[_2];
  u32ErrStatus_26 = 0;
  isSpuriousInt_27 = 1;
  if (state_25 != 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 3> :
  u32ErrStatus_28 ={v} pBase_24->ESR1;
  _3 = u32ErrStatus_28 & 2;
  if (_3 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 4> :
  _4 ={v} pBase_24->CTRL1;
  _5 = _4 & 16384;
  if (_5 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 5> :
  pBase_24->ESR1 ={v} 2;
  _6 = state_25->error_callback;
  if (_6 != 0B)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  _7 = state_25->error_callback;
  _7 (instance_22(D), 7, u32ErrStatus_28, state_25);
  u32ErrStatus_31 ={v} pBase_24->ESR1;

  <bb 7> :
  # u32ErrStatus_13 = PHI <u32ErrStatus_28(5), u32ErrStatus_31(6)>
  isSpuriousInt_32 = 0;

  <bb 8> :
  # u32ErrStatus_14 = PHI <u32ErrStatus_28(3), u32ErrStatus_28(4), u32ErrStatus_13(7)>
  # isSpuriousInt_15 = PHI <isSpuriousInt_27(3), isSpuriousInt_27(4), isSpuriousInt_32(7)>
  _8 = u32ErrStatus_14 & 1048576;
  if (_8 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 9> :
  _9 ={v} pBase_24->CTRL2;
  _10 = (signed int) _9;
  if (_10 < 0)
    goto <bb 10>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 10> :
  pBase_24->ESR1 ={v} 1048576;
  _11 = state_25->error_callback;
  if (_11 != 0B)
    goto <bb 11>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 11> :
  _12 = state_25->error_callback;
  _12 (instance_22(D), 8, u32ErrStatus_14, state_25);

  <bb 12> :
  isSpuriousInt_35 = 0;

  <bb 13> :
  # isSpuriousInt_16 = PHI <isSpuriousInt_27(2), isSpuriousInt_15(8), isSpuriousInt_15(9), isSpuriousInt_35(12)>
  if (isSpuriousInt_16 != 0)
    goto <bb 14>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 14> :
  pBase_24->ESR1 ={v} 3145730;

  <bb 15> :
  return;

}


FlexCAN_Ip_GetControllerRxErrorCounter (uint8 instance)
{
  const struct FLEXCAN_Type * base;
  uint8 D.7929;
  int _1;
  long unsigned int _2;
  long unsigned int _3;
  uint8 _7;

  <bb 2> :
  _1 = (int) instance_4(D);
  base_6 = Flexcan_Ip_apxBase[_1];
  _2 ={v} base_6->ECR;
  _3 = _2 >> 8;
  _7 = (uint8) _3;

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

}


FlexCAN_Ip_GetControllerTxErrorCounter (uint8 instance)
{
  const struct FLEXCAN_Type * base;
  uint8 D.7927;
  int _1;
  long unsigned int _2;
  uint8 _6;

  <bb 2> :
  _1 = (int) instance_3(D);
  base_5 = Flexcan_Ip_apxBase[_1];
  _2 ={v} base_5->ECR;
  _6 = (uint8) _2;

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

}


FlexCAN_Ip_GetErrorStatus (uint8 instance)
{
  const struct FLEXCAN_Type * base;
  uint32 D.7925;
  int _1;
  uint32 _5;

  <bb 2> :
  _1 = (int) instance_2(D);
  base_4 = Flexcan_Ip_apxBase[_1];
  _5 ={v} base_4->ESR1;

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

}


FlexCAN_Ip_ClearErrorStatus (uint8 instance, uint32 error)
{
  struct FLEXCAN_Type * base;
  int _1;

  <bb 2> :
  _1 = (int) instance_2(D);
  base_4 = Flexcan_Ip_apxBase[_1];
  base_4->ESR1 ={v} error_5(D);
  return;

}


FlexCAN_IRQHandler (uint8 instance, uint32 startMbIdx, uint32 endMbIdx)
{
  uint32 mb_idx;
  boolean bIsSpuriousInt;
  const struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  uint32 flag_reg;
  uint32 u32MbHandle;
  int _1;
  int _2;
  unsigned char _3;
  unsigned char _4;
  _Bool _5;
  <unnamed type> _6;
  <unnamed type> _7;
  unsigned char _8;
  <unnamed type> _9;

  <bb 2> :
  u32MbHandle_21 = 0;
  flag_reg_22 = 0;
  _1 = (int) instance_23(D);
  base_25 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_23(D);
  state_26 = Flexcan_Ip_apxState[_2];
  bIsSpuriousInt_27 = 1;
  mb_idx_29 = endMbIdx_28(D);
  if (state_26 != 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 20>; [INV]

  <bb 3> :
  _3 = FlexCAN_GetMsgBuffIntStatusFlag (base_25, mb_idx_29);
  flag_reg_35 = (uint32) _3;
  goto <bb 5>; [INV]

  <bb 4> :
  mb_idx_36 = mb_idx_13 + 4294967295;
  _4 = FlexCAN_GetMsgBuffIntStatusFlag (base_25, mb_idx_36);
  flag_reg_38 = (uint32) _4;

  <bb 5> :
  # flag_reg_11 = PHI <flag_reg_35(3), flag_reg_38(4)>
  # mb_idx_13 = PHI <mb_idx_29(3), mb_idx_36(4)>
  if (flag_reg_11 == 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  if (mb_idx_13 > startMbIdx_30(D))
    goto <bb 4>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 7> :
  if (flag_reg_11 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 8> :
  bIsSpuriousInt_39 = 0;
  u32MbHandle_40 = mb_idx_13;
  _5 = state_26->bIsLegacyFifoEn;
  if (_5 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 9> :
  if (mb_idx_13 <= 7)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  FlexCAN_IRQHandlerRxFIFO (instance_23(D), mb_idx_13);
  u32MbHandle_42 = 0;
  goto <bb 13>; [INV]

  <bb 11> :
  _6 ={v} state_26->mbs[u32MbHandle_40].state;
  if (_6 == 1)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  FlexCAN_IRQHandlerRxMB (instance_23(D), mb_idx_13);

  <bb 13> :
  # u32MbHandle_10 = PHI <u32MbHandle_42(10), u32MbHandle_40(11), u32MbHandle_40(12)>
  _7 ={v} state_26->mbs[u32MbHandle_10].state;
  if (_7 == 2)
    goto <bb 14>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 14> :
  FlexCAN_IRQHandlerTxMB (instance_23(D), mb_idx_13);

  <bb 15> :
  _8 = FlexCAN_GetMsgBuffIntStatusFlag (base_25, mb_idx_13);
  if (_8 != 0)
    goto <bb 16>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 16> :
  _9 ={v} state_26->mbs[u32MbHandle_10].state;
  if (_9 == 0)
    goto <bb 17>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 17> :
  FlexCAN_ClearMsgBuffIntStatusFlag (base_25, mb_idx_13);

  <bb 18> :
  # bIsSpuriousInt_12 = PHI <bIsSpuriousInt_27(7), bIsSpuriousInt_39(15), bIsSpuriousInt_39(16), bIsSpuriousInt_39(17)>
  if (bIsSpuriousInt_12 != 0)
    goto <bb 19>; [INV]
  else
    goto <bb 23>; [INV]

  <bb 19> :
  FlexCAN_ProcessSpuriousInterruptMB (instance_23(D), startMbIdx_30(D), endMbIdx_28(D));
  goto <bb 23>; [INV]

  <bb 20> :
  mb_idx_31 = startMbIdx_30(D);
  goto <bb 22>; [INV]

  <bb 21> :
  FlexCAN_ClearMsgBuffIntStatusFlag (base_25, mb_idx_14);
  mb_idx_33 = mb_idx_14 + 1;

  <bb 22> :
  # mb_idx_14 = PHI <mb_idx_31(20), mb_idx_33(21)>
  if (mb_idx_14 <= endMbIdx_28(D))
    goto <bb 21>; [INV]
  else
    goto <bb 23>; [INV]

  <bb 23> :
  return;

}


FlexCAN_CompleteRxMessageFifoData (uint8 instance)
{
  struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  int _1;
  int _2;
  <unnamed type> _3;
  _Bool _4;
  _Bool _5;
  _Bool _6;

  <bb 2> :
  _1 = (int) instance_8(D);
  base_10 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_8(D);
  state_11 = Flexcan_Ip_apxState[_2];
  _3 = state_11->transferType;
  if (_3 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _4 = state_11->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (base_10, instance_8(D), 5, 0, _4);
  _5 = state_11->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (base_10, instance_8(D), 6, 0, _5);
  _6 = state_11->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (base_10, instance_8(D), 7, 0, _6);

  <bb 4> :
  state_11->mbs[0].pMBmessage = 0B;
  state_11->mbs[0].state ={v} 0;
  return;

}


FlexCAN_Ip_GetTransferStatus (uint8 instance, uint8 mb_idx)
{
  Flexcan_Ip_StatusType status;
  const struct Flexcan_Ip_StateType * state;
  Flexcan_Ip_StatusType D.7881;
  int _1;
  int _2;
  <unnamed type> _3;
  Flexcan_Ip_StatusType _12;

  <bb 2> :
  _1 = (int) instance_5(D);
  state_7 = Flexcan_Ip_apxState[_1];
  status_8 = 1;
  if (mb_idx_9(D) <= 31)
    goto <bb 3>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 3> :
  _2 = (int) mb_idx_9(D);
  _3 ={v} state_7->mbs[_2].state;
  if (_3 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  status_11 = 0;
  goto <bb 6>; [INV]

  <bb 5> :
  status_10 = 2;

  <bb 6> :
  # status_4 = PHI <status_8(2), status_11(4), status_10(5)>
  _12 = status_4;

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

}


FlexCAN_Ip_ConfigRemoteResponseMb (uint8 instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * tx_info, uint32 msg_id, const uint8 * mb_data)
{
  volatile uint32 * pMbAddr;
  const struct Flexcan_Ip_StateType * const state;
  struct FLEXCAN_Type * pBase;
  struct Flexcan_Ip_MsbuffCodeStatusType cs;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7873;
  int _1;
  int _2;
  long unsigned int _3;
  <unnamed type> _4;
  long unsigned int _5;
  long unsigned int _6;
  _Bool _7;
  _Bool _8;
  _Bool _9;
  long unsigned int _10;
  _Bool _11;
  Flexcan_Ip_StatusType _36;

  <bb 2> :
  result_14 = 0;
  _1 = (int) instance_15(D);
  pBase_17 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_15(D);
  state_18 = Flexcan_Ip_apxState[_2];
  pMbAddr_19 = 0B;
  if (result_14 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _3 = tx_info_20(D)->data_length;
  cs.dataLen = _3;
  _4 = tx_info_20(D)->msg_id_type;
  cs.msgIdType = _4;
  cs.code = 10;
  cs.fd_enable = 0;
  cs.enable_brs = 0;
  cs.fd_padding = 0;
  _5 = (long unsigned int) mb_idx_27(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (pBase_17, _5);
  _6 = (long unsigned int) mb_idx_27(D);
  pMbAddr_30 = FlexCAN_GetMsgBuffRegion (pBase_17, _6);
  _7 = tx_info_20(D)->is_remote;
  FlexCAN_SetTxMsgBuff (pMbAddr_30, &cs, msg_id_31(D), mb_data_32(D), _7);
  _8 = tx_info_20(D)->is_polling;
  _9 = ~_8;
  if (_9 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _10 = (long unsigned int) mb_idx_27(D);
  _11 = state_18->isIntActive;
  result_35 = FlexCAN_SetMsgBuffIntCmd (pBase_17, instance_15(D), _10, 1, _11);

  <bb 5> :
  # result_12 = PHI <result_14(2), result_14(3), result_35(4)>
  _36 = result_12;
  cs ={v} {CLOBBER};

  <bb 6> :
<L5>:
  return _36;

}


FlexCAN_Ip_ConfigRxFifo_Privileged (uint8 instance, Flexcan_Ip_RxFifoIdElementFormatType id_format, const struct Flexcan_Ip_IdTableType * id_filter_table)
{
  boolean disabled;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType status;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7867;
  int _1;
  _Bool _2;
  int _3;
  _Bool _4;
  _Bool _5;
  int _6;
  Flexcan_Ip_StatusType _27;

  <bb 2> :
  result_12 = 0;
  status_13 = 0;
  _1 = (int) instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsEnabled (pBase_16);
  _3 = (int) _2;
  _4 = _3 != 0;
  _5 = ~_4;
  _6 = (int) _5;
  disabled_18 = (boolean) _6;
  if (disabled_18 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_20 = FlexCAN_Enable (pBase_16);

  <bb 4> :
  # result_7 = PHI <result_12(2), result_20(3)>
  if (result_7 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  FlexCAN_SetRxFifoFilter (pBase_16, id_format_21(D), id_filter_table_22(D));

  <bb 6> :
  if (disabled_18 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 7> :
  status_25 = FlexCAN_Disable (pBase_16);
  if (status_25 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_26 = status_25;

  <bb 9> :
  # result_8 = PHI <result_7(6), result_7(7), result_26(8)>
  _27 = result_8;

  <bb 10> :
<L8>:
  return _27;

}


FlexCAN_Ip_RxFifoBlocking (uint8 instance, struct Flexcan_Ip_MsgBuffType * data, uint32 timeout)
{
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7857;
  Flexcan_Ip_StatusType _12;

  <bb 2> :
  result_3 = 0;
  result_8 = FlexCAN_StartRxMessageFifoData (instance_5(D), data_6(D));
  if (result_8 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_11 = FlexCAN_ProccessLegacyRxFIFO (instance_5(D), timeout_9(D));

  <bb 4> :
  # result_1 = PHI <result_8(2), result_11(3)>
  _12 = result_1;

  <bb 5> :
<L2>:
  return _12;

}


FlexCAN_Ip_RxFifo (uint8 instance, struct Flexcan_Ip_MsgBuffType * data)
{
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7853;
  Flexcan_Ip_StatusType _7;

  <bb 2> :
  result_1 = 0;
  result_6 = FlexCAN_StartRxMessageFifoData (instance_3(D), data_4(D));
  _7 = result_6;

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

}


FlexCAN_Ip_ReceiveBlocking (uint8 instance, uint8 mb_idx, struct Flexcan_Ip_MsgBuffType * data, boolean isPolling, uint32 u32TimeoutMs)
{
  const struct FLEXCAN_Type * base;
  struct Flexcan_Ip_StateType * state;
  uint32 mS2Ticks;
  uint32 timeElapsed;
  uint32 timeStart;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7850;
  long unsigned int D.7836;
  long unsigned int _1;
  int _2;
  int _3;
  long unsigned int _4;
  long unsigned int _5;
  unsigned char _6;
  long unsigned int _7;
  int _8;
  <unnamed type> _9;
  _Bool _10;
  int _11;
  <unnamed type> _12;
  int _13;
  long unsigned int _40;
  Flexcan_Ip_StatusType _46;

  <bb 2> :
  timeStart = 0;
  timeElapsed_23 = 0;
  _1 = u32TimeoutMs_24(D) * 1000;
  mS2Ticks_26 = OsIf_MicrosToTicks (_1, 0);
  _2 = (int) instance_27(D);
  state_28 = Flexcan_Ip_apxState[_2];
  _3 = (int) instance_27(D);
  base_29 = Flexcan_Ip_apxBase[_3];
  result_34 = FlexCAN_StartRxMessageBufferData (instance_27(D), mb_idx_30(D), data_31(D), isPolling_32(D));
  if (result_34 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 3> :
  _4 = OsIf_GetCounter (0);
  timeStart = _4;
  goto <bb 9>; [INV]

  <bb 4> :
  if (isPolling_32(D) != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 5> :
  _5 = (long unsigned int) mb_idx_30(D);
  _6 = FlexCAN_GetBuffStatusFlag (base_29, _5);
  if (_6 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  _7 = (long unsigned int) mb_idx_30(D);
  FlexCAN_IRQHandlerRxMB (instance_27(D), _7);

  <bb 7> :
  _40 = OsIf_GetElapsed (&timeStart, 0);
  timeElapsed_41 = _40 + timeElapsed_16;
  if (timeElapsed_41 >= mS2Ticks_26)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_42 = 3;
  goto <bb 10>; [INV]

  <bb 9> :
  # timeElapsed_16 = PHI <timeElapsed_23(3), timeElapsed_41(7)>
  _8 = (int) mb_idx_30(D);
  _9 ={v} state_28->mbs[_8].state;
  if (_9 == 1)
    goto <bb 4>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 10> :
  # result_14 = PHI <result_34(2), result_42(8), result_34(9)>
  if (result_14 == 3)
    goto <bb 11>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 11> :
  _10 = ~isPolling_32(D);

  <bb 12> :
  if (result_14 != 4)
    goto <bb 13>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 13> :
  if (result_14 != 2)
    goto <bb 14>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 14> :
  _11 = (int) mb_idx_30(D);
  _12 ={v} state_28->mbs[_11].state;
  if (_12 == 0)
    goto <bb 15>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 15> :
  result_45 = 0;
  goto <bb 17>; [INV]

  <bb 16> :
  _13 = (int) mb_idx_30(D);
  state_28->mbs[_13].state ={v} 0;
  result_44 = 3;

  <bb 17> :
  # result_15 = PHI <result_14(12), result_14(13), result_45(15), result_44(16)>
  _46 = result_15;
  timeStart ={v} {CLOBBER};

  <bb 18> :
<L23>:
  return _46;

}


FlexCAN_Ip_Receive (uint8 instance, uint8 mb_idx, struct Flexcan_Ip_MsgBuffType * data, boolean isPolling)
{
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7828;
  Flexcan_Ip_StatusType _8;

  <bb 2> :
  result_7 = FlexCAN_StartRxMessageBufferData (instance_2(D), mb_idx_3(D), data_4(D), isPolling_5(D));
  _8 = result_7;

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

}


FlexCAN_Ip_ConfigRxMb (uint8 instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * rx_info, uint32 msg_id)
{
  struct FLEXCAN_Type * base;
  struct Flexcan_Ip_MsbuffCodeStatusType cs;
  Flexcan_Ip_StatusType eResult;
  Flexcan_Ip_StatusType D.7825;
  int _1;
  long unsigned int _2;
  long unsigned int _3;
  <unnamed type> _4;
  _Bool _5;
  long unsigned int _6;
  long unsigned int _7;
  long unsigned int _8;
  Flexcan_Ip_StatusType _26;

  <bb 2> :
  eResult_9 = 0;
  _1 = (int) instance_10(D);
  base_12 = Flexcan_Ip_apxBase[_1];
  _2 = (long unsigned int) mb_idx_13(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (base_12, _2);
  _3 = rx_info_15(D)->data_length;
  cs.dataLen = _3;
  _4 = rx_info_15(D)->msg_id_type;
  cs.msgIdType = _4;
  _5 = rx_info_15(D)->fd_enable;
  cs.fd_enable = _5;
  cs.code = 15;
  _6 = (long unsigned int) mb_idx_13(D);
  FlexCAN_SetRxMsgBuff (base_12, _6, &cs, msg_id_20(D));
  cs.code = 0;
  _7 = (long unsigned int) mb_idx_13(D);
  FlexCAN_SetRxMsgBuff (base_12, _7, &cs, msg_id_20(D));
  cs.code = 4;
  _8 = (long unsigned int) mb_idx_13(D);
  FlexCAN_SetRxMsgBuff (base_12, _8, &cs, msg_id_20(D));
  _26 = eResult_9;
  cs ={v} {CLOBBER};

  <bb 3> :
<L1>:
  return _26;

}


FlexCAN_Ip_Send (uint8 instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * tx_info, uint32 msg_id, const uint8 * mb_data)
{
  const struct FLEXCAN_Type * base;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7821;
  int _1;
  _Bool _2;
  _Bool _3;
  Flexcan_Ip_StatusType _17;

  <bb 2> :
  result_6 = 1;
  _1 = (int) instance_7(D);
  base_9 = Flexcan_Ip_apxBase[_1];
  _2 = FlexCAN_IsListenOnlyModeEnabled (base_9);
  _3 = ~_2;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_16 = FlexCAN_StartSendData (instance_7(D), mb_idx_11(D), tx_info_12(D), msg_id_13(D), mb_data_14(D));

  <bb 4> :
  # result_4 = PHI <result_6(2), result_16(3)>
  _17 = result_4;

  <bb 5> :
<L2>:
  return _17;

}


FlexCAN_Ip_Init_Privileged (uint8 Flexcan_Ip_u8Instance, struct Flexcan_Ip_StateType * Flexcan_Ip_pState, const struct Flexcan_Ip_ConfigType * Flexcan_Ip_pData)
{
  uint32 i;
  struct FLEXCAN_Type * pBase;
  Flexcan_Ip_StatusType eResult;
  Flexcan_Ip_StatusType D.7813;
  int _1;
  _Bool _2;
  _Bool _3;
  const struct Flexcan_Ip_TimeSegmentType * _4;
  const struct Flexcan_Ip_TimeSegmentType * _5;
  const struct Flexcan_Ip_TimeSegmentType * _6;
  <unnamed type> _7;
  <unnamed type> _8;
  void (*<T626>) (uint8, Flexcan_Ip_EventType, uint32, const struct Flexcan_Ip_StateType *) _9;
  void (*<T626>) (uint8, Flexcan_Ip_EventType, uint32, const struct Flexcan_Ip_StateType *) _10;
  _Bool _11;
  long unsigned int _12;
  int _13;
  Flexcan_Ip_StatusType _46;

  <bb 2> :
  eResult_18 = 0;
  _1 = (int) Flexcan_Ip_u8Instance_19(D);
  pBase_21 = Flexcan_Ip_apxBase[_1];
  eResult_24 = FlexCAN_InitController (pBase_21, Flexcan_Ip_pData_22(D));
  if (eResult_24 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 3> :
  _2 = Flexcan_Ip_pData_22(D)->fd_enable;
  FlexCAN_EnableExtCbt (pBase_21, _2);
  _3 = Flexcan_Ip_pData_22(D)->fd_enable;
  if (_3 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _4 = &Flexcan_Ip_pData_22(D)->bitrate;
  FlexCAN_SetExtendedTimeSegments (pBase_21, _4);
  _5 = &Flexcan_Ip_pData_22(D)->bitrate_cbt;
  FlexCAN_SetFDTimeSegments (pBase_21, _5);
  goto <bb 6>; [INV]

  <bb 5> :
  _6 = &Flexcan_Ip_pData_22(D)->bitrate;
  FlexCAN_SetTimeSegments (pBase_21, _6);

  <bb 6> :
  _7 = Flexcan_Ip_pData_22(D)->flexcanMode;
  FlexCAN_SetOperationMode (pBase_21, _7);
  i_30 = 0;
  goto <bb 8>; [INV]

  <bb 7> :
  Flexcan_Ip_pState_31(D)->mbs[i_14].isPolling = 1;
  Flexcan_Ip_pState_31(D)->mbs[i_14].pMBmessage = 0B;
  Flexcan_Ip_pState_31(D)->mbs[i_14].state ={v} 0;
  Flexcan_Ip_pState_31(D)->mbs[i_14].time_stamp = 0;
  i_45 = i_14 + 1;

  <bb 8> :
  # i_14 = PHI <i_30(6), i_45(7)>
  if (i_14 <= 31)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 9> :
  _8 = Flexcan_Ip_pData_22(D)->transfer_type;
  Flexcan_Ip_pState_31(D)->transferType = _8;
  _9 = Flexcan_Ip_pData_22(D)->Callback;
  Flexcan_Ip_pState_31(D)->callback = _9;
  Flexcan_Ip_pState_31(D)->callbackParam = 0B;
  _10 = Flexcan_Ip_pData_22(D)->ErrorCallback;
  Flexcan_Ip_pState_31(D)->error_callback = _10;
  Flexcan_Ip_pState_31(D)->errorCallbackParam = 0B;
  _11 = Flexcan_Ip_pData_22(D)->is_rx_fifo_needed;
  Flexcan_Ip_pState_31(D)->bIsLegacyFifoEn = _11;
  _12 = Flexcan_Ip_pData_22(D)->max_num_mb;
  Flexcan_Ip_pState_31(D)->u32MaxMbNum = _12;
  Flexcan_Ip_pState_31(D)->isIntActive = 1;
  _13 = (int) Flexcan_Ip_u8Instance_19(D);
  Flexcan_Ip_apxState[_13] = Flexcan_Ip_pState_31(D);

  <bb 10> :
  _46 = eResult_24;

  <bb 11> :
<L8>:
  return _46;

}


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;
  int _3;
  _Bool _4;
  long unsigned int _5;
  long unsigned int _6;
  long unsigned int _7;
  long unsigned int _8;
  _Bool _9;
  long unsigned int _10;
  long unsigned int _11;

  <bb 2> :
  _1 = (int) u8Instance_14(D);
  pBase_16 = Flexcan_Ip_apxBase[_1];
  _2 = (int) u8Instance_14(D);
  state_17 = Flexcan_Ip_apxState[_2];
  val1_18 = 0;
  val2_19 = 0;
  flexcan_mb_config_20 = 0;
  flexcan_mb_21 = 0B;
  _3 = (int) mb_idx_22(D);
  state_17->mbs[_3].state ={v} 0;
  _4 = state_17->bIsLegacyFifoEn;
  if (_4 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 3> :
  _5 ={v} pBase_16->CTRL2;
  _6 = _5 >> 24;
  val1_33 = _6 & 15;
  val2_35 = RxFifoOcuppiedLastMsgBuff (val1_33);
  _7 = (long unsigned int) mb_idx_22(D);
  if (val2_35 < _7)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _8 = (long unsigned int) mb_idx_22(D);
  flexcan_mb_37 = FlexCAN_GetMsgBuffRegion (pBase_16, _8);
  flexcan_mb_config_38 ={v} *flexcan_mb_37;
  flexcan_mb_config_39 = flexcan_mb_config_38 & 4043309055;
  flexcan_mb_config_40 = flexcan_mb_config_39;
  *flexcan_mb_37 ={v} flexcan_mb_config_40;
  flexcan_mb_config_42 = flexcan_mb_config_40 & 4043309055;
  flexcan_mb_config_43 = flexcan_mb_config_42 | 67108864;
  *flexcan_mb_37 ={v} flexcan_mb_config_43;

  <bb 5> :
  if (mb_idx_22(D) == 0)
    goto <bb 6>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 6> :
  _9 = state_17->isIntActive;
  FLEXCAN_ClearMsgBuffIntCmd (pBase_16, u8Instance_14(D), 5, _9);
  goto <bb 8>; [INV]

  <bb 7> :
  _10 = (long unsigned int) mb_idx_22(D);
  flexcan_mb_25 = FlexCAN_GetMsgBuffRegion (pBase_16, _10);
  flexcan_mb_config_26 ={v} *flexcan_mb_25;
  flexcan_mb_config_27 = flexcan_mb_config_26 & 4043309055;
  flexcan_mb_config_28 = flexcan_mb_config_27;
  *flexcan_mb_25 ={v} flexcan_mb_config_28;
  flexcan_mb_config_30 = flexcan_mb_config_28 & 4043309055;
  flexcan_mb_config_31 = flexcan_mb_config_30 | 67108864;
  *flexcan_mb_25 ={v} flexcan_mb_config_31;

  <bb 8> :
  _11 = (long unsigned int) mb_idx_22(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (pBase_16, _11);
  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;
  Flexcan_Ip_StatusType D.7796;
  long unsigned int D.7787;
  int _1;
  int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  unsigned char _6;
  long unsigned int _7;
  long unsigned int _8;
  long unsigned int _9;
  long unsigned int _10;
  long unsigned int _11;
  int _12;
  long unsigned int _42;
  Flexcan_Ip_StatusType _50;

  <bb 2> :
  _1 = (int) u8Instance_19(D);
  pBase_21 = Flexcan_Ip_apxBase[_1];
  _2 = (int) u8Instance_19(D);
  state_22 = Flexcan_Ip_apxState[_2];
  result_23 = 0;
  timeStart = 0;
  timeElapsed_25 = 0;
  flexcan_mb_config_26 = 0;
  uS2Ticks_27 = 0;
  flexcan_mb_28 = 0B;
  _3 = (long unsigned int) mb_idx_29(D);
  flexcan_mb_31 = FlexCAN_GetMsgBuffRegion (pBase_21, _3);
  flexcan_mb_config_32 ={v} *flexcan_mb_31;
  flexcan_mb_config_33 = flexcan_mb_config_32 & 4043309055;
  flexcan_mb_config_34 = flexcan_mb_config_33 | 150994944;
  *flexcan_mb_31 ={v} flexcan_mb_config_34;
  uS2Ticks_37 = OsIf_MicrosToTicks (1000000, 0);
  _4 = OsIf_GetCounter (0);
  timeStart = _4;
  goto <bb 5>; [INV]

  <bb 3> :
  _42 = OsIf_GetElapsed (&timeStart, 0);
  timeElapsed_43 = _42 + timeElapsed_16;
  if (timeElapsed_43 >= uS2Ticks_37)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  result_44 = 3;
  goto <bb 6>; [INV]

  <bb 5> :
  # timeElapsed_16 = PHI <timeElapsed_25(2), timeElapsed_43(3)>
  _5 = (long unsigned int) mb_idx_29(D);
  _6 = FlexCAN_GetBuffStatusFlag (pBase_21, _5);
  if (_6 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 6> :
  # result_13 = PHI <result_44(4), result_23(5)>
  if (result_13 != 3)
    goto <bb 7>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 7> :
  flexcan_mb_config_45 ={v} *flexcan_mb_31;
  _7 = flexcan_mb_config_45 >> 24;
  _8 = _7 & 15;
  if (_8 == 8)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  result_46 = 5;

  <bb 9> :
  # result_14 = PHI <result_13(7), result_46(8)>
  _9 = flexcan_mb_config_45 >> 24;
  _10 = _9 & 15;
  if (_10 == 9)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  result_47 = 0;

  <bb 11> :
  # result_15 = PHI <result_13(6), result_14(9), result_47(10)>
  _11 = (long unsigned int) mb_idx_29(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (pBase_21, _11);
  _12 = (int) mb_idx_29(D);
  state_22->mbs[_12].state ={v} 0;
  _50 = result_15;
  timeStart ={v} {CLOBBER};

  <bb 12> :
<L12>:
  return _50;

}


FlexCAN_ProcessSpuriousInterruptMB (uint8 instance, uint32 startMbIdx, uint32 endMbIdx)
{
  uint32 u32MbHandle;
  uint32 mb_idx;
  struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  int _1;
  int _2;
  unsigned char _3;
  unsigned char _4;
  _Bool _5;
  _Bool _6;
  _Bool _7;
  <unnamed type> _8;

  <bb 2> :
  _1 = (int) instance_13(D);
  base_15 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_13(D);
  state_16 = Flexcan_Ip_apxState[_2];
  mb_idx_17 = 0;
  u32MbHandle_18 = 0;
  mb_idx_20 = startMbIdx_19(D);
  goto <bb 12>; [INV]

  <bb 3> :
  _3 = FlexCAN_GetBuffStatusFlag (base_15, mb_idx_9);
  if (_3 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 4> :
  _4 = FlexCAN_GetBuffStatusImask (base_15, mb_idx_9);
  if (_4 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 5> :
  u32MbHandle_24 = mb_idx_9;
  _5 = state_16->bIsLegacyFifoEn;
  if (_5 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 6> :
  if (mb_idx_9 <= 7)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  u32MbHandle_25 = 0;

  <bb 8> :
  # u32MbHandle_10 = PHI <u32MbHandle_24(5), u32MbHandle_24(6), u32MbHandle_25(7)>
  _6 = state_16->mbs[u32MbHandle_10].isPolling;
  _7 = ~_6;
  if (_7 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 9> :
  FlexCAN_ClearMsgBuffIntStatusFlag (base_15, mb_idx_9);
  _8 ={v} state_16->mbs[u32MbHandle_10].state;
  if (_8 == 2)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  state_16->mbs[u32MbHandle_10].state ={v} 0;
  state_16->mbs[u32MbHandle_10].isPolling = 1;

  <bb 11> :
  mb_idx_29 = mb_idx_9 + 1;

  <bb 12> :
  # mb_idx_9 = PHI <mb_idx_20(2), mb_idx_29(11)>
  if (mb_idx_9 <= endMbIdx_21(D))
    goto <bb 3>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 13> :
  return;

}


FlexCAN_IRQHandlerRxFIFO (uint8 instance, uint32 mb_idx)
{
  struct Flexcan_Ip_MsgBuffType data;
  struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  int _1;
  int _2;
  struct Flexcan_Ip_MsgBuffType * _3;
  <unnamed type> _4;
  struct Flexcan_Ip_MsgBuffType * _5;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _6;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _7;
  <unnamed type> _8;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _9;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _10;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _11;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _12;

  <bb 2> :
  _1 = (int) instance_19(D);
  base_21 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_19(D);
  state_22 = Flexcan_Ip_apxState[_2];
  _3 = state_22->mbs[0].pMBmessage;
  if (_3 == 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  state_22->mbs[0].pMBmessage = &data;

  <bb 4> :
  switch (mb_idx_24(D)) <default: <L15> [INV], case 5: <L2> [INV], case 6: <L9> [INV], case 7: <L12> [INV]>

  <bb 5> :
<L2>:
  _4 ={v} state_22->mbs[0].state;
  if (_4 == 1)
    goto <bb 6>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 6> :
  _5 = state_22->mbs[0].pMBmessage;
  FlexCAN_ReadRxFifo (base_21, _5);
  FlexCAN_ClearMsgBuffIntStatusFlag (base_21, mb_idx_24(D));
  state_22->mbs[0].state ={v} 0;
  _6 = state_22->callback;
  if (_6 != 0B)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  _7 = state_22->callback;
  _7 (instance_19(D), 1, 0, state_22);

  <bb 8> :
  _8 ={v} state_22->mbs[0].state;
  if (_8 == 0)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  state_22->mbs[0].isPolling = 1;
  FlexCAN_CompleteRxMessageFifoData (instance_19(D));

  <bb 10> :
  goto <bb 18>; [INV]

  <bb 11> :
<L9>:
  FlexCAN_ClearMsgBuffIntStatusFlag (base_21, mb_idx_24(D));
  _9 = state_22->callback;
  if (_9 != 0B)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  _10 = state_22->callback;
  _10 (instance_19(D), 2, 0, state_22);

  <bb 13> :
  goto <bb 18>; [INV]

  <bb 14> :
<L12>:
  FlexCAN_ClearMsgBuffIntStatusFlag (base_21, mb_idx_24(D));
  _11 = state_22->callback;
  if (_11 != 0B)
    goto <bb 15>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 15> :
  _12 = state_22->callback;
  _12 (instance_19(D), 3, 0, state_22);

  <bb 16> :
  goto <bb 18>; [INV]

  <bb 17> :
<L15>:

  <bb 18> :
  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;
  int _2;
  _Bool _3;
  long unsigned int _4;
  long unsigned int _5;
  long unsigned int _6;
  long unsigned int _7;
  long unsigned int _8;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _9;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _10;
  <unnamed type> _11;
  _Bool _12;
  _Bool _13;
  _Bool _14;
  _Bool _15;
  _Bool _16;
  _Bool _17;

  <bb 2> :
  _1 = (int) u8Instance_21(D);
  pBase_23 = Flexcan_Ip_apxBase[_1];
  _2 = (int) u8Instance_21(D);
  pState_24 = Flexcan_Ip_apxState[_2];
  bCurrentIntStat_25 = 0;
  _3 = pState_24->mbs[u32MbIdx_26(D)].isRemote;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  FlexCAN_LockRxMsgBuff (pBase_23, u32MbIdx_26(D));
  FlexCAN_GetMsgBuff (pBase_23, u32MbIdx_26(D), &mb);
  FlexCAN_UnlockRxMsgBuff (pBase_23);
  _4 = mb.time_stamp;
  pState_24->mbs[u32MbIdx_26(D)].time_stamp = _4;
  _5 = mb.cs;
  _6 = _5 >> 24;
  _7 = _6 & 15;
  if (_7 == 4)
    goto <bb 4>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 4> :
  FlexCAN_ClearMsgBuffIntStatusFlag (pBase_23, u32MbIdx_26(D));
  goto <bb 6>; [INV]

  <bb 5> :
  _8 = FlexCAN_GetMsgBuffTimestamp (pBase_23, u32MbIdx_26(D));
  pState_24->mbs[u32MbIdx_26(D)].time_stamp = _8;
  FlexCAN_UnlockRxMsgBuff (pBase_23);
  FlexCAN_ClearMsgBuffIntStatusFlag (pBase_23, u32MbIdx_26(D));

  <bb 6> :
  pState_24->mbs[u32MbIdx_26(D)].state ={v} 0;
  bCurrentIntStat_37 = pState_24->mbs[u32MbIdx_26(D)].isPolling;
  _9 = pState_24->callback;
  if (_9 != 0B)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  _10 = pState_24->callback;
  _10 (u8Instance_21(D), 4, u32MbIdx_26(D), pState_24);

  <bb 8> :
  _11 ={v} pState_24->mbs[u32MbIdx_26(D)].state;
  if (_11 == 0)
    goto <bb 9>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 9> :
  _12 = pState_24->mbs[u32MbIdx_26(D)].isPolling;
  _13 = ~_12;
  if (_13 != 0)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  pState_24->mbs[u32MbIdx_26(D)].isPolling = 1;
  _14 = pState_24->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (pBase_23, u8Instance_21(D), u32MbIdx_26(D), 0, _14);
  goto <bb 14>; [INV]

  <bb 11> :
  _15 = ~bCurrentIntStat_37;
  if (_15 != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 14>; [INV]

  <bb 12> :
  _16 = pState_24->mbs[u32MbIdx_26(D)].isPolling;
  if (_16 != 0)
    goto <bb 13>; [INV]
  else
    goto <bb 14>; [INV]

  <bb 13> :
  _17 = pState_24->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (pBase_23, u8Instance_21(D), u32MbIdx_26(D), 0, _17);

  <bb 14> :
  mb ={v} {CLOBBER};
  return;

}


FlexCAN_IRQHandlerRxMB (uint8 instance, uint32 mb_idx)
{
  volatile uint32 * flexcan_mb;
  boolean bIsCriticalSectionNeeded;
  boolean bCurrentIntStat;
  struct Flexcan_Ip_MsgBuffType data;
  struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  int _1;
  int _2;
  struct Flexcan_Ip_MsgBuffType * _3;
  _Bool _4;
  _Bool _5;
  struct Flexcan_Ip_MsgBuffType * _6;
  _Bool _7;
  struct Flexcan_Ip_MsgBuffType * _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;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _16;
  void (*<T620>) (uint8, Flexcan_Ip_EventType, uint32, const struct FlexCANState *) _17;
  <unnamed type> _18;
  _Bool _19;
  _Bool _20;
  _Bool _21;
  _Bool _22;
  _Bool _23;
  _Bool _24;

  <bb 2> :
  _1 = (int) instance_32(D);
  base_34 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_32(D);
  state_35 = Flexcan_Ip_apxState[_2];
  bCurrentIntStat_36 = 0;
  _3 = state_35->mbs[mb_idx_37(D)].pMBmessage;
  if (_3 == 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  state_35->mbs[mb_idx_37(D)].pMBmessage = &data;

  <bb 4> :
  bIsCriticalSectionNeeded_39 = 0;
  _4 = state_35->mbs[mb_idx_37(D)].isPolling;
  if (_4 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 5> :
  _5 = state_35->bIsLegacyFifoEn;
  if (_5 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  bIsCriticalSectionNeeded_40 = 1;
  __asm__ __volatile__(" cpsid i");

  <bb 7> :
  # bIsCriticalSectionNeeded_25 = PHI <bIsCriticalSectionNeeded_39(4), bIsCriticalSectionNeeded_39(5), bIsCriticalSectionNeeded_40(6)>
  FlexCAN_LockRxMsgBuff (base_34, mb_idx_37(D));
  _6 = state_35->mbs[mb_idx_37(D)].pMBmessage;
  FlexCAN_GetMsgBuff (base_34, mb_idx_37(D), _6);
  FlexCAN_ClearMsgBuffIntStatusFlag (base_34, mb_idx_37(D));
  _7 = state_35->bIsLegacyFifoEn;
  if (_7 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 8> :
  _8 = state_35->mbs[mb_idx_37(D)].pMBmessage;
  _9 = _8->cs;
  _10 = _9 >> 24;
  _11 = _10 & 15;
  if (_11 == 0)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  flexcan_mb_46 = FlexCAN_GetMsgBuffRegion (base_34, mb_idx_37(D));
  _12 ={v} *flexcan_mb_46;
  _13 = _12 & 4043309055;
  *flexcan_mb_46 ={v} _13;
  _14 ={v} *flexcan_mb_46;
  _15 = _14 | 67108864;
  *flexcan_mb_46 ={v} _15;
  goto <bb 11>; [INV]

  <bb 10> :
  FlexCAN_UnlockRxMsgBuff (base_34);

  <bb 11> :
  if (bIsCriticalSectionNeeded_25 != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  __asm__ __volatile__(" cpsie i");

  <bb 13> :
  state_35->mbs[mb_idx_37(D)].state ={v} 0;
  bCurrentIntStat_52 = state_35->mbs[mb_idx_37(D)].isPolling;
  _16 = state_35->callback;
  if (_16 != 0B)
    goto <bb 14>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 14> :
  _17 = state_35->callback;
  _17 (instance_32(D), 0, mb_idx_37(D), state_35);

  <bb 15> :
  _18 ={v} state_35->mbs[mb_idx_37(D)].state;
  if (_18 == 0)
    goto <bb 16>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 16> :
  _19 = state_35->mbs[mb_idx_37(D)].isPolling;
  _20 = ~_19;
  if (_20 != 0)
    goto <bb 17>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 17> :
  state_35->mbs[mb_idx_37(D)].isPolling = 1;
  _21 = state_35->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (base_34, instance_32(D), mb_idx_37(D), 0, _21);
  goto <bb 21>; [INV]

  <bb 18> :
  _22 = ~bCurrentIntStat_52;
  if (_22 != 0)
    goto <bb 19>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 19> :
  _23 = state_35->mbs[mb_idx_37(D)].isPolling;
  if (_23 != 0)
    goto <bb 20>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 20> :
  _24 = state_35->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (base_34, instance_32(D), mb_idx_37(D), 0, _24);

  <bb 21> :
  data ={v} {CLOBBER};
  return;

}


FlexCAN_StartRxMessageFifoData (uint8 instance, struct Flexcan_Ip_MsgBuffType * data)
{
  Flexcan_Ip_StatusType eResult;
  struct Flexcan_Ip_StateType * state;
  struct FLEXCAN_Type * base;
  Flexcan_Ip_StatusType D.7745;
  int _1;
  int _2;
  <unnamed type> _3;
  <unnamed type> _4;
  <unnamed type> _5;
  _Bool _6;
  _Bool _7;
  _Bool _8;
  Flexcan_Ip_StatusType _28;

  <bb 2> :
  base_12 = 0B;
  state_13 = 0B;
  eResult_14 = 0;
  _1 = (int) instance_15(D);
  base_17 = Flexcan_Ip_apxBase[_1];
  _2 = (int) instance_15(D);
  state_18 = Flexcan_Ip_apxState[_2];
  _3 ={v} state_18->mbs[0].state;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  eResult_27 = 2;
  goto <bb 8>; [INV]

  <bb 4> :
  state_18->mbs[0].state ={v} 1;
  _4 = state_18->transferType;
  if (_4 == 1)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  state_18->mbs[0].isPolling = 1;

  <bb 6> :
  state_18->mbs[0].pMBmessage = data_21(D);
  _5 = state_18->transferType;
  if (_5 == 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  state_18->mbs[0].isPolling = 0;
  _6 = state_18->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (base_17, instance_15(D), 6, 1, _6);
  _7 = state_18->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (base_17, instance_15(D), 7, 1, _7);
  _8 = state_18->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (base_17, instance_15(D), 5, 1, _8);

  <bb 8> :
  # eResult_9 = PHI <eResult_27(3), eResult_14(6), eResult_14(7)>
  _28 = eResult_9;

  <bb 9> :
<L7>:
  return _28;

}


FlexCAN_StartSendData (uint8 Flexcan_Ip_u8Instance, uint8 mb_idx, const struct Flexcan_Ip_DataInfoType * tx_info, uint32 msg_id, const uint8 * mb_data)
{
  volatile uint32 * pMbAddr;
  struct FLEXCAN_Type * base;
  struct Flexcan_Ip_StateType * state;
  struct Flexcan_Ip_MsbuffCodeStatusType cs;
  Flexcan_Ip_StatusType eResult;
  Flexcan_Ip_StatusType D.7735;
  int _1;
  int _2;
  int _3;
  <unnamed type> _4;
  long unsigned int _5;
  int _6;
  int _7;
  int _8;
  _Bool _9;
  int _10;
  _Bool _11;
  long unsigned int _12;
  <unnamed type> _13;
  _Bool _14;
  unsigned char _15;
  _Bool _16;
  _Bool _17;
  long unsigned int _18;
  Flexcan_Ip_StatusType _48;

  <bb 2> :
  eResult_22 = 0;
  _1 = (int) Flexcan_Ip_u8Instance_23(D);
  state_25 = Flexcan_Ip_apxState[_1];
  _2 = (int) Flexcan_Ip_u8Instance_23(D);
  base_26 = Flexcan_Ip_apxBase[_2];
  pMbAddr_27 = 0B;
  _3 = (int) mb_idx_28(D);
  _4 ={v} state_25->mbs[_3].state;
  if (_4 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  eResult_47 = 2;
  goto <bb 8>; [INV]

  <bb 4> :
  _5 = (long unsigned int) mb_idx_28(D);
  FlexCAN_ClearMsgBuffIntStatusFlag (base_26, _5);
  _6 = (int) mb_idx_28(D);
  state_25->mbs[_6].state ={v} 2;
  _7 = (int) mb_idx_28(D);
  state_25->mbs[_7].time_stamp = 0;
  _8 = (int) mb_idx_28(D);
  _9 = tx_info_32(D)->is_polling;
  state_25->mbs[_8].isPolling = _9;
  _10 = (int) mb_idx_28(D);
  _11 = tx_info_32(D)->is_remote;
  state_25->mbs[_10].isRemote = _11;
  _12 = tx_info_32(D)->data_length;
  cs.dataLen = _12;
  _13 = tx_info_32(D)->msg_id_type;
  cs.msgIdType = _13;
  _14 = tx_info_32(D)->fd_enable;
  cs.fd_enable = _14;
  _15 = tx_info_32(D)->fd_padding;
  cs.fd_padding = _15;
  _16 = tx_info_32(D)->enable_brs;
  cs.enable_brs = _16;
  _17 = tx_info_32(D)->is_remote;
  if (_17 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  cs.code = 28;
  goto <bb 7>; [INV]

  <bb 6> :
  cs.code = 12;

  <bb 7> :
  _18 = (long unsigned int) mb_idx_28(D);
  pMbAddr_43 = FlexCAN_GetMsgBuffRegion (base_26, _18);
  FlexCAN_SetTxMsgBuff (pMbAddr_43, &cs, msg_id_44(D), mb_data_45(D), 0);

  <bb 8> :
  # eResult_19 = PHI <eResult_47(3), eResult_22(7)>
  _48 = eResult_19;
  cs ={v} {CLOBBER};

  <bb 9> :
<L7>:
  return _48;

}


FlexCAN_StartRxMessageBufferData (uint8 instance, uint8 mb_idx, struct Flexcan_Ip_MsgBuffType * data, boolean isPolling)
{
  struct Flexcan_Ip_StateType * state;
  Flexcan_Ip_StatusType result;
  Flexcan_Ip_StatusType D.7727;
  int _1;
  int _2;
  <unnamed type> _3;
  int _4;
  int _5;
  int _6;
  Flexcan_Ip_StatusType _20;

  <bb 2> :
  result_9 = 0;
  _1 = (int) instance_10(D);
  state_12 = Flexcan_Ip_apxState[_1];
  _2 = (int) mb_idx_13(D);
  _3 ={v} state_12->mbs[_2].state;
  if (_3 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  result_19 = 2;
  goto <bb 5>; [INV]

  <bb 4> :
  _4 = (int) mb_idx_13(D);
  state_12->mbs[_4].state ={v} 1;
  _5 = (int) mb_idx_13(D);
  state_12->mbs[_5].pMBmessage = data_15(D);
  _6 = (int) mb_idx_13(D);
  state_12->mbs[_6].isPolling = isPolling_17(D);

  <bb 5> :
  # result_7 = PHI <result_19(3), result_9(4)>
  _20 = result_7;

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

}


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;
  Flexcan_Ip_StatusType D.7703;
  long unsigned int D.7696;
  int _1;
  int _2;
  long unsigned int _3;
  long unsigned int _4;
  <unnamed type> _5;
  unsigned char _6;
  <unnamed type> _7;
  <unnamed type> _8;
  _Bool _9;
  _Bool _10;
  _Bool _11;
  <unnamed type> _12;
  long unsigned int _42;
  Flexcan_Ip_StatusType _51;

  <bb 2> :
  eResult_24 = 0;
  _1 = (int) u8Instance_25(D);
  pState_27 = Flexcan_Ip_apxState[_1];
  _2 = (int) u8Instance_25(D);
  pBase_28 = Flexcan_Ip_apxBase[_2];
  timeStart = 0;
  timeElapsed_30 = 0;
  _3 = u32TimeoutMs_31(D) * 1000;
  mS2Ticks_33 = OsIf_MicrosToTicks (_3, 0);
  u32intType_34 = 0;
  _4 = OsIf_GetCounter (0);
  timeStart = _4;
  goto <bb 11>; [INV]

  <bb 3> :
  _5 = pState_27->transferType;
  if (_5 == 1)
    goto <bb 4>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 4> :
  u32intType_37 = 7;
  goto <bb 8>; [INV]

  <bb 5> :
  _6 = FlexCAN_GetBuffStatusFlag (pBase_28, u32intType_16);
  if (_6 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  FlexCAN_IRQHandlerRxFIFO (u8Instance_25(D), u32intType_16);

  <bb 7> :
  u32intType_40 = u32intType_16 + 4294967295;

  <bb 8> :
  # u32intType_16 = PHI <u32intType_37(4), u32intType_40(7)>
  if (u32intType_16 > 4)
    goto <bb 5>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 9> :
  _42 = OsIf_GetElapsed (&timeStart, 0);
  timeElapsed_43 = _42 + timeElapsed_15;
  if (timeElapsed_43 >= mS2Ticks_33)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  eResult_44 = 3;
  goto <bb 12>; [INV]

  <bb 11> :
  # timeElapsed_15 = PHI <timeElapsed_30(2), timeElapsed_43(9)>
  _7 ={v} pState_27->mbs[0].state;
  if (_7 == 1)
    goto <bb 3>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 12> :
  # eResult_13 = PHI <eResult_44(10), eResult_24(11)>
  if (eResult_13 == 3)
    goto <bb 13>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 13> :
  _8 = pState_27->transferType;
  if (_8 != 1)
    goto <bb 14>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 14> :
  _9 = pState_27->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (pBase_28, u8Instance_25(D), 5, 0, _9);
  _10 = pState_27->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (pBase_28, u8Instance_25(D), 6, 0, _10);
  _11 = pState_27->isIntActive;
  FlexCAN_SetMsgBuffIntCmd (pBase_28, u8Instance_25(D), 7, 0, _11);

  <bb 15> :
  _12 ={v} pState_27->mbs[0].state;
  switch (_12) <default: <L18> [INV], case 0: <L17> [INV], case 1: <L16> [INV]>

  <bb 16> :
<L16>:
  pState_27->mbs[0].state ={v} 0;
  goto <bb 19>; [INV]

  <bb 17> :
<L17>:
  eResult_49 = 0;
  goto <bb 19>; [INV]

  <bb 18> :
<L18>:
  eResult_50 = 1;

  <bb 19> :
  # eResult_14 = PHI <eResult_13(16), eResult_49(17), eResult_50(18)>
  _51 = eResult_14;
  timeStart ={v} {CLOBBER};

  <bb 20> :
<L21>:
  return _51;

}


FlexCAN_InitController (struct FLEXCAN_Type * pBase, const struct Flexcan_Ip_ConfigType * Flexcan_Ip_pData)
{
  Flexcan_Ip_StatusType eResult;
  Flexcan_Ip_StatusType D.7676;
  _Bool _1;
  _Bool _2;
  long unsigned int _3;
  long unsigned int _4;
  _Bool _5;
  _Bool _6;
  _Bool _7;
  long unsigned int _8;
  Flexcan_Ip_StatusType _34;

  <bb 2> :
  eResult_14 = 0;
  _1 = FlexCAN_IsEnabled (pBase_16(D));
  if (_1 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  eResult_19 = FlexCAN_EnterFreezeMode (pBase_16(D));
  if (eResult_19 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  eResult_21 = FlexCAN_Disable (pBase_16(D));

  <bb 5> :
  # eResult_9 = PHI <eResult_14(2), eResult_19(3), eResult_21(4)>
  if (eResult_9 == 0)
    goto <bb 6>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 6> :
  _2 = Flexcan_Ip_pData_22(D)->is_pe_clock;
  FlexCAN_SetClkSrc (pBase_16(D), _2);
  _3 ={v} pBase_16(D)->MCR;
  _4 = _3 & 2147483647;
  pBase_16(D)->MCR ={v} _4;
  eResult_26 = FlexCAN_Init (pBase_16(D));
  if (eResult_26 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  FlexCAN_EnterFreezeMode (pBase_16(D));
  FlexCAN_Disable (pBase_16(D));
  goto <bb 11>; [INV]

  <bb 8> :
  _5 = FlexCAN_IsFDAvailable (pBase_16(D));
  if (_5 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  _6 = Flexcan_Ip_pData_22(D)->fd_enable;
  _7 = Flexcan_Ip_pData_22(D)->bitRateSwitch;
  FlexCAN_SetFDEnabled (pBase_16(D), _6, _7);

  <bb 10> :
  _8 = Flexcan_Ip_pData_22(D)->ctrlOptions;
  FlexCAN_ConfigCtrlOptions (pBase_16(D), _8);
  eResult_31 = FlexCAN_InitCtroll (pBase_16(D), Flexcan_Ip_pData_22(D));

  <bb 11> :
  # eResult_10 = PHI <eResult_9(5), eResult_26(7), eResult_31(10)>
  _34 = eResult_10;

  <bb 12> :
<L11>:
  return _34;

}


FlexCAN_InitCtroll (struct FLEXCAN_Type * pBase, const struct Flexcan_Ip_ConfigType * Flexcan_Ip_pData)
{
  Flexcan_Ip_StatusType eResult;
  Flexcan_Ip_StatusType D.7659;
  <unnamed type> _1;
  const struct Flexcan_Ip_PayloadSizeType * _2;
  long unsigned int _3;
  Flexcan_Ip_StatusType _17;

  <bb 2> :
  eResult_6 = 0;
  _1 = Flexcan_Ip_pData_8(D)->flexcanMode;
  if (_1 != 2)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  FlexCAN_SetSelfReception (pBase_9(D), 0);

  <bb 4> :
  eResult_12 = FlexCAN_InitRxFifo (pBase_9(D), Flexcan_Ip_pData_8(D));
  if (eResult_12 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  FlexCAN_EnterFreezeMode (pBase_9(D));
  FlexCAN_Disable (pBase_9(D));
  goto <bb 7>; [INV]

  <bb 6> :
  _2 = &Flexcan_Ip_pData_8(D)->payload;
  FlexCAN_SetPayloadSize (pBase_9(D), _2);
  _3 = Flexcan_Ip_pData_8(D)->max_num_mb;
  FlexCAN_SetMaxMsgBuffNum (pBase_9(D), _3);

  <bb 7> :
  _17 = eResult_12;

  <bb 8> :
<L5>:
  return _17;

}


FlexCAN_InitRxFifo (struct FLEXCAN_Type * pBase, const struct Flexcan_Ip_ConfigType * Flexcan_Ip_pData)
{
  Flexcan_Ip_StatusType eResult;
  Flexcan_Ip_StatusType D.7652;
  _Bool _1;
  <unnamed type> _2;
  Flexcan_Ip_StatusType _11;

  <bb 2> :
  eResult_5 = 0;
  _1 = Flexcan_Ip_pData_7(D)->is_rx_fifo_needed;
  if (_1 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _2 = Flexcan_Ip_pData_7(D)->num_id_filters;
  eResult_10 = FlexCAN_EnableRxFifo (pBase_8(D), _2);

  <bb 4> :
  # eResult_3 = PHI <eResult_5(2), eResult_10(3)>
  _11 = eResult_3;

  <bb 5> :
<L2>:
  return _11;

}


FlexCAN_ClearWUMF (struct FLEXCAN_Type * pBase)
{
  <bb 2> :
  pBase_2(D)->WU_MTC ={v} 65536;
  return;

}


FlexCAN_GetWUMIE (const struct FLEXCAN_Type * pBase)
{
  uint8 D.8241;
  long unsigned int _1;
  long unsigned int _2;
  unsigned char _3;
  uint8 _6;

  <bb 2> :
  _1 ={v} pBase_5(D)->CTRL1_PN;
  _2 = _1 >> 16;
  _3 = (unsigned char) _2;
  _6 = _3 & 1;

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

}


FlexCAN_GetWUMF (const struct FLEXCAN_Type * pBase)
{
  uint8 D.8239;
  long unsigned int _1;
  long unsigned int _2;
  unsigned char _3;
  uint8 _6;

  <bb 2> :
  _1 ={v} pBase_5(D)->WU_MTC;
  _2 = _1 >> 16;
  _3 = (unsigned char) _2;
  _6 = _3 & 1;

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

}


FlexCAN_ClearWTOF (struct FLEXCAN_Type * pBase)
{
  <bb 2> :
  pBase_2(D)->WU_MTC ={v} 131072;
  return;

}


FlexCAN_GetWTOIE (const struct FLEXCAN_Type * pBase)
{
  uint8 D.8237;
  long unsigned int _1;
  long unsigned int _2;
  unsigned char _3;
  uint8 _6;

  <bb 2> :
  _1 ={v} pBase_5(D)->CTRL1_PN;
  _2 = _1 >> 17;
  _3 = (unsigned char) _2;
  _6 = _3 & 1;

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

}


FlexCAN_GetWTOF (const struct FLEXCAN_Type * pBase)
{
  uint8 D.8235;
  long unsigned int _1;
  long unsigned int _2;
  unsigned char _3;
  uint8 _6;

  <bb 2> :
  _1 ={v} pBase_5(D)->WU_MTC;
  _2 = _1 >> 17;
  _3 = (unsigned char) _2;
  _6 = _3 & 1;

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

}


FlexCAN_SetPN (struct FLEXCAN_Type * pBase, boolean enable)
{
  long unsigned int iftmp.7;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int iftmp.7_4;
  long unsigned int iftmp.7_8;
  long unsigned int iftmp.7_9;

  <bb 2> :
  _1 ={v} pBase_6(D)->MCR;
  _2 = _1 & 4294950911;
  if (enable_7(D) != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.7_9 = 16384;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.7_8 = 0;

  <bb 5> :
  # iftmp.7_4 = PHI <iftmp.7_9(3), iftmp.7_8(4)>
  _3 = iftmp.7_4 | _2;
  pBase_6(D)->MCR ={v} _3;
  return;

}


FlexCAN_SetRegDefaultVal (struct FLEXCAN_Type * base)
{
  _Bool _1;

  <bb 2> :
  _1 = FlexCAN_IsFDAvailable (base_4(D));
  if (_1 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  base_4(D)->FDCBT ={v} 0;
  base_4(D)->FDCTRL ={v} 2147500288;

  <bb 4> :
  base_4(D)->IFLAG1 ={v} 4294967295;
  base_4(D)->IMASK1 ={v} 0;
  base_4(D)->CBT ={v} 0;
  base_4(D)->CTRL2 ={v} 1048576;
  base_4(D)->ESR1 ={v} 241670;
  base_4(D)->ECR ={v} 0;
  base_4(D)->TIMER ={v} 0;
  base_4(D)->CTRL1 ={v} 0;
  base_4(D)->MCR ={v} 3633315855;
  return;

}


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;

  <bb 2> :
  if (type_6(D) == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _1 ={v} base_8(D)->MCR;
  _2 = _1 & 4294901759;
  base_8(D)->MCR ={v} _2;
  goto <bb 5>; [INV]

  <bb 4> :
  _3 ={v} base_8(D)->MCR;
  _4 = _3 | 65536;
  base_8(D)->MCR ={v} _4;

  <bb 5> :
  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;

  <bb 2> :
  _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_SetRxIndividualMask (struct FLEXCAN_Type * base, uint32 msgBuffIdx, uint32 mask)
{
  <bb 2> :
  base_2(D)->RXIMR[msgBuffIdx_3(D)] ={v} mask_4(D);
  return;

}


FlexCAN_SetRxMsgBuffGlobalMask (struct FLEXCAN_Type * base, uint32 Mask)
{
  <bb 2> :
  base_2(D)->RXMGMASK ={v} Mask_3(D);
  return;

}


FlexCAN_GetMsgBuffIntStatusFlag (const struct FLEXCAN_Type * base, uint32 msgBuffIdx)
{
  uint32 mask;
  uint8 flag;
  uint8 D.7907;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  unsigned char _5;
  uint8 _13;

  <bb 2> :
  flag_7 = 0;
  if (msgBuffIdx_8(D) <= 31)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  mask_11 ={v} base_10(D)->IMASK1;
  _1 ={v} base_10(D)->IFLAG1;
  _2 = mask_11 & _1;
  _3 = msgBuffIdx_8(D) & 31;
  _4 = _2 >> _3;
  _5 = (unsigned char) _4;
  flag_12 = _5 & 1;

  <bb 4> :
  # flag_6 = PHI <flag_7(2), flag_12(3)>
  _13 = flag_6;

  <bb 5> :
<L2>:
  return _13;

}


FlexCAN_SetClkSrc (struct FLEXCAN_Type * base, boolean enable)
{
  long unsigned int iftmp.1;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int iftmp.1_4;
  long unsigned int iftmp.1_8;
  long unsigned int iftmp.1_9;

  <bb 2> :
  _1 ={v} base_6(D)->CTRL1;
  _2 = _1 & 4294959103;
  if (enable_7(D) != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.1_9 = 8192;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.1_8 = 0;

  <bb 5> :
  # iftmp.1_4 = PHI <iftmp.1_9(3), iftmp.1_8(4)>
  _3 = iftmp.1_4 | _2;
  base_6(D)->CTRL1 ={v} _3;
  return;

}


RxFifoOcuppiedLastMsgBuff (uint32 x)
{
  uint32 D.7806;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  uint32 _5;

  <bb 2> :
  _1 = x_4(D) + 1;
  _2 = _1 * 8;
  _3 = _2 / 4;
  _5 = _3 + 5;

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

}


FlexCAN_IsListenOnlyModeEnabled (const struct FLEXCAN_Type * base)
{
  boolean D.7823;
  long unsigned int _1;
  long unsigned int _2;
  boolean _5;

  <bb 2> :
  _1 ={v} base_4(D)->CTRL1;
  _2 = _1 & 8;
  _5 = _2 != 0;

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

}


FlexCAN_IsFDEnabled (const struct FLEXCAN_Type * base)
{
  boolean D.8105;
  long unsigned int _1;
  long unsigned int _2;
  boolean _5;

  <bb 2> :
  _1 ={v} base_4(D)->MCR;
  _2 = _1 & 2048;
  _5 = _2 != 0;

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

}


FlexCAN_SetSelfReception (struct FLEXCAN_Type * base, boolean enable)
{
  long unsigned int iftmp.0;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int iftmp.0_4;
  long unsigned int iftmp.0_8;
  long unsigned int iftmp.0_9;

  <bb 2> :
  _1 ={v} base_6(D)->MCR;
  _2 = _1 & 4294836223;
  if (enable_7(D) != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.0_9 = 0;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.0_8 = 131072;

  <bb 5> :
  # iftmp.0_4 = PHI <iftmp.0_9(3), iftmp.0_8(4)>
  _3 = iftmp.0_4 | _2;
  base_6(D)->MCR ={v} _3;
  return;

}


FlexCAN_EnableExtCbt (struct FLEXCAN_Type * base, boolean enableCBT)
{
  long unsigned int iftmp.5;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int iftmp.5_4;
  long unsigned int iftmp.5_8;
  long unsigned int iftmp.5_9;

  <bb 2> :
  _1 ={v} base_6(D)->CBT;
  _2 = _1 & 2147483647;
  if (enableCBT_7(D) != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.5_9 = 2147483648;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.5_8 = 0;

  <bb 5> :
  # iftmp.5_4 = PHI <iftmp.5_9(3), iftmp.5_8(4)>
  _3 = iftmp.5_4 | _2;
  base_6(D)->CBT ={v} _3;
  return;

}


FlexCAN_IsExCbtEnabled (const struct FLEXCAN_Type * pBase)
{
  boolean D.8084;
  long unsigned int _1;
  signed int _2;
  boolean _5;

  <bb 2> :
  _1 ={v} pBase_4(D)->CBT;
  _2 = (signed int) _1;
  _5 = _2 < 0;

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

}


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;

  <bb 2> :
  _1 ={v} base_16(D)->FDCBT;
  _2 = _1 >> 20;
  _3 = _2 & 1023;
  timeSeg_17(D)->preDivider = _3;
  _4 ={v} base_16(D)->FDCBT;
  _5 = _4 >> 10;
  _6 = _5 & 31;
  timeSeg_17(D)->propSeg = _6;
  _7 ={v} base_16(D)->FDCBT;
  _8 = _7 >> 5;
  _9 = _8 & 7;
  timeSeg_17(D)->phaseSeg1 = _9;
  _10 ={v} base_16(D)->FDCBT;
  _11 = _10 & 7;
  timeSeg_17(D)->phaseSeg2 = _11;
  _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;
  long unsigned int _14;

  <bb 2> :
  _1 ={v} base_16(D)->CTRL1;
  _2 = _1 >> 24;
  _3 = _2 & 255;
  timeSeg_17(D)->preDivider = _3;
  _4 ={v} base_16(D)->CTRL1;
  _5 = _4 & 7;
  timeSeg_17(D)->propSeg = _5;
  _6 ={v} base_16(D)->CTRL1;
  _7 = _6 >> 19;
  _8 = _7 & 7;
  timeSeg_17(D)->phaseSeg1 = _8;
  _9 ={v} base_16(D)->CTRL1;
  _10 = _9 >> 16;
  _11 = _10 & 7;
  timeSeg_17(D)->phaseSeg2 = _11;
  _12 ={v} base_16(D)->CTRL1;
  _13 = _12 >> 22;
  _14 = _13 & 3;
  timeSeg_17(D)->rJumpwidth = _14;
  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;

  <bb 2> :
  _1 ={v} base_16(D)->CBT;
  _2 = _1 >> 21;
  _3 = _2 & 1023;
  timeSeg_17(D)->preDivider = _3;
  _4 ={v} base_16(D)->CBT;
  _5 = _4 >> 10;
  _6 = _5 & 63;
  timeSeg_17(D)->propSeg = _6;
  _7 ={v} base_16(D)->CBT;
  _8 = _7 >> 5;
  _9 = _8 & 31;
  timeSeg_17(D)->phaseSeg1 = _9;
  _10 ={v} base_16(D)->CBT;
  _11 = _10 & 31;
  timeSeg_17(D)->phaseSeg2 = _11;
  _12 ={v} base_16(D)->CBT;
  _13 = _12 >> 16;
  _14 = _13 & 31;
  timeSeg_17(D)->rJumpwidth = _14;
  return;

}


FlexCAN_SetExtendedTimeSegments (struct FLEXCAN_Type * base, const 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;
  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;

  <bb 2> :
  _1 ={v} base_24(D)->CBT;
  _2 = _1 & 2147483648;
  base_24(D)->CBT ={v} _2;
  _3 ={v} base_24(D)->CBT;
  _4 = timeSeg_26(D)->propSeg;
  _5 = _4 << 10;
  _6 = _5 & 65535;
  _7 = timeSeg_26(D)->phaseSeg2;
  _8 = _7 & 31;
  _9 = _6 | _8;
  _10 = timeSeg_26(D)->phaseSeg1;
  _11 = _10 << 5;
  _12 = _11 & 992;
  _13 = _9 | _12;
  _14 = timeSeg_26(D)->preDivider;
  _15 = _14 << 21;
  _16 = _15 & 2145386496;
  _17 = _13 | _16;
  _18 = timeSeg_26(D)->rJumpwidth;
  _19 = _18 << 16;
  _20 = _19 & 2031616;
  _21 = _17 | _20;
  _22 = _3 | _21;
  base_24(D)->CBT ={v} _22;
  return;

}


FlexCAN_SetTimeSegments (struct FLEXCAN_Type * base, const 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;
  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;

  <bb 2> :
  _1 ={v} base_23(D)->CTRL1;
  _2 = _1 & 65528;
  base_23(D)->CTRL1 ={v} _2;
  _3 ={v} base_23(D)->CTRL1;
  _4 = timeSeg_25(D)->propSeg;
  _5 = _4 & 7;
  _6 = timeSeg_25(D)->phaseSeg2;
  _7 = _6 << 16;
  _8 = _7 & 458752;
  _9 = _5 | _8;
  _10 = timeSeg_25(D)->phaseSeg1;
  _11 = _10 << 19;
  _12 = _11 & 3670016;
  _13 = _9 | _12;
  _14 = timeSeg_25(D)->preDivider;
  _15 = _14 << 24;
  _16 = _13 | _15;
  _17 = timeSeg_25(D)->rJumpwidth;
  _18 = _17 << 22;
  _19 = _18 & 12582912;
  _20 = _16 | _19;
  _21 = _3 | _20;
  base_23(D)->CTRL1 ={v} _21;
  return;

}


FlexCAN_SetFDTimeSegments (struct FLEXCAN_Type * base, const 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;
  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;

  <bb 2> :
  _1 ={v} base_24(D)->FDCBT;
  _2 = _1 & 3221783320;
  base_24(D)->FDCBT ={v} _2;
  _3 ={v} base_24(D)->FDCBT;
  _4 = timeSeg_26(D)->propSeg;
  _5 = _4 << 10;
  _6 = _5 & 31744;
  _7 = timeSeg_26(D)->phaseSeg2;
  _8 = _7 & 7;
  _9 = _6 | _8;
  _10 = timeSeg_26(D)->phaseSeg1;
  _11 = _10 << 5;
  _12 = _11 & 255;
  _13 = _9 | _12;
  _14 = timeSeg_26(D)->preDivider;
  _15 = _14 << 20;
  _16 = _15 & 1072693248;
  _17 = _13 | _16;
  _18 = timeSeg_26(D)->rJumpwidth;
  _19 = _18 << 16;
  _20 = _19 & 458752;
  _21 = _17 | _20;
  _22 = _3 | _21;
  base_24(D)->FDCBT ={v} _22;
  return;

}


FlexCAN_GetBuffStatusImask (const struct FLEXCAN_Type * base, uint32 msgBuffIdx)
{
  uint32 u32Imask;
  uint8 D.7923;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  uint8 _12;

  <bb 2> :
  u32Imask_7 = 0;
  if (msgBuffIdx_8(D) <= 31)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _1 ={v} base_10(D)->IMASK1;
  _2 = msgBuffIdx_8(D) & 31;
  _3 = 1 << _2;
  _4 = _1 & _3;
  _5 = msgBuffIdx_8(D) & 31;
  u32Imask_11 = _4 >> _5;

  <bb 4> :
  # u32Imask_6 = PHI <u32Imask_7(2), u32Imask_11(3)>
  _12 = (uint8) u32Imask_6;

  <bb 5> :
<L2>:
  return _12;

}


FlexCAN_GetBuffStatusFlag (const struct FLEXCAN_Type * base, uint32 msgBuffIdx)
{
  uint32 flag;
  uint8 D.7708;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  uint8 _12;

  <bb 2> :
  flag_7 = 0;
  if (msgBuffIdx_8(D) <= 31)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _1 ={v} base_10(D)->IFLAG1;
  _2 = msgBuffIdx_8(D) & 31;
  _3 = 1 << _2;
  _4 = _1 & _3;
  _5 = msgBuffIdx_8(D) & 31;
  flag_11 = _4 >> _5;

  <bb 4> :
  # flag_6 = PHI <flag_7(2), flag_11(3)>
  _12 = (uint8) flag_6;

  <bb 5> :
<L2>:
  return _12;

}


FlexCAN_ClearMsgBuffIntStatusFlag (struct FLEXCAN_Type * base, uint32 msgBuffIdx)
{
  uint32 flag;
  long unsigned int _1;

  <bb 2> :
  _1 = msgBuffIdx_3(D) & 31;
  flag_4 = 1 << _1;
  if (msgBuffIdx_3(D) <= 31)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  base_6(D)->IFLAG1 ={v} flag_4;

  <bb 4> :
  return;

}


FlexCAN_UnlockRxMsgBuff (const struct FLEXCAN_Type * base)
{
  long unsigned int vol.4;
  long unsigned int vol.4_3;

  <bb 2> :
  vol.4_3 ={v} base_2(D)->TIMER;
  return;

}


FlexCAN_SetListenOnlyMode (struct FLEXCAN_Type * base, boolean enableListenOnly)
{
  long unsigned int iftmp.6;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int iftmp.6_4;
  long unsigned int iftmp.6_8;
  long unsigned int iftmp.6_9;

  <bb 2> :
  _1 ={v} base_6(D)->CTRL1;
  _2 = _1 & 4294967287;
  if (enableListenOnly_7(D) != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.6_9 = 8;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.6_8 = 0;

  <bb 5> :
  # iftmp.6_4 = PHI <iftmp.6_9(3), iftmp.6_8(4)>
  _3 = iftmp.6_4 | _2;
  base_6(D)->CTRL1 ={v} _3;
  return;

}


FlexCAN_SetFDEnabled (struct FLEXCAN_Type * base, boolean enableFD, boolean enableBRS)
{
  long unsigned int iftmp.3;
  long unsigned int iftmp.2;
  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.2_9;
  long unsigned int iftmp.3_10;
  long unsigned int iftmp.2_14;
  long unsigned int iftmp.2_15;
  long unsigned int iftmp.3_18;
  long unsigned int iftmp.3_19;

  <bb 2> :
  _1 ={v} base_12(D)->MCR;
  _2 = _1 & 4294965247;
  if (enableFD_13(D) != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.2_15 = 2048;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.2_14 = 0;

  <bb 5> :
  # iftmp.2_9 = PHI <iftmp.2_15(3), iftmp.2_14(4)>
  _3 = iftmp.2_9 | _2;
  base_12(D)->MCR ={v} _3;
  _4 ={v} base_12(D)->FDCTRL;
  _5 = _4 & 2147483647;
  if (enableBRS_17(D) != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  iftmp.3_19 = 2147483648;
  goto <bb 8>; [INV]

  <bb 7> :
  iftmp.3_18 = 0;

  <bb 8> :
  # iftmp.3_10 = PHI <iftmp.3_19(6), iftmp.3_18(7)>
  _6 = iftmp.3_10 | _5;
  base_12(D)->FDCTRL ={v} _6;
  _7 ={v} base_12(D)->FDCTRL;
  _8 = _7 & 4294926591;
  base_12(D)->FDCTRL ={v} _8;
  return;

}


FlexCAN_IsEnabled (const struct FLEXCAN_Type * pBase)
{
  boolean D.7678;
  long unsigned int _1;
  signed int _2;
  boolean _5;

  <bb 2> :
  _1 ={v} pBase_4(D)->MCR;
  _2 = (signed int) _1;
  _5 = _2 >= 0;

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

}


FlexCAN_SetTDCOffset (struct FLEXCAN_Type * base, boolean enable, uint8 offset)
{
  uint32 tmp;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;

  <bb 2> :
  tmp_7 ={v} base_6(D)->FDCTRL;
  tmp_8 = tmp_7 & 4294926591;
  if (enable_9(D) != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  tmp_10 = tmp_8 | 32768;
  _1 = (long unsigned int) offset_11(D);
  _2 = _1 << 8;
  _3 = _2 & 7936;
  tmp_12 = tmp_10 | _3;

  <bb 4> :
  # tmp_4 = PHI <tmp_8(2), tmp_12(3)>
  base_6(D)->FDCTRL ={v} tmp_4;
  return;

}


FlexCAN_SetRxFifoGlobalMask (struct FLEXCAN_Type * base, uint32 Mask)
{
  <bb 2> :
  base_2(D)->RXFGMASK ={v} Mask_3(D);
  return;

}


