Can_ProcessBusOffInterrupt (uint8 u8CtrlOffset)
{
  const struct Can_ControllerConfigType * Can_pController;
  uint8 u8ControllerID;
  const struct Can_ConfigType * _1;
  const uint8 * _2;
  sizetype _3;
  const uint8 * _4;
  const struct Can_ControllerConfigType * const * _5;
  unsigned int _6;
  unsigned int _7;
  const struct Can_ControllerConfigType * const * _8;
  unsigned char _9;
  int _10;
  unsigned char _11;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  if (_1 != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 6>; [30.00%]

  <bb 3> [local count: 751619278]:
  # DEBUG BEGIN_STMT
  _2 = _1->Can_pCtrlOffsetToCtrlIDMap;
  _3 = (sizetype) u8CtrlOffset_14(D);
  _4 = _2 + _3;
  u8ControllerID_15 = *_4;
  # DEBUG u8ControllerID => u8ControllerID_15
  # DEBUG BEGIN_STMT
  _5 = _1->Can_ppController;
  _6 = (unsigned int) u8ControllerID_15;
  _7 = _6 * 4;
  _8 = _5 + _7;
  Can_pController_16 = *_8;
  # DEBUG Can_pController => Can_pController_16
  # DEBUG BEGIN_STMT
  if (Can_pController_16 != 0B)
    goto <bb 4>; [53.47%]
  else
    goto <bb 6>; [46.53%]

  <bb 4> [local count: 401890828]:
  # DEBUG BEGIN_STMT
  _9 = Can_Ipw_SetControllerToStopMode (Can_pController_16);
  if (_9 == 0)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 132623973]:
  # DEBUG BEGIN_STMT
  _10 = (int) u8ControllerID_15;
  Can_eControllerState[_10] = 2;
  # DEBUG BEGIN_STMT
  _11 = Can_pController_16->Can_u8AbstControllerID;
  CanIf_ControllerBusOff (_11);

  <bb 6> [local count: 1073741824]:
  return;

}


