callgraph:

OsIf_GetElapsed/53 (OsIf_GetElapsed) @06ff6a80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ClockTimeoutExpired/21 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
OsIf_MicrosToTicks/52 (OsIf_MicrosToTicks) @06ff68c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ClockStartTimeout/20 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
OsIf_GetCounter/51 (OsIf_GetCounter) @06ff67e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ClockStartTimeout/20 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
GetProducerClockFreq/50 (GetProducerClockFreq) @06ff6460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Clock_Ip_GetClockFrequency/15 (354334802 (estimated locally),0.33 per call) 
  Calls: 
UpdateFrequencies/46 (UpdateFrequencies) @06f63e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Clock_Ip_PowerModeChangeNotification/11 (1073741824 (estimated locally),1.00 per call) Clock_Ip_DistributePll/7 (168730859 (estimated locally),1.00 per call) Clock_Ip_InitClock/5 (118111600 (estimated locally),1.00 per call) 
  Calls: 
SpecificPeripheralClockInitialization/45 (SpecificPeripheralClockInitialization) @06f63d20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Clock_Ip_DistributePll/7 (38976828 (estimated locally),0.23 per call) Clock_Ip_InitClock/5 (38976828 (estimated locally),0.33 per call) 
  Calls: 
SpecificPlatformInitClock/25 (SpecificPlatformInitClock) @06f63c40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Clock_Ip_InitClock/5 (118111599 (estimated locally),1.00 per call) 
  Calls: 
ClockTimeoutExpired/21 (ClockTimeoutExpired) @06f63460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: OsIf_GetElapsed/53 (1073741824 (estimated locally),1.00 per call) 
ClockStartTimeout/20 (ClockStartTimeout) @06f631c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: OsIf_MicrosToTicks/52 (1073741824 (estimated locally),1.00 per call) OsIf_GetCounter/51 (1073741824 (estimated locally),1.00 per call) 
ReportClockErrors/19 (ReportClockErrors) @06f5cd20
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockNotificationsCallback/1 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
ClockNotificatonsEmptyCallback/18 (ClockNotificatonsEmptyCallback) @06f5c7e0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: 
  Referring: clockNotificationsCallback/1 (addr)
  Availability: available
  Function flags: count:1073741824 (estimated locally) body nonfreeing_fn optimize_size
  Called by: 
  Calls: 
Clock_Ip_TimeDelay/17 (Clock_Ip_TimeDelay) @06f5c2a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: ClockCalcFreqCallIdx/3 (read)calcFreqCallbacks/47 (read)ClockCalcFreqCallIdx/3 (read)ClockCalcFreqCallIdx/3 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_Sleep/16 (Clock_Ip_Sleep) @06f5cee0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: calcFreqCallbacks/47 (read)ClockCalcFreqCallIdx/3 (read)ClockCalcFreqCallIdx/3 (write)ClockCalcFreqCallIdx/3 (read)
  Referring: 
  Function Clock_Ip_Sleep/16 is inline copy in Clock_Ip_InitClock/5
  Availability: local
  Function flags: count:118111600 (estimated locally) body local optimize_size
  Called by: Clock_Ip_InitClock/5 (inlined) (118111600 (estimated locally),1.00 per call) 
  Calls: 
   Indirect call(955630223 (estimated locally),8.09 per call) 
Clock_Ip_GetClockFrequency/15 (Clock_Ip_GetClockFrequency) @06f5cc40
  Type: function definition analyzed
  Visibility: externally_visible public
  References: consumerClockCallbacks/49 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: GetProducerClockFreq/50 (354334802 (estimated locally),0.33 per call) 
   Indirect call(719407023 (estimated locally),0.67 per call) 
Clock_Ip_EnableModuleClock/14 (Clock_Ip_EnableModuleClock) @06f5c9a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockFeatures/22 (read)gateCallbackIndex/43 (read)gateCallbacks/44 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_DisableModuleClock/13 (Clock_Ip_DisableModuleClock) @06f5c700
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockFeatures/22 (read)gateCallbackIndex/43 (read)gateCallbacks/44 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_InstallNotificationsCallback/12 (Clock_Ip_InstallNotificationsCallback) @06f5c460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockNotificationsCallback/1 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body nonfreeing_fn optimize_size
  Called by: 
  Calls: 
Clock_Ip_PowerModeChangeNotification/11 (Clock_Ip_PowerModeChangeNotification) @06f5c1c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: UpdateFrequencies/46 (1073741824 (estimated locally),1.00 per call) 
Clock_Ip_ClearClockMonitorStatus/10 (Clock_Ip_ClearClockMonitorStatus) @06e2de00
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_GetClockMonitorStatus/9 (Clock_Ip_GetClockMonitorStatus) @06e2d8c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_DisableClockMonitor/8 (Clock_Ip_DisableClockMonitor) @06e2d380
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_DistributePll/7 (Clock_Ip_DistributePll) @06e2dd20
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockConfig/2 (read)clockName_sourceType/42 (read)clockFeatures/22 (read)selectorCallbackIndex/26 (read)selectorCallbacks/27 (read)clockConfig/2 (read)clockTreeIsConsumingPll/0 (read)clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)clockConfig/2 (read)
  Referring: 
  Availability: available
  Function flags: count:168730860 (estimated locally) body optimize_size
  Called by: Clock_Ip_Init/4 (116930485 (estimated locally),0.11 per call) 
  Calls: UpdateFrequencies/46 (168730859 (estimated locally),1.00 per call) SpecificPeripheralClockInitialization/45 (38976828 (estimated locally),0.23 per call) 
   Indirect call(155907314 (estimated locally),0.92 per call) 
   Indirect call(630715948 (estimated locally),3.74 per call) 
Clock_Ip_GetPllStatus/6 (Clock_Ip_GetPllStatus) @06e2da80
  Type: function definition analyzed
  Visibility: externally_visible public
  References: HwPllName/48 (read)clockFeatures/22 (read)pllCallbackIndex/30 (read)pllCallbacks/31 (read)
  Referring: 
  Availability: available
  Function flags: count:114863532 (estimated locally) body optimize_size
  Called by: Clock_Ip_Init/4 (354334802 (estimated locally),0.33 per call) 
  Calls: 
   Indirect call(1014686025 (estimated locally),8.83 per call) 
Clock_Ip_InitClock/5 (Clock_Ip_InitClock) @06e2d7e0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: ClockCalcFreqCallIdx/3 (write)clockConfig/2 (read)clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)clockConfig/2 (write)clockFeatures/22 (read)selectorCallbackIndex/26 (read)selectorCallbacks/27 (read)clockFeatures/22 (read)fractional_dividerCallbackIndex/28 (read)fracDivCallbacks/29 (read)clockFeatures/22 (read)pllCallbackIndex/30 (read)pllCallbacks/31 (read)clockFeatures/22 (read)xoscCallbackIndex/32 (read)extOscCallbacks/33 (read)clockFeatures/22 (read)ircoscCallbackIndex/34 (read)intOscCallbacks/35 (read)clockFeatures/22 (read)xoscCallbackIndex/32 (read)extOscCallbacks/33 (read)clockFeatures/22 (read)pcfsCallbackIndex/36 (read)pcfsCallbacks/37 (read)clockFeatures/22 (read)dividertriggerCallbackIndex/38 (read)dividerTriggerCallbacks/39 (read)clockFeatures/22 (read)dividerCallbackIndex/40 (read)dividerCallbacks/41 (read)clockFeatures/22 (read)dividertriggerCallbackIndex/38 (read)dividerTriggerCallbacks/39 (read)clockFeatures/22 (read)pllCallbackIndex/30 (read)pllCallbacks/31 (read)clockFeatures/22 (read)fractional_dividerCallbackIndex/28 (read)fracDivCallbacks/29 (read)clockTreeIsConsumingPll/0 (write)clockName_sourceType/42 (read)clockFeatures/22 (read)selectorCallbackIndex/26 (read)selectorCallbacks/27 (read)clockTreeIsConsumingPll/0 (write)clockFeatures/22 (read)gateCallbackIndex/43 (read)gateCallbacks/44 (read)clockTreeIsConsumingPll/0 (read)clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)
  Referring: 
  Availability: available
  Function flags: count:118111599 (estimated locally) body optimize_size
  Called by: Clock_Ip_Init/4 (1073741824 (estimated locally),1.00 per call) 
  Calls: UpdateFrequencies/46 (118111600 (estimated locally),1.00 per call) SpecificPeripheralClockInitialization/45 (38976828 (estimated locally),0.33 per call) Clock_Ip_Sleep/16 (inlined) (118111600 (estimated locally),1.00 per call) SpecificPlatformInitClock/25 (118111599 (estimated locally),1.00 per call) 
   Indirect call(155907313 (estimated locally),1.32 per call) 
   Indirect call(955630217 (estimated locally),8.09 per call) 
   Indirect call(324914273 (estimated locally),2.75 per call) 
   Indirect call(118111601 (estimated locally),1.00 per call) 
   Indirect call(118111601 (estimated locally),1.00 per call) 
   Indirect call(118111601 (estimated locally),1.00 per call) 
   Indirect call(955630224 (estimated locally),8.09 per call) 
   Indirect call(118111600 (estimated locally),1.00 per call) 
   Indirect call(118111600 (estimated locally),1.00 per call) 
   Indirect call(236258637 (estimated locally),2.00 per call) 
   Indirect call(236258637 (estimated locally),2.00 per call) 
   Indirect call(236258637 (estimated locally),2.00 per call) 
   Indirect call(118111600 (estimated locally),1.00 per call) 
   Indirect call(118111600 (estimated locally),1.00 per call) 
   Indirect call(955630217 (estimated locally),8.09 per call) 
   Indirect call(330712479 (estimated locally),2.80 per call) 
