
Marking local functions: DisableFirc_TrustedCall EnableFirc_TrustedCall SetFirc_TrustedCall SetInputSouceSytemClock DisableSircStop_TrustedCall EnableSircStop_TrustedCall SetSircStop_TrustedCall DisableSircVlp_TrustedCall EnableSircVlp_TrustedCall SetSircVlp_TrustedCall DisableSirc_TrustedCall EnableSirc_TrustedCall SetSirc_TrustedCall


Marking externally visible functions:


Marking externally visible variables: intOscCallbacks


Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:

clockFeatures/31 (clockFeatures) @0612b8b8
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: SetFirc_TrustedCall/22 (read)
  Availability: not_available
  Varpool flags: read-only
ReportClockErrors/30 (ReportClockErrors) @06127380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: SetSirc_TrustedCall/3 EnableSirc_TrustedCall/5 SetInputSouceSytemClock/21 SetFirc_TrustedCall/22 SetFirc_TrustedCall/22 EnableFirc_TrustedCall/24 
  Calls: 
ClockTimeoutExpired/29 (ClockTimeoutExpired) @061272a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: SetSirc_TrustedCall/3 EnableSirc_TrustedCall/5 SetInputSouceSytemClock/21 SetFirc_TrustedCall/22 SetFirc_TrustedCall/22 EnableFirc_TrustedCall/24 
  Calls: 
ClockStartTimeout/28 (ClockStartTimeout) @061271c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: SetSirc_TrustedCall/3 EnableSirc_TrustedCall/5 SetInputSouceSytemClock/21 SetFirc_TrustedCall/22 SetFirc_TrustedCall/22 EnableFirc_TrustedCall/24 
  Calls: 
DisableFirc/27 (DisableFirc) @06124d20
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: DisableFirc_TrustedCall/26 
DisableFirc_TrustedCall/26 (DisableFirc_TrustedCall) @06124a80
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: DisableFirc/27 
  Calls: 
EnableFirc/25 (EnableFirc) @061247e0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: EnableFirc_TrustedCall/24 
EnableFirc_TrustedCall/24 (EnableFirc_TrustedCall) @06124540
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: EnableFirc/25 
  Calls: ReportClockErrors/30 ClockTimeoutExpired/29 ClockStartTimeout/28 
SetFirc/23 (SetFirc) @061241c0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: SetFirc_TrustedCall/22 
SetFirc_TrustedCall/22 (SetFirc_TrustedCall) @0611a380
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: clockFeatures/31 (read)
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: SetFirc/23 
  Calls: ReportClockErrors/30 ClockTimeoutExpired/29 ClockStartTimeout/28 DisableSirc/8 SetInputSouceSytemClock/21 ReportClockErrors/30 ClockTimeoutExpired/29 ClockStartTimeout/28 SetInputSouceSytemClock/21 SetSirc/4 
SetInputSouceSytemClock/21 (SetInputSouceSytemClock) @0611a7e0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: SetFirc_TrustedCall/22 SetFirc_TrustedCall/22 
  Calls: ReportClockErrors/30 ClockTimeoutExpired/29 ClockStartTimeout/28 
DisableSircStop/20 (DisableSircStop) @0611a540
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: DisableSircStop_TrustedCall/19 
DisableSircStop_TrustedCall/19 (DisableSircStop_TrustedCall) @0611a2a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: DisableSircStop/20 
  Calls: 
EnableSircStop/18 (EnableSircStop) @0611a000
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: EnableSircStop_TrustedCall/17 
EnableSircStop_TrustedCall/17 (EnableSircStop_TrustedCall) @06116540
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: EnableSircStop/18 
  Calls: 
SetSircStop/16 (SetSircStop) @06116d20
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: SetSircStop_TrustedCall/15 
SetSircStop_TrustedCall/15 (SetSircStop_TrustedCall) @06116a80
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: SetSircStop/16 
  Calls: 
DisableSircVlp/14 (DisableSircVlp) @06116700
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: DisableSircVlp_TrustedCall/13 
DisableSircVlp_TrustedCall/13 (DisableSircVlp_TrustedCall) @06116460
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: DisableSircVlp/14 
  Calls: 
EnableSircVlp/12 (EnableSircVlp) @061161c0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: EnableSircVlp_TrustedCall/11 
EnableSircVlp_TrustedCall/11 (EnableSircVlp_TrustedCall) @06113c40
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: EnableSircVlp/12 
  Calls: 
