
Marking local functions:


Marking externally visible functions:


Marking externally visible variables: gateCallbacks


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

ReportClockErrors/12 (ReportClockErrors) @06da6a80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ClockSetGateMcMePartitionCollectionClockRequest/3 ClockSetGateMcMePartitionCollectionClockRequest/3 
  Calls: 
ClockTimeoutExpired/11 (ClockTimeoutExpired) @06da69a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ClockSetGateMcMePartitionCollectionClockRequest/3 ClockSetGateMcMePartitionCollectionClockRequest/3 
  Calls: 
ClockStartTimeout/10 (ClockStartTimeout) @06da68c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ClockSetGateMcMePartitionCollectionClockRequest/3 ClockSetGateMcMePartitionCollectionClockRequest/3 
  Calls: 
McMeEnterKey/9 (McMeEnterKey) @06da67e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ClockSetGateMcMePartitionCollectionClockRequest/3 ClockSetGateMcMePartitionCollectionClockRequest/3 
  Calls: 
mcmeTriggerPartitions/8 (mcmeTriggerPartitions) @06dad438
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)
  Availability: not_available
  Varpool flags: read-only
mcmeSetPartitions/7 (mcmeSetPartitions) @06dad3f0
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)
  Availability: not_available
  Varpool flags: read-only
mcmeGetPartitions/6 (mcmeGetPartitions) @06dad3a8
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)
  Availability: not_available
  Varpool flags: read-only
clockFeatures/5 (clockFeatures) @06dad360
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)
  Availability: not_available
  Varpool flags: read-only
ClockUpdateGateMcMePartitionCollectionClockRequest/4 (ClockUpdateGateMcMePartitionCollectionClockRequest) @06da61c0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: gateCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: ClockSetGateMcMePartitionCollectionClockRequest/3 
ClockSetGateMcMePartitionCollectionClockRequest/3 (ClockSetGateMcMePartitionCollectionClockRequest) @06dfbd20
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: clockFeatures/5 (read)clockFeatures/5 (read)clockFeatures/5 (read)mcmeGetPartitions/6 (read)mcmeSetPartitions/7 (read)mcmeSetPartitions/7 (read)mcmeTriggerPartitions/8 (read)mcmeTriggerPartitions/8 (read)mcmeTriggerPartitions/8 (read)mcmeTriggerPartitions/8 (read)mcmeGetPartitions/6 (read)mcmeGetPartitions/6 (read)mcmeSetPartitions/7 (read)mcmeSetPartitions/7 (read)mcmeTriggerPartitions/8 (read)mcmeTriggerPartitions/8 (read)mcmeTriggerPartitions/8 (read)mcmeTriggerPartitions/8 (read)mcmeGetPartitions/6 (read)
  Referring: gateCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: ClockUpdateGateMcMePartitionCollectionClockRequest/4 
  Calls: ReportClockErrors/12 ClockTimeoutExpired/11 ClockStartTimeout/10 McMeEnterKey/9 ReportClockErrors/12 ClockTimeoutExpired/11 ClockStartTimeout/10 McMeEnterKey/9 
ClockUpdateGateEmpty/2 (ClockUpdateGateEmpty) @06dfbee0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: gateCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: 
ClockSetGateEmpty/1 (ClockSetGateEmpty) @06dfbc40
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: gateCallbacks/0 (addr)
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: 
gateCallbacks/0 (gateCallbacks) @06df5f30
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: ClockSetGateEmpty/1 (addr)ClockUpdateGateEmpty/2 (addr)ClockSetGateMcMePartitionCollectionClockRequest/3 (addr)ClockUpdateGateMcMePartitionCollectionClockRequest/4 (addr)
  Referring: 
  Availability: available
  Varpool flags: initialized read-only const-value-known