Clock_Ip_Init/4 (Clock_Ip_Init) @06e2d540
  Type: function definition analyzed
  Visibility: externally_visible public
  References: clockTreeIsConsumingPll/0 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Clock_Ip_DistributePll/7 (116930485 (estimated locally),0.11 per call) Clock_Ip_GetPllStatus/6 (354334802 (estimated locally),0.33 per call) Clock_Ip_InitClock/5 (1073741824 (estimated locally),1.00 per call) 
Clearing variable flags:

Promotable global:clockTreeIsConsumingPll (uid=5075)

Promotable global:clockNotificationsCallback (uid=5076)

Promotable global:ClockCalcFreqCallIdx (uid=5078)

Function name:ClockTimeoutExpired/21:
  locals read: 
  locals written: 
Function name:ClockStartTimeout/20:
  locals read: 
  locals written: 
Function name:ReportClockErrors/19:
  locals read: clockNotificationsCallback 
  locals written: 
Function name:ClockNotificatonsEmptyCallback/18:
  locals read: 
  locals written: 
Function name:Clock_Ip_TimeDelay/17:
  locals read: ClockCalcFreqCallIdx 
  locals written: ClockCalcFreqCallIdx 
Function name:Clock_Ip_Sleep/16:
  locals read: ClockCalcFreqCallIdx 
  locals written: ClockCalcFreqCallIdx 
Function name:Clock_Ip_GetClockFrequency/15:
  locals read: 
  locals written: 
Function name:Clock_Ip_EnableModuleClock/14:
  locals read: 
  locals written: 
Function name:Clock_Ip_DisableModuleClock/13:
  locals read: 
  locals written: 
Function name:Clock_Ip_InstallNotificationsCallback/12:
  locals read: 
  locals written: clockNotificationsCallback 
Function name:Clock_Ip_PowerModeChangeNotification/11:
  locals read: 
  locals written: 
Function name:Clock_Ip_ClearClockMonitorStatus/10:
  locals read: 
  locals written: 
Function name:Clock_Ip_GetClockMonitorStatus/9:
  locals read: 
  locals written: 
Function name:Clock_Ip_DisableClockMonitor/8:
  locals read: 
  locals written: 
Function name:Clock_Ip_DistributePll/7:
  locals read: clockTreeIsConsumingPll 
  locals written: 
Function name:Clock_Ip_GetPllStatus/6:
  locals read: 
  locals written: 
Function name:Clock_Ip_InitClock/5:
  locals read: clockTreeIsConsumingPll 
  locals written: clockTreeIsConsumingPll ClockCalcFreqCallIdx 
Function name:Clock_Ip_Init/4:
  locals read: clockTreeIsConsumingPll 
  locals written: 

 ordered call graph: reduced
ClockTimeoutExpired/21 (ClockTimeoutExpired) @06f63460
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @063f4468
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: OsIf_GetElapsed/53 (1073741824 (estimated locally),1.00 per call) 
ClockStartTimeout/20 (ClockStartTimeout) @06f631c0
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @063f4628
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: OsIf_MicrosToTicks/52 (1073741824 (estimated locally),1.00 per call) OsIf_GetCounter/51 (1073741824 (estimated locally),1.00 per call) 
ReportClockErrors/19 (ReportClockErrors) @06f5cd20
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @063f4708
  References: clockNotificationsCallback/1 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
ClockNotificatonsEmptyCallback/18 (ClockNotificatonsEmptyCallback) @06f5c7e0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  Aux: @063f44e8
  References: 
  Referring: clockNotificationsCallback/1 (addr)
  Availability: available
  Function flags: count:1073741824 (estimated locally) body nonfreeing_fn optimize_size
  Called by: 
  Calls: 
Clock_Ip_TimeDelay/17 (Clock_Ip_TimeDelay) @06f5c2a0
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @063f43c8
  References: ClockCalcFreqCallIdx/3 (read)calcFreqCallbacks/47 (read)ClockCalcFreqCallIdx/3 (read)ClockCalcFreqCallIdx/3 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_GetClockFrequency/15 (Clock_Ip_GetClockFrequency) @06f5cc40
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c84c8
  References: consumerClockCallbacks/49 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: GetProducerClockFreq/50 (354334802 (estimated locally),0.33 per call) 
   Indirect call(719407023 (estimated locally),0.67 per call) 
Clock_Ip_EnableModuleClock/14 (Clock_Ip_EnableModuleClock) @06f5c9a0
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8828
  References: clockFeatures/22 (read)gateCallbackIndex/43 (read)gateCallbacks/44 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_DisableModuleClock/13 (Clock_Ip_DisableModuleClock) @06f5c700
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c86e8
  References: clockFeatures/22 (read)gateCallbackIndex/43 (read)gateCallbacks/44 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_InstallNotificationsCallback/12 (Clock_Ip_InstallNotificationsCallback) @06f5c460
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8848
  References: clockNotificationsCallback/1 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body nonfreeing_fn optimize_size
  Called by: 
  Calls: 
Clock_Ip_PowerModeChangeNotification/11 (Clock_Ip_PowerModeChangeNotification) @06f5c1c0
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8668
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: UpdateFrequencies/46 (1073741824 (estimated locally),1.00 per call) 
Clock_Ip_ClearClockMonitorStatus/10 (Clock_Ip_ClearClockMonitorStatus) @06e2de00
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8788
  References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_GetClockMonitorStatus/9 (Clock_Ip_GetClockMonitorStatus) @06e2d8c0
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c84e8
  References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_DisableClockMonitor/8 (Clock_Ip_DisableClockMonitor) @06e2d380
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8728
  References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
   Indirect call(1073741824 (estimated locally),1.00 per call) 
Clock_Ip_Init/4 (Clock_Ip_Init) @06e2d540
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8688
  References: clockTreeIsConsumingPll/0 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Clock_Ip_DistributePll/7 (116930485 (estimated locally),0.11 per call) Clock_Ip_GetPllStatus/6 (354334802 (estimated locally),0.33 per call) Clock_Ip_InitClock/5 (1073741824 (estimated locally),1.00 per call) 
