Flexio_Uart_Ip_GetStatus.part.0 (const uint8 Channel, uint32 * BytesRemaining)
{
  const struct Flexio_Uart_Ip_StateStructureType * UartState;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  volatile boolean x;
  volatile boolean x;
  int _2;
  _Bool _5;
  _Bool x.3_6;
  _Bool _8;
  <unnamed type> _9;
  long unsigned int _10;
  <unnamed type> _11;

  <bb 12> [local count: 21262216]:

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = (int) Channel_1(D);
  UartState_3 = Flexio_Uart_Ip_apStateStructuresArray[_2];
  # DEBUG UartState => UartState_3
  # DEBUG BEGIN_STMT
  UartUserCfg_4 = Flexio_Uart_Ip_apUserConfig[_2];
  # DEBUG UartUserCfg => UartUserCfg_4
  # DEBUG BEGIN_STMT
  _5 = UartState_3 != 0B;
  x ={v} _5;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_6 ={v} x;
  if (x.3_6 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 3>; [50.00%]

  <bb 3> [local count: 10631108]:

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

  <bb 5> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 6> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  if (BytesRemaining_7(D) != 0B)
    goto <bb 7>; [70.00%]
  else
    goto <bb 11>; [30.00%]

  <bb 7> [local count: 7441776]:
  # DEBUG BEGIN_STMT
  _8 ={v} UartState_3->DriverIdle;
  if (_8 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 8> [local count: 3720888]:
  # DEBUG BEGIN_STMT
  _9 = UartUserCfg_4->DriverType;
  if (_9 == 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 9> [local count: 1860444]:
  # DEBUG BEGIN_STMT
  _10 ={v} UartState_3->RemainingBytes;
  *BytesRemaining_7(D) = _10;
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 3720888]:
  # DEBUG BEGIN_STMT
  *BytesRemaining_7(D) = 0;

  <bb 11> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  _11 ={v} UartState_3->Status;
  return _11;

}


Flexio_Uart_Ip_SetRxBuffer (const uint8 Channel, uint8 * RxData, const uint32 RxSize)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  _Bool _1;
  _Bool _2;
  _Bool _3;
  int _4;
  _Bool x.3_12;
  _Bool x.3_13;
  _Bool x.3_14;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_5(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_14 ={v} x;
  if (x.3_14 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 11> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 14> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _2 = RxData_7(D) != 0B;
  x ={v} _2;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_13 ={v} x;
  if (x.3_13 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 10> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 13> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _3 = RxSize_8(D) != 0;
  x ={v} _3;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_12 ={v} x;
  if (x.3_12 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 9> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 12> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = (int) Channel_5(D);
  UartState_9 = Flexio_Uart_Ip_apStateStructuresArray[_4];
  # DEBUG UartState => UartState_9
  # DEBUG BEGIN_STMT
  UartState_9->RxData = RxData_7(D);
  # DEBUG BEGIN_STMT
  UartState_9->RemainingBytes ={v} RxSize_8(D);
  return;

}


Flexio_Uart_Ip_SetTxBuffer (const uint8 Channel, const uint8 * TxData, const uint32 TxSize)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  _Bool _1;
  _Bool _2;
  _Bool _3;
  int _4;
  _Bool x.3_12;
  _Bool x.3_13;
  _Bool x.3_14;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_5(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_14 ={v} x;
  if (x.3_14 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 11> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 14> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _2 = TxData_7(D) != 0B;
  x ={v} _2;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_13 ={v} x;
  if (x.3_13 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 10> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 13> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _3 = TxSize_8(D) != 0;
  x ={v} _3;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_12 ={v} x;
  if (x.3_12 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 9> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 12> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = (int) Channel_5(D);
  UartState_9 = Flexio_Uart_Ip_apStateStructuresArray[_4];
  # DEBUG UartState => UartState_9
  # DEBUG BEGIN_STMT
  UartState_9->TxData = TxData_7(D);
  # DEBUG BEGIN_STMT
  UartState_9->RemainingBytes ={v} TxSize_8(D);
  return;

}


Flexio_Uart_Ip_SetBaudRate (const uint8 Channel, const Flexio_Uart_Ip_BaudrateType DesiredBaudrate, const uint32 ClockFrequency)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  uint16 BitCountValue;
  sint32 Divider;
  Flexio_Uart_Ip_StatusType Status;
  Flexio_Uart_Ip_TimerDecrementType TimerDecrement;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  _Bool _1;
  _Bool _2;
  int _3;
  <unnamed type> _4;
  _Bool _5;
  _Bool _6;
  <unnamed type> _7;
  long int ClockFrequency.18_8;
  long int DesiredBaudrate.19_9;
  long int _10;
  long int _11;
  unsigned int Divider.20_12;
  _Bool _13;
  long unsigned int _14;
  long unsigned int _15;
  long int ClockFrequency.22_16;
  long int DesiredBaudrate.23_17;
  long int _18;
  long int _19;
  unsigned int Divider.24_20;
  long unsigned int _21;
  long unsigned int _22;
  long int _23;
  long int _24;
  unsigned int Divider.28_25;
  _Bool _26;
  long unsigned int _27;
  long unsigned int _28;
  short unsigned int _29;
  short unsigned int _30;
  short unsigned int _31;
  unsigned char _32;
  short unsigned int _33;
  short unsigned int _34;
  <unnamed type> _35;
  long unsigned int _46;
  long unsigned int _50;
  long unsigned int _53;
  _Bool x.3_63;
  _Bool x.3_64;
  _Bool x.3_65;
  _Bool x.3_66;
  _Bool x.3_67;
  long unsigned int _68;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_41(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_65 ={v} x;
  if (x.3_65 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 27>; [50.00%]

  <bb 27> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 32> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _2 = ClockFrequency_43(D) != 0;
  x ={v} _2;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_64 ={v} x;
  if (x.3_64 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 26>; [50.00%]

  <bb 26> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 31> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _3 = (int) Channel_41(D);
  UartState_44 = Flexio_Uart_Ip_apStateStructuresArray[_3];
  # DEBUG UartState => UartState_44
  # DEBUG BEGIN_STMT
  UartUserCfg_45 = Flexio_Uart_Ip_apUserConfig[_3];
  # DEBUG UartUserCfg => UartUserCfg_45
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  _4 = UartUserCfg_45->BitCount;
  BitCountValue_47 = (uint16) _4;
  # DEBUG BitCountValue => BitCountValue_47
  # DEBUG BEGIN_STMT
  _5 = UartState_44 != 0B;
  x ={v} _5;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_63 ={v} x;
  if (x.3_63 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 25>; [50.00%]

  <bb 25> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 30> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _6 ={v} UartState_44->DriverIdle;
  if (_6 != 0)
    goto <bb 22>; [35.00%]
  else
    goto <bb 9>; [65.00%]

  <bb 9> [local count: 1727555]:
  # DEBUG BEGIN_STMT
  _7 = UartUserCfg_45->TimerDec;
  if (_7 == 0)
    goto <bb 10>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 10> [local count: 863778]:
  # DEBUG BEGIN_STMT
  # DEBUG TimerDecrement => 0
  # DEBUG BEGIN_STMT
  ClockFrequency.18_8 = (long int) ClockFrequency_43(D);
  DesiredBaudrate.19_9 = (long int) DesiredBaudrate_48(D);
  _10 = DesiredBaudrate.19_9 * 2;
  _11 = ClockFrequency.18_8 / _10;
  Divider_55 = _11 + -1;
  # DEBUG Divider => Divider_55
  # DEBUG BEGIN_STMT
  Divider.20_12 = (unsigned int) Divider_55;
  _13 = Divider.20_12 <= 255;
  x ={v} _13;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_66 ={v} x;
  if (x.3_66 != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 23>; [50.00%]

  <bb 23> [local count: 431889]:

  <bb 11> [local count: 43620762]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 28> [local count: 43620762]:
  goto <bb 11>; [100.00%]

  <bb 12> [local count: 431889]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _53 = (long unsigned int) _11;
  _14 = _53 * 2;
  _15 = ClockFrequency_43(D) / _14;
  UartState_44->BaudRate = _15;
  goto <bb 18>; [100.00%]

  <bb 13> [local count: 863778]:
  # DEBUG BEGIN_STMT
  ClockFrequency.22_16 = (long int) ClockFrequency_43(D);
  DesiredBaudrate.23_17 = (long int) DesiredBaudrate_48(D);
  _18 = DesiredBaudrate.23_17 * 32;
  _19 = ClockFrequency.22_16 / _18;
  Divider_49 = _19 + -1;
  # DEBUG Divider => Divider_49
  # DEBUG BEGIN_STMT
  Divider.24_20 = (unsigned int) Divider_49;
  if (Divider.24_20 <= 255)
    goto <bb 14>; [50.00%]
  else
    goto <bb 15>; [50.00%]

  <bb 14> [local count: 431889]:
  # DEBUG BEGIN_STMT
  # DEBUG TimerDecrement => 4
  # DEBUG BEGIN_STMT
  _50 = (long unsigned int) _19;
  _21 = _50 * 32;
  _22 = ClockFrequency_43(D) / _21;
  UartState_44->BaudRate = _22;
  goto <bb 18>; [100.00%]

  <bb 15> [local count: 431889]:
  # DEBUG BEGIN_STMT
  # DEBUG TimerDecrement => 5
  # DEBUG BEGIN_STMT
  _23 = DesiredBaudrate.23_17 * 512;
  _24 = ClockFrequency.22_16 / _23;
  Divider_51 = _24 + -1;
  # DEBUG Divider => Divider_51
  # DEBUG BEGIN_STMT
  Divider.28_25 = (unsigned int) Divider_51;
  _26 = Divider.28_25 <= 255;
  x ={v} _26;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_67 ={v} x;
  if (x.3_67 != 0)
    goto <bb 17>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 24> [local count: 215944]:

  <bb 16> [local count: 21810381]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 29> [local count: 21810381]:
  goto <bb 16>; [100.00%]

  <bb 17> [local count: 215944]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _46 = (long unsigned int) _24;
  _27 = _46 * 512;
  _28 = ClockFrequency_43(D) / _27;
  UartState_44->BaudRate = _28;

  <bb 18> [local count: 1079722]:
  # TimerDecrement_36 = PHI <0(12), 4(14), 5(17)>
  # Divider_38 = PHI <Divider_55(12), Divider_49(14), Divider_51(17)>
  # DEBUG Divider => Divider_38
  # DEBUG TimerDecrement => TimerDecrement_36
  # DEBUG BEGIN_STMT
  _29 = BitCountValue_47 << 1;
  _30 = _29 + 65535;
  _31 = _30 << 8;
  _32 = (unsigned char) Divider_38;
  _33 = (short unsigned int) _32;
  _34 = _31 + _33;
  # DEBUG Base => 1077035008B
  # DEBUG Timer => Channel_41(D)
  # DEBUG Value => _34
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_SetTimerCompare
  # DEBUG BEGIN_STMT
  _68 = (long unsigned int) _34;
  MEM[(struct FLEXIO_Type *)1077035008B].TIMCMP[_3] ={v} _68;
  # DEBUG Base => NULL
  # DEBUG Timer => NULL
  # DEBUG Value => NULL
  # DEBUG BEGIN_STMT
  _35 = UartUserCfg_45->Direction;
  if (_35 == 1)
    goto <bb 19>; [34.00%]
  else
    goto <bb 20>; [66.00%]

  <bb 19> [local count: 367105]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerConfig (1077035008B, Channel_41(D), 0, TimerDecrement_36, 0);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerStartStopBitConfig (1077035008B, Channel_41(D), 1, 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerCondition (1077035008B, Channel_41(D), 2, 2);
  goto <bb 22>; [100.00%]

  <bb 20> [local count: 712616]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerConfig (1077035008B, Channel_41(D), 4, TimerDecrement_36, 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerStartStopBitConfig (1077035008B, Channel_41(D), 1, 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerCondition (1077035008B, Channel_41(D), 4, 2);

  <bb 22> [local count: 2009944]:
  # Status_37 = PHI <2(8), 0(20), 0(19)>
  # DEBUG Status => Status_37
  # DEBUG BEGIN_STMT
  return Status_37;

}


Flexio_Uart_Ip_AbortTransferData (const uint8 Channel)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  Flexio_Uart_Ip_StatusType RetStatus;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  _Bool _1;
  int _2;
  _Bool _3;
  _Bool _4;
  _Bool _5;
  <unnamed type> _6;
  <unnamed type> _7;
  _Bool x.3_17;
  _Bool x.3_18;
  _Bool x.3_19;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_11(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_19 ={v} x;
  if (x.3_19 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 16>; [50.00%]

  <bb 16> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 19> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 0
  # DEBUG BEGIN_STMT
  _2 = (int) Channel_11(D);
  UartState_13 = Flexio_Uart_Ip_apStateStructuresArray[_2];
  # DEBUG UartState => UartState_13
  # DEBUG BEGIN_STMT
  UartUserCfg_14 = Flexio_Uart_Ip_apUserConfig[_2];
  # DEBUG UartUserCfg => UartUserCfg_14
  # DEBUG BEGIN_STMT
  _3 = UartState_13 != 0B;
  x ={v} _3;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_18 ={v} x;
  if (x.3_18 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 15>; [50.00%]

  <bb 15> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 18> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _4 = UartUserCfg_14 != 0B;
  x ={v} _4;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_17 ={v} x;
  if (x.3_17 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 14> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 17> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _5 ={v} UartState_13->DriverIdle;
  if (_5 != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 9> [local count: 1328889]:
  # DEBUG BEGIN_STMT
  UartState_13->Status ={v} 516;
  # DEBUG BEGIN_STMT
  _6 = UartUserCfg_14->DriverType;
  if (_6 == 0)
    goto <bb 10>; [33.00%]
  else
    goto <bb 11>; [67.00%]

  <bb 10> [local count: 438533]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_StopTransfer (Channel_11(D));

  <bb 11> [local count: 1328889]:
  # DEBUG BEGIN_STMT
  _7 ={v} UartState_13->Status;
  if (_7 == 518)
    goto <bb 12>; [34.00%]
  else
    goto <bb 13>; [66.00%]

  <bb 12> [local count: 451822]:
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 1

  <bb 13> [local count: 2657777]:
  # RetStatus_8 = PHI <0(8), 0(11), 1(12)>
  # DEBUG RetStatus => RetStatus_8
  # DEBUG BEGIN_STMT
  return RetStatus_8;

}


Flexio_Uart_Ip_SyncReceive (const uint8 Channel, uint8 * RxBuff, const uint32 RxSize, const uint32 Timeout)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  Flexio_Uart_Ip_StatusType RetStatus;
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  _Bool _1;
  _Bool _2;
  _Bool _3;
  int _4;
  _Bool _5;
  <unnamed type> _6;
  _Bool _7;
  <unnamed type> _8;
  long unsigned int _9;
  _Bool _10;
  _Bool _11;
  _Bool _12;
  int _13;
  long unsigned int TimeoutTicks.15_14;
  _Bool _15;
  <unnamed type> _16;
  long unsigned int _17;
  long unsigned int TimeoutTicks.16_18;
  _Bool _19;
  long unsigned int _20;
  <unnamed type> _21;
  long unsigned int TimeoutTicks.17_22;
  _Bool _23;
  int iftmp.14_25;
  _Bool x.3_63;
  _Bool x.3_64;
  _Bool x.3_65;
  _Bool x.3_66;
  _Bool x.3_67;
  _Bool x.3_68;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_32(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_67 ={v} x;
  if (x.3_67 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 37>; [50.00%]

  <bb 37> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 44> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _2 = RxBuff_34(D) != 0B;
  x ={v} _2;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_66 ={v} x;
  if (x.3_66 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 36>; [50.00%]

  <bb 36> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 43> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _3 = RxSize_35(D) != 0;
  x ={v} _3;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_65 ={v} x;
  if (x.3_65 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 35>; [50.00%]

  <bb 35> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 42> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  ElapsedTicks = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = (int) Channel_32(D);
  UartState_37 = Flexio_Uart_Ip_apStateStructuresArray[_4];
  # DEBUG UartState => UartState_37
  # DEBUG BEGIN_STMT
  UartUserCfg_38 = Flexio_Uart_Ip_apUserConfig[_4];
  # DEBUG UartUserCfg => UartUserCfg_38
  # DEBUG BEGIN_STMT
  _5 = UartState_37 != 0B;
  x ={v} _5;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_64 ={v} x;
  if (x.3_64 != 0)
    goto <bb 10>; [50.00%]
  else
    goto <bb 34>; [50.00%]

  <bb 34> [local count: 1328889]:

  <bb 9> [local count: 134217728]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 41> [local count: 134217728]:
  goto <bb 9>; [100.00%]

  <bb 10> [local count: 1328889]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _6 = UartUserCfg_38->Direction;
  _7 = _6 == 0;
  x ={v} _7;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_63 ={v} x;
  if (x.3_63 != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 33>; [50.00%]

  <bb 33> [local count: 664444]:

  <bb 11> [local count: 67108864]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 40> [local count: 67108864]:
  goto <bb 11>; [100.00%]

  <bb 12> [local count: 664444]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _8 = UartUserCfg_38->BitCount;
  if (_8 <= 8)
    goto <bb 14>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 13> [local count: 332222]:
  _9 = RxSize_35(D) & 1;
  _20 = 1 - _9;
  _13 = (int) _20;

  <bb 14> [local count: 664444]:
  # iftmp.14_25 = PHI <_13(13), 1(12)>
  _10 = (_Bool) iftmp.14_25;
  x ={v} _10;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_68 ={v} x;
  if (x.3_68 != 0)
    goto <bb 16>; [50.00%]
  else
    goto <bb 32>; [50.00%]

  <bb 32> [local count: 332222]:

  <bb 15> [local count: 33554432]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 39> [local count: 33554432]:
  goto <bb 15>; [100.00%]

  <bb 16> [local count: 332222]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  SchM_Enter_Uart_UART_EXCLUSIVE_AREA_07 ();
  # DEBUG BEGIN_STMT
  _11 ={v} UartState_37->DriverIdle;
  if (_11 != 0)
    goto <bb 17>; [35.00%]
  else
    goto <bb 18>; [65.00%]

  <bb 17> [local count: 116278]:
  # DEBUG BEGIN_STMT
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_07 ();
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 2
  goto <bb 30>; [100.00%]

  <bb 18> [local count: 215944]:
  # DEBUG BEGIN_STMT
  UartState_37->DriverIdle ={v} 1;
  # DEBUG BEGIN_STMT
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_07 ();
  # DEBUG BEGIN_STMT
  UartState_37->RxData = RxBuff_34(D);
  # DEBUG BEGIN_STMT
  UartState_37->RemainingBytes ={v} RxSize_35(D);
  # DEBUG BEGIN_STMT
  UartState_37->Status ={v} 2;
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetupReceiveData (Channel_32(D));
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, Timeout_46(D), 0);
  # DEBUG BEGIN_STMT
  goto <bb 23>; [100.00%]

  <bb 31> [local count: 1893847]:

  <bb 19> [local count: 17703645]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _12 = Flexio_Mcl_Ip_GetShifterStatus (1077035008B, Channel_32(D));
  if (_12 != 0)
    goto <bb 21>; [5.50%]
  else
    goto <bb 20>; [94.50%]

  <bb 20> [local count: 16729945]:
  TimeoutTicks.15_14 = TimeoutTicks;
  _15 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.15_14, 0);
  if (_15 != 0)
    goto <bb 21>; [5.50%]
  else
    goto <bb 38>; [94.50%]

  <bb 38> [local count: 15809798]:
  goto <bb 19>; [100.00%]

  <bb 21> [local count: 1893847]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_CheckShifterErrorStatus (Channel_32(D));
  # DEBUG BEGIN_STMT
  _16 ={v} UartState_37->Status;
  if (_16 == 514)
    goto <bb 25>; [3.66%]
  else
    goto <bb 22>; [96.34%]

  <bb 22> [local count: 1824533]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_ReadData (Channel_32(D));

  <bb 23> [local count: 2040477]:
  # DEBUG BEGIN_STMT
  _17 ={v} UartState_37->RemainingBytes;
  if (_17 != 0)
    goto <bb 24>; [96.34%]
  else
    goto <bb 25>; [3.66%]

  <bb 24> [local count: 1965796]:
  TimeoutTicks.16_18 = TimeoutTicks;
  _19 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.16_18, 0);
  if (_19 != 0)
    goto <bb 25>; [3.66%]
  else
    goto <bb 31>; [96.34%]

  <bb 25> [local count: 215944]:
  # DEBUG BEGIN_STMT
  _21 ={v} UartState_37->Status;
  if (_21 == 2)
    goto <bb 26>; [20.24%]
  else
    goto <bb 29>; [79.76%]

  <bb 26> [local count: 43707]:
  # DEBUG BEGIN_STMT
  TimeoutTicks.17_22 = TimeoutTicks;
  _23 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.17_22, 0);
  if (_23 != 0)
    goto <bb 27>; [50.00%]
  else
    goto <bb 28>; [50.00%]

  <bb 27> [local count: 21854]:
  # DEBUG BEGIN_STMT
  UartState_37->Status ={v} 518;
  goto <bb 29>; [100.00%]

  <bb 28> [local count: 21854]:
  # DEBUG BEGIN_STMT
  UartState_37->Status ={v} 0;

  <bb 29> [local count: 215944]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, Channel_32(D));
  # DEBUG BEGIN_STMT
  UartState_37->DriverIdle ={v} 0;
  # DEBUG BEGIN_STMT
  RetStatus_58 ={v} UartState_37->Status;
  # DEBUG RetStatus => RetStatus_58

  <bb 30> [local count: 332222]:
  # RetStatus_24 = PHI <2(17), RetStatus_58(29)>
  # DEBUG RetStatus => RetStatus_24
  # DEBUG BEGIN_STMT
  StartTime ={v} {CLOBBER};
  TimeoutTicks ={v} {CLOBBER};
  ElapsedTicks ={v} {CLOBBER};
  return RetStatus_24;

}


Flexio_Uart_Ip_AsyncReceive (const uint8 Channel, uint8 * RxBuff, const uint32 RxSize)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  Flexio_Uart_Ip_StatusType RetStatus;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  _Bool _1;
  int _2;
  long unsigned int _3;
  _Bool _4;
  _Bool _5;
  _Bool _6;
  <unnamed type> _7;
  _Bool _8;
  <unnamed type> _9;
  long unsigned int _10;
  _Bool _11;
  _Bool _12;
  <unnamed type> _13;
  int iftmp.13_15;
  int _32;
  _Bool x.3_33;
  _Bool x.3_34;
  _Bool x.3_35;
  _Bool x.3_36;
  _Bool x.3_37;
  _Bool x.3_38;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_17(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_37 ={v} x;
  if (x.3_37 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 26>; [50.00%]

  <bb 26> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 32> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = (int) Channel_17(D);
  UartState_19 = Flexio_Uart_Ip_apStateStructuresArray[_2];
  # DEBUG UartState => UartState_19
  # DEBUG BEGIN_STMT
  UartUserCfg_20 = Flexio_Uart_Ip_apUserConfig[_2];
  # DEBUG UartUserCfg => UartUserCfg_20
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 1
  # DEBUG BEGIN_STMT
  _4 = UartState_19 != 0B;
  x ={v} _4;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_36 ={v} x;
  if (x.3_36 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 25>; [50.00%]

  <bb 25> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 31> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _5 = RxBuff_21(D) != 0B;
  x ={v} _5;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_35 ={v} x;
  if (x.3_35 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 24> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 30> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _6 = RxSize_22(D) != 0;
  x ={v} _6;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_34 ={v} x;
  if (x.3_34 != 0)
    goto <bb 10>; [50.00%]
  else
    goto <bb 23>; [50.00%]

  <bb 23> [local count: 1328889]:

  <bb 9> [local count: 134217728]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 29> [local count: 134217728]:
  goto <bb 9>; [100.00%]

  <bb 10> [local count: 1328889]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _7 = UartUserCfg_20->Direction;
  _8 = _7 == 0;
  x ={v} _8;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_33 ={v} x;
  if (x.3_33 != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 22>; [50.00%]

  <bb 22> [local count: 664444]:

  <bb 11> [local count: 67108864]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 28> [local count: 67108864]:
  goto <bb 11>; [100.00%]

  <bb 12> [local count: 664444]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _9 = UartUserCfg_20->BitCount;
  if (_9 <= 8)
    goto <bb 14>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 13> [local count: 332222]:
  _10 = RxSize_22(D) & 1;
  _3 = 1 - _10;
  _32 = (int) _3;

  <bb 14> [local count: 664444]:
  # iftmp.13_15 = PHI <_32(13), 1(12)>
  _11 = (_Bool) iftmp.13_15;
  x ={v} _11;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_38 ={v} x;
  if (x.3_38 != 0)
    goto <bb 16>; [50.00%]
  else
    goto <bb 21>; [50.00%]

  <bb 21> [local count: 332222]:

  <bb 15> [local count: 33554432]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 27> [local count: 33554432]:
  goto <bb 15>; [100.00%]

  <bb 16> [local count: 332222]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  SchM_Enter_Uart_UART_EXCLUSIVE_AREA_06 ();
  # DEBUG BEGIN_STMT
  _12 ={v} UartState_19->DriverIdle;
  if (_12 != 0)
    goto <bb 17>; [35.00%]
  else
    goto <bb 18>; [65.00%]

  <bb 17> [local count: 116278]:
  # DEBUG BEGIN_STMT
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_06 ();
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 2
  goto <bb 20>; [100.00%]

  <bb 18> [local count: 215944]:
  # DEBUG BEGIN_STMT
  UartState_19->DriverIdle ={v} 1;
  # DEBUG BEGIN_STMT
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_06 ();
  # DEBUG BEGIN_STMT
  UartState_19->RxData = RxBuff_21(D);
  # DEBUG BEGIN_STMT
  UartState_19->RemainingBytes ={v} RxSize_22(D);
  # DEBUG BEGIN_STMT
  UartState_19->Status ={v} 2;
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_EnableReceiver (Channel_17(D));
  # DEBUG BEGIN_STMT
  _13 = UartUserCfg_20->DriverType;
  if (_13 == 0)
    goto <bb 19>; [33.00%]
  else
    goto <bb 20>; [67.00%]

  <bb 19> [local count: 71262]:
<L6>:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterInterrupt (Channel_17(D), 1);
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 0
  # DEBUG BEGIN_STMT

  <bb 20> [local count: 332222]:
  # RetStatus_14 = PHI <2(17), 0(19), 1(18)>
  # DEBUG RetStatus => RetStatus_14
  # DEBUG BEGIN_STMT
  return RetStatus_14;

}


Flexio_Uart_Ip_SyncSend (const uint8 Channel, const uint8 * TxBuff, const uint32 TxSize, const uint32 Timeout)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  Flexio_Uart_Ip_StatusType RetStatus;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  _Bool _1;
  _Bool _2;
  _Bool _3;
  int _4;
  _Bool _6;
  <unnamed type> _7;
  _Bool _8;
  <unnamed type> _9;
  long unsigned int _10;
  _Bool _11;
  _Bool _12;
  _Bool _13;
  int _14;
  long unsigned int TimeoutTicks.10_15;
  _Bool _16;
  long unsigned int _17;
  long unsigned int TimeoutTicks.11_18;
  _Bool _19;
  long unsigned int _20;
  long unsigned int TimeoutTicks.12_21;
  _Bool _22;
  <unnamed type> _23;
  int iftmp.8_25;
  unsigned char iftmp.9_26;
  _Bool x.3_65;
  _Bool x.3_66;
  _Bool x.3_67;
  _Bool x.3_68;
  _Bool x.3_69;
  _Bool x.3_70;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_33(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_69 ={v} x;
  if (x.3_69 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 38>; [50.00%]

  <bb 38> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 47> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _2 = TxBuff_35(D) != 0B;
  x ={v} _2;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_68 ={v} x;
  if (x.3_68 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 37>; [50.00%]

  <bb 37> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 46> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _3 = TxSize_36(D) != 0;
  x ={v} _3;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_67 ={v} x;
  if (x.3_67 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 36>; [50.00%]

  <bb 36> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 45> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  ElapsedTicks = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = (int) Channel_33(D);
  UartState_38 = Flexio_Uart_Ip_apStateStructuresArray[_4];
  # DEBUG UartState => UartState_38
  # DEBUG BEGIN_STMT
  UartUserCfg_39 = Flexio_Uart_Ip_apUserConfig[_4];
  # DEBUG UartUserCfg => UartUserCfg_39
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  _6 = UartState_38 != 0B;
  x ={v} _6;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_66 ={v} x;
  if (x.3_66 != 0)
    goto <bb 10>; [50.00%]
  else
    goto <bb 35>; [50.00%]

  <bb 35> [local count: 1328889]:

  <bb 9> [local count: 134217728]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 44> [local count: 134217728]:
  goto <bb 9>; [100.00%]

  <bb 10> [local count: 1328889]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _7 = UartUserCfg_39->Direction;
  _8 = _7 == 1;
  x ={v} _8;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_65 ={v} x;
  if (x.3_65 != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 34>; [50.00%]

  <bb 34> [local count: 664444]:

  <bb 11> [local count: 67108864]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 43> [local count: 67108864]:
  goto <bb 11>; [100.00%]

  <bb 12> [local count: 664444]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _9 = UartUserCfg_39->BitCount;
  if (_9 <= 8)
    goto <bb 14>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 13> [local count: 332222]:
  _10 = TxSize_36(D) & 1;
  _20 = 1 - _10;
  _14 = (int) _20;

  <bb 14> [local count: 664444]:
  # iftmp.8_25 = PHI <_14(13), 1(12)>
  _11 = (_Bool) iftmp.8_25;
  x ={v} _11;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_70 ={v} x;
  if (x.3_70 != 0)
    goto <bb 16>; [50.00%]
  else
    goto <bb 33>; [50.00%]

  <bb 33> [local count: 332222]:

  <bb 15> [local count: 33554432]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 42> [local count: 33554432]:
  goto <bb 15>; [100.00%]

  <bb 16> [local count: 332222]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  SchM_Enter_Uart_UART_EXCLUSIVE_AREA_05 ();
  # DEBUG BEGIN_STMT
  _12 ={v} UartState_38->DriverIdle;
  if (_12 != 0)
    goto <bb 17>; [35.00%]
  else
    goto <bb 18>; [65.00%]

  <bb 17> [local count: 116278]:
  # DEBUG BEGIN_STMT
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_05 ();
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 2
  goto <bb 32>; [100.00%]

  <bb 18> [local count: 215944]:
  # DEBUG BEGIN_STMT
  UartState_38->DriverIdle ={v} 1;
  # DEBUG BEGIN_STMT
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_05 ();
  # DEBUG BEGIN_STMT
  UartState_38->TxData = TxBuff_35(D);
  # DEBUG BEGIN_STMT
  UartState_38->RemainingBytes ={v} TxSize_36(D);
  # DEBUG BEGIN_STMT
  UartState_38->Status ={v} 2;
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterInterrupt (Channel_33(D), 0);
  # DEBUG BEGIN_STMT
  if (TxSize_36(D) == 1)
    goto <bb 20>; [34.00%]
  else
    goto <bb 19>; [66.00%]

  <bb 19> [local count: 142523]:

  <bb 20> [local count: 215944]:
  # iftmp.9_26 = PHI <1(18), 2(19)>
  UartState_38->TxFlush = iftmp.9_26;
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerMode (1077035008B, Channel_33(D), 1);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, Timeout_49(D), 0);
  # DEBUG BEGIN_STMT
  goto <bb 24>; [100.00%]

  <bb 21> [local count: 2789108]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_WriteData (Channel_33(D));
  # DEBUG BEGIN_STMT

  <bb 22> [local count: 26072524]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _13 = Flexio_Mcl_Ip_GetShifterStatus (1077035008B, Channel_33(D));
  if (_13 != 0)
    goto <bb 40>; [5.50%]
  else
    goto <bb 23>; [94.50%]

  <bb 40> [local count: 1433989]:
  goto <bb 25>; [100.00%]

  <bb 23> [local count: 24638535]:
  TimeoutTicks.10_15 = TimeoutTicks;
  _16 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.10_15, 0);
  if (_16 != 0)
    goto <bb 39>; [5.50%]
  else
    goto <bb 41>; [94.50%]

  <bb 41> [local count: 23283415]:
  goto <bb 22>; [100.00%]

  <bb 39> [local count: 1355119]:

  <bb 24> [local count: 1571064]:

  <bb 25> [local count: 3005053]:
  # DEBUG BEGIN_STMT
  _17 ={v} UartState_38->RemainingBytes;
  if (_17 != 0)
    goto <bb 26>; [96.34%]
  else
    goto <bb 27>; [3.66%]

  <bb 26> [local count: 2895068]:
  TimeoutTicks.11_18 = TimeoutTicks;
  _19 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.11_18, 0);
  if (_19 != 0)
    goto <bb 27>; [3.66%]
  else
    goto <bb 21>; [96.34%]

  <bb 27> [local count: 215944]:
  # DEBUG BEGIN_STMT
  TimeoutTicks.12_21 = TimeoutTicks;
  _22 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.12_21, 0);
  if (_22 != 0)
    goto <bb 28>; [50.00%]
  else
    goto <bb 29>; [50.00%]

  <bb 28> [local count: 107972]:
  # DEBUG BEGIN_STMT
  UartState_38->Status ={v} 518;

  <bb 29> [local count: 215944]:
  # DEBUG BEGIN_STMT
  _23 ={v} UartState_38->Status;
  if (_23 == 2)
    goto <bb 30>; [34.00%]
  else
    goto <bb 31>; [66.00%]

  <bb 30> [local count: 73421]:
  # DEBUG BEGIN_STMT
  UartState_38->Status ={v} 0;

  <bb 31> [local count: 215944]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, Channel_33(D));
  # DEBUG BEGIN_STMT
  UartState_38->DriverIdle ={v} 0;
  # DEBUG BEGIN_STMT
  RetStatus_60 ={v} UartState_38->Status;
  # DEBUG RetStatus => RetStatus_60

  <bb 32> [local count: 332222]:
  # RetStatus_24 = PHI <2(17), RetStatus_60(31)>
  # DEBUG RetStatus => RetStatus_24
  # DEBUG BEGIN_STMT
  StartTime ={v} {CLOBBER};
  TimeoutTicks ={v} {CLOBBER};
  ElapsedTicks ={v} {CLOBBER};
  return RetStatus_24;

}


Flexio_Uart_Ip_GetStatus (const uint8 Channel, uint32 * BytesRemaining)
{
  Flexio_Uart_Ip_StatusType D.6889;
  volatile boolean x;
  _Bool _1;
  _Bool x.3_7;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_3(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_7 ={v} x;
  if (x.3_7 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 5>; [50.00%]

  <bb 5> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 6> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  _2 = Flexio_Uart_Ip_GetStatus.part.0 (Channel_3(D), BytesRemaining_6(D));
  return _2;

}


Flexio_Uart_Ip_AsyncSend (const uint8 Channel, const uint8 * TxBuff, const uint32 TxSize)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  Flexio_Uart_Ip_StatusType RetStatus;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  _Bool _1;
  int _2;
  long unsigned int _3;
  _Bool _4;
  _Bool _5;
  _Bool _6;
  <unnamed type> _7;
  _Bool _8;
  <unnamed type> _9;
  long unsigned int _10;
  _Bool _11;
  _Bool _12;
  <unnamed type> _13;
  int iftmp.6_15;
  unsigned char iftmp.7_16;
  int _34;
  _Bool x.3_35;
  _Bool x.3_36;
  _Bool x.3_37;
  _Bool x.3_38;
  _Bool x.3_39;
  _Bool x.3_40;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_18(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_39 ={v} x;
  if (x.3_39 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 28>; [50.00%]

  <bb 28> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 34> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = (int) Channel_18(D);
  UartState_20 = Flexio_Uart_Ip_apStateStructuresArray[_2];
  # DEBUG UartState => UartState_20
  # DEBUG BEGIN_STMT
  UartUserCfg_21 = Flexio_Uart_Ip_apUserConfig[_2];
  # DEBUG UartUserCfg => UartUserCfg_21
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 1
  # DEBUG BEGIN_STMT
  _4 = UartState_20 != 0B;
  x ={v} _4;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_38 ={v} x;
  if (x.3_38 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 27>; [50.00%]

  <bb 27> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 33> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _5 = TxBuff_22(D) != 0B;
  x ={v} _5;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_37 ={v} x;
  if (x.3_37 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 26>; [50.00%]

  <bb 26> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 32> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _6 = TxSize_23(D) != 0;
  x ={v} _6;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_36 ={v} x;
  if (x.3_36 != 0)
    goto <bb 10>; [50.00%]
  else
    goto <bb 25>; [50.00%]

  <bb 25> [local count: 1328889]:

  <bb 9> [local count: 134217728]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 31> [local count: 134217728]:
  goto <bb 9>; [100.00%]

  <bb 10> [local count: 1328889]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _7 = UartUserCfg_21->Direction;
  _8 = _7 == 1;
  x ={v} _8;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_35 ={v} x;
  if (x.3_35 != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 24> [local count: 664444]:

  <bb 11> [local count: 67108864]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 30> [local count: 67108864]:
  goto <bb 11>; [100.00%]

  <bb 12> [local count: 664444]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _9 = UartUserCfg_21->BitCount;
  if (_9 <= 8)
    goto <bb 14>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 13> [local count: 332222]:
  _10 = TxSize_23(D) & 1;
  _3 = 1 - _10;
  _34 = (int) _3;

  <bb 14> [local count: 664444]:
  # iftmp.6_15 = PHI <_34(13), 1(12)>
  _11 = (_Bool) iftmp.6_15;
  x ={v} _11;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_40 ={v} x;
  if (x.3_40 != 0)
    goto <bb 16>; [50.00%]
  else
    goto <bb 23>; [50.00%]

  <bb 23> [local count: 332222]:

  <bb 15> [local count: 33554432]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 29> [local count: 33554432]:
  goto <bb 15>; [100.00%]

  <bb 16> [local count: 332222]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  SchM_Enter_Uart_UART_EXCLUSIVE_AREA_04 ();
  # DEBUG BEGIN_STMT
  _12 ={v} UartState_20->DriverIdle;
  if (_12 != 0)
    goto <bb 17>; [35.00%]
  else
    goto <bb 18>; [65.00%]

  <bb 17> [local count: 116278]:
  # DEBUG BEGIN_STMT
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_04 ();
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 2
  goto <bb 22>; [100.00%]

  <bb 18> [local count: 215944]:
  # DEBUG BEGIN_STMT
  UartState_20->DriverIdle ={v} 1;
  # DEBUG BEGIN_STMT
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_04 ();
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  UartState_20->TxData = TxBuff_22(D);
  # DEBUG BEGIN_STMT
  UartState_20->RemainingBytes ={v} TxSize_23(D);
  # DEBUG BEGIN_STMT
  UartState_20->Status ={v} 2;
  # DEBUG BEGIN_STMT
  if (TxSize_23(D) == 1)
    goto <bb 20>; [34.00%]
  else
    goto <bb 19>; [66.00%]

  <bb 19> [local count: 142523]:

  <bb 20> [local count: 215944]:
  # iftmp.7_16 = PHI <1(18), 2(19)>
  UartState_20->TxFlush = iftmp.7_16;
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerMode (1077035008B, Channel_18(D), 1);
  # DEBUG BEGIN_STMT
  _13 = UartUserCfg_21->DriverType;
  if (_13 == 0)
    goto <bb 21>; [33.00%]
  else
    goto <bb 22>; [67.00%]

  <bb 21> [local count: 71262]:
<L9>:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterInterrupt (Channel_18(D), 1);
  # DEBUG BEGIN_STMT
  # DEBUG RetStatus => 0
  # DEBUG BEGIN_STMT

  <bb 22> [local count: 332222]:
  # RetStatus_14 = PHI <2(17), 0(21), 1(20)>
  # DEBUG RetStatus => RetStatus_14
  # DEBUG BEGIN_STMT
  return RetStatus_14;

}


Flexio_Uart_Ip_Deinit (const uint8 Channel)
{
  volatile boolean x;
  volatile boolean x;
  Flexio_Uart_Ip_StatusType RetVal;
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  _Bool _1;
  int _2;
  struct Flexio_Uart_Ip_StateStructureType * _3;
  _Bool _4;
  <unnamed type> _5;
  long unsigned int TimeoutTicks.4_6;
  _Bool _7;
  long unsigned int TimeoutTicks.5_8;
  _Bool _9;
  _Bool x.3_28;
  _Bool x.3_29;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_14(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_29 ={v} x;
  if (x.3_29 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 13> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 16> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  ElapsedTicks = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  _2 = (int) Channel_14(D);
  _3 = Flexio_Uart_Ip_apStateStructuresArray[_2];
  _4 = _3 != 0B;
  x ={v} _4;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_28 ={v} x;
  if (x.3_28 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 12> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 15> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, 10000000, 0);
  # DEBUG BEGIN_STMT

  <bb 7> [local count: 49689685]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _5 = Flexio_Uart_Ip_GetStatus (Channel_14(D), 0B);
  if (_5 == 2)
    goto <bb 8>; [94.50%]
  else
    goto <bb 9>; [5.50%]

  <bb 8> [local count: 46956753]:
  TimeoutTicks.4_6 = TimeoutTicks;
  _7 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.4_6, 0);
  if (_7 != 0)
    goto <bb 9>; [5.50%]
  else
    goto <bb 14>; [94.50%]

  <bb 14> [local count: 44374131]:
  goto <bb 7>; [100.00%]

  <bb 9> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  TimeoutTicks.5_8 = TimeoutTicks;
  _9 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.5_8, 0);
  if (_9 != 0)
    goto <bb 11>; [67.00%]
  else
    goto <bb 10>; [33.00%]

  <bb 10> [local count: 1754133]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_apStateStructuresArray[_2] = 0B;
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterInterrupt (Channel_14(D), 0);
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_SetSoftwareReset (1077035008B, 1);
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_SetSoftwareReset (1077035008B, 0);
  # DEBUG BEGIN_STMT
  # DEBUG RetVal => 0

  <bb 11> [local count: 5315554]:
  # RetVal_10 = PHI <1(9), 0(10)>
  # DEBUG RetVal => RetVal_10
  # DEBUG BEGIN_STMT
  StartTime ={v} {CLOBBER};
  TimeoutTicks ={v} {CLOBBER};
  ElapsedTicks ={v} {CLOBBER};
  return RetVal_10;

}


Flexio_Uart_Ip_GetBaudRate (const uint8 Channel, uint32 * BaudRate)
{
  volatile boolean x;
  volatile boolean x;
  const struct Flexio_Uart_Ip_StateStructureType * UartState;
  _Bool _1;
  _Bool _2;
  int _3;
  long unsigned int _4;
  _Bool x.3_10;
  _Bool x.3_11;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  _1 = Channel_5(D) <= 7;
  x ={v} _1;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_11 ={v} x;
  if (x.3_11 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 8> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 10> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _2 = BaudRate_7(D) != 0B;
  x ={v} _2;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_10 ={v} x;
  if (x.3_10 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 7>; [50.00%]

  <bb 7> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 9> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _3 = (int) Channel_5(D);
  UartState_8 = Flexio_Uart_Ip_apStateStructuresArray[_3];
  # DEBUG UartState => UartState_8
  # DEBUG BEGIN_STMT
  _4 = UartState_8->BaudRate;
  *BaudRate_7(D) = _4;
  return;

}


Flexio_Uart_Ip_Init (const uint8 Channel, const struct Flexio_Uart_Ip_UserConfigType * UserConfig)
{
  volatile boolean x;
  volatile boolean x;
  volatile boolean x;
  struct Flexio_Uart_Ip_StateStructureType * UartStatePtr;
  int _1;
  struct Flexio_Uart_Ip_StateStructureType * _2;
  _Bool _3;
  _Bool _4;
  long unsigned int _5;
  long unsigned int _6;
  _Bool _7;
  long unsigned int _8;
  <unnamed type> _9;
  <unnamed type> _10;
  unsigned char _11;
  unsigned char _12;
  <unnamed type> _13;
  <unnamed type> _14;
  unsigned char _15;
  unsigned char _16;
  <unnamed type> _17;
  _Bool x.3_33;
  _Bool x.3_34;
  _Bool x.3_35;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  UartStatePtr_21 = UserConfig_20(D)->StateStruct;
  # DEBUG UartStatePtr => UartStatePtr_21
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_22(D);
  _2 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  _3 = _2 == 0B;
  x ={v} _3;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_35 ={v} x;
  if (x.3_35 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 14> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 17> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _4 = Channel_22(D) <= 7;
  x ={v} _4;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_34 ={v} x;
  if (x.3_34 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 13> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 16> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _5 = (long unsigned int) Channel_22(D);
  _6 = UserConfig_20(D)->Channel;
  _7 = _5 == _6;
  x ={v} _7;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_33 ={v} x;
  if (x.3_33 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 12> [local count: 2657777]:

  <bb 7> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 15> [local count: 268435456]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 2657777]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_apStateStructuresArray[_1] = UartStatePtr_21;
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_apUserConfig[_1] = UserConfig_20(D);
  # DEBUG BEGIN_STMT
  UartStatePtr_21->RxData = 0B;
  # DEBUG BEGIN_STMT
  UartStatePtr_21->TxData = 0B;
  # DEBUG BEGIN_STMT
  UartStatePtr_21->RemainingBytes ={v} 0;
  # DEBUG BEGIN_STMT
  _8 = UserConfig_20(D)->BaudRate;
  UartStatePtr_21->BaudRate = _8;
  # DEBUG BEGIN_STMT
  UartStatePtr_21->Status ={v} 0;
  # DEBUG BEGIN_STMT
  UartStatePtr_21->DriverIdle ={v} 0;
  # DEBUG BEGIN_STMT
  _9 = UserConfig_20(D)->Direction;
  if (_9 == 1)
    goto <bb 9>; [34.00%]
  else
    goto <bb 10>; [66.00%]

  <bb 9> [local count: 903644]:
  # DEBUG BEGIN_STMT
  _10 = UserConfig_20(D)->BitCount;
  _11 = UserConfig_20(D)->Divider;
  _12 = UserConfig_20(D)->DataPin;
  _13 = UserConfig_20(D)->TimerDec;
  Flexio_Uart_Ip_ConfigureTx (Channel_22(D), _10, _11, _12, _13);
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 1754133]:
  # DEBUG BEGIN_STMT
  _14 = UserConfig_20(D)->BitCount;
  _15 = UserConfig_20(D)->Divider;
  _16 = UserConfig_20(D)->DataPin;
  _17 = UserConfig_20(D)->TimerDec;
  Flexio_Uart_Ip_ConfigureRx (Channel_22(D), _14, _15, _16, _17);

  <bb 11> [local count: 2657777]:
  return;

}


Flexio_Uart_Ip_EnableReceiver (const uint8 Channel)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterStatus (1077035008B, Channel_2(D));
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterMode (1077035008B, Channel_2(D), 1);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerMode (1077035008B, Channel_2(D), 1);
  return;

}


Flexio_Uart_Ip_SetupReceiveData (const uint8 Channel)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterInterrupt (Channel_2(D), 0);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_EnableReceiver (Channel_2(D));
  return;

}


Flexio_Uart_Ip_SetShifterInterrupt (const uint8 Channel, boolean Enable)
{
  int _1;
  unsigned int _2;
  unsigned char _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_4(D);
  _2 = 1 << _1;
  _3 = (unsigned char) _2;
  Flexio_Mcl_Ip_SetShifterInterrupt (1077035008B, _3, Enable_6(D));
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_SetShifterErrorInterrupt (1077035008B, _3, Enable_6(D));
  return;

}


Flexio_Uart_Ip_CheckShifterErrorStatus (const uint8 Channel)
{
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  int _1;
  _Bool _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_4(D);
  UartState_6 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  # DEBUG UartState => UartState_6
  # DEBUG BEGIN_STMT
  _2 = Flexio_Mcl_Ip_GetShifterErrorStatus (1077035008B, Channel_4(D));
  if (_2 != 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334800]:
  # DEBUG BEGIN_STMT
  UartState_6->Status ={v} 514;
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterErrorStatus (1077035008B, Channel_4(D));

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

}


Flexio_Uart_Ip_CheckRxOperation (const uint8 Channel, const uint8 ShifterMaskFlag, const uint8 ShifterErrMaskFlag)
{
  uint32 RegValue;
  uint32 RegValue;
  boolean IsReturn;
  uint32 ResourceMask;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  int _1;
  long unsigned int _2;
  long unsigned int _3;
  void (*<T4e6>) (const uint8, const Flexio_Uart_Ip_EventType, void *) _4;
  void * _5;
  long unsigned int _6;
  long unsigned int _7;
  long unsigned int _8;
  void (*<T4e6>) (const uint8, const Flexio_Uart_Ip_EventType, void *) _9;
  void * _10;
  long unsigned int _11;
  <unnamed type> _12;
  void (*<T4e6>) (const uint8, const Flexio_Uart_Ip_EventType, void *) _13;
  void * _14;
  long unsigned int _37;
  _Bool _38;
  long unsigned int _40;
  _Bool _41;

  <bb 2> [local count: 1073741821]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_18(D);
  UartState_20 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  # DEBUG UartState => UartState_20
  # DEBUG BEGIN_STMT
  UartUserCfg_21 = Flexio_Uart_Ip_apUserConfig[_1];
  # DEBUG UartUserCfg => UartUserCfg_21
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  ResourceMask_22 = 1 << _1;
  # DEBUG ResourceMask => ResourceMask_22
  # DEBUG BEGIN_STMT
  # DEBUG IsReturn => 0
  # DEBUG BEGIN_STMT
  _2 = (long unsigned int) ShifterErrMaskFlag_23(D);
  _3 = _2 & ResourceMask_22;
  if (_3 != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 7>; [50.00%]

  <bb 3> [local count: 536870910]:
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_18(D)
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_GetShifterErrorInterrupt
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  RegValue_36 ={v} MEM[(const struct FLEXIO_Type *)1077035008B].SHIFTEIEN;
  # DEBUG RegValue => RegValue_36
  # DEBUG BEGIN_STMT
  _37 = RegValue_36 >> _1;
  # DEBUG RegValue => _37 & 1
  # DEBUG BEGIN_STMT
  _38 = (_Bool) _37;
  # DEBUG RetStatus => _38
  # DEBUG BEGIN_STMT
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG RegValue => NULL
  if (_38 != 0)
    goto <bb 5>; [67.00%]
  else
    goto <bb 4>; [33.00%]

  <bb 4> [local count: 177167399]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterErrorStatus (1077035008B, Channel_18(D));
  # DEBUG BEGIN_STMT
  # DEBUG IsReturn => 1
  goto <bb 13>; [100.00%]

  <bb 5> [local count: 359703511]:
  # DEBUG BEGIN_STMT
  UartState_20->Status ={v} 514;
  # DEBUG BEGIN_STMT
  UartState_20->RemainingBytes ={v} 0;
  # DEBUG BEGIN_STMT
  _4 = UartUserCfg_21->Callback;
  if (_4 != 0B)
    goto <bb 6>; [70.00%]
  else
    goto <bb 13>; [30.00%]

  <bb 6> [local count: 251792459]:
  # DEBUG BEGIN_STMT
  _5 = UartUserCfg_21->CallbackParam;
  _4 (Channel_18(D), 3, _5);
  goto <bb 13>; [100.00%]

  <bb 7> [local count: 536870910]:
  # DEBUG BEGIN_STMT
  _6 = (long unsigned int) ShifterMaskFlag_24(D);
  _7 = _6 & ResourceMask_22;
  if (_7 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 8> [local count: 268435455]:
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_18(D)
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_GetShifterInterrupt
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  RegValue_39 ={v} MEM[(const struct FLEXIO_Type *)1077035008B].SHIFTSIEN;
  # DEBUG RegValue => RegValue_39
  # DEBUG BEGIN_STMT
  _40 = RegValue_39 >> _1;
  # DEBUG RegValue => _40 & 1
  # DEBUG BEGIN_STMT
  _41 = (_Bool) _40;
  # DEBUG RetStatus => _41
  # DEBUG BEGIN_STMT
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG RegValue => NULL
  if (_41 != 0)
    goto <bb 10>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 9> [local count: 134217728]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterStatus (1077035008B, Channel_18(D));
  # DEBUG BEGIN_STMT
  # DEBUG IsReturn => 1
  goto <bb 13>; [100.00%]

  <bb 10> [local count: 134217728]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_ReadData (Channel_18(D));
  # DEBUG BEGIN_STMT
  _8 ={v} UartState_20->RemainingBytes;
  if (_8 == 0)
    goto <bb 11>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 11> [local count: 67108864]:
  # DEBUG BEGIN_STMT
  _9 = UartUserCfg_21->Callback;
  if (_9 != 0B)
    goto <bb 12>; [70.00%]
  else
    goto <bb 13>; [30.00%]

  <bb 12> [local count: 46976205]:
  # DEBUG BEGIN_STMT
  _10 = UartUserCfg_21->CallbackParam;
  _9 (Channel_18(D), 0, _10);

  <bb 13> [local count: 1073741823]:
  # IsReturn_15 = PHI <0(5), 0(7), 0(10), 1(4), 0(6), 1(9), 0(12), 0(11)>
  # DEBUG IsReturn => IsReturn_15
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _11 ={v} UartState_20->RemainingBytes;
  if (_11 == 0)
    goto <bb 14>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <bb 14> [local count: 536870911]:
  if (IsReturn_15 != 0)
    goto <bb 18>; [67.00%]
  else
    goto <bb 15>; [33.00%]

  <bb 15> [local count: 177167400]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterStatus (1077035008B, Channel_18(D));
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_StopTransfer (Channel_18(D));
  # DEBUG BEGIN_STMT
  _12 ={v} UartState_20->Status;
  if (_12 == 2)
    goto <bb 16>; [34.00%]
  else
    goto <bb 18>; [66.00%]

  <bb 16> [local count: 60236916]:
  # DEBUG BEGIN_STMT
  UartState_20->Status ={v} 0;
  # DEBUG BEGIN_STMT
  _13 = UartUserCfg_21->Callback;
  if (_13 != 0B)
    goto <bb 17>; [70.00%]
  else
    goto <bb 18>; [30.00%]

  <bb 17> [local count: 42165842]:
  # DEBUG BEGIN_STMT
  _14 = UartUserCfg_21->CallbackParam;
  _13 (Channel_18(D), 2, _14);

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

}


Flexio_Uart_Ip_ReadData (const uint8 Channel)
{
  volatile boolean x;
  volatile boolean x;
  uint32 Data;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  uint32 Data32b;
  int _1;
  long unsigned int _2;
  _Bool _3;
  volatile uint8 * _4;
  _Bool _5;
  <unnamed type> _6;
  long unsigned int _7;
  unsigned char _8;
  volatile uint8 * _9;
  volatile uint8 * _10;
  long unsigned int _11;
  long unsigned int _12;
  long unsigned int _22;
  _Bool x.3_24;
  _Bool x.3_25;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_14(D);
  UartState_16 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  # DEBUG UartState => UartState_16
  # DEBUG BEGIN_STMT
  UartUserCfg_17 = Flexio_Uart_Ip_apUserConfig[_1];
  # DEBUG UartUserCfg => UartUserCfg_17
  # DEBUG BEGIN_STMT
  _2 ={v} UartState_16->RemainingBytes;
  _3 = _2 != 0;
  x ={v} _3;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_25 ={v} x;
  if (x.3_25 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 10> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 12> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  _4 = UartState_16->RxData;
  _5 = _4 != 0B;
  x ={v} _5;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_24 ={v} x;
  if (x.3_24 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 9> [local count: 5315554]:

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 11> [local count: 536870913]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 5315554]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_14(D)
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_ReadShifterBuffer
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _22 ={v} MEM[(const struct FLEXIO_Type *)1077035008B].SHIFTBUF[_1];
  Data_23 = _22 & 4278190080;
  # DEBUG Data => Data_23
  # DEBUG BEGIN_STMT
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG Data => NULL
  # DEBUG Data32b => Data_23
  # DEBUG BEGIN_STMT
  _6 = UartUserCfg_17->BitCount;
  _7 = 32 - _6;
  Data32b_18 = Data_23 >> _7;
  # DEBUG Data32b => Data32b_18
  # DEBUG BEGIN_STMT
  if (_6 == 8)
    goto <bb 7>; [34.00%]
  else
    goto <bb 8>; [66.00%]

  <bb 7> [local count: 1807288]:
  # DEBUG BEGIN_STMT
  _8 = (unsigned char) Data32b_18;
  *_4 ={v} _8;
  # DEBUG BEGIN_STMT
  _9 = UartState_16->RxData;
  _10 = _9 + 1;
  UartState_16->RxData = _10;
  # DEBUG BEGIN_STMT
  _11 ={v} UartState_16->RemainingBytes;
  _12 = _11 + 4294967295;
  UartState_16->RemainingBytes ={v} _12;

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

}


Flexio_Uart_Ip_CheckCompleteTransferData (const uint8 Channel)
{
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  const struct Flexio_Uart_Ip_StateStructureType * UartState;
  int _1;
  long unsigned int _2;
  void (*<T4e6>) (const uint8, const Flexio_Uart_Ip_EventType, void *) _3;
  void * _4;
  long unsigned int _5;
  <unnamed type> _6;
  unsigned int _7;
  unsigned char _8;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_11(D);
  UartState_13 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  # DEBUG UartState => UartState_13
  # DEBUG BEGIN_STMT
  UartUserCfg_14 = Flexio_Uart_Ip_apUserConfig[_1];
  # DEBUG UartUserCfg => UartUserCfg_14
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  _2 ={v} UartState_13->RemainingBytes;
  if (_2 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 5>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  _3 = UartUserCfg_14->Callback;
  if (_3 != 0B)
    goto <bb 4>; [70.00%]
  else
    goto <bb 5>; [30.00%]

  <bb 4> [local count: 375809640]:
  # DEBUG BEGIN_STMT
  _4 = UartUserCfg_14->CallbackParam;
  _3 (Channel_11(D), 1, _4);

  <bb 5> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _5 ={v} UartState_13->RemainingBytes;
  if (_5 == 0)
    goto <bb 6>; [33.00%]
  else
    goto <bb 8>; [67.00%]

  <bb 6> [local count: 354334800]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, Channel_11(D));
  # DEBUG BEGIN_STMT
  _6 = UartUserCfg_14->DriverType;
  if (_6 == 0)
    goto <bb 7>; [33.00%]
  else
    goto <bb 8>; [67.00%]

  <bb 7> [local count: 116930483]:
  # DEBUG BEGIN_STMT
  _7 = 1 << _1;
  _8 = (unsigned char) _7;
  Flexio_Mcl_Ip_SetShifterInterrupt (1077035008B, _8, 0);
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_SetTimerInterrupt (1077035008B, _8, 1);

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

}


Flexio_Uart_Ip_CheckTxOperation (const uint8 Channel, const uint8 ShifterMaskFlag, const uint8 TimerMaskFlag)
{
  uint32 RegValue;
  uint32 RegValue;
  uint32 ResourceMask;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  unsigned char _5;
  unsigned char _6;
  <unnamed type> _7;
  void (*<T4e6>) (const uint8, const Flexio_Uart_Ip_EventType, void *) _8;
  void * _9;
  _Bool _10;
  long unsigned int _11;
  long unsigned int _12;
  long unsigned int _13;
  long unsigned int _35;
  _Bool _36;
  long unsigned int _38;
  _Bool _39;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_16(D);
  UartState_18 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  # DEBUG UartState => UartState_18
  # DEBUG BEGIN_STMT
  UartUserCfg_19 = Flexio_Uart_Ip_apUserConfig[_1];
  # DEBUG UartUserCfg => UartUserCfg_19
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  ResourceMask_20 = 1 << _1;
  # DEBUG ResourceMask => ResourceMask_20
  # DEBUG BEGIN_STMT
  # DEBUG IsReturn => 0
  # DEBUG BEGIN_STMT
  _2 ={v} UartState_18->RemainingBytes;
  if (_2 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  _3 = (long unsigned int) TimerMaskFlag_25(D);
  _4 = _3 & ResourceMask_20;
  if (_4 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <bb 4> [local count: 268435456]:
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Timer => Channel_16(D)
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_GetTimerInterrupt
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  RegValue_34 ={v} MEM[(const struct FLEXIO_Type *)1077035008B].TIMIEN;
  # DEBUG RegValue => RegValue_34
  # DEBUG BEGIN_STMT
  _35 = RegValue_34 >> _1;
  # DEBUG RegValue => _35 & 1
  # DEBUG BEGIN_STMT
  _36 = (_Bool) _35;
  # DEBUG RetStatus => _36
  # DEBUG BEGIN_STMT
  # DEBUG Base => NULL
  # DEBUG Timer => NULL
  # DEBUG RegValue => NULL
  if (_36 != 0)
    goto <bb 5>; [67.00%]
  else
    goto <bb 6>; [33.00%]

  <bb 5> [local count: 179851756]:
  # DEBUG IsReturn => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _5 = UartState_18->TxFlush;
  _6 = _5 + 255;
  UartState_18->TxFlush = _6;
  # DEBUG BEGIN_STMT
  if (_6 == 0)
    goto <bb 7>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 6> [local count: 88583700]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, Channel_16(D));
  # DEBUG BEGIN_STMT
  # DEBUG IsReturn => 1
  # DEBUG BEGIN_STMT
  goto <bb 18>; [100.00%]

  <bb 7> [local count: 89925878]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterStatus (1077035008B, Channel_16(D));
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_StopTransfer (Channel_16(D));
  # DEBUG BEGIN_STMT
  _7 ={v} UartState_18->Status;
  if (_7 == 2)
    goto <bb 8>; [34.00%]
  else
    goto <bb 9>; [66.00%]

  <bb 8> [local count: 30574799]:
  # DEBUG BEGIN_STMT
  UartState_18->Status ={v} 0;

  <bb 9> [local count: 89925878]:
  # DEBUG BEGIN_STMT
  _8 = UartUserCfg_19->Callback;
  if (_8 != 0B)
    goto <bb 10>; [70.00%]
  else
    goto <bb 18>; [30.00%]

  <bb 10> [local count: 62948115]:
  # DEBUG BEGIN_STMT
  _9 = UartUserCfg_19->CallbackParam;
  _8 (Channel_16(D), 2, _9);
  goto <bb 18>; [100.00%]

  <bb 11> [local count: 89925878]:
  # DEBUG BEGIN_STMT
  _10 = Flexio_Mcl_Ip_GetShifterStatus (1077035008B, Channel_16(D));
  if (_10 != 0)
    goto <bb 12>; [33.00%]
  else
    goto <bb 18>; [67.00%]

  <bb 12> [local count: 29675540]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterStartBit (1077035008B, Channel_16(D), 3);
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_16(D)
  # DEBUG Value => 4294967295
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_WriteShifterBuffer
  # DEBUG BEGIN_STMT
  MEM[(struct FLEXIO_Type *)1077035008B].SHIFTBUF[_1] ={v} 4294967295;
  goto <bb 18>; [100.00%]

  <bb 13> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  _11 = (long unsigned int) ShifterMaskFlag_21(D);
  _12 = _11 & ResourceMask_20;
  if (_12 != 0)
    goto <bb 14>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <bb 14> [local count: 268435456]:
  _13 ={v} UartState_18->RemainingBytes;
  if (_13 != 0)
    goto <bb 15>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <bb 15> [local count: 134217728]:
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_16(D)
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_GetShifterInterrupt
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  RegValue_37 ={v} MEM[(const struct FLEXIO_Type *)1077035008B].SHIFTSIEN;
  # DEBUG RegValue => RegValue_37
  # DEBUG BEGIN_STMT
  _38 = RegValue_37 >> _1;
  # DEBUG RegValue => _38 & 1
  # DEBUG BEGIN_STMT
  _39 = (_Bool) _38;
  # DEBUG RetStatus => _39
  # DEBUG BEGIN_STMT
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG RegValue => NULL
  if (_39 != 0)
    goto <bb 17>; [50.00%]
  else
    goto <bb 16>; [50.00%]

  <bb 16> [local count: 67108864]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterStatus (1077035008B, Channel_16(D));
  goto <bb 18>; [100.00%]

  <bb 17> [local count: 67108864]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_WriteData (Channel_16(D));
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_CheckCompleteTransferData (Channel_16(D));

  <bb 18> [local count: 1073741824]:
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG Value => NULL
  # DEBUG BEGIN_STMT
  return;

}


Flexio_Uart_Ip_WriteData (const uint8 Channel)
{
  volatile boolean x;
  uint32 Data32b;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  int _1;
  const uint8 * _2;
  _Bool _3;
  <unnamed type> _4;
  unsigned char _5;
  const uint8 * _6;
  long unsigned int _7;
  long unsigned int _8;
  _Bool x.3_18;

  <bb 2> [local count: 21262216]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Data32b => 0
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_11(D);
  UartUserCfg_13 = Flexio_Uart_Ip_apUserConfig[_1];
  # DEBUG UartUserCfg => UartUserCfg_13
  # DEBUG BEGIN_STMT
  UartState_14 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  # DEBUG UartState => UartState_14
  # DEBUG BEGIN_STMT
  _2 = UartState_14->TxData;
  _3 = _2 != 0B;
  x ={v} _3;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.3_18 ={v} x;
  if (x.3_18 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 7>; [50.00%]

  <bb 7> [local count: 10631108]:

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 8> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 10631108]:
  # DEBUG BEGIN_STMT
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  _4 = UartUserCfg_13->BitCount;
  if (_4 == 8)
    goto <bb 5>; [34.00%]
  else
    goto <bb 6>; [66.00%]

  <bb 5> [local count: 3614577]:
  # DEBUG BEGIN_STMT
  _5 ={v} *_2;
  Data32b_15 = (uint32) _5;
  # DEBUG Data32b => Data32b_15
  # DEBUG BEGIN_STMT
  _6 = _2 + 1;
  UartState_14->TxData = _6;
  # DEBUG BEGIN_STMT
  _7 ={v} UartState_14->RemainingBytes;
  _8 = _7 + 4294967295;
  UartState_14->RemainingBytes ={v} _8;

  <bb 6> [local count: 10631108]:
  # Data32b_9 = PHI <0(4), Data32b_15(5)>
  # DEBUG Data32b => Data32b_9
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_11(D)
  # DEBUG Value => Data32b_9
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_WriteShifterBuffer
  # DEBUG BEGIN_STMT
  MEM[(struct FLEXIO_Type *)1077035008B].SHIFTBUF[_1] ={v} Data32b_9;
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG Value => NULL
  return;

}


Flexio_Uart_Ip_StopTransfer (const uint8 Channel)
{
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  int _1;
  <unnamed type> _2;
  <unnamed type> _3;
  _Bool _4;
  long unsigned int TimeoutTicks.0_5;
  _Bool _6;
  _Bool _7;
  long unsigned int TimeoutTicks.1_8;
  _Bool _9;
  _Bool _10;
  long unsigned int TimeoutTicks.2_11;
  _Bool _12;
  <unnamed type> _13;
  long unsigned int _42;

  <bb 2> [local count: 859859949]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_20(D);
  UartUserCfg_22 = Flexio_Uart_Ip_apUserConfig[_1];
  # DEBUG UartUserCfg => UartUserCfg_22
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  ElapsedTicks = 0;
  # DEBUG BEGIN_STMT
  UartState_24 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  # DEBUG UartState => UartState_24
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_EndTransfer (Channel_20(D));
  # DEBUG BEGIN_STMT
  _2 ={v} UartState_24->Status;
  if (_2 == 516)
    goto <bb 3>; [20.24%]
  else
    goto <bb 12>; [79.76%]

  <bb 3> [local count: 174035653]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, 10000000, 0);
  # DEBUG BEGIN_STMT
  _3 = UartUserCfg_22->Direction;
  if (_3 == 1)
    goto <bb 15>; [34.00%]
  else
    goto <bb 16>; [66.00%]

  <bb 15> [local count: 59172123]:

  <bb 4> [local count: 553139738]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = Flexio_Mcl_Ip_GetTimerStatus (1077035008B, Channel_20(D));
  if (_4 != 0)
    goto <bb 10>; [5.50%]
  else
    goto <bb 5>; [94.50%]

  <bb 5> [local count: 522717052]:
  TimeoutTicks.0_5 = TimeoutTicks;
  _6 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.0_5, 0);
  if (_6 != 0)
    goto <bb 10>; [5.50%]
  else
    goto <bb 17>; [94.50%]

  <bb 17> [local count: 493967614]:
  goto <bb 4>; [100.00%]

  <bb 16> [local count: 114863530]:

  <bb 6> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _7 = Flexio_Mcl_Ip_GetShifterStatus (1077035008B, Channel_20(D));
  if (_7 != 0)
    goto <bb 8>; [5.50%]
  else
    goto <bb 7>; [94.50%]

  <bb 7> [local count: 1014686025]:
  TimeoutTicks.1_8 = TimeoutTicks;
  _9 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.1_8, 0);
  if (_9 != 0)
    goto <bb 8>; [5.50%]
  else
    goto <bb 18>; [94.50%]

  <bb 18> [local count: 958878294]:
  goto <bb 6>; [100.00%]

  <bb 8> [local count: 114863531]:
  # DEBUG BEGIN_STMT
  _10 = Flexio_Mcl_Ip_GetShifterStatus (1077035008B, Channel_20(D));
  if (_10 != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 57431766]:
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_20(D)
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_ReadShifterBuffer
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _42 ={v} MEM[(const struct FLEXIO_Type *)1077035008B].SHIFTBUF[_1];
  # DEBUG Data => _42 & 4278190080
  # DEBUG BEGIN_STMT

  <bb 10> [local count: 174035654]:
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG Data => NULL
  # DEBUG BEGIN_STMT
  TimeoutTicks.2_11 = TimeoutTicks;
  _12 = Flexio_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.2_11, 0);
  if (_12 != 0)
    goto <bb 11>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 11> [local count: 87017827]:
  # DEBUG BEGIN_STMT
  UartState_24->Status ={v} 518;

  <bb 12> [local count: 859859951]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerMode (1077035008B, Channel_20(D), 0);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterMode (1077035008B, Channel_20(D), 0);
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterErrorStatus (1077035008B, Channel_20(D));
  # DEBUG BEGIN_STMT
  _13 = UartUserCfg_22->Direction;
  if (_13 == 1)
    goto <bb 13>; [20.24%]
  else
    goto <bb 14>; [79.76%]

  <bb 13> [local count: 174035653]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterStartBit (1077035008B, Channel_20(D), 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterMode (1077035008B, Channel_20(D), 2);

  <bb 14> [local count: 859859952]:
  StartTime ={v} {CLOBBER};
  TimeoutTicks ={v} {CLOBBER};
  ElapsedTicks ={v} {CLOBBER};
  return;

}


Flexio_Uart_Ip_EndTransfer (const uint8 Channel)
{
  struct Flexio_Uart_Ip_StateStructureType * UartState;
  int _1;
  unsigned int _2;
  unsigned char _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_4(D);
  UartState_6 = Flexio_Uart_Ip_apStateStructuresArray[_1];
  # DEBUG UartState => UartState_6
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterInterrupt (Channel_4(D), 0);
  # DEBUG BEGIN_STMT
  _2 = 1 << _1;
  _3 = (unsigned char) _2;
  Flexio_Mcl_Ip_SetTimerInterrupt (1077035008B, _3, 0);
  # DEBUG BEGIN_STMT
  UartState_6->RemainingBytes ={v} 0;
  # DEBUG BEGIN_STMT
  UartState_6->DriverIdle ={v} 0;
  return;

}


Flexio_Uart_Ip_ConfigureRx (const uint8 Channel, const Flexio_Uart_Ip_BitCountPerCharType BitCount, const uint8 Divider, const uint8 DataPin, const Flexio_Uart_Ip_TimerDecrementType TimerDec)
{
  uint16 Bits;
  short unsigned int _1;
  short unsigned int _2;
  short unsigned int _3;
  short unsigned int _4;
  short unsigned int _5;
  long unsigned int _21;
  int _22;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  Bits_7 = (uint16) BitCount_6(D);
  # DEBUG Bits => Bits_7
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_9(D)
  # DEBUG Start => 2
  # DEBUG Stop => 3
  # DEBUG Source => 0
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_SetShifterConfig
  # DEBUG BEGIN_STMT
  _22 = (int) Channel_9(D);
  MEM[(struct FLEXIO_Type *)1077035008B].SHIFTCFG[_22] ={v} 50;
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG Start => NULL
  # DEBUG Stop => NULL
  # DEBUG Source => NULL
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterControl (1077035008B, Channel_9(D), 0, Channel_9(D), 1);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetPinShifterControl (1077035008B, Channel_9(D), DataPin_11(D), 0, 0);
  # DEBUG BEGIN_STMT
  _1 = Bits_7 << 1;
  _2 = _1 + 65535;
  _3 = _2 << 8;
  _4 = (short unsigned int) Divider_13(D);
  _5 = _3 + _4;
  # DEBUG Base => 1077035008B
  # DEBUG Timer => Channel_9(D)
  # DEBUG Value => _5
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_SetTimerCompare
  # DEBUG BEGIN_STMT
  _21 = (long unsigned int) _5;
  MEM[(struct FLEXIO_Type *)1077035008B].TIMCMP[_22] ={v} _21;
  # DEBUG Base => NULL
  # DEBUG Timer => NULL
  # DEBUG Value => NULL
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerConfig (1077035008B, Channel_9(D), 4, TimerDec_14(D), 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerStartStopBitConfig (1077035008B, Channel_9(D), 1, 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerCondition (1077035008B, Channel_9(D), 4, 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerControl (1077035008B, Channel_9(D), 0);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerTrigger (1077035008B, Channel_9(D), 0, 0, 0);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetPinTimerControl (1077035008B, Channel_9(D), DataPin_11(D), 1, 0);
  return;

}


Flexio_Uart_Ip_ConfigureTx (const uint8 Channel, const Flexio_Uart_Ip_BitCountPerCharType BitCount, const uint8 Divider, const uint8 DataPin, const Flexio_Uart_Ip_TimerDecrementType TimerDec)
{
  uint16 Bits;
  short unsigned int _1;
  short unsigned int _2;
  short unsigned int _3;
  short unsigned int _4;
  short unsigned int _5;
  unsigned char _6;
  unsigned char _7;
  long unsigned int _23;
  int _24;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  Bits_9 = (uint16) BitCount_8(D);
  # DEBUG Bits => Bits_9
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG Shifter => Channel_11(D)
  # DEBUG Start => 2
  # DEBUG Stop => 3
  # DEBUG Source => 0
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_SetShifterConfig
  # DEBUG BEGIN_STMT
  _24 = (int) Channel_11(D);
  MEM[(struct FLEXIO_Type *)1077035008B].SHIFTCFG[_24] ={v} 50;
  # DEBUG Base => NULL
  # DEBUG Shifter => NULL
  # DEBUG Start => NULL
  # DEBUG Stop => NULL
  # DEBUG Source => NULL
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetShifterControl (1077035008B, Channel_11(D), 2, Channel_11(D), 0);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetPinShifterControl (1077035008B, Channel_11(D), DataPin_13(D), 0, 3);
  # DEBUG BEGIN_STMT
  _1 = Bits_9 << 1;
  _2 = _1 + 65535;
  _3 = _2 << 8;
  _4 = (short unsigned int) Divider_15(D);
  _5 = _3 + _4;
  # DEBUG Base => 1077035008B
  # DEBUG Timer => Channel_11(D)
  # DEBUG Value => _5
  # DEBUG INLINE_ENTRY Flexio_Uart_Ip_SetTimerCompare
  # DEBUG BEGIN_STMT
  _23 = (long unsigned int) _5;
  MEM[(struct FLEXIO_Type *)1077035008B].TIMCMP[_24] ={v} _23;
  # DEBUG Base => NULL
  # DEBUG Timer => NULL
  # DEBUG Value => NULL
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerConfig (1077035008B, Channel_11(D), 0, TimerDec_16(D), 0);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerStartStopBitConfig (1077035008B, Channel_11(D), 1, 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerCondition (1077035008B, Channel_11(D), 2, 2);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetTimerControl (1077035008B, Channel_11(D), 0);
  # DEBUG BEGIN_STMT
  _6 = Channel_11(D) << 2;
  _7 = _6 + 1;
  Flexio_Uart_Ip_SetTimerTrigger (1077035008B, Channel_11(D), _7, 1, 1);
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_SetPinTimerControl (1077035008B, Channel_11(D), 0, 0, 0);
  return;

}


Flexio_Uart_Ip_IrqHandler (uint8 Channel, uint8 ShifterMaskFlag, uint8 ShifterErrorMaskFlag, uint8 TimerMaskFlag)
{
  const struct Flexio_Uart_Ip_UserConfigType * UartUserCfg;
  int _1;
  <unnamed type> _2;

  <bb 2> [local count: 1073741823]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) Channel_4(D);
  UartUserCfg_6 = Flexio_Uart_Ip_apUserConfig[_1];
  # DEBUG UartUserCfg => UartUserCfg_6
  # DEBUG BEGIN_STMT
  # DEBUG Base => 1077035008B
  # DEBUG BEGIN_STMT
  if (UartUserCfg_6 == 0B)
    goto <bb 3>; [17.43%]
  else
    goto <bb 4>; [82.57%]

  <bb 3> [local count: 187153200]:
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearTimerStatus (1077035008B, Channel_4(D));
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterStatus (1077035008B, Channel_4(D));
  # DEBUG BEGIN_STMT
  Flexio_Mcl_Ip_ClearShifterErrorStatus (1077035008B, Channel_4(D));
  goto <bb 7>; [100.00%]

  <bb 4> [local count: 886588623]:
  # DEBUG BEGIN_STMT
  _2 = UartUserCfg_6->Direction;
  if (_2 == 1)
    goto <bb 5>; [34.00%]
  else
    goto <bb 6>; [66.00%]

  <bb 5> [local count: 301440135]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_CheckTxOperation (Channel_4(D), ShifterMaskFlag_7(D), TimerMaskFlag_10(D));
  goto <bb 7>; [100.00%]

  <bb 6> [local count: 585148489]:
  # DEBUG BEGIN_STMT
  Flexio_Uart_Ip_CheckRxOperation (Channel_4(D), ShifterMaskFlag_7(D), ShifterErrorMaskFlag_8(D));

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

}