ClockUpdateGateMcMePartitionCollectionClockRequest (Clock_Ip_NameType clockName, boolean gate)
{
  struct Clock_Ip_GateConfigType config;

  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  config.name = clockName;
  # DEBUG BEGIN_STMT
  if (gate != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  config.enable = 0;
  goto <bb 5>; [INV]

  <bb 4> :
  # DEBUG BEGIN_STMT
  config.enable = 1;

  <bb 5> :
  # DEBUG BEGIN_STMT
  ClockSetGateMcMePartitionCollectionClockRequest (&config);
  config = {CLOBBER};
  return;

}


ClockSetGateMcMePartitionCollectionClockRequest (const struct Clock_Ip_GateConfigType * config)
{
  uint32 enableRequest;
  uint32 collection;
  uint32 partition;
  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
  _1 = config->name;
  _2 = (int) _1;
  _3 = clockFeatures[_2][3];
  partition = (uint32) _3;
  # DEBUG BEGIN_STMT
  _4 = config->name;
  _5 = (int) _4;
  _6 = clockFeatures[_5][4];
  collection = (uint32) _6;
  # DEBUG BEGIN_STMT
  _7 = config->name;
  _8 = (int) _7;
  _9 = clockFeatures[_8][5];
  enableRequest = (uint32) _9;
  # DEBUG BEGIN_STMT
  _10 = config->enable;
  if (_10 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  _11 = mcmeGetPartitions[partition];
  _12 = _11->PRTN_COFB_STAT[collection];
  _13 = _12 >> enableRequest;
  _14 = _13 & 1;
  if (_14 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 4> :
  # DEBUG BEGIN_STMT
  _15 = mcmeSetPartitions[partition];
  _16 = _15->PRTN_COFB_CLKEN[collection];
  _17 = 1 << enableRequest;
  _18 = mcmeSetPartitions[partition];
  _19 = _16 | _17;
  _18->PRTN_COFB_CLKEN[collection] = _19;
  # DEBUG BEGIN_STMT
  _20 = mcmeTriggerPartitions[partition];
  _21 = _20->PRTN_PCONF;
  _22 = mcmeTriggerPartitions[partition];
  _23 = _21 | 1;
  _22->PRTN_PCONF = _23;
  # DEBUG BEGIN_STMT
  _24 = mcmeTriggerPartitions[partition];
  _25 = _24->PRTN_PUPD;
  _26 = mcmeTriggerPartitions[partition];
  _27 = _25 | 1;
  _26->PRTN_PUPD = _27;
  # DEBUG BEGIN_STMT
  McMeEnterKey ();
  # DEBUG BEGIN_STMT
  ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 10000);

  <bb 5> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  TimeoutTicks.0_28 = TimeoutTicks;
  TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.0_28);
  # DEBUG BEGIN_STMT
  _29 = mcmeGetPartitions[partition];
  _30 = _29->PRTN_COFB_STAT[collection];
  _31 = _30 >> enableRequest;
  _32 = _31 & 1;
  if (_32 == 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

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

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

  <bb 8> :
  # DEBUG BEGIN_STMT
  _34 = config->name;
  ReportClockErrors (1, _34);
  goto <bb 15>; [INV]

  <bb 9> :
  # DEBUG BEGIN_STMT
  _35 = mcmeGetPartitions[partition];
  _36 = _35->PRTN_COFB_STAT[collection];
  _37 = _36 >> enableRequest;
  _38 = _37 & 1;
  if (_38 != 0)
    goto <bb 10>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 10> :
  # DEBUG BEGIN_STMT
  _39 = mcmeSetPartitions[partition];
  _40 = _39->PRTN_COFB_CLKEN[collection];
  _41 = 1 << enableRequest;
  _42 = ~_41;
  _43 = mcmeSetPartitions[partition];
  _44 = _40 & _42;
  _43->PRTN_COFB_CLKEN[collection] = _44;
  # DEBUG BEGIN_STMT
  _45 = mcmeTriggerPartitions[partition];
  _46 = _45->PRTN_PCONF;
  _47 = mcmeTriggerPartitions[partition];
  _48 = _46 | 1;
  _47->PRTN_PCONF = _48;
  # DEBUG BEGIN_STMT
  _49 = mcmeTriggerPartitions[partition];
  _50 = _49->PRTN_PUPD;
  _51 = mcmeTriggerPartitions[partition];
  _52 = _50 | 1;
  _51->PRTN_PUPD = _52;
  # DEBUG BEGIN_STMT
  McMeEnterKey ();
  # DEBUG BEGIN_STMT
  ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 10000);

  <bb 11> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  TimeoutTicks.1_53 = TimeoutTicks;
  TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.1_53);
  # DEBUG BEGIN_STMT
  _54 = mcmeGetPartitions[partition];
  _55 = _54->PRTN_COFB_STAT[collection];
  _56 = _55 >> enableRequest;
  _57 = _56 & 1;
  if (_57 != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

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

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

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

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

}


ClockUpdateGateEmpty (Clock_Ip_NameType clockName, boolean gate)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return;

}


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

}