Clock_Ip_InitClock/5 (Clock_Ip_InitClock) @06e2d7e0
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8568
  References: ClockCalcFreqCallIdx/3 (write)clockConfig/2 (read)clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)clockConfig/2 (write)clockFeatures/22 (read)selectorCallbackIndex/26 (read)selectorCallbacks/27 (read)clockFeatures/22 (read)fractional_dividerCallbackIndex/28 (read)fracDivCallbacks/29 (read)clockFeatures/22 (read)pllCallbackIndex/30 (read)pllCallbacks/31 (read)clockFeatures/22 (read)xoscCallbackIndex/32 (read)extOscCallbacks/33 (read)clockFeatures/22 (read)ircoscCallbackIndex/34 (read)intOscCallbacks/35 (read)clockFeatures/22 (read)xoscCallbackIndex/32 (read)extOscCallbacks/33 (read)clockFeatures/22 (read)pcfsCallbackIndex/36 (read)pcfsCallbacks/37 (read)clockFeatures/22 (read)dividertriggerCallbackIndex/38 (read)dividerTriggerCallbacks/39 (read)clockFeatures/22 (read)dividerCallbackIndex/40 (read)dividerCallbacks/41 (read)clockFeatures/22 (read)dividertriggerCallbackIndex/38 (read)dividerTriggerCallbacks/39 (read)clockFeatures/22 (read)pllCallbackIndex/30 (read)pllCallbacks/31 (read)clockFeatures/22 (read)fractional_dividerCallbackIndex/28 (read)fracDivCallbacks/29 (read)clockTreeIsConsumingPll/0 (write)clockName_sourceType/42 (read)clockFeatures/22 (read)selectorCallbackIndex/26 (read)selectorCallbacks/27 (read)clockTreeIsConsumingPll/0 (write)clockFeatures/22 (read)gateCallbackIndex/43 (read)gateCallbacks/44 (read)clockTreeIsConsumingPll/0 (read)clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)
  Referring: 
  Availability: available
  Function flags: count:118111599 (estimated locally) body optimize_size
  Called by: Clock_Ip_Init/4 (1073741824 (estimated locally),1.00 per call) 
  Calls: UpdateFrequencies/46 (118111600 (estimated locally),1.00 per call) SpecificPeripheralClockInitialization/45 (38976828 (estimated locally),0.33 per call) Clock_Ip_Sleep/16 (inlined) (118111600 (estimated locally),1.00 per call) SpecificPlatformInitClock/25 (118111599 (estimated locally),1.00 per call) 
   Indirect call(155907313 (estimated locally),1.32 per call) 
   Indirect call(955630217 (estimated locally),8.09 per call) 
   Indirect call(324914273 (estimated locally),2.75 per call) 
   Indirect call(118111601 (estimated locally),1.00 per call) 
   Indirect call(118111601 (estimated locally),1.00 per call) 
   Indirect call(118111601 (estimated locally),1.00 per call) 
   Indirect call(955630224 (estimated locally),8.09 per call) 
   Indirect call(118111600 (estimated locally),1.00 per call) 
   Indirect call(118111600 (estimated locally),1.00 per call) 
   Indirect call(236258637 (estimated locally),2.00 per call) 
   Indirect call(236258637 (estimated locally),2.00 per call) 
   Indirect call(236258637 (estimated locally),2.00 per call) 
   Indirect call(118111600 (estimated locally),1.00 per call) 
   Indirect call(118111600 (estimated locally),1.00 per call) 
   Indirect call(955630217 (estimated locally),8.09 per call) 
   Indirect call(330712479 (estimated locally),2.80 per call) 
Clock_Ip_Sleep/16 (Clock_Ip_Sleep) @06f5cee0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Aux: @070c87e8
  References: calcFreqCallbacks/47 (read)ClockCalcFreqCallIdx/3 (read)ClockCalcFreqCallIdx/3 (write)ClockCalcFreqCallIdx/3 (read)
  Referring: 
  Function Clock_Ip_Sleep/16 is inline copy in Clock_Ip_InitClock/5
  Availability: local
  Function flags: count:118111600 (estimated locally) body local optimize_size
  Called by: Clock_Ip_InitClock/5 (inlined) (118111600 (estimated locally),1.00 per call) 
  Calls: 
   Indirect call(955630223 (estimated locally),8.09 per call) 
Clock_Ip_GetPllStatus/6 (Clock_Ip_GetPllStatus) @06e2da80
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8868
  References: HwPllName/48 (read)clockFeatures/22 (read)pllCallbackIndex/30 (read)pllCallbacks/31 (read)
  Referring: 
  Availability: available
  Function flags: count:114863532 (estimated locally) body optimize_size
  Called by: Clock_Ip_Init/4 (354334802 (estimated locally),0.33 per call) 
  Calls: 
   Indirect call(1014686025 (estimated locally),8.83 per call) 
Clock_Ip_DistributePll/7 (Clock_Ip_DistributePll) @06e2dd20
  Type: function definition analyzed
  Visibility: externally_visible public
  Aux: @070c8508
  References: clockConfig/2 (read)clockName_sourceType/42 (read)clockFeatures/22 (read)selectorCallbackIndex/26 (read)selectorCallbacks/27 (read)clockConfig/2 (read)clockTreeIsConsumingPll/0 (read)clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)clockConfig/2 (read)
  Referring: 
  Availability: available
  Function flags: count:168730860 (estimated locally) body optimize_size
  Called by: Clock_Ip_Init/4 (116930485 (estimated locally),0.11 per call) 
  Calls: UpdateFrequencies/46 (168730859 (estimated locally),1.00 per call) SpecificPeripheralClockInitialization/45 (38976828 (estimated locally),0.23 per call) 
   Indirect call(155907314 (estimated locally),0.92 per call) 
   Indirect call(630715948 (estimated locally),3.74 per call) 


Function name:Clock_Ip_DistributePll/7:
    locals read: clockTreeIsConsumingPll 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_GetPllStatus/6:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_Sleep/16:
    locals read: ClockCalcFreqCallIdx 
    locals written: ClockCalcFreqCallIdx 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_InitClock/5:
    locals read: clockTreeIsConsumingPll 
    locals written: clockTreeIsConsumingPll ClockCalcFreqCallIdx 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_Init/4:
    locals read: clockTreeIsConsumingPll 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_DisableClockMonitor/8:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_GetClockMonitorStatus/9:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_ClearClockMonitorStatus/10:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_PowerModeChangeNotification/11:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_InstallNotificationsCallback/12:
    locals read: 
    locals written: clockNotificationsCallback 
  globals read: 
  globals written: clockNotificationsCallback 

Function name:Clock_Ip_DisableModuleClock/13:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_EnableModuleClock/14:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_GetClockFrequency/15:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:Clock_Ip_TimeDelay/17:
    locals read: ClockCalcFreqCallIdx 
    locals written: ClockCalcFreqCallIdx 
  globals read: ALL
  globals written: ALL

Function name:ClockNotificatonsEmptyCallback/18:
    locals read: 
    locals written: 
  globals read: 
  globals written: 

Function name:ReportClockErrors/19:
    locals read: clockNotificationsCallback 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:ClockStartTimeout/20:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL

Function name:ClockTimeoutExpired/21:
    locals read: 
    locals written: 
  globals read: ALL
  globals written: ALL
ClockTimeoutExpired (uint32 * startTimeInOut, uint32 * elapsedTimeInOut, uint32 TimeoutTicks)
{
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _6;
  boolean _10;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _6 = OsIf_GetElapsed (startTimeInOut_4(D), 0);
  _1 = *elapsedTimeInOut_7(D);
  _2 = _1 + _6;
  *elapsedTimeInOut_7(D) = _2;
  # DEBUG BEGIN_STMT
  _10 = _2 >= TimeoutTicks_9(D);
  return _10;

}


ClockStartTimeout (uint32 * startTimeOut, uint32 * elapsedTimeOut, uint32 * timeoutTicksOut, uint32 timeoutUs)
{
  long unsigned int _1;
  long unsigned int _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = OsIf_GetCounter (0);
  *startTimeOut_5(D) = _1;
  # DEBUG BEGIN_STMT
  *elapsedTimeOut_7(D) = 0;
  # DEBUG BEGIN_STMT
  _2 = OsIf_MicrosToTicks (timeoutUs_9(D), 0);
  *timeoutTicksOut_11(D) = _2;
  return;

}


ReportClockErrors (Clock_Ip_ClockNotificationType error, Clock_Ip_NameType clockName)
{
  void (*<T2cc>) (Clock_Ip_ClockNotificationType, Clock_Ip_NameType) clockNotificationsCallback.21_1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  clockNotificationsCallback.21_1 = clockNotificationsCallback;
  clockNotificationsCallback.21_1 (error_3(D), clockName_4(D));
  return;

}