SetSircVlp/10 (SetSircVlp) @06113e00
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: SetSircVlp_TrustedCall/9 
SetSircVlp_TrustedCall/9 (SetSircVlp_TrustedCall) @06113b60
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: SetSircVlp/10 
  Calls: 
DisableSirc/8 (DisableSirc) @061137e0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: SetFirc_TrustedCall/22 
  Calls: DisableSirc_TrustedCall/7 
DisableSirc_TrustedCall/7 (DisableSirc_TrustedCall) @06113540
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: DisableSirc/8 
  Calls: 
EnableSirc/6 (EnableSirc) @061132a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: EnableSirc_TrustedCall/5 
EnableSirc_TrustedCall/5 (EnableSirc_TrustedCall) @06113000
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: EnableSirc/6 
  Calls: ReportClockErrors/30 ClockTimeoutExpired/29 ClockStartTimeout/28 
SetSirc/4 (SetSirc) @0600fe00
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: SetFirc_TrustedCall/22 
  Calls: SetSirc_TrustedCall/3 
SetSirc_TrustedCall/3 (SetSirc_TrustedCall) @0600fb60
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local optimize_size
  Called by: SetSirc/4 
  Calls: ReportClockErrors/30 ClockTimeoutExpired/29 ClockStartTimeout/28 
InternalOscillatorEmpty_Disable/2 (InternalOscillatorEmpty_Disable) @0600f620
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: 
InternalOscillatorEmpty/1 (InternalOscillatorEmpty) @0600f380
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: intOscCallbacks/0 (addr)intOscCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: 
intOscCallbacks/0 (intOscCallbacks) @0600d6c0
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: InternalOscillatorEmpty/1 (addr)InternalOscillatorEmpty/1 (addr)InternalOscillatorEmpty_Disable/2 (addr)SetSirc/4 (addr)EnableSirc/6 (addr)DisableSirc/8 (addr)SetSircVlp/10 (addr)EnableSircVlp/12 (addr)DisableSircVlp/14 (addr)SetSircStop/16 (addr)EnableSircStop/18 (addr)DisableSircStop/20 (addr)SetFirc/23 (addr)EnableFirc/25 (addr)DisableFirc/27 (addr)
  Referring: 
  Availability: available
  Varpool flags: initialized read-only const-value-known
DisableFirc (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  DisableFirc_TrustedCall (name);
  return;

}


DisableFirc_TrustedCall (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = 1074151424B;
  _2 = _1->FIRCCSR;
  _3 = 1074151424B;
  _4 = _2 & 4294967294;
  _3->FIRCCSR = _4;
  return;

}


EnableFirc (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  EnableFirc_TrustedCall (config);
  return;

}