Can_ProcessPNInterrupt (uint8 u8CtrlOffset)
{
  const struct Can_ControllerConfigType * Can_pController;
  uint8 u8ControllerID;
  const struct Can_ConfigType * _1;
  const uint8 * _2;
  sizetype _3;
  const uint8 * _4;
  const struct Can_ControllerConfigType * const * _5;
  unsigned int _6;
  unsigned int _7;
  const struct Can_ControllerConfigType * const * _8;
  int _9;
  const struct Can_IcomConfigsType * _10;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  if (_1 != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 6>; [30.00%]

  <bb 3> [local count: 751619278]:
  # DEBUG BEGIN_STMT
  _2 = _1->Can_pCtrlOffsetToCtrlIDMap;
  _3 = (sizetype) u8CtrlOffset_13(D);
  _4 = _2 + _3;
  u8ControllerID_14 = *_4;
  # DEBUG u8ControllerID => u8ControllerID_14
  # DEBUG BEGIN_STMT
  _5 = _1->Can_ppController;
  _6 = (unsigned int) u8ControllerID_14;
  _7 = _6 * 4;
  _8 = _5 + _7;
  Can_pController_15 = *_8;
  # DEBUG Can_pController => Can_pController_15
  # DEBUG BEGIN_STMT
  if (Can_pController_15 != 0B)
    goto <bb 4>; [70.00%]
  else
    goto <bb 6>; [30.00%]

  <bb 4> [local count: 526133494]:
  _9 = (int) u8ControllerID_14;
  _10 = Can_apxCtrlConfigIcomIndex[_9];
  if (_10 != 0B)
    goto <bb 5>; [53.47%]
  else
    goto <bb 6>; [46.53%]

  <bb 5> [local count: 281323579]:
  # DEBUG BEGIN_STMT
  Can_Ipw_ProcessPN (Can_pController_15, _10);

  <bb 6> [local count: 1073741824]:
  return;

}


Can_SetIcomConfiguration (uint8 Controller, IcomConfigIdType ConfigurationId)
{
  uint8 u8ConfigIcomIndex;
  Std_ReturnType eReturnValue;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_ControllerConfigType * const * _5;
  const struct Can_ControllerConfigType * _6;
  const struct Can_IcomConfigsType * _7;
  const struct Can_IcomConfigsType * _8;
  unsigned int _9;
  unsigned int _10;
  const struct Can_IcomConfigsType * _11;
  unsigned char _12;
  int _13;
  <unnamed type> _14;
  const struct Can_ControllerConfigType * const * _15;
  unsigned int _16;
  unsigned int _17;
  const struct Can_ControllerConfigType * const * _18;
  const struct Can_ControllerConfigType * _19;
  const struct Can_ConfigType * _20;
  const struct Can_ConfigType * _21;
  unsigned char _22;
  const struct Can_ConfigType * _23;
  const struct Can_IcomConfigsType * _24;
  unsigned int _25;
  unsigned int _26;
  int _27;
  const struct Can_IcomConfigsType * _28;
  int _29;
  const struct Can_ConfigType * _30;
  const struct Can_ControllerConfigType * const * _31;
  unsigned int _32;
  unsigned int _33;
  const struct Can_ControllerConfigType * const * _34;
  const struct Can_ControllerConfigType * _35;
  unsigned char _36;
  const struct Can_ConfigType * _37;
  const struct Can_ControllerConfigType * const * _38;
  unsigned int _39;
  unsigned int _40;
  const struct Can_ControllerConfigType * const * _41;
  const struct Can_ControllerConfigType * _42;
  unsigned char _43;

  <bb 2> [local count: 171438108]:
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG eReturnValue => 1
  # DEBUG BEGIN_STMT
  # DEBUG u8ConfigIcomIndex => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  if (ConfigurationId_52(D) == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 17>; [67.00%]

  <bb 17> [local count: 114863532]:
  goto <bb 9>; [100.00%]

  <bb 3> [local count: 56574576]:
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _3 = (unsigned int) Controller_56(D);
  _4 = _3 * 4;
  _5 = _2 + _4;
  _6 = *_5;
  eReturnValue_60 = Can_Ipw_DeactivateIcomConfiguration (_6);
  # DEBUG eReturnValue => eReturnValue_60
  goto <bb 10>; [100.00%]

  <bb 4> [local count: 1014686024]:
  # DEBUG BEGIN_STMT
  _8 = _21->pCanIcomConfigs;
  _9 = (unsigned int) u8ConfigIcomIndex_45;
  _10 = _9 * 8;
  _11 = _8 + _10;
  _12 = _11->u8CanIcomConfigId;
  if (_12 == ConfigurationId_52(D))
    goto <bb 5>; [5.50%]
  else
    goto <bb 8>; [94.50%]

  <bb 5> [local count: 55807731]:
  # _7 = PHI <_11(4)>
  # _20 = PHI <_21(4)>
  # u8ConfigIcomIndex_50 = PHI <u8ConfigIcomIndex_45(4)>
  # DEBUG BEGIN_STMT
  _13 = (int) Controller_56(D);
  _14 = Can_eControllerState[_13];
  if (_14 == 1)
    goto <bb 7>; [20.24%]
  else
    goto <bb 15>; [79.76%]

  <bb 7> [local count: 11295485]:
  # DEBUG BEGIN_STMT
  _15 = _20->Can_ppController;
  _16 = (unsigned int) Controller_56(D);
  _17 = _16 * 4;
  _18 = _15 + _17;
  _19 = *_18;
  eReturnValue_58 = Can_Ipw_SetIcomConfiguration (_19, _7);
  # DEBUG eReturnValue => eReturnValue_58
  goto <bb 10>; [100.00%]

  <bb 8> [local count: 958878291]:
  # DEBUG BEGIN_STMT
  u8ConfigIcomIndex_55 = u8ConfigIcomIndex_45 + 1;
  # DEBUG u8ConfigIcomIndex => u8ConfigIcomIndex_55

  <bb 9> [local count: 1073741824]:
  # u8ConfigIcomIndex_45 = PHI <u8ConfigIcomIndex_55(8), 0(17)>
  # DEBUG u8ConfigIcomIndex => u8ConfigIcomIndex_45
  # DEBUG BEGIN_STMT
  _21 = Can_apxConfig[0];
  _22 = _21->u8NumCanIcomConfigs;
  if (_22 > u8ConfigIcomIndex_45)
    goto <bb 4>; [94.50%]
  else
    goto <bb 10>; [5.50%]

  <bb 10> [local count: 126925861]:
  # eReturnValue_44 = PHI <eReturnValue_60(3), eReturnValue_58(7), 1(9)>
  # u8ConfigIcomIndex_46 = PHI <0(3), u8ConfigIcomIndex_50(7), u8ConfigIcomIndex_45(9)>
  # DEBUG u8ConfigIcomIndex => u8ConfigIcomIndex_46
  # DEBUG eReturnValue => eReturnValue_44
  # DEBUG BEGIN_STMT
  if (eReturnValue_44 == 0)
    goto <bb 11>; [50.00%]
  else
    goto <bb 15>; [50.00%]

  <bb 11> [local count: 63462930]:
  # DEBUG BEGIN_STMT
  if (ConfigurationId_52(D) != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 12> [local count: 31731465]:
  # DEBUG BEGIN_STMT
  _23 = Can_apxConfig[0];
  _24 = _23->pCanIcomConfigs;
  _25 = (unsigned int) u8ConfigIcomIndex_46;
  _26 = _25 * 8;
  _27 = (int) Controller_56(D);
  _28 = _24 + _26;
  Can_apxCtrlConfigIcomIndex[_27] = _28;
  goto <bb 14>; [100.00%]

  <bb 13> [local count: 31731465]:
  # DEBUG BEGIN_STMT
  _29 = (int) Controller_56(D);
  Can_apxCtrlConfigIcomIndex[_29] = 0B;

  <bb 14> [local count: 63462930]:
  # DEBUG BEGIN_STMT
  _30 = Can_apxConfig[0];
  _31 = _30->Can_ppController;
  _32 = (unsigned int) Controller_56(D);
  _33 = _32 * 4;
  _34 = _31 + _33;
  _35 = *_34;
  _36 = _35->Can_u8AbstControllerID;
  CanIf_CurrentIcomConfiguration (_36, ConfigurationId_52(D), 0);
  goto <bb 16>; [100.00%]

  <bb 15> [local count: 107975177]:
  # eReturnValue_51 = PHI <eReturnValue_44(10), 1(5)>
  # DEBUG u8ConfigIcomIndex => NULL
  # DEBUG eReturnValue => NULL
  # DEBUG BEGIN_STMT
  _37 = Can_apxConfig[0];
  _38 = _37->Can_ppController;
  _39 = (unsigned int) Controller_56(D);
  _40 = _39 * 4;
  _41 = _38 + _40;
  _42 = *_41;
  _43 = _42->Can_u8AbstControllerID;
  CanIf_CurrentIcomConfiguration (_43, ConfigurationId_52(D), 1);

  <bb 16> [local count: 171438107]:
  # eReturnValue_53 = PHI <0(14), eReturnValue_51(15)>
  # DEBUG BEGIN_STMT
  return eReturnValue_53;

}


Can_MainFunction_Mode ()
{
  const struct Can_ControllerConfigType * Can_pController;
  uint8 u8ControllerID;
  const struct Can_ConfigType * _1;
  const struct Can_ConfigType * _2;
  const struct Can_ControllerConfigType * const * _3;
  const struct Can_ControllerConfigType * const * _6;
  _Bool _7;

  <bb 2> [local count: 84365427]:
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  if (_1 != 0B)
    goto <bb 11>; [70.00%]
  else
    goto <bb 8>; [30.00%]

  <bb 11> [local count: 59055799]:
  goto <bb 7>; [100.00%]

  <bb 3> [local count: 1014686024]:
  # DEBUG BEGIN_STMT
  _2 = Can_apxConfig[0];
  _3 = _2->Can_ppController;
  _6 = _3;
  Can_pController_14 = *_6;
  # DEBUG Can_pController => Can_pController_14
  # DEBUG BEGIN_STMT
  if (Can_pController_14 != 0B)
    goto <bb 4>; [67.00%]
  else
    goto <bb 13>; [33.00%]

  <bb 13> [local count: 334846388]:
  goto <bb 9>; [100.00%]

  <bb 4> [local count: 679839636]:
  # DEBUG BEGIN_STMT
  _7 = Can_pController_14->Can_bActivation;
  if (_7 != 0)
    goto <bb 5>; [5.50%]
  else
    goto <bb 12>; [94.50%]

  <bb 12> [local count: 642448455]:
  goto <bb 10>; [100.00%]

  <bb 5> [local count: 37391180]:
  # DEBUG BEGIN_STMT
  Can_Ipw_MainFunction_Mode (Can_pController_14, &MEM[(void *)&Can_eControllerState]);

  <bb 7> [local count: 96446979]:
  # u8ControllerID_5 = PHI <1(5), 0(11)>

  <bb 10> [local count: 738895436]:
  # u8ControllerID_10 = PHI <u8ControllerID_5(7), 1(12)>

  <bb 9> [local count: 1073741824]:
  # u8ControllerID_9 = PHI <u8ControllerID_10(10), 1(13)>
  # DEBUG u8ControllerID => u8ControllerID_9
  # DEBUG BEGIN_STMT
  if (u8ControllerID_9 == 0)
    goto <bb 3>; [94.50%]
  else
    goto <bb 8>; [5.50%]

  <bb 8> [local count: 84365429]:
  return;

}


Can_MainFunction_BusOff ()
{
  const struct Can_ControllerConfigType * Can_pController;
  uint8 u8ControllerID;
  const struct Can_ConfigType * _1;
  const struct Can_ConfigType * _2;
  const struct Can_ControllerConfigType * const * _3;
  const struct Can_ControllerConfigType * const * _6;
  short unsigned int _7;

  <bb 2> [local count: 84365427]:
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  if (_1 != 0B)
    goto <bb 11>; [70.00%]
  else
    goto <bb 8>; [30.00%]

  <bb 11> [local count: 59055799]:
  goto <bb 7>; [100.00%]

  <bb 3> [local count: 1014686024]:
  # DEBUG BEGIN_STMT
  _2 = Can_apxConfig[0];
  _3 = _2->Can_ppController;
  _6 = _3;
  Can_pController_13 = *_6;
  # DEBUG Can_pController => Can_pController_13
  # DEBUG BEGIN_STMT
  if (Can_pController_13 != 0B)
    goto <bb 4>; [67.00%]
  else
    goto <bb 13>; [33.00%]

  <bb 13> [local count: 334846388]:
  goto <bb 9>; [100.00%]

  <bb 4> [local count: 679839636]:
  # DEBUG BEGIN_STMT
  _7 = BIT_FIELD_REF <*Can_pController_13, 16, 64>;
  if (_7 == 257)
    goto <bb 5>; [5.50%]
  else
    goto <bb 12>; [94.50%]

  <bb 12> [local count: 642448455]:
  goto <bb 10>; [100.00%]

  <bb 5> [local count: 37391180]:
  # DEBUG BEGIN_STMT
  Can_Ipw_MainFunction_BusOff (Can_pController_13);

  <bb 7> [local count: 96446979]:
  # u8ControllerID_5 = PHI <1(5), 0(11)>

  <bb 10> [local count: 738895436]:
  # u8ControllerID_9 = PHI <u8ControllerID_5(7), 1(12)>

  <bb 9> [local count: 1073741824]:
  # u8ControllerID_8 = PHI <u8ControllerID_9(10), 1(13)>
  # DEBUG u8ControllerID => u8ControllerID_8
  # DEBUG BEGIN_STMT
  if (u8ControllerID_8 == 0)
    goto <bb 3>; [94.50%]
  else
    goto <bb 8>; [5.50%]

  <bb 8> [local count: 84365429]:
  return;

}


Can_MainFunction_Read ()
{
  const struct Can_ControllerConfigType * Can_pController;
  uint8 u8ControllerID;
  Can_HwHandleType HwObjectID;
  const struct Can_ConfigType * _1;
  const uint8 * _2;
  sizetype _3;
  const uint8 * _4;
  const struct Can_ControllerConfigType * const * _5;
  unsigned int _6;
  unsigned int _7;
  const struct Can_ControllerConfigType * const * _8;
  _Bool _9;
  const struct Can_HwObjectConfigType * _10;
  unsigned int _11;
  const struct Can_HwObjectConfigType * _12;
  _Bool _13;
  const struct Can_ConfigType * _14;
  short unsigned int _15;

  <bb 2> [local count: 168730857]:
  # DEBUG BEGIN_STMT
  # DEBUG HwObjectID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  if (_1 != 0B)
    goto <bb 10>; [70.00%]
  else
    goto <bb 9>; [30.00%]

  <bb 10> [local count: 118111600]:
  goto <bb 8>; [100.00%]

  <bb 3> [local count: 955630225]:
  # DEBUG BEGIN_STMT
  _2 = _14->Can_pHwObjIDToCtrlIDMap;
  _3 = (sizetype) HwObjectID_16;
  _4 = _2 + _3;
  u8ControllerID_21 = *_4;
  # DEBUG u8ControllerID => u8ControllerID_21
  # DEBUG BEGIN_STMT
  _5 = _14->Can_ppController;
  _6 = (unsigned int) u8ControllerID_21;
  _7 = _6 * 4;
  _8 = _5 + _7;
  Can_pController_22 = *_8;
  # DEBUG Can_pController => Can_pController_22
  # DEBUG BEGIN_STMT
  if (Can_pController_22 != 0B)
    goto <bb 4>; [70.00%]
  else
    goto <bb 7>; [30.00%]

  <bb 4> [local count: 668941158]:
  # DEBUG BEGIN_STMT
  _9 = Can_pController_22->Can_bActivation;
  if (_9 != 0)
    goto <bb 5>; [50.00%]
  else
    goto <bb 7>; [50.00%]

  <bb 5> [local count: 334470579]:
  _10 = _14->Can_pHwObjectConfig;
  _11 = _3 * 36;
  _12 = _10 + _11;
  _13 = _12->Can_bHwObjectUsesPolling;
  if (_13 != 0)
    goto <bb 6>; [33.00%]
  else
    goto <bb 7>; [67.00%]

  <bb 6> [local count: 110375291]:
  # DEBUG BEGIN_STMT
  Can_Ipw_MainFunction_Read (Can_pController_22, _12);

  <bb 7> [local count: 955630225]:
  # DEBUG BEGIN_STMT
  HwObjectID_24 = HwObjectID_16 + 1;
  # DEBUG HwObjectID => HwObjectID_24

  <bb 8> [local count: 1073741824]:
  # HwObjectID_16 = PHI <HwObjectID_24(7), 0(10)>
  # DEBUG HwObjectID => HwObjectID_16
  # DEBUG BEGIN_STMT
  _14 = Can_apxConfig[0];
  _15 = _14->Can_uHthFirstIndex;
  if (_15 > HwObjectID_16)
    goto <bb 3>; [89.00%]
  else
    goto <bb 9>; [11.00%]

  <bb 9> [local count: 168730858]:
  return;

}


Can_MainFunction_Write ()
{
  const struct Can_ControllerConfigType * Can_pController;
  uint8 u8ControllerID;
  Can_HwHandleType HwObjectID;
  const struct Can_ConfigType * _1;
  const struct Can_ConfigType * _2;
  const uint8 * _3;
  sizetype _4;
  const uint8 * _5;
  const struct Can_ControllerConfigType * const * _6;
  unsigned int _7;
  unsigned int _8;
  const struct Can_ControllerConfigType * const * _9;
  _Bool _10;
  const struct Can_HwObjectConfigType * _11;
  unsigned int _12;
  const struct Can_HwObjectConfigType * _13;
  _Bool _14;

  <bb 2> [local count: 511254497]:
  # DEBUG BEGIN_STMT
  # DEBUG HwObjectID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  if (_1 != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 10>; [30.00%]

  <bb 3> [local count: 357878148]:
  # DEBUG BEGIN_STMT
  HwObjectID_20 = _1->Can_uHthFirstIndex;
  # DEBUG HwObjectID => HwObjectID_20
  # DEBUG BEGIN_STMT
  goto <bb 9>; [100.00%]

  <bb 4> [local count: 715863675]:
  # DEBUG BEGIN_STMT
  _2 = Can_apxConfig[0];
  _3 = _2->Can_pHwObjIDToCtrlIDMap;
  _4 = (sizetype) HwObjectID_15;
  _5 = _3 + _4;
  u8ControllerID_21 = *_5;
  # DEBUG u8ControllerID => u8ControllerID_21
  # DEBUG BEGIN_STMT
  _6 = _2->Can_ppController;
  _7 = (unsigned int) u8ControllerID_21;
  _8 = _7 * 4;
  _9 = _6 + _8;
  Can_pController_22 = *_9;
  # DEBUG Can_pController => Can_pController_22
  # DEBUG BEGIN_STMT
  if (Can_pController_22 != 0B)
    goto <bb 5>; [70.00%]
  else
    goto <bb 8>; [30.00%]

  <bb 5> [local count: 501104572]:
  # DEBUG BEGIN_STMT
  _10 = Can_pController_22->Can_bActivation;
  if (_10 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 6> [local count: 250552286]:
  _11 = _2->Can_pHwObjectConfig;
  _12 = _4 * 36;
  _13 = _11 + _12;
  _14 = _13->Can_bHwObjectUsesPolling;
  if (_14 != 0)
    goto <bb 7>; [33.00%]
  else
    goto <bb 8>; [67.00%]

  <bb 7> [local count: 82682254]:
  # DEBUG BEGIN_STMT
  Can_Ipw_MainFunction_Write (Can_pController_22, _13);

  <bb 8> [local count: 715863675]:
  # DEBUG BEGIN_STMT
  HwObjectID_24 = HwObjectID_15 + 1;
  # DEBUG HwObjectID => HwObjectID_24

  <bb 9> [local count: 1073741824]:
  # HwObjectID_15 = PHI <HwObjectID_20(3), HwObjectID_24(8)>
  # DEBUG HwObjectID => HwObjectID_15
  # DEBUG BEGIN_STMT
  if (HwObjectID_15 <= 1)
    goto <bb 4>; [66.67%]
  else
    goto <bb 10>; [33.33%]

  <bb 10> [local count: 511254499]:
  return;

}


Can_AbortMb (Can_HwHandleType Hth)
{
  const struct Can_HwObjectConfigType * Can_pHwObject;
  const struct Can_ControllerConfigType * Can_pController;
  uint8 u8ControllerID;
  const struct Can_ConfigType * _1;
  const uint8 * _2;
  sizetype _3;
  const uint8 * _4;
  const struct Can_ControllerConfigType * const * _5;
  unsigned int _6;
  unsigned int _7;
  const struct Can_ControllerConfigType * const * _8;
  const struct Can_HwObjectConfigType * _9;
  unsigned int _10;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG Can_pHwObject => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_pHwObjIDToCtrlIDMap;
  _3 = (sizetype) Hth_13(D);
  _4 = _2 + _3;
  u8ControllerID_14 = *_4;
  # DEBUG u8ControllerID => u8ControllerID_14
  # DEBUG BEGIN_STMT
  _5 = _1->Can_ppController;
  _6 = (unsigned int) u8ControllerID_14;
  _7 = _6 * 4;
  _8 = _5 + _7;
  Can_pController_15 = *_8;
  # DEBUG Can_pController => Can_pController_15
  # DEBUG BEGIN_STMT
  if (Can_pController_15 != 0B)
    goto <bb 3>; [53.47%]
  else
    goto <bb 4>; [46.53%]

  <bb 3> [local count: 574129754]:
  # DEBUG BEGIN_STMT
  _9 = _1->Can_pHwObjectConfig;
  _10 = _3 * 36;
  Can_pHwObject_16 = _9 + _10;
  # DEBUG Can_pHwObject => Can_pHwObject_16
  # DEBUG BEGIN_STMT
  Can_Ipw_AbortMb (Can_pController_15, Can_pHwObject_16);

  <bb 4> [local count: 1073741824]:
  return;

}


Can_Write (Can_HwHandleType Hth, const struct Can_PduType * PduInfo)
{
  const struct Can_HwObjectConfigType * Can_pHwObject;
  const struct Can_ControllerConfigType * Can_pController;
  uint8 u8ControllerID;
  Std_ReturnType eRetVal;
  const struct Can_ConfigType * _1;
  const uint8 * _2;
  sizetype _3;
  const uint8 * _4;
  const struct Can_ControllerConfigType * const * _5;
  unsigned int _6;
  unsigned int _7;
  const struct Can_ControllerConfigType * const * _8;
  const struct Can_HwObjectConfigType * _9;
  unsigned int _10;
  int _11;
  <unnamed type> _12;
  const struct Can_IcomConfigsType * _13;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 1
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG Can_pHwObject => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_pHwObjIDToCtrlIDMap;
  _3 = (sizetype) Hth_17(D);
  _4 = _2 + _3;
  u8ControllerID_18 = *_4;
  # DEBUG u8ControllerID => u8ControllerID_18
  # DEBUG BEGIN_STMT
  _5 = _1->Can_ppController;
  _6 = (unsigned int) u8ControllerID_18;
  _7 = _6 * 4;
  _8 = _5 + _7;
  Can_pController_19 = *_8;
  # DEBUG Can_pController => Can_pController_19
  # DEBUG BEGIN_STMT
  if (Can_pController_19 != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 6>; [30.00%]

  <bb 3> [local count: 751619278]:
  # DEBUG BEGIN_STMT
  _9 = _1->Can_pHwObjectConfig;
  _10 = _3 * 36;
  Can_pHwObject_20 = _9 + _10;
  # DEBUG Can_pHwObject => Can_pHwObject_20
  # DEBUG BEGIN_STMT
  _11 = (int) u8ControllerID_18;
  _12 = Can_eControllerState[_11];
  if (_12 == 1)
    goto <bb 4>; [34.00%]
  else
    goto <bb 6>; [66.00%]

  <bb 4> [local count: 255550554]:
  # DEBUG BEGIN_STMT
  _13 = Can_apxCtrlConfigIcomIndex[_11];
  if (_13 != 0B)
    goto <bb 6>; [71.84%]
  else
    goto <bb 5>; [28.16%]

  <bb 5> [local count: 71963036]:
  # DEBUG BEGIN_STMT
  eRetVal_23 = Can_Ipw_Write (Can_pController_19, Can_pHwObject_20, PduInfo_21(D));
  # DEBUG eRetVal => eRetVal_23

  <bb 6> [local count: 1073741824]:
  # eRetVal_14 = PHI <1(2), 1(3), 2(4), eRetVal_23(5)>
  # DEBUG eRetVal => eRetVal_14
  # DEBUG BEGIN_STMT
  return eRetVal_14;

}


Can_GetControllerTxErrorCounter (uint8 ControllerId, uint8 * TxErrorCounterPtr)
{
  const struct Can_ControllerConfigType * Can_pController;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_ControllerConfigType * const * _5;
  unsigned char _6;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 1
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _3 = (unsigned int) ControllerId_8(D);
  _4 = _3 * 4;
  _5 = _2 + _4;
  Can_pController_9 = *_5;
  # DEBUG Can_pController => Can_pController_9
  # DEBUG BEGIN_STMT
  _6 = Can_Ipw_GetControllerTxErrorCounter (Can_pController_9);
  *TxErrorCounterPtr_11(D) = _6;
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 0
  # DEBUG BEGIN_STMT
  return 0;

}


Can_GetControllerRxErrorCounter (uint8 ControllerId, uint8 * RxErrorCounterPtr)
{
  const struct Can_ControllerConfigType * Can_pController;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_ControllerConfigType * const * _5;
  unsigned char _6;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 1
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _3 = (unsigned int) ControllerId_8(D);
  _4 = _3 * 4;
  _5 = _2 + _4;
  Can_pController_9 = *_5;
  # DEBUG Can_pController => Can_pController_9
  # DEBUG BEGIN_STMT
  _6 = Can_Ipw_GetControllerRxErrorCounter (Can_pController_9);
  *RxErrorCounterPtr_11(D) = _6;
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 0
  # DEBUG BEGIN_STMT
  return 0;

}


Can_GetControllerMode (uint8 Controller, Can_ControllerStateType * ControllerModePtr)
{
  int _1;
  <unnamed type> _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 1
  # DEBUG BEGIN_STMT
  _1 = (int) Controller_3(D);
  _2 = Can_eControllerState[_1];
  *ControllerModePtr_5(D) = _2;
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 0
  # DEBUG BEGIN_STMT
  return 0;

}


Can_GetControllerErrorState (uint8 ControllerId, Can_ErrorStateType * ErrorStatePtr)
{
  const struct Can_ControllerConfigType * Can_pController;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_ControllerConfigType * const * _5;
  unsigned char _6;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 1
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _3 = (unsigned int) ControllerId_9(D);
  _4 = _3 * 4;
  _5 = _2 + _4;
  Can_pController_10 = *_5;
  # DEBUG Can_pController => Can_pController_10
  # DEBUG BEGIN_STMT
  _6 = Can_Ipw_GetControllerErrorState (Can_pController_10);
  switch (_6) <default: <L2> [33.33%], case 0: <L0> [33.33%], case 1: <L1> [33.33%]>

  <bb 3> [local count: 357878150]:
<L0>:
  # DEBUG BEGIN_STMT
  *ErrorStatePtr_12(D) = 0;
  # DEBUG BEGIN_STMT
  goto <bb 6>; [100.00%]

  <bb 4> [local count: 357878150]:
<L1>:
  # DEBUG BEGIN_STMT
  *ErrorStatePtr_12(D) = 1;
  # DEBUG BEGIN_STMT
  goto <bb 6>; [100.00%]

  <bb 5> [local count: 357878150]:
<L2>:
  # DEBUG BEGIN_STMT
  *ErrorStatePtr_12(D) = 2;
  # DEBUG BEGIN_STMT

  <bb 6> [local count: 1073634451]:
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 0
  # DEBUG BEGIN_STMT
  return 0;

}


Can_EnableControllerInterrupts (uint8 Controller)
{
  const struct Can_ControllerConfigType * Can_pController;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_ControllerConfigType * const * _5;
  int _6;
  unsigned char _7;
  unsigned char _8;
  unsigned char _9;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _3 = (unsigned int) Controller_13(D);
  _4 = _3 * 4;
  _5 = _2 + _4;
  Can_pController_14 = *_5;
  # DEBUG Can_pController => Can_pController_14
  # DEBUG BEGIN_STMT
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_01 ();
  # DEBUG BEGIN_STMT
  _6 = (int) Controller_13(D);
  _7 = Can_au8DisableInterruptLevel[_6];
  if (_7 != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  _8 = _7 + 255;
  Can_au8DisableInterruptLevel[_6] = _8;

  <bb 4> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_01 ();
  # DEBUG BEGIN_STMT
  _9 = Can_au8DisableInterruptLevel[_6];
  if (_9 == 0)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Can_Ipw_EnableControllerInterrupts (Can_pController_14);

  <bb 6> [local count: 1073741824]:
  return;

}


Can_DisableControllerInterrupts (uint8 Controller)
{
  const struct Can_ControllerConfigType * Can_pController;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_ControllerConfigType * const * _5;
  int _6;
  unsigned char _7;
  unsigned char _8;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _3 = (unsigned int) Controller_10(D);
  _4 = _3 * 4;
  _5 = _2 + _4;
  Can_pController_11 = *_5;
  # DEBUG Can_pController => Can_pController_11
  # DEBUG BEGIN_STMT
  SchM_Enter_Can_CAN_EXCLUSIVE_AREA_00 ();
  # DEBUG BEGIN_STMT
  _6 = (int) Controller_10(D);
  _7 = Can_au8DisableInterruptLevel[_6];
  _8 = _7 + 1;
  Can_au8DisableInterruptLevel[_6] = _8;
  # DEBUG BEGIN_STMT
  SchM_Exit_Can_CAN_EXCLUSIVE_AREA_00 ();
  # DEBUG BEGIN_STMT
  Can_Ipw_DisableControllerInterrupts (Can_pController_11);
  return;

}


Can_SetControllerMode (uint8 Controller, Can_ControllerStateType Transition)
{
  const struct Can_ControllerConfigType * Can_pController;
  Std_ReturnType eRetVal;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_ControllerConfigType * const * _5;
  int _6;
  <unnamed type> _7;
  unsigned char _8;
  unsigned char _9;
  int _10;
  <unnamed type> _11;
  unsigned char _12;
  unsigned char _13;
  unsigned char _14;
  int _15;
  <unnamed type> _16;
  unsigned char _17;
  <unnamed type> _24;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 1
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _3 = (unsigned int) Controller_21(D);
  _4 = _3 * 4;
  _5 = _2 + _4;
  Can_pController_22 = *_5;
  # DEBUG Can_pController => Can_pController_22
  # DEBUG BEGIN_STMT
  switch (Transition_23(D)) <default: <L22> [25.00%], case 1: <L0> [25.00%], case 2: <L5> [25.00%], case 3: <L13> [25.00%]>

  <bb 3> [local count: 268435456]:
<L0>:
  # DEBUG BEGIN_STMT
  _6 = (int) Controller_21(D);
  _7 = Can_eControllerState[_6];
  if (_7 == 2)
    goto <bb 4>; [20.24%]
  else
    goto <bb 12>; [79.76%]

  <bb 4> [local count: 54331336]:
  # DEBUG BEGIN_STMT
  _8 = Can_Ipw_SetControllerToStartMode (Can_pController_22);
  if (_8 == 0)
    goto <bb 5>; [33.00%]
  else
    goto <bb 12>; [67.00%]

  <bb 5> [local count: 17929341]:
  # DEBUG BEGIN_STMT
  Can_eControllerState[_6] = 1;
  # DEBUG BEGIN_STMT
  _9 = Can_pController_22->Can_u8AbstControllerID;
  CanIf_ControllerModeIndication (_9, 1);
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 0
  # DEBUG BEGIN_STMT
  Can_apxCtrlConfigIcomIndex[_6] = 0B;
  goto <bb 12>; [100.00%]

  <bb 6> [local count: 268435456]:
<L5>:
  # DEBUG BEGIN_STMT
  _10 = (int) Controller_21(D);
  _11 = Can_eControllerState[_10];
  switch (_11) <default: <L22> [33.33%], case 1: <L6> [33.33%], case 2 ... 3: <L9> [33.33%]>

  <bb 7> [local count: 89469538]:
<L6>:
  # DEBUG BEGIN_STMT
  _12 = Can_Ipw_SetControllerToStopMode (Can_pController_22);
  if (_12 == 0)
    goto <bb 8>; [33.00%]
  else
    goto <bb 12>; [67.00%]

  <bb 8> [local count: 29524947]:
  # DEBUG BEGIN_STMT
  Can_eControllerState[_10] = 2;
  # DEBUG BEGIN_STMT
  _13 = Can_pController_22->Can_u8AbstControllerID;
  CanIf_ControllerModeIndication (_13, 2);
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 0
  # DEBUG BEGIN_STMT
  Can_apxCtrlConfigIcomIndex[_10] = 0B;
  goto <bb 12>; [100.00%]

  <bb 9> [local count: 89469538]:
<L9>:
  # DEBUG BEGIN_STMT
  Can_eControllerState[_10] = 2;
  # DEBUG BEGIN_STMT
  _14 = Can_pController_22->Can_u8AbstControllerID;
  CanIf_ControllerModeIndication (_14, 2);
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 0
  # DEBUG BEGIN_STMT
  goto <bb 12>; [100.00%]

  <bb 10> [local count: 268435456]:
<L13>:
  # DEBUG BEGIN_STMT
  _15 = (int) Controller_21(D);
  _16 = Can_eControllerState[_15];
  _24 = _16 + 4294967294;
  if (_24 <= 1)
    goto <bb 11>; [25.50%]
  else
    goto <bb 12>; [74.50%]

  <bb 11> [local count: 68451041]:
<L14>:
  # DEBUG BEGIN_STMT
  Can_eControllerState[_15] = 3;
  # DEBUG BEGIN_STMT
  _17 = Can_pController_22->Can_u8AbstControllerID;
  CanIf_ControllerModeIndication (_17, 3);
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 0
  # DEBUG BEGIN_STMT

  <bb 12> [local count: 1073714982]:
  # eRetVal_18 = PHI <1(4), 0(9), 1(10), 1(2), 1(3), 0(5), 0(8), 1(7), 1(6), 0(11)>
<L22>:
  # DEBUG eRetVal => eRetVal_18
  # DEBUG BEGIN_STMT
  return eRetVal_18;

}


Can_SetBaudrate (uint8 Controller, uint16 BaudRateConfigID)
{
  const struct Can_ControllerConfigType * Can_pController;
  Std_ReturnType eRetVal;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  unsigned int _3;
  unsigned int _4;
  const struct Can_ControllerConfigType * const * _5;
  int _6;
  <unnamed type> _7;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG eRetVal => 1
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG Can_pController => 0B
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _3 = (unsigned int) Controller_11(D);
  _4 = _3 * 4;
  _5 = _2 + _4;
  Can_pController_12 = *_5;
  # DEBUG Can_pController => Can_pController_12
  # DEBUG BEGIN_STMT
  _6 = (int) Controller_11(D);
  _7 = Can_eControllerState[_6];
  if (_7 == 2)
    goto <bb 3>; [20.24%]
  else
    goto <bb 4>; [79.76%]

  <bb 3> [local count: 217325345]:
  # DEBUG BEGIN_STMT
  eRetVal_15 = Can_Ipw_SetBaudrate (Can_pController_12, BaudRateConfigID_13(D));
  # DEBUG eRetVal => eRetVal_15

  <bb 4> [local count: 1073741824]:
  # eRetVal_8 = PHI <1(2), eRetVal_15(3)>
  # DEBUG eRetVal => eRetVal_8
  # DEBUG BEGIN_STMT
  return eRetVal_8;

}


Can_DeInit ()
{
  boolean bCtrlBusy;
  uint8 u8ControllerID;
  const struct Can_ConfigType * _1;
  const struct Can_ControllerConfigType * const * _2;
  const struct Can_ControllerConfigType * const * _4;
  const struct Can_ControllerConfigType * _5;
  <unnamed type> _6;

  <bb 2> [local count: 96446979]:
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  # DEBUG BEGIN_STMT
  # DEBUG bCtrlBusy => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG u8ControllerID => 0
  goto <bb 5>; [100.00%]

  <bb 3> [local count: 1014686024]:
  # DEBUG BEGIN_STMT
  _1 = Can_apxConfig[0];
  _2 = _1->Can_ppController;
  _4 = _2;
  _5 = *_4;
  if (_5 != 0B)
    goto <bb 4>; [67.00%]
  else
    goto <bb 11>; [33.00%]

  <bb 11> [local count: 334846388]:
  goto <bb 6>; [100.00%]

  <bb 4> [local count: 679839636]:
  # DEBUG BEGIN_STMT
  _6 = Can_eControllerState[0];
  if (_6 == 1)
    goto <bb 7>; [5.50%]
  else
    goto <bb 10>; [94.50%]

  <bb 10> [local count: 642448456]:

  <bb 5> [local count: 738895437]:
  # u8ControllerID_3 = PHI <0(2), 1(10)>

  <bb 6> [local count: 1073741824]:
  # u8ControllerID_7 = PHI <u8ControllerID_3(5), 1(11)>
  # DEBUG u8ControllerID => u8ControllerID_7
  # DEBUG BEGIN_STMT
  if (u8ControllerID_7 == 0)
    goto <bb 3>; [94.50%]
  else
    goto <bb 7>; [5.50%]

  <bb 7> [local count: 96446980]:
  # bCtrlBusy_8 = PHI <1(4), 0(6)>
  # DEBUG bCtrlBusy => bCtrlBusy_8
  # DEBUG BEGIN_STMT
  if (bCtrlBusy_8 != 0)
    goto <bb 9>; [67.00%]
  else
    goto <bb 8>; [33.00%]

  <bb 8> [local count: 31827504]:
  # DEBUG BEGIN_STMT
  Can_DeInitControllers (0);
  # DEBUG BEGIN_STMT
  Can_apxConfig[0] = 0B;

  <bb 9> [local count: 96446980]:
  return;

}


Can_Init (const struct Can_ConfigType * Config)
{
  boolean bCtrlBusy;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG bCtrlBusy => 0
  # DEBUG BEGIN_STMT
  # DEBUG u32CoreId => 0
  # DEBUG BEGIN_STMT
  Can_apxConfig[0] = &Can_Config;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  bCtrlBusy_4 = Can_IsControllersBusy (0);
  # DEBUG bCtrlBusy => bCtrlBusy_4
  # DEBUG BEGIN_STMT
  if (bCtrlBusy_4 != 0)
    goto <bb 4>; [67.00%]
  else
    goto <bb 3>; [33.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Can_InitControllers (0);

  <bb 4> [local count: 1073741824]:
  return;

}


Can_GetVersionInfo (struct Std_VersionInfoType * versioninfo)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  versioninfo_2(D)->vendorID = 43;
  # DEBUG BEGIN_STMT
  versioninfo_2(D)->moduleID = 80;
  # DEBUG BEGIN_STMT
  versioninfo_2(D)->sw_major_version = 1;
  # DEBUG BEGIN_STMT
  versioninfo_2(D)->sw_minor_version = 0;
  # DEBUG BEGIN_STMT
  versioninfo_2(D)->sw_patch_version = 0;
  return;

}