ClockNotificatonsEmptyCallback (Clock_Ip_ClockNotificationType notification, Clock_Ip_NameType clockName)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return;

}


Clock_Ip_TimeDelay ()
{
  unsigned char ClockCalcFreqCallIdx.17_1;
  int _2;
  void (*<T4af>) (void) _3;
  unsigned char ClockCalcFreqCallIdx.18_4;
  unsigned char _5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  ClockCalcFreqCallIdx.17_1 = ClockCalcFreqCallIdx;
  _2 = (int) ClockCalcFreqCallIdx.17_1;
  _3 = calcFreqCallbacks[_2];
  _3 ();
  # DEBUG BEGIN_STMT
  ClockCalcFreqCallIdx.18_4 = ClockCalcFreqCallIdx;
  if (ClockCalcFreqCallIdx.18_4 <= 33)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  _5 = ClockCalcFreqCallIdx.18_4 + 1;
  ClockCalcFreqCallIdx = _5;

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

}


Clock_Ip_Sleep ()
{
  int _1;
  void (*<T4af>) (void) _2;
  unsigned char ClockCalcFreqCallIdx.4_3;
  unsigned char _4;
  unsigned char ClockCalcFreqCallIdx.6_5;

  <bb 2> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  _1 = (int) ClockCalcFreqCallIdx.6_5;
  _2 = calcFreqCallbacks[_1];
  _2 ();
  # DEBUG BEGIN_STMT
  ClockCalcFreqCallIdx.4_3 = ClockCalcFreqCallIdx;
  _4 = ClockCalcFreqCallIdx.4_3 + 1;
  ClockCalcFreqCallIdx = _4;

  <bb 4> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  ClockCalcFreqCallIdx.6_5 = ClockCalcFreqCallIdx;
  if (ClockCalcFreqCallIdx.6_5 <= 33)
    goto <bb 3>; [89.00%]
  else
    goto <bb 5>; [11.00%]

  <bb 5> [local count: 118111601]:
  return;

}


Clock_Ip_GetClockFrequency (Clock_Ip_NameType clockName)
{
  uint32 frequency;
  long unsigned int _1;
  long unsigned int _2;
  uint32 (*<T4ac>) (void) _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (clockName_6(D) > 21)
    goto <bb 3>; [67.00%]
  else
    goto <bb 4>; [33.00%]

  <bb 3> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  _1 = (long unsigned int) clockName_6(D);
  _2 = _1 + 4294967274;
  _3 = consumerClockCallbacks[_2];
  frequency_11 = _3 ();
  # DEBUG frequency => frequency_11
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  frequency_9 = GetProducerClockFreq (clockName_6(D));
  # DEBUG frequency => frequency_9

  <bb 5> [local count: 1073741824]:
  # frequency_4 = PHI <frequency_11(3), frequency_9(4)>
  # DEBUG frequency => frequency_4
  # DEBUG BEGIN_STMT
  return frequency_4;

}


Clock_Ip_EnableModuleClock (Clock_Ip_NameType clockName)
{
  uint32 callbackIndex;
  int _1;
  unsigned char _2;
  int _3;
  unsigned char _4;
  void (*<T489>) (Clock_Ip_NameType, boolean) _5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) clockName_6(D);
  _2 = clockFeatures[_1][1];
  _3 = (int) _2;
  _4 = gateCallbackIndex[_3];
  callbackIndex_8 = (uint32) _4;
  # DEBUG callbackIndex => callbackIndex_8
  # DEBUG BEGIN_STMT
  _5 = gateCallbacks[callbackIndex_8].Update;
  _5 (clockName_6(D), 0);
  return;

}


Clock_Ip_DisableModuleClock (Clock_Ip_NameType clockName)
{
  uint32 callbackIndex;
  int _1;
  unsigned char _2;
  int _3;
  unsigned char _4;
  void (*<T489>) (Clock_Ip_NameType, boolean) _5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) clockName_6(D);
  _2 = clockFeatures[_1][1];
  _3 = (int) _2;
  _4 = gateCallbackIndex[_3];
  callbackIndex_8 = (uint32) _4;
  # DEBUG callbackIndex => callbackIndex_8
  # DEBUG BEGIN_STMT
  _5 = gateCallbacks[callbackIndex_8].Update;
  _5 (clockName_6(D), 1);
  return;

}


Clock_Ip_InstallNotificationsCallback (void (*Clock_Ip_NotificationsCallbackType) (Clock_Ip_ClockNotificationType, Clock_Ip_NameType) callback)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  clockNotificationsCallback = callback_2(D);
  return;

}


Clock_Ip_PowerModeChangeNotification (power_modes_t powerMode, power_notification_t notification)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  UpdateFrequencies (powerMode_2(D));
  return;

}


Clock_Ip_ClearClockMonitorStatus (Clock_Ip_NameType clockName)
{
  uint32 callbackIndex;
  int _1;
  unsigned char _2;
  int _3;
  unsigned char _4;
  void (*<T498>) (Clock_Ip_NameType) _5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) clockName_6(D);
  _2 = clockFeatures[_1][1];
  _3 = (int) _2;
  _4 = cmuCallbackIndex[_3];
  callbackIndex_8 = (uint32) _4;
  # DEBUG callbackIndex => callbackIndex_8
  # DEBUG BEGIN_STMT
  _5 = cmuCallbacks[callbackIndex_8].Clear;
  _5 (clockName_6(D));
  return;

}


Clock_Ip_GetClockMonitorStatus (Clock_Ip_NameType clockName)
{
  uint32 callbackIndex;
  int _1;
  unsigned char _2;
  int _3;
  unsigned char _4;
  Clock_Ip_CmuStatusType (*<T49c>) (Clock_Ip_NameType) _5;
  Clock_Ip_CmuStatusType _10;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) clockName_6(D);
  _2 = clockFeatures[_1][1];
  _3 = (int) _2;
  _4 = cmuCallbackIndex[_3];
  callbackIndex_8 = (uint32) _4;
  # DEBUG callbackIndex => callbackIndex_8
  # DEBUG BEGIN_STMT
  _5 = cmuCallbacks[callbackIndex_8].GetStatus;
  _10 = _5 (clockName_6(D));
  return _10;

}


Clock_Ip_DisableClockMonitor (Clock_Ip_NameType clockName)
{
  uint32 callbackIndex;
  int _1;
  unsigned char _2;
  int _3;
  unsigned char _4;
  void (*<T498>) (Clock_Ip_NameType) _5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) clockName_6(D);
  _2 = clockFeatures[_1][1];
  _3 = (int) _2;
  _4 = cmuCallbackIndex[_3];
  callbackIndex_8 = (uint32) _4;
  # DEBUG callbackIndex => callbackIndex_8
  # DEBUG BEGIN_STMT
  _5 = cmuCallbacks[callbackIndex_8].Disable;
  _5 (clockName_6(D));
  return;

}


