OsIf_MicrosToTicks (uint32 Micros, OsIf_CounterType SelectedCounter)
{
  uint32 Value;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Value => 0
  # DEBUG BEGIN_STMT
  switch (SelectedCounter_3(D)) <default: <L5> [33.33%], case 0: <L6> [33.33%], case 1: <L1> [33.33%]>

  <bb 3> [local count: 357878150]:
<L6>:
  # DEBUG BEGIN_STMT
  # DEBUG Micros => Micros_5(D)
  # DEBUG INLINE_ENTRY NULL
  # DEBUG BEGIN_STMT
  # DEBUG Micros => NULL
  # DEBUG Value => Micros_5(D)
  # DEBUG BEGIN_STMT
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 357878150]:
<L1>:
  # DEBUG BEGIN_STMT
  Value_7 = OsIf_Timer_System_MicrosToTicks (Micros_5(D));
  # DEBUG Value => Value_7
  # DEBUG BEGIN_STMT

  <bb 5> [local count: 1073634451]:
  # Value_1 = PHI <Micros_5(D)(3), Value_7(4), 0(2)>
<L5>:
  # DEBUG Value => Value_1
  # DEBUG BEGIN_STMT
  return Value_1;

}


OsIf_SetTimerFrequency (uint32 Freq, OsIf_CounterType SelectedCounter)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  if (SelectedCounter_2(D) == 1)
    goto <bb 3>; [20.24%]
  else
    goto <bb 4>; [79.76%]

  <bb 3> [local count: 217325345]:
<L1>:
  # DEBUG BEGIN_STMT
  OsIf_Timer_System_SetTimerFrequency (Freq_4(D));
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
<L4>:
  # DEBUG Freq => NULL
  return;

}


OsIf_GetElapsed (uint32 * const CurrentRef, OsIf_CounterType SelectedCounter)
{
  uint32 Value;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Value => 0
  # DEBUG BEGIN_STMT
  switch (SelectedCounter_3(D)) <default: <L5> [33.33%], case 0: <L7> [33.33%], case 1: <L1> [33.33%]>

  <bb 3> [local count: 357878150]:
<L7>:
  # DEBUG BEGIN_STMT
  # DEBUG D#1 => CurrentRef_5(D)
  # DEBUG INLINE_ENTRY NULL
  # DEBUG CurrentRef => D#1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG Value => 1
  # DEBUG BEGIN_STMT
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 357878150]:
<L1>:
  # DEBUG BEGIN_STMT
  Value_7 = OsIf_Timer_System_GetElapsed (CurrentRef_5(D));
  # DEBUG Value => Value_7
  # DEBUG BEGIN_STMT

  <bb 5> [local count: 1073634451]:
  # Value_1 = PHI <1(3), Value_7(4), 0(2)>
<L5>:
  # DEBUG Value => Value_1
  # DEBUG BEGIN_STMT
  return Value_1;

}


OsIf_GetCounter (OsIf_CounterType SelectedCounter)
{
  uint32 Value;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Value => 0
  # DEBUG BEGIN_STMT
  if (SelectedCounter_3(D) == 1)
    goto <bb 3>; [20.24%]
  else
    goto <bb 4>; [79.76%]

  <bb 3> [local count: 217325345]:
<L1>:
  # DEBUG BEGIN_STMT
  Value_6 = OsIf_Timer_System_GetCounter ();
  # DEBUG Value => Value_6
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # Value_1 = PHI <0(2), Value_6(3)>
<L5>:
  # DEBUG Value => Value_1
  # DEBUG BEGIN_STMT
  return Value_1;

}


OsIf_Init (const void * Config)
{
  volatile boolean x;
  _Bool x.0_4;

  <bb 2> [local count: 260080]:
  # DEBUG BEGIN_STMT
  if (Config_2(D) != 0B)
    goto <bb 3>; [82.57%]
  else
    goto <bb 5>; [17.43%]

  <bb 3> [local count: 214748]:
  # DEBUG BEGIN_STMT
  x ={v} 0;
  # DEBUG x => x
  # DEBUG INLINE_ENTRY DevAssert
  # DEBUG BEGIN_STMT
  x.0_4 ={v} x;
  if (x.0_4 != 0)
    goto <bb 5>; [50.00%]
  else
    goto <bb 6>; [50.00%]

  <bb 6> [local count: 107374]:

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

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

  <bb 5> [local count: 152706]:
  # DEBUG x => NULL
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  OsIf_Timer_System_Init ();
  return;

}


