Gpt_Ipw_DisableInterrupt (const struct Gpt_Ipw_HwChannelConfigType * pHwChannelConfig)
{
  <unnamed type> _1;
  unsigned char _2;
  unsigned char _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = pHwChannelConfig_6(D)->instanceType;
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  _2 = pHwChannelConfig_6(D)->instance;
  _3 = pHwChannelConfig_6(D)->channel;
  Pit_Ip_DisableChannelInterrupt (_2, _3);
  # DEBUG BEGIN_STMT

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

}


Gpt_Ipw_DeInit (const struct Gpt_Ipw_HwChannelConfigType * pHwChannelConfig)
{
  <unnamed type> _1;
  unsigned char _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = pHwChannelConfig_5(D)->instanceType;
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  _2 = pHwChannelConfig_5(D)->instance;
  Pit_Ip_Deinit (_2);
  # DEBUG BEGIN_STMT

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

}


Gpt_Ipw_EnableInterrupt (const struct Gpt_Ipw_HwChannelConfigType * pHwChannelConfig)
{
  <unnamed type> _1;
  unsigned char _2;
  unsigned char _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = pHwChannelConfig_6(D)->instanceType;
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  _2 = pHwChannelConfig_6(D)->instance;
  _3 = pHwChannelConfig_6(D)->channel;
  Pit_Ip_EnableChannelInterrupt (_2, _3);
  # DEBUG BEGIN_STMT

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

}


Gpt_Ipw_StopTimer (const struct Gpt_Ipw_HwChannelConfigType * pHwChannelConfig)
{
  <unnamed type> _1;
  unsigned char _2;
  unsigned char _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = pHwChannelConfig_6(D)->instanceType;
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  _2 = pHwChannelConfig_6(D)->instance;
  _3 = pHwChannelConfig_6(D)->channel;
  Pit_Ip_StopChannel (_2, _3);
  # DEBUG BEGIN_STMT

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

}


Gpt_Ipw_GetTimeElapsed (const struct Gpt_Ipw_HwChannelConfigType * pHwChannelConfig, struct Gpt_HwChannelInfoType * pReturnHwChannelInfo)
{
  uint32 returnValue;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG returnValue => 0
  # DEBUG BEGIN_STMT
  _1 = pHwChannelConfig_5(D)->instanceType;
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  returnValue_8 = Gpt_Ipw_PitGetTimeElapsed (pHwChannelConfig_5(D), pReturnHwChannelInfo_6(D));
  # DEBUG returnValue => returnValue_8
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # returnValue_2 = PHI <returnValue_8(3), 0(2)>
  # DEBUG returnValue => returnValue_2
  # DEBUG BEGIN_STMT
  return returnValue_2;

}


Gpt_Ipw_StartTimer (const struct Gpt_Ipw_HwChannelConfigType * pHwChannelConfig, Gpt_ValueType uValue)
{
  Std_ReturnType returnValue;
  <unnamed type> _1;
  unsigned char _2;
  unsigned char _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG returnValue => 1
  # DEBUG BEGIN_STMT
  _1 = pHwChannelConfig_7(D)->instanceType;
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  _2 = pHwChannelConfig_7(D)->instance;
  _3 = pHwChannelConfig_7(D)->channel;
  returnValue_10 = Pit_Ip_StartChannel (_2, _3, uValue_8(D));
  # DEBUG returnValue => returnValue_10
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # returnValue_4 = PHI <returnValue_10(3), 1(2)>
  # DEBUG returnValue => returnValue_4
  # DEBUG BEGIN_STMT
  return returnValue_4;

}


Gpt_Ipw_Init (const struct Gpt_Ipw_HwChannelConfigType * pHwChannelConfig)
{
  <unnamed type> _1;
  unsigned char _2;
  const struct Pit_Ip_ChannelConfigType * _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = pHwChannelConfig_6(D)->instanceType;
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  _2 = pHwChannelConfig_6(D)->instance;
  _3 = pHwChannelConfig_6(D)->Gpt_Ipw_ChannelConfig.Pit_Ip_ChannelConfig;
  Pit_Ip_InitChannel (_2, _3);
  # DEBUG BEGIN_STMT

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

}


Gpt_Ipw_InitInstances (const struct Gpt_ConfigType * configPtr)
{
  uint8 index;
  struct Gpt_Ipw_HwInstanceConfigType[<unknown>] * _1;
  int _2;
  <unnamed type> _3;
  unsigned char _4;
  const struct Pit_Ip_InstanceConfigType * _5;
  unsigned char _6;

  <bb 2> [local count: 118111602]:
  # DEBUG BEGIN_STMT
  # DEBUG index => 0
  # DEBUG BEGIN_STMT
  # DEBUG index => 0
  goto <bb 6>; [100.00%]

  <bb 3> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  _1 = configPtr_11(D)->Gpt_Ipw_HwInstanceConfig;
  _2 = (int) index_7;
  _3 = *_1[_2].instanceType;
  if (_3 == 0)
    goto <bb 4>; [33.00%]
  else
    goto <bb 5>; [67.00%]

  <bb 4> [local count: 315357973]:
<L1>:
  # DEBUG BEGIN_STMT
  _4 = *_1[_2].instance;
  _5 = *_1[_2].Gpt_Ipw_InstanceConfig.Pit_Ip_InstanceConfig;
  Pit_Ip_Init (_4, _5);
  # DEBUG BEGIN_STMT

  <bb 5> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  index_13 = index_7 + 1;
  # DEBUG index => index_13

  <bb 6> [local count: 1073741824]:
  # index_7 = PHI <0(2), index_13(5)>
  # DEBUG index => index_7
  # DEBUG BEGIN_STMT
  _6 = configPtr_11(D)->instanceCount;
  if (_6 > index_7)
    goto <bb 3>; [89.00%]
  else
    goto <bb 7>; [11.00%]

  <bb 7> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  return;

}


Gpt_Ipw_PitGetTimeElapsed (const struct Gpt_Ipw_HwChannelConfigType * pHwChannelConfig, struct Gpt_HwChannelInfoType * pReturnHwChannelInfo)
{
  uint32 returnValue;
  unsigned char _1;
  unsigned char _2;
  long unsigned int _3;
  long unsigned int _4;
  unsigned char _5;
  unsigned char _6;
  long long unsigned int _7;
  long unsigned int _8;
  unsigned char _9;
  unsigned char _10;
  long unsigned int _11;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG returnValue => 0
  # DEBUG BEGIN_STMT
  _1 = pHwChannelConfig_14(D)->instance;
  _2 = pHwChannelConfig_14(D)->channel;
  _3 = Pit_Ip_GetLoadValue (_1, _2);
  _4 = _3 + 1;
  pReturnHwChannelInfo_16(D)->uTargetTime = _4;
  # DEBUG BEGIN_STMT
  _5 = pHwChannelConfig_14(D)->instance;
  _6 = pHwChannelConfig_14(D)->channel;
  _7 = Pit_Ip_GetCurrentTimer (_5, _6);
  _8 = (long unsigned int) _7;
  returnValue_19 = _4 - _8;
  # DEBUG returnValue => returnValue_19
  # DEBUG BEGIN_STMT
  _9 = pHwChannelConfig_14(D)->instance;
  _10 = pHwChannelConfig_14(D)->channel;
  _11 = Pit_Ip_GetInterruptFlags (_9, _10);
  if (_11 != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  pReturnHwChannelInfo_16(D)->bChannelRollover = 1;
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  pReturnHwChannelInfo_16(D)->bChannelRollover = 0;

  <bb 5> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return returnValue_19;

}