Clock_Ip_DistributePll ()
{
  uint32 callbackIndex;
  uint32 i;
  const struct Clock_Ip_ClockConfigType * clockConfig.7_1;
  <unnamed type> _2;
  int _3;
  <unnamed type> _4;
  <unnamed type> _5;
  int _6;
  unsigned char _7;
  int _8;
  unsigned char _9;
  void (*<T478>) (const struct Clock_Ip_SelectorConfigType *) _10;
  const struct Clock_Ip_SelectorConfigType * _11;
  const struct Clock_Ip_ClockConfigType * clockConfig.11_12;
  unsigned char _13;
  long unsigned int _14;
  _Bool clockTreeIsConsumingPll.12_15;
  const struct Clock_Ip_ClockConfigType * clockConfig.11_16;
  const struct Clock_IP_SpecificPeriphConfigType * _17;
  <unnamed type> _18;
  int _19;
  unsigned char _20;
  int _21;
  unsigned char _22;
  void (*<T494>) (const struct Clock_Ip_CmuConfigType *) _23;
  const struct Clock_Ip_CmuConfigType * _24;
  const struct Clock_Ip_ClockConfigType * clockConfig.16_25;
  unsigned char _26;
  long unsigned int _27;

  <bb 2> [local count: 168730860]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  clockConfig.7_1 = clockConfig;
  if (clockConfig.7_1 != 0B)
    goto <bb 12>; [70.00%]
  else
    goto <bb 11>; [30.00%]

  <bb 12> [local count: 118111602]:
  goto <bb 6>; [100.00%]

  <bb 3> [local count: 955630224]:
  # DEBUG BEGIN_STMT
  _2 = clockConfig.11_12->selectors[i_28].value;
  _3 = (int) _2;
  _4 = clockName_sourceType[_3];
  if (_4 != 1)
    goto <bb 4>; [66.00%]
  else
    goto <bb 5>; [34.00%]

  <bb 4> [local count: 630715948]:
  # DEBUG BEGIN_STMT
  _5 = clockConfig.11_12->selectors[i_28].name;
  _6 = (int) _5;
  _7 = clockFeatures[_6][1];
  _8 = (int) _7;
  _9 = selectorCallbackIndex[_8];
  callbackIndex_39 = (uint32) _9;
  # DEBUG callbackIndex => callbackIndex_39
  # DEBUG BEGIN_STMT
  _10 = selectorCallbacks[callbackIndex_39].Set;
  _11 = &clockConfig.11_12->selectors[i_28];
  _10 (_11);

  <bb 5> [local count: 955630224]:
  # DEBUG BEGIN_STMT
  i_41 = i_28 + 1;
  # DEBUG i => i_41

  <bb 6> [local count: 1073741824]:
  # i_28 = PHI <i_41(5), 0(12)>
  # DEBUG i => i_28
  # DEBUG BEGIN_STMT
  clockConfig.11_12 = clockConfig;
  _13 = clockConfig.11_12->selectorsCount;
  _14 = (long unsigned int) _13;
  if (_14 > i_28)
    goto <bb 3>; [89.00%]
  else
    goto <bb 7>; [11.00%]

  <bb 7> [local count: 118111601]:
  # clockConfig.11_16 = PHI <clockConfig.11_12(6)>
  # DEBUG BEGIN_STMT
  clockTreeIsConsumingPll.12_15 = clockTreeIsConsumingPll;
  if (clockTreeIsConsumingPll.12_15 != 0)
    goto <bb 8>; [33.00%]
  else
    goto <bb 11>; [67.00%]

  <bb 8> [local count: 38976828]:
  # DEBUG BEGIN_STMT
  _17 = &clockConfig.11_16->specificPeriphalConfiguration;
  SpecificPeripheralClockInitialization (_17);
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 10>; [100.00%]

  <bb 9> [local count: 155907314]:
  # DEBUG BEGIN_STMT
  _18 = clockConfig.16_25->cmus[i_29].name;
  _19 = (int) _18;
  _20 = clockFeatures[_19][1];
  _21 = (int) _20;
  _22 = cmuCallbackIndex[_21];
  callbackIndex_36 = (uint32) _22;
  # DEBUG callbackIndex => callbackIndex_36
  # DEBUG BEGIN_STMT
  _23 = cmuCallbacks[callbackIndex_36].Set;
  _24 = &clockConfig.16_25->cmus[i_29];
  _23 (_24);
  # DEBUG BEGIN_STMT
  i_38 = i_29 + 1;
  # DEBUG i => i_38

  <bb 10> [local count: 194884142]:
  # i_29 = PHI <0(8), i_38(9)>
  # DEBUG i => i_29
  # DEBUG BEGIN_STMT
  clockConfig.16_25 = clockConfig;
  _26 = clockConfig.16_25->cmusCount;
  _27 = (long unsigned int) _26;
  if (_27 > i_29)
    goto <bb 9>; [80.00%]
  else
    goto <bb 11>; [20.00%]

  <bb 11> [local count: 168730859]:
  # DEBUG BEGIN_STMT
  UpdateFrequencies (0);
  return;

}


Clock_Ip_GetPllStatus ()
{
  uint32 callbackIndex;
  uint32 i;
  clock_pll_status_t pllStatus;
  Clock_Ip_PllStatusType retValue;
  <unnamed type> _1;
  int _2;
  unsigned char _3;
  int _4;
  unsigned char _5;
  clock_pll_status_t (*<T46d>) (Clock_Ip_NameType) _6;

  <bb 2> [local count: 114863532]:
  # DEBUG BEGIN_STMT
  # DEBUG retValue => 2
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 7>; [100.00%]

  <bb 3> [local count: 1014686025]:
  # DEBUG BEGIN_STMT
  _1 = HwPllName[0];
  _2 = (int) _1;
  _3 = clockFeatures[_2][1];
  _4 = (int) _3;
  _5 = pllCallbackIndex[_4];
  callbackIndex_14 = (uint32) _5;
  # DEBUG callbackIndex => callbackIndex_14
  # DEBUG BEGIN_STMT
  _6 = pllCallbacks[callbackIndex_14].Complete;
  pllStatus_16 = _6 (_1);
  # DEBUG pllStatus => pllStatus_16
  # DEBUG BEGIN_STMT
  if (pllStatus_16 == 1)
    goto <bb 8>; [5.50%]
  else
    goto <bb 4>; [94.50%]

  <bb 4> [local count: 958878293]:
  # DEBUG BEGIN_STMT
  if (pllStatus_16 == 2)
    goto <bb 5>; [34.00%]
  else
    goto <bb 6>; [66.00%]

  <bb 5> [local count: 326018619]:
  # DEBUG BEGIN_STMT
  # DEBUG retValue => 0

  <bb 6> [local count: 958878293]:
  # retValue_7 = PHI <retValue_8(4), 0(5)>
  # i_17 = PHI <1(4), 1(5)>

  <bb 7> [local count: 1073741824]:
  # retValue_8 = PHI <retValue_7(6), 2(2)>
  # i_10 = PHI <i_17(6), 0(2)>
  # DEBUG i => i_10
  # DEBUG retValue => retValue_8
  # DEBUG BEGIN_STMT
  if (i_10 == 0)
    goto <bb 3>; [94.50%]
  else
    goto <bb 8>; [5.50%]

  <bb 8> [local count: 114863532]:
  # retValue_9 = PHI <1(3), retValue_8(7)>
  # DEBUG retValue => retValue_9
  # DEBUG BEGIN_STMT
  return retValue_9;

}