EnableFirc_TrustedCall (const struct Clock_Ip_IrcoscConfigType * config)
{
  uint32 IrcoscStatus;
  uint32 TimeoutTicks;
  uint32 ElapsedTime;
  uint32 StartTime;
  boolean TimeoutOccurred;

  <bb 2> :
  # DEBUG BEGIN_STMT
  TimeoutOccurred = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = config->enable;
  if (_1 == 1)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  _2 = 1074151424B;
  _3 = _2->FIRCCSR;
  _4 = 1074151424B;
  _5 = _3 | 1;
  _4->FIRCCSR = _5;
  # DEBUG BEGIN_STMT
  ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 50000);

  <bb 4> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _6 = 1074151424B;
  _7 = _6->FIRCCSR;
  _8 = _7 >> 24;
  IrcoscStatus = _8 & 1;
  # DEBUG BEGIN_STMT
  TimeoutTicks.0_9 = TimeoutTicks;
  TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.0_9);
  # DEBUG BEGIN_STMT
  if (IrcoscStatus == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _10 = ~TimeoutOccurred;
  if (_10 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 6> :
  # DEBUG BEGIN_STMT
  if (TimeoutOccurred != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  # DEBUG BEGIN_STMT
  _11 = config->name;
  ReportClockErrors (1, _11);

  <bb 8> :
  StartTime = {CLOBBER};
  ElapsedTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  return;

}


SetFirc (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  SetFirc_TrustedCall (config);
  return;

}


SetFirc_TrustedCall (const struct Clock_Ip_IrcoscConfigType * config)
{
  uint32 IrcoscStatus;
  uint32 TimeoutTicks;
  uint32 ElapsedTime;
  uint32 StartTime;
  boolean SircWasDisabled;
  boolean TimeoutOccurred;
  uint32 instance;

  <bb 2> :
  # DEBUG BEGIN_STMT
  _1 = config->name;
  _2 = clockFeatures[_1][0];
  instance = (uint32) _2;
  # DEBUG BEGIN_STMT
  TimeoutOccurred = 0;
  SircWasDisabled = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _3 = 1074151424B;
  _4 = _3->FIRCCSR;
  _5 = 1074151424B;
  _6 = _4 & 4286578687;
  _5->FIRCCSR = _6;
  # DEBUG BEGIN_STMT
  _7 = 1074151424B;
  _8 = _7->FIRCCSR;
  _9 = _8 & 33554432;
  if (_9 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  _10 = config->range;
  _11 = (long unsigned int) _10;
  _12 = 1074151424B;
  _13 = _12->FIRCCFG;
  _14 = _13 & 3;
  if (_11 != _14)
    goto <bb 5>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 4> :
  _15 = config->regulator;
  _16 = (long unsigned int) _15;
  _17 = 1074151424B;
  _18 = _17->FIRCCSR;
  _19 = _18 >> 3;
  _20 = _19 & 1;
  if (_16 != _20)
    goto <bb 5>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 5> :
  # DEBUG BEGIN_STMT
  _21 = 1074151424B;
  _22 = _21->SIRCCSR;
  _23 = _22 & 1;
  if (_23 == 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  # DEBUG BEGIN_STMT
  SircWasDisabled = 1;
  # DEBUG BEGIN_STMT
  SetSirc (0B);

  <bb 7> :
  # DEBUG BEGIN_STMT
  SetInputSouceSytemClock (2);
  # DEBUG BEGIN_STMT
  _24 = 1074151424B;
  _25 = _24->FIRCCSR;
  _26 = 1074151424B;
  _27 = _25 & 4294967294;
  _26->FIRCCSR = _27;
  # DEBUG BEGIN_STMT
  _28 = config->enable;
  if (_28 == 1)
    goto <bb 8>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 8> :
  # DEBUG BEGIN_STMT
  _29 = config->range;
  _30 = (long unsigned int) _29;
  _31 = 1074151424B;
  _32 = _30 & 3;
  _31->FIRCCFG = _32;
  # DEBUG BEGIN_STMT
  _33 = 1074151424B;
  _34 = _33->FIRCCSR;
  _35 = config->regulator;
  _36 = (long unsigned int) _35;
  _37 = _36 << 3;
  _38 = _37 & 8;
  _39 = _34 | _38;
  _40 = 1074151424B;
  _41 = _39 | 1;
  _40->FIRCCSR = _41;
  # DEBUG BEGIN_STMT
  ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 50000);

  <bb 9> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _42 = 1074151424B;
  _43 = _42->FIRCCSR;
  _44 = _43 >> 24;
  IrcoscStatus = _44 & 1;
  # DEBUG BEGIN_STMT
  TimeoutTicks.1_45 = TimeoutTicks;
  TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.1_45);
  # DEBUG BEGIN_STMT
  if (IrcoscStatus == 0)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  _46 = ~TimeoutOccurred;
  if (_46 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 11> :
  # DEBUG BEGIN_STMT
  if (TimeoutOccurred != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  # DEBUG BEGIN_STMT
  _47 = config->name;
  ReportClockErrors (1, _47);

  <bb 13> :
  # DEBUG BEGIN_STMT
  SetInputSouceSytemClock (3);
  # DEBUG BEGIN_STMT
  if (SircWasDisabled != 0)
    goto <bb 14>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 14> :
  # DEBUG BEGIN_STMT
  DisableSirc (2);
  goto <bb 21>; [INV]

  <bb 15> :
  # DEBUG BEGIN_STMT
  _48 = 1074151424B;
  _49 = _48->FIRCCSR;
  _50 = 1074151424B;
  _51 = _49 & 4294967294;
  _50->FIRCCSR = _51;
  # DEBUG BEGIN_STMT
  _52 = config->enable;
  if (_52 == 1)
    goto <bb 16>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 16> :
  # DEBUG BEGIN_STMT
  _53 = config->range;
  _54 = (long unsigned int) _53;
  _55 = 1074151424B;
  _56 = _54 & 3;
  _55->FIRCCFG = _56;
  # DEBUG BEGIN_STMT
  _57 = 1074151424B;
  _58 = _57->FIRCCSR;
  _59 = config->regulator;
  _60 = (long unsigned int) _59;
  _61 = _60 << 3;
  _62 = _61 & 8;
  _63 = _58 | _62;
  _64 = 1074151424B;
  _65 = _63 | 1;
  _64->FIRCCSR = _65;
  # DEBUG BEGIN_STMT
  ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 50000);

  <bb 17> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _66 = 1074151424B;
  _67 = _66->FIRCCSR;
  _68 = _67 >> 24;
  IrcoscStatus = _68 & 1;
  # DEBUG BEGIN_STMT
  TimeoutTicks.2_69 = TimeoutTicks;
  TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.2_69);
  # DEBUG BEGIN_STMT
  if (IrcoscStatus == 0)
    goto <bb 18>; [INV]
  else
    goto <bb 19>; [INV]

  <bb 18> :
  _70 = ~TimeoutOccurred;
  if (_70 != 0)
    goto <bb 17>; [INV]
  else
    goto <bb 19>; [INV]

  <bb 19> :
  # DEBUG BEGIN_STMT
  if (TimeoutOccurred != 0)
    goto <bb 20>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 20> :
  # DEBUG BEGIN_STMT
  _71 = config->name;
  ReportClockErrors (1, _71);

  <bb 21> :
  StartTime = {CLOBBER};
  ElapsedTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  return;

}


SetInputSouceSytemClock (uint32 sourceClock)
{
  uint32 ScsStatus;
  uint32 TimeoutTicks;
  uint32 ElapsedTime;
  uint32 StartTime;
  boolean TimeoutOccurred;
  uint32 regValue;
  uint32 iftmp.3;

  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  TimeoutOccurred = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = 1074151424B;
  regValue = _1->RCCR;
  # DEBUG BEGIN_STMT
  regValue = regValue & 4043309055;
  # DEBUG BEGIN_STMT
  _2 = sourceClock << 24;
  regValue = regValue | _2;
  # DEBUG BEGIN_STMT
  _3 = 1074151424B;
  _3->RCCR = regValue;
  # DEBUG BEGIN_STMT
  ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 50000);

  <bb 3> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = 1074151424B;
  _5 = _4->CSR;
  _6 = _5 >> 24;
  _7 = _6 & 15;
  if (sourceClock != _7)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  iftmp.3 = 1;
  goto <bb 6>; [INV]

  <bb 5> :
  iftmp.3 = 0;

  <bb 6> :
  ScsStatus = iftmp.3;
  # DEBUG BEGIN_STMT
  TimeoutTicks.4_8 = TimeoutTicks;
  TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.4_8);
  # DEBUG BEGIN_STMT
  if (ScsStatus == 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  _9 = ~TimeoutOccurred;
  if (_9 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 8> :
  # DEBUG BEGIN_STMT
  if (TimeoutOccurred != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  # DEBUG BEGIN_STMT
  ReportClockErrors (1, 5);

  <bb 10> :
  StartTime = {CLOBBER};
  ElapsedTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  return;

}


DisableSircStop (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  DisableSircStop_TrustedCall (name);
  return;

}


DisableSircStop_TrustedCall (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = 1074151424B;
  _2 = _1->SIRCCSR;
  _3 = 1074151424B;
  _4 = _2 & 4294967293;
  _3->SIRCCSR = _4;
  return;

}


EnableSircStop (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  EnableSircStop_TrustedCall (config);
  return;

}


EnableSircStop_TrustedCall (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  _1 = config->enable;
  if (_1 == 1)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  _2 = 1074151424B;
  _3 = _2->SIRCCSR;
  _4 = 1074151424B;
  _5 = _3 | 2;
  _4->SIRCCSR = _5;

  <bb 4> :
  return;

}


SetSircStop (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  SetSircStop_TrustedCall (config);
  return;

}


SetSircStop_TrustedCall (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = 1074151424B;
  _2 = _1->SIRCCSR;
  _3 = 1074151424B;
  _4 = _2 & 4286578687;
  _3->SIRCCSR = _4;
  # DEBUG BEGIN_STMT
  _5 = 1074151424B;
  _6 = _5->SIRCCSR;
  _7 = 1074151424B;
  _8 = _6 & 4294967293;
  _7->SIRCCSR = _8;
  # DEBUG BEGIN_STMT
  _9 = 1074151424B;
  _10 = _9->SIRCCSR;
  _11 = config->stopModeEnable;
  _12 = (long unsigned int) _11;
  _13 = _12 << 1;
  _14 = _13 & 2;
  _15 = 1074151424B;
  _16 = _10 | _14;
  _15->SIRCCSR = _16;
  return;

}


DisableSircVlp (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  DisableSircVlp_TrustedCall (name);
  return;

}


DisableSircVlp_TrustedCall (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = 1074151424B;
  _2 = _1->SIRCCSR;
  _3 = 1074151424B;
  _4 = _2 & 4294967291;
  _3->SIRCCSR = _4;
  return;

}


EnableSircVlp (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  EnableSircVlp_TrustedCall (config);
  return;

}


EnableSircVlp_TrustedCall (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  _1 = config->enable;
  if (_1 == 1)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  _2 = 1074151424B;
  _3 = _2->SIRCCSR;
  _4 = 1074151424B;
  _5 = _3 | 4;
  _4->SIRCCSR = _5;

  <bb 4> :
  return;

}


SetSircVlp (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  SetSircVlp_TrustedCall (config);
  return;

}


SetSircVlp_TrustedCall (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  _1 = 1074151424B;
  _2 = _1->SIRCCSR;
  _3 = 1074151424B;
  _4 = _2 & 4286578687;
  _3->SIRCCSR = _4;
  # DEBUG BEGIN_STMT
  _5 = 1074151424B;
  _6 = _5->SIRCCSR;
  _7 = 1074151424B;
  _8 = _6 & 4294967291;
  _7->SIRCCSR = _8;
  # DEBUG BEGIN_STMT
  _9 = 1074151424B;
  _10 = _9->SIRCCSR;
  _11 = config->lowPowerModeEnable;
  _12 = (long unsigned int) _11;
  _13 = _12 << 2;
  _14 = _13 & 4;
  _15 = 1074151424B;
  _16 = _10 | _14;
  _15->SIRCCSR = _16;
  return;

}


DisableSirc (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  DisableSirc_TrustedCall (name);
  return;

}


DisableSirc_TrustedCall (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = 1074151424B;
  _2 = _1->SIRCCSR;
  _3 = 1074151424B;
  _4 = _2 & 4294967294;
  _3->SIRCCSR = _4;
  # DEBUG BEGIN_STMT
  _5 = 1074151424B;
  _6 = _5->SIRCCSR;
  _7 = 1074151424B;
  _8 = _6 & 4294967291;
  _7->SIRCCSR = _8;
  return;

}


EnableSirc (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  EnableSirc_TrustedCall (config);
  return;

}


EnableSirc_TrustedCall (const struct Clock_Ip_IrcoscConfigType * config)
{
  uint32 IrcoscStatus;
  uint32 TimeoutTicks;
  uint32 ElapsedTime;
  uint32 StartTime;
  boolean TimeoutOccurred;

  <bb 2> :
  # DEBUG BEGIN_STMT
  TimeoutOccurred = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = 1074151424B;
  _2 = _1->SIRCCSR;
  _3 = 1074151424B;
  _4 = _2 | 1;
  _3->SIRCCSR = _4;
  # DEBUG BEGIN_STMT
  _5 = 1074151424B;
  _6 = _5->SIRCCSR;
  _7 = 1074151424B;
  _8 = _6 | 4;
  _7->SIRCCSR = _8;
  # DEBUG BEGIN_STMT
  ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 50000);

  <bb 3> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _9 = 1074151424B;
  _10 = _9->SIRCCSR;
  _11 = _10 >> 24;
  IrcoscStatus = _11 & 1;
  # DEBUG BEGIN_STMT
  TimeoutTicks.5_12 = TimeoutTicks;
  TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.5_12);
  # DEBUG BEGIN_STMT
  if (IrcoscStatus == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

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

  <bb 5> :
  # DEBUG BEGIN_STMT
  if (TimeoutOccurred != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  # DEBUG BEGIN_STMT
  _14 = config->name;
  ReportClockErrors (1, _14);

  <bb 7> :
  StartTime = {CLOBBER};
  ElapsedTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  return;

}


SetSirc (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  SetSirc_TrustedCall (config);
  return;

}


SetSirc_TrustedCall (const struct Clock_Ip_IrcoscConfigType * config)
{
  struct Clock_Ip_IrcoscConfigType sircConfig;
  uint32 IrcoscStatus;
  uint32 TimeoutTicks;
  uint32 ElapsedTime;
  uint32 StartTime;
  boolean TimeoutOccurred;

  <bb 2> :
  # DEBUG BEGIN_STMT
  TimeoutOccurred = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (config == 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  sircConfig.name = 5;
  # DEBUG BEGIN_STMT
  sircConfig.range = 1;
  # DEBUG BEGIN_STMT
  sircConfig.enable = 1;
  # DEBUG BEGIN_STMT
  sircConfig.lowPowerModeEnable = 1;
  goto <bb 5>; [INV]

  <bb 4> :
  # DEBUG BEGIN_STMT
  _1 = config->name;
  sircConfig.name = _1;
  # DEBUG BEGIN_STMT
  _2 = config->range;
  sircConfig.range = _2;
  # DEBUG BEGIN_STMT
  _3 = config->enable;
  sircConfig.enable = _3;
  # DEBUG BEGIN_STMT
  _4 = config->lowPowerModeEnable;
  sircConfig.lowPowerModeEnable = _4;

  <bb 5> :
  # DEBUG BEGIN_STMT
  _5 = 1074151424B;
  _6 = _5->SIRCCSR;
  _7 = 1074151424B;
  _8 = _6 & 4286578687;
  _7->SIRCCSR = _8;
  # DEBUG BEGIN_STMT
  _9 = 1074151424B;
  _10 = _9->SIRCCSR;
  _11 = 1074151424B;
  _12 = _10 & 4294967294;
  _11->SIRCCSR = _12;
  # DEBUG BEGIN_STMT
  _13 = 1074151424B;
  _14 = _13->SIRCCSR;
  _15 = 1074151424B;
  _16 = _14 & 4294967291;
  _15->SIRCCSR = _16;
  # DEBUG BEGIN_STMT
  _17 = sircConfig.enable;
  if (_17 == 1)
    goto <bb 6>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 6> :
  # DEBUG BEGIN_STMT
  _18 = sircConfig.range;
  _19 = (long unsigned int) _18;
  _20 = 1074151424B;
  _21 = _19 & 1;
  _20->SIRCCFG = _21;
  # DEBUG BEGIN_STMT
  _22 = 1074151424B;
  _23 = _22->SIRCCSR;
  _24 = 1074151424B;
  _25 = _23 | 1;
  _24->SIRCCSR = _25;
  # DEBUG BEGIN_STMT
  _26 = 1074151424B;
  _27 = _26->SIRCCSR;
  _28 = sircConfig.lowPowerModeEnable;
  _29 = (long unsigned int) _28;
  _30 = _29 << 2;
  _31 = _30 & 4;
  _32 = 1074151424B;
  _33 = _27 | _31;
  _32->SIRCCSR = _33;
  # DEBUG BEGIN_STMT
  ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 50000);

  <bb 7> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _34 = 1074151424B;
  _35 = _34->SIRCCSR;
  _36 = _35 >> 24;
  IrcoscStatus = _36 & 1;
  # DEBUG BEGIN_STMT
  TimeoutTicks.6_37 = TimeoutTicks;
  TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.6_37);
  # DEBUG BEGIN_STMT
  if (IrcoscStatus == 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  _38 = ~TimeoutOccurred;
  if (_38 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 9> :
  # DEBUG BEGIN_STMT
  if (TimeoutOccurred != 0)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  # DEBUG BEGIN_STMT
  _39 = sircConfig.name;
  ReportClockErrors (1, _39);

  <bb 11> :
  StartTime = {CLOBBER};
  ElapsedTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  sircConfig = {CLOBBER};
  return;

}


InternalOscillatorEmpty_Disable (Clock_Ip_NameType name)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  return;

}


InternalOscillatorEmpty (const struct Clock_Ip_IrcoscConfigType * config)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  return;

}