Clock_Ip_InitClock (const struct Clock_Ip_ClockConfigType * config)
{
  uint32 i;
  uint32 callbackIndex;
  const struct Clock_Ip_ClockConfigType * clockConfig.1_1;
  <unnamed type> _2;
  int _3;
  unsigned char _4;
  int _5;
  unsigned char _6;
  void (*<T494>) (const struct Clock_Ip_CmuConfigType *) _7;
  const struct Clock_Ip_CmuConfigType * _8;
  unsigned char _9;
  long unsigned int _10;
  <unnamed type> _11;
  int _12;
  unsigned char _13;
  int _14;
  unsigned char _15;
  void (*<T478>) (const struct Clock_Ip_SelectorConfigType *) _16;
  const struct Clock_Ip_SelectorConfigType * _17;
  unsigned char _18;
  long unsigned int _19;
  <unnamed type> _20;
  int _21;
  unsigned char _22;
  int _23;
  unsigned char _24;
  void (*<T456>) (const struct Clock_Ip_FracDivConfigType *) _25;
  const struct Clock_Ip_FracDivConfigType * _26;
  unsigned char _27;
  long unsigned int _28;
  <unnamed type> _29;
  int _30;
  unsigned char _31;
  int _32;
  unsigned char _33;
  void (*<T467>) (const struct Clock_Ip_PllConfigType *) _34;
  const struct Clock_Ip_PllConfigType * _35;
  unsigned char _36;
  long unsigned int _37;
  <unnamed type> _38;
  int _39;
  unsigned char _40;
  int _41;
  unsigned char _42;
  void (*<T433>) (const struct Clock_Ip_XoscConfigType *) _43;
  const struct Clock_Ip_XoscConfigType * _44;
  unsigned char _45;
  long unsigned int _46;
  <unnamed type> _47;
  int _48;
  unsigned char _49;
  int _50;
  unsigned char _51;
  void (*<T428>) (const struct Clock_Ip_IrcoscConfigType *) _52;
  const struct Clock_Ip_IrcoscConfigType * _53;
  unsigned char _54;
  long unsigned int _55;
  <unnamed type> _56;
  int _57;
  unsigned char _58;
  int _59;
  unsigned char _60;
  void (*<T433>) (const struct Clock_Ip_XoscConfigType *) _61;
  const struct Clock_Ip_XoscConfigType * _62;
  unsigned char _63;
  long unsigned int _64;
  <unnamed type> _65;
  int _66;
  unsigned char _67;
  int _68;
  unsigned char _69;
  void (*<T4a7>) (const struct Clock_Ip_PcfsConfigType *) _70;
  const struct Clock_Ip_PcfsConfigType * _71;
  unsigned char _72;
  long unsigned int _73;
  <unnamed type> _74;
  int _75;
  unsigned char _76;
  int _77;
  unsigned char _78;
  void (*<T44a>) (const struct Clock_Ip_DividerTriggerConfigType *) _79;
  const struct Clock_Ip_DividerTriggerConfigType * _80;
  unsigned char _81;
  long unsigned int _82;
  <unnamed type> _83;
  int _84;
  unsigned char _85;
  int _86;
  unsigned char _87;
  void (*<T43f>) (const struct Clock_Ip_DividerConfigType *) _88;
  const struct Clock_Ip_DividerConfigType * _89;
  unsigned char _90;
  long unsigned int _91;
  <unnamed type> _92;
  int _93;
  unsigned char _94;
  int _95;
  unsigned char _96;
  void (*<T44a>) (const struct Clock_Ip_DividerTriggerConfigType *) _97;
  const struct Clock_Ip_DividerTriggerConfigType * _98;
  unsigned char _99;
  long unsigned int _100;
  <unnamed type> _101;
  int _102;
  unsigned char _103;
  int _104;
  unsigned char _105;
  void (*<T467>) (const struct Clock_Ip_PllConfigType *) _106;
  const struct Clock_Ip_PllConfigType * _107;
  unsigned char _108;
  long unsigned int _109;
  <unnamed type> _110;
  int _111;
  unsigned char _112;
  int _113;
  unsigned char _114;
  void (*<T456>) (const struct Clock_Ip_FracDivConfigType *) _115;
  const struct Clock_Ip_FracDivConfigType * _116;
  unsigned char _117;
  long unsigned int _118;
  <unnamed type> _119;
  int _120;
  <unnamed type> _121;
  <unnamed type> _122;
  int _123;
  unsigned char _124;
  int _125;
  unsigned char _126;
  void (*<T478>) (const struct Clock_Ip_SelectorConfigType *) _127;
  const struct Clock_Ip_SelectorConfigType * _128;
  unsigned char _129;
  long unsigned int _130;
  <unnamed type> _131;
  int _132;
  unsigned char _133;
  int _134;
  unsigned char _135;
  void (*<T484>) (const struct Clock_Ip_GateConfigType *) _136;
  const struct Clock_Ip_GateConfigType * _137;
  unsigned char _138;
  long unsigned int _139;
  _Bool clockTreeIsConsumingPll.2_140;
  const struct Clock_IP_SpecificPeriphConfigType * _141;
  <unnamed type> _142;
  int _143;
  unsigned char _144;
  int _145;
  unsigned char _146;
  void (*<T494>) (const struct Clock_Ip_CmuConfigType *) _147;
  const struct Clock_Ip_CmuConfigType * _148;
  unsigned char _149;
  long unsigned int _150;

  <bb 2> [local count: 118111599]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  ClockCalcFreqCallIdx = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  clockConfig.1_1 = clockConfig;
  if (clockConfig.1_1 != 0B)
    goto <bb 55>; [70.00%]
  else
    goto <bb 5>; [30.00%]

  <bb 55> [local count: 82678119]:
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 330712479]:
  # DEBUG BEGIN_STMT
  _2 = config_188(D)->cmus[i_151].name;
  _3 = (int) _2;
  _4 = clockFeatures[_3][1];
  _5 = (int) _4;
  _6 = cmuCallbackIndex[_5];
  callbackIndex_189 = (uint32) _6;
  # DEBUG callbackIndex => callbackIndex_189
  # DEBUG BEGIN_STMT
  _7 = cmuCallbacks[callbackIndex_189].Reset;
  _8 = &config_188(D)->cmus[i_151];
  _7 (_8);
  # DEBUG BEGIN_STMT
  i_191 = i_151 + 1;
  # DEBUG i => i_191

  <bb 4> [local count: 413390598]:
  # i_151 = PHI <i_191(3), 0(55)>
  # DEBUG i => i_151
  # DEBUG BEGIN_STMT
  _9 = config_188(D)->cmusCount;
  _10 = (long unsigned int) _9;
  if (_10 > i_151)
    goto <bb 3>; [80.00%]
  else
    goto <bb 5>; [20.00%]

  <bb 5> [local count: 118111599]:
  # DEBUG BEGIN_STMT
  clockConfig = config_188(D);
  # DEBUG BEGIN_STMT
  SpecificPlatformInitClock (config_188(D));
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 7>; [100.00%]

  <bb 6> [local count: 955630217]:
  # DEBUG BEGIN_STMT
  _11 = config_188(D)->selectors[i_152].name;
  _12 = (int) _11;
  _13 = clockFeatures[_12][1];
  _14 = (int) _13;
  _15 = selectorCallbackIndex[_14];
  callbackIndex_241 = (uint32) _15;
  # DEBUG callbackIndex => callbackIndex_241
  # DEBUG BEGIN_STMT
  _16 = selectorCallbacks[callbackIndex_241].Reset;
  _17 = &config_188(D)->selectors[i_152];
  _16 (_17);
  # DEBUG BEGIN_STMT
  i_243 = i_152 + 1;
  # DEBUG i => i_243

  <bb 7> [local count: 1073741818]:
  # i_152 = PHI <0(5), i_243(6)>
  # DEBUG i => i_152
  # DEBUG BEGIN_STMT
  _18 = config_188(D)->selectorsCount;
  _19 = (long unsigned int) _18;
  if (_19 > i_152)
    goto <bb 6>; [89.00%]
  else
    goto <bb 54>; [11.00%]

  <bb 54> [local count: 118111600]:
  goto <bb 9>; [100.00%]

  <bb 8> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  _20 = config_188(D)->fracDivs[i_153].name;
  _21 = (int) _20;
  _22 = clockFeatures[_21][1];
  _23 = (int) _22;
  _24 = fractional_dividerCallbackIndex[_23];
  callbackIndex_238 = (uint32) _24;
  # DEBUG callbackIndex => callbackIndex_238
  # DEBUG BEGIN_STMT
  _25 = fracDivCallbacks[callbackIndex_238].Reset;
  _26 = &config_188(D)->fracDivs[i_153];
  _25 (_26);
  # DEBUG BEGIN_STMT
  i_240 = i_153 + 1;
  # DEBUG i => i_240

  <bb 9> [local count: 236223200]:
  # i_153 = PHI <i_240(8), 0(54)>
  # DEBUG i => i_153
  # DEBUG BEGIN_STMT
  _27 = config_188(D)->fracDivsCount;
  _28 = (long unsigned int) _27;
  if (_28 > i_153)
    goto <bb 8>; [50.00%]
  else
    goto <bb 53>; [50.00%]

  <bb 53> [local count: 118111600]:
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  _29 = config_188(D)->plls[i_154].name;
  _30 = (int) _29;
  _31 = clockFeatures[_30][1];
  _32 = (int) _31;
  _33 = pllCallbackIndex[_32];
  callbackIndex_235 = (uint32) _33;
  # DEBUG callbackIndex => callbackIndex_235
  # DEBUG BEGIN_STMT
  _34 = pllCallbacks[callbackIndex_235].Reset;
  _35 = &config_188(D)->plls[i_154];
  _34 (_35);
  # DEBUG BEGIN_STMT
  i_237 = i_154 + 1;
  # DEBUG i => i_237

  <bb 11> [local count: 236223200]:
  # i_154 = PHI <i_237(10), 0(53)>
  # DEBUG i => i_154
  # DEBUG BEGIN_STMT
  _36 = config_188(D)->pllsCount;
  _37 = (long unsigned int) _36;
  if (_37 > i_154)
    goto <bb 10>; [50.00%]
  else
    goto <bb 52>; [50.00%]

  <bb 52> [local count: 118111600]:
  goto <bb 13>; [100.00%]

  <bb 12> [local count: 236258637]:
  # DEBUG BEGIN_STMT
  _38 = config_188(D)->xoscs[i_155].name;
  _39 = (int) _38;
  _40 = clockFeatures[_39][1];
  _41 = (int) _40;
  _42 = xoscCallbackIndex[_41];
  callbackIndex_232 = (uint32) _42;
  # DEBUG callbackIndex => callbackIndex_232
  # DEBUG BEGIN_STMT
  _43 = extOscCallbacks[callbackIndex_232].Reset;
  _44 = &config_188(D)->xoscs[i_155];
  _43 (_44);
  # DEBUG BEGIN_STMT
  i_234 = i_155 + 1;
  # DEBUG i => i_234

  <bb 13> [local count: 354370237]:
  # i_155 = PHI <i_234(12), 0(52)>
  # DEBUG i => i_155
  # DEBUG BEGIN_STMT
  _45 = config_188(D)->xoscsCount;
  _46 = (long unsigned int) _45;
  if (_46 > i_155)
    goto <bb 12>; [66.67%]
  else
    goto <bb 51>; [33.33%]

  <bb 51> [local count: 118111600]:
  goto <bb 15>; [100.00%]

  <bb 14> [local count: 236258637]:
  # DEBUG BEGIN_STMT
  _47 = config_188(D)->ircoscs[i_156].name;
  _48 = (int) _47;
  _49 = clockFeatures[_48][1];
  _50 = (int) _49;
  _51 = ircoscCallbackIndex[_50];
  callbackIndex_229 = (uint32) _51;
  # DEBUG callbackIndex => callbackIndex_229
  # DEBUG BEGIN_STMT
  _52 = intOscCallbacks[callbackIndex_229].Set;
  _53 = &config_188(D)->ircoscs[i_156];
  _52 (_53);
  # DEBUG BEGIN_STMT
  i_231 = i_156 + 1;
  # DEBUG i => i_231

  <bb 15> [local count: 354370237]:
  # i_156 = PHI <i_231(14), 0(51)>
  # DEBUG i => i_156
  # DEBUG BEGIN_STMT
  _54 = config_188(D)->ircoscsCount;
  _55 = (long unsigned int) _54;
  if (_55 > i_156)
    goto <bb 14>; [66.67%]
  else
    goto <bb 50>; [33.33%]

  <bb 50> [local count: 118111600]:
  goto <bb 17>; [100.00%]

  <bb 16> [local count: 236258637]:
  # DEBUG BEGIN_STMT
  _56 = config_188(D)->xoscs[i_157].name;
  _57 = (int) _56;
  _58 = clockFeatures[_57][1];
  _59 = (int) _58;
  _60 = xoscCallbackIndex[_59];
  callbackIndex_226 = (uint32) _60;
  # DEBUG callbackIndex => callbackIndex_226
  # DEBUG BEGIN_STMT
  _61 = extOscCallbacks[callbackIndex_226].Set;
  _62 = &config_188(D)->xoscs[i_157];
  _61 (_62);
  # DEBUG BEGIN_STMT
  i_228 = i_157 + 1;
  # DEBUG i => i_228

  <bb 17> [local count: 354370237]:
  # i_157 = PHI <i_228(16), 0(50)>
  # DEBUG i => i_157
  # DEBUG BEGIN_STMT
  _63 = config_188(D)->xoscsCount;
  _64 = (long unsigned int) _63;
  if (_64 > i_157)
    goto <bb 16>; [66.67%]
  else
    goto <bb 18>; [33.33%]

  <bb 18> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  Clock_Ip_Sleep ();
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 20>; [100.00%]

  <bb 19> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  _65 = config_188(D)->pcfs[i_158].name;
  _66 = (int) _65;
  _67 = clockFeatures[_66][1];
  _68 = (int) _67;
  _69 = pcfsCallbackIndex[_68];
  callbackIndex_223 = (uint32) _69;
  # DEBUG callbackIndex => callbackIndex_223
  # DEBUG BEGIN_STMT
  _70 = pcfsCallbacks[callbackIndex_223].Set;
  _71 = &config_188(D)->pcfs[i_158];
  _70 (_71);
  # DEBUG BEGIN_STMT
  i_225 = i_158 + 1;
  # DEBUG i => i_225

  <bb 20> [local count: 236223200]:
  # i_158 = PHI <0(18), i_225(19)>
  # DEBUG i => i_158
  # DEBUG BEGIN_STMT
  _72 = config_188(D)->pcfsCount;
  _73 = (long unsigned int) _72;
  if (_73 > i_158)
    goto <bb 19>; [50.00%]
  else
    goto <bb 49>; [50.00%]

  <bb 49> [local count: 118111600]:
  goto <bb 22>; [100.00%]

  <bb 21> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  _74 = config_188(D)->dividerTriggers[i_159].name;
  _75 = (int) _74;
  _76 = clockFeatures[_75][1];
  _77 = (int) _76;
  _78 = dividertriggerCallbackIndex[_77];
  callbackIndex_220 = (uint32) _78;
  # DEBUG callbackIndex => callbackIndex_220
  # DEBUG BEGIN_STMT
  _79 = dividerTriggerCallbacks[callbackIndex_220].Configure;
  _80 = &config_188(D)->dividerTriggers[i_159];
  _79 (_80);
  # DEBUG BEGIN_STMT
  i_222 = i_159 + 1;
  # DEBUG i => i_222

  <bb 22> [local count: 236223200]:
  # i_159 = PHI <i_222(21), 0(49)>
  # DEBUG i => i_159
  # DEBUG BEGIN_STMT
  _81 = config_188(D)->dividerTriggersCount;
  _82 = (long unsigned int) _81;
  if (_82 > i_159)
    goto <bb 21>; [50.00%]
  else
    goto <bb 48>; [50.00%]

  <bb 48> [local count: 118111600]:
  goto <bb 24>; [100.00%]

  <bb 23> [local count: 955630224]:
  # DEBUG BEGIN_STMT
  _83 = config_188(D)->dividers[i_160].name;
  _84 = (int) _83;
  _85 = clockFeatures[_84][1];
  _86 = (int) _85;
  _87 = dividerCallbackIndex[_86];
  callbackIndex_217 = (uint32) _87;
  # DEBUG callbackIndex => callbackIndex_217
  # DEBUG BEGIN_STMT
  _88 = dividerCallbacks[callbackIndex_217].Set;
  _89 = &config_188(D)->dividers[i_160];
  _88 (_89);
  # DEBUG BEGIN_STMT
  i_219 = i_160 + 1;
  # DEBUG i => i_219

  <bb 24> [local count: 1073741824]:
  # i_160 = PHI <i_219(23), 0(48)>
  # DEBUG i => i_160
  # DEBUG BEGIN_STMT
  _90 = config_188(D)->dividersCount;
  _91 = (long unsigned int) _90;
  if (_91 > i_160)
    goto <bb 23>; [89.00%]
  else
    goto <bb 47>; [11.00%]

  <bb 47> [local count: 118111601]:
  goto <bb 26>; [100.00%]

  <bb 25> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  _92 = config_188(D)->dividerTriggers[i_161].name;
  _93 = (int) _92;
  _94 = clockFeatures[_93][1];
  _95 = (int) _94;
  _96 = dividertriggerCallbackIndex[_95];
  callbackIndex_214 = (uint32) _96;
  # DEBUG callbackIndex => callbackIndex_214
  # DEBUG BEGIN_STMT
  _97 = dividerTriggerCallbacks[callbackIndex_214].TriggerUpdate;
  _98 = &config_188(D)->dividerTriggers[i_161];
  _97 (_98);
  # DEBUG BEGIN_STMT
  i_216 = i_161 + 1;
  # DEBUG i => i_216

  <bb 26> [local count: 236223201]:
  # i_161 = PHI <i_216(25), 0(47)>
  # DEBUG i => i_161
  # DEBUG BEGIN_STMT
  _99 = config_188(D)->dividerTriggersCount;
  _100 = (long unsigned int) _99;
  if (_100 > i_161)
    goto <bb 25>; [50.00%]
  else
    goto <bb 46>; [50.00%]

  <bb 46> [local count: 118111601]:
  goto <bb 28>; [100.00%]

  <bb 27> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  _101 = config_188(D)->plls[i_162].name;
  _102 = (int) _101;
  _103 = clockFeatures[_102][1];
  _104 = (int) _103;
  _105 = pllCallbackIndex[_104];
  callbackIndex_211 = (uint32) _105;
  # DEBUG callbackIndex => callbackIndex_211
  # DEBUG BEGIN_STMT
  _106 = pllCallbacks[callbackIndex_211].Set;
  _107 = &config_188(D)->plls[i_162];
  _106 (_107);
  # DEBUG BEGIN_STMT
  i_213 = i_162 + 1;
  # DEBUG i => i_213

  <bb 28> [local count: 236223201]:
  # i_162 = PHI <i_213(27), 0(46)>
  # DEBUG i => i_162
  # DEBUG BEGIN_STMT
  _108 = config_188(D)->pllsCount;
  _109 = (long unsigned int) _108;
  if (_109 > i_162)
    goto <bb 27>; [50.00%]
  else
    goto <bb 45>; [50.00%]

  <bb 45> [local count: 118111601]:
  goto <bb 30>; [100.00%]

  <bb 29> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  _110 = config_188(D)->fracDivs[i_163].name;
  _111 = (int) _110;
  _112 = clockFeatures[_111][1];
  _113 = (int) _112;
  _114 = fractional_dividerCallbackIndex[_113];
  callbackIndex_208 = (uint32) _114;
  # DEBUG callbackIndex => callbackIndex_208
  # DEBUG BEGIN_STMT
  _115 = fracDivCallbacks[callbackIndex_208].Set;
  _116 = &config_188(D)->fracDivs[i_163];
  _115 (_116);
  # DEBUG BEGIN_STMT
  i_210 = i_163 + 1;
  # DEBUG i => i_210

  <bb 30> [local count: 236223201]:
  # i_163 = PHI <i_210(29), 0(45)>
  # DEBUG i => i_163
  # DEBUG BEGIN_STMT
  _117 = config_188(D)->fracDivsCount;
  _118 = (long unsigned int) _117;
  if (_118 > i_163)
    goto <bb 29>; [50.00%]
  else
    goto <bb 31>; [50.00%]

  <bb 31> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  clockTreeIsConsumingPll = 0;
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 36>; [100.00%]

  <bb 32> [local count: 955630214]:
  # DEBUG BEGIN_STMT
  _119 = config_188(D)->selectors[i_164].value;
  _120 = (int) _119;
  _121 = clockName_sourceType[_120];
  if (_121 == 1)
    goto <bb 33>; [34.00%]
  else
    goto <bb 34>; [66.00%]

  <bb 33> [local count: 324914273]:
  # DEBUG BEGIN_STMT
  _122 = config_188(D)->selectors[i_164].name;
  _123 = (int) _122;
  _124 = clockFeatures[_123][1];
  _125 = (int) _124;
  _126 = selectorCallbackIndex[_125];
  callbackIndex_205 = (uint32) _126;
  # DEBUG callbackIndex => callbackIndex_205
  # DEBUG BEGIN_STMT
  _127 = selectorCallbacks[callbackIndex_205].Set;
  _128 = &config_188(D)->selectors[i_164];
  _127 (_128);
  goto <bb 35>; [100.00%]

  <bb 34> [local count: 630715942]:
  # DEBUG BEGIN_STMT
  clockTreeIsConsumingPll = 1;

  <bb 35> [local count: 955630216]:
  # DEBUG BEGIN_STMT
  i_207 = i_164 + 1;
  # DEBUG i => i_207

  <bb 36> [local count: 1073741813]:
  # i_164 = PHI <0(31), i_207(35)>
  # DEBUG i => i_164
  # DEBUG BEGIN_STMT
  _129 = config_188(D)->selectorsCount;
  _130 = (long unsigned int) _129;
  if (_130 > i_164)
    goto <bb 32>; [89.00%]
  else
    goto <bb 44>; [11.00%]

  <bb 44> [local count: 118111599]:
  goto <bb 38>; [100.00%]

  <bb 37> [local count: 955630217]:
  # DEBUG BEGIN_STMT
  _131 = config_188(D)->gates[i_165].name;
  _132 = (int) _131;
  _133 = clockFeatures[_132][1];
  _134 = (int) _133;
  _135 = gateCallbackIndex[_134];
  callbackIndex_201 = (uint32) _135;
  # DEBUG callbackIndex => callbackIndex_201
  # DEBUG BEGIN_STMT
  _136 = gateCallbacks[callbackIndex_201].Set;
  _137 = &config_188(D)->gates[i_165];
  _136 (_137);
  # DEBUG BEGIN_STMT
  i_203 = i_165 + 1;
  # DEBUG i => i_203

  <bb 38> [local count: 1073741818]:
  # i_165 = PHI <i_203(37), 0(44)>
  # DEBUG i => i_165
  # DEBUG BEGIN_STMT
  _138 = config_188(D)->gatesCount;
  _139 = (long unsigned int) _138;
  if (_139 > i_165)
    goto <bb 37>; [89.00%]
  else
    goto <bb 39>; [11.00%]

  <bb 39> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  clockTreeIsConsumingPll.2_140 = clockTreeIsConsumingPll;
  if (clockTreeIsConsumingPll.2_140 != 0)
    goto <bb 43>; [67.00%]
  else
    goto <bb 40>; [33.00%]

  <bb 40> [local count: 38976828]:
  # DEBUG BEGIN_STMT
  _141 = &config_188(D)->specificPeriphalConfiguration;
  SpecificPeripheralClockInitialization (_141);
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 42>; [100.00%]

  <bb 41> [local count: 155907313]:
  # DEBUG BEGIN_STMT
  _142 = config_188(D)->cmus[i_166].name;
  _143 = (int) _142;
  _144 = clockFeatures[_143][1];
  _145 = (int) _144;
  _146 = cmuCallbackIndex[_145];
  callbackIndex_197 = (uint32) _146;
  # DEBUG callbackIndex => callbackIndex_197
  # DEBUG BEGIN_STMT
  _147 = cmuCallbacks[callbackIndex_197].Set;
  _148 = &config_188(D)->cmus[i_166];
  _147 (_148);
  # DEBUG BEGIN_STMT
  i_199 = i_166 + 1;
  # DEBUG i => i_199

  <bb 42> [local count: 194884141]:
  # i_166 = PHI <0(40), i_199(41)>
  # DEBUG i => i_166
  # DEBUG BEGIN_STMT
  _149 = config_188(D)->cmusCount;
  _150 = (long unsigned int) _149;
  if (_150 > i_166)
    goto <bb 41>; [80.00%]
  else
    goto <bb 43>; [20.00%]

  <bb 43> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  UpdateFrequencies (0);
  return;

}


Clock_Ip_Init (const struct Clock_Ip_ClockConfigType * config)
{
  Clock_Ip_PllStatusType pllStatus;
  Clock_Ip_StatusType clockStatus;
  _Bool clockTreeIsConsumingPll.0_1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG clockStatus => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  Clock_Ip_InitClock (config_5(D));
  # DEBUG BEGIN_STMT
  clockTreeIsConsumingPll.0_1 = clockTreeIsConsumingPll;
  if (clockTreeIsConsumingPll.0_1 != 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 5>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  pllStatus_8 = Clock_Ip_GetPllStatus ();
  # DEBUG pllStatus => pllStatus_8
  # DEBUG BEGIN_STMT
  if (pllStatus_8 == 0)
    goto <bb 4>; [33.00%]
  else
    goto <bb 5>; [67.00%]

  <bb 4> [local count: 116930485]:
  # DEBUG BEGIN_STMT
  Clock_Ip_DistributePll ();
  # DEBUG BEGIN_STMT
  # DEBUG clockStatus => 0

  <bb 5> [local count: 1073741824]:
  # clockStatus_2 = PHI <0(4), 0(2), 1(3)>
  # DEBUG clockStatus => clockStatus_2
  # DEBUG BEGIN_STMT
  return clockStatus_2;

}


