Marking local functions: Clock_Ip_Sleep Marking externally visible functions: ClockTimeoutExpired ClockStartTimeout ReportClockErrors Clock_Ip_TimeDelay Clock_Ip_GetClockFrequency Clock_Ip_EnableModuleClock Clock_Ip_DisableModuleClock Clock_Ip_InstallNotificationsCallback Clock_Ip_PowerModeChangeNotification Clock_Ip_ClearClockMonitorStatus Clock_Ip_GetClockMonitorStatus Clock_Ip_DisableClockMonitor Clock_Ip_DistributePll Clock_Ip_GetPllStatus Clock_Ip_InitClock Clock_Ip_Init Marking externally visible variables: clockConfig Reclaiming functions: Reclaiming variables: Clearing address taken flags: Symbol table: OsIf_GetElapsed/53 (OsIf_GetElapsed) @06e56a80 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: ClockTimeoutExpired/21 Calls: OsIf_MicrosToTicks/52 (OsIf_MicrosToTicks) @06e568c0 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: ClockStartTimeout/20 Calls: OsIf_GetCounter/51 (OsIf_GetCounter) @06e567e0 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: ClockStartTimeout/20 Calls: GetProducerClockFreq/50 (GetProducerClockFreq) @06e56460 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: Clock_Ip_GetClockFrequency/15 Calls: consumerClockCallbacks/49 (consumerClockCallbacks) @06e5a360 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_GetClockFrequency/15 (read) Availability: not_available Varpool flags: read-only HwPllName/48 (HwPllName) @06e4cd80 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_GetPllStatus/6 (read)Clock_Ip_GetPllStatus/6 (read) Availability: not_available Varpool flags: read-only calcFreqCallbacks/47 (calcFreqCallbacks) @06e4c990 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_Sleep/16 (read)Clock_Ip_TimeDelay/17 (read) Availability: not_available Varpool flags: read-only UpdateFrequencies/46 (UpdateFrequencies) @06dc3e00 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: Clock_Ip_PowerModeChangeNotification/11 Clock_Ip_DistributePll/7 Clock_Ip_InitClock/5 Calls: SpecificPeripheralClockInitialization/45 (SpecificPeripheralClockInitialization) @06dc3d20 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: Clock_Ip_DistributePll/7 Clock_Ip_InitClock/5 Calls: gateCallbacks/44 (gateCallbacks) @06e4c480 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_DisableModuleClock/13 (read)Clock_Ip_EnableModuleClock/14 (read) Availability: not_available Varpool flags: read-only gateCallbackIndex/43 (gateCallbackIndex) @06e4c438 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_DisableModuleClock/13 (read)Clock_Ip_EnableModuleClock/14 (read) Availability: not_available Varpool flags: read-only clockName_sourceType/42 (clockName_sourceType) @06e4c360 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_DistributePll/7 (read) Availability: not_available Varpool flags: read-only dividerCallbacks/41 (dividerCallbacks) @06e4c0d8 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only dividerCallbackIndex/40 (dividerCallbackIndex) @06e4c090 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only dividerTriggerCallbacks/39 (dividerTriggerCallbacks) @06dd05e8 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only dividertriggerCallbackIndex/38 (dividertriggerCallbackIndex) @06dd0f78 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only pcfsCallbacks/37 (pcfsCallbacks) @06dd0ea0 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only pcfsCallbackIndex/36 (pcfsCallbackIndex) @06dd0e58 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only intOscCallbacks/35 (intOscCallbacks) @06dd0ca8 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only ircoscCallbackIndex/34 (ircoscCallbackIndex) @06dd0c60 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only extOscCallbacks/33 (extOscCallbacks) @06dd0b88 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only xoscCallbackIndex/32 (xoscCallbackIndex) @06dd0b40 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only pllCallbacks/31 (pllCallbacks) @06dd0a68 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_GetPllStatus/6 (read) Availability: not_available Varpool flags: read-only pllCallbackIndex/30 (pllCallbackIndex) @06dd0a20 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_GetPllStatus/6 (read) Availability: not_available Varpool flags: read-only fracDivCallbacks/29 (fracDivCallbacks) @06dd0948 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only fractional_dividerCallbackIndex/28 (fractional_dividerCallbackIndex) @06dd0900 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read) Availability: not_available Varpool flags: read-only selectorCallbacks/27 (selectorCallbacks) @06dd0828 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_DistributePll/7 (read) Availability: not_available Varpool flags: read-only selectorCallbackIndex/26 (selectorCallbackIndex) @06dd07e0 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_DistributePll/7 (read) Availability: not_available Varpool flags: read-only SpecificPlatformInitClock/25 (SpecificPlatformInitClock) @06dc3c40 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: Clock_Ip_InitClock/5 Calls: cmuCallbacks/24 (cmuCallbacks) @06dd06c0 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DisableClockMonitor/8 (read)Clock_Ip_GetClockMonitorStatus/9 (read)Clock_Ip_ClearClockMonitorStatus/10 (read) Availability: not_available Varpool flags: read-only cmuCallbackIndex/23 (cmuCallbackIndex) @06dd0678 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DisableClockMonitor/8 (read)Clock_Ip_GetClockMonitorStatus/9 (read)Clock_Ip_ClearClockMonitorStatus/10 (read) Availability: not_available Varpool flags: read-only clockFeatures/22 (clockFeatures) @06dd0630 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (read)Clock_Ip_GetPllStatus/6 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DisableClockMonitor/8 (read)Clock_Ip_GetClockMonitorStatus/9 (read)Clock_Ip_ClearClockMonitorStatus/10 (read)Clock_Ip_DisableModuleClock/13 (read)Clock_Ip_EnableModuleClock/14 (read) Availability: not_available Varpool flags: read-only ClockTimeoutExpired/21 (ClockTimeoutExpired) @06dc3460 Type: function definition analyzed Visibility: externally_visible public References: Referring: Availability: available Function flags: body optimize_size Called by: Calls: OsIf_GetElapsed/53 ClockStartTimeout/20 (ClockStartTimeout) @06dc31c0 Type: function definition analyzed Visibility: externally_visible public References: Referring: Availability: available Function flags: body optimize_size Called by: Calls: OsIf_MicrosToTicks/52 OsIf_GetCounter/51 ReportClockErrors/19 (ReportClockErrors) @06dbcd20 Type: function definition analyzed Visibility: externally_visible public References: clockNotificationsCallback/1 (read) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Indirect call ClockNotificatonsEmptyCallback/18 (ClockNotificatonsEmptyCallback) @06dbc7e0 Type: function definition analyzed Visibility: prevailing_def_ironly Address is taken. References: Referring: clockNotificationsCallback/1 (addr) Availability: available Function flags: body optimize_size Called by: Calls: Clock_Ip_TimeDelay/17 (Clock_Ip_TimeDelay) @06dbc2a0 Type: function definition analyzed Visibility: externally_visible public References: ClockCalcFreqCallIdx/3 (read)calcFreqCallbacks/47 (read)ClockCalcFreqCallIdx/3 (read)ClockCalcFreqCallIdx/3 (read)ClockCalcFreqCallIdx/3 (write) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Indirect call Clock_Ip_Sleep/16 (Clock_Ip_Sleep) @06dbcee0 Type: function definition analyzed Visibility: prevailing_def_ironly References: ClockCalcFreqCallIdx/3 (read)calcFreqCallbacks/47 (read)ClockCalcFreqCallIdx/3 (read)ClockCalcFreqCallIdx/3 (write)ClockCalcFreqCallIdx/3 (read) Referring: Availability: local Function flags: body local optimize_size Called by: Clock_Ip_InitClock/5 Calls: Indirect call Clock_Ip_GetClockFrequency/15 (Clock_Ip_GetClockFrequency) @06dbcc40 Type: function definition analyzed Visibility: externally_visible public References: consumerClockCallbacks/49 (read) Referring: Availability: available Function flags: body optimize_size Called by: Calls: GetProducerClockFreq/50 Indirect call Clock_Ip_EnableModuleClock/14 (Clock_Ip_EnableModuleClock) @06dbc9a0 Type: function definition analyzed Visibility: externally_visible public References: clockFeatures/22 (read)gateCallbackIndex/43 (read)gateCallbacks/44 (read) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Indirect call Clock_Ip_DisableModuleClock/13 (Clock_Ip_DisableModuleClock) @06dbc700 Type: function definition analyzed Visibility: externally_visible public References: clockFeatures/22 (read)gateCallbackIndex/43 (read)gateCallbacks/44 (read) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Indirect call Clock_Ip_InstallNotificationsCallback/12 (Clock_Ip_InstallNotificationsCallback) @06dbc460 Type: function definition analyzed Visibility: externally_visible public References: clockNotificationsCallback/1 (write) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Clock_Ip_PowerModeChangeNotification/11 (Clock_Ip_PowerModeChangeNotification) @06dbc1c0 Type: function definition analyzed Visibility: externally_visible public References: Referring: Availability: available Function flags: body optimize_size Called by: Calls: UpdateFrequencies/46 Clock_Ip_ClearClockMonitorStatus/10 (Clock_Ip_ClearClockMonitorStatus) @06c92e00 Type: function definition analyzed Visibility: externally_visible public References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Indirect call Clock_Ip_GetClockMonitorStatus/9 (Clock_Ip_GetClockMonitorStatus) @06c928c0 Type: function definition analyzed Visibility: externally_visible public References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Indirect call Clock_Ip_DisableClockMonitor/8 (Clock_Ip_DisableClockMonitor) @06c92380 Type: function definition analyzed Visibility: externally_visible public References: clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Indirect call Clock_Ip_DistributePll/7 (Clock_Ip_DistributePll) @06c92d20 Type: function definition analyzed Visibility: externally_visible public References: clockConfig/2 (read)clockConfig/2 (read)clockName_sourceType/42 (read)clockConfig/2 (read)clockFeatures/22 (read)selectorCallbackIndex/26 (read)selectorCallbacks/27 (read)clockConfig/2 (read)clockConfig/2 (read)clockTreeIsConsumingPll/0 (read)clockConfig/2 (read)clockConfig/2 (read)clockFeatures/22 (read)cmuCallbackIndex/23 (read)cmuCallbacks/24 (read)clockConfig/2 (read)clockConfig/2 (read) Referring: Availability: available Function flags: body optimize_size Called by: Clock_Ip_Init/4 Calls: UpdateFrequencies/46 SpecificPeripheralClockInitialization/45 Indirect call Indirect call Clock_Ip_GetPllStatus/6 (Clock_Ip_GetPllStatus) @06c92a80 Type: function definition analyzed Visibility: externally_visible public References: HwPllName/48 (read)clockFeatures/22 (read)pllCallbackIndex/30 (read)pllCallbacks/31 (read)HwPllName/48 (read) Referring: Availability: available Function flags: body optimize_size Called by: Clock_Ip_Init/4 Calls: Indirect call Clock_Ip_InitClock/5 (Clock_Ip_InitClock) @06c927e0 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: body optimize_size Called by: Clock_Ip_Init/4 Calls: UpdateFrequencies/46 SpecificPeripheralClockInitialization/45 Clock_Ip_Sleep/16 SpecificPlatformInitClock/25 Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Indirect call Clock_Ip_Init/4 (Clock_Ip_Init) @06c92540 Type: function definition analyzed Visibility: externally_visible public References: clockTreeIsConsumingPll/0 (read) Referring: Availability: available Function flags: body optimize_size Called by: Calls: Clock_Ip_DistributePll/7 Clock_Ip_GetPllStatus/6 Clock_Ip_InitClock/5 ClockCalcFreqCallIdx/3 (ClockCalcFreqCallIdx) @06c90630 Type: variable definition analyzed Visibility: prevailing_def_ironly References: Referring: Clock_Ip_InitClock/5 (write)Clock_Ip_Sleep/16 (read)Clock_Ip_Sleep/16 (read)Clock_Ip_Sleep/16 (write)Clock_Ip_Sleep/16 (read)Clock_Ip_TimeDelay/17 (read)Clock_Ip_TimeDelay/17 (read)Clock_Ip_TimeDelay/17 (read)Clock_Ip_TimeDelay/17 (write) Availability: available Varpool flags: clockConfig/2 (clockConfig) @06c905a0 Type: variable definition analyzed Visibility: externally_visible public References: Referring: Clock_Ip_InitClock/5 (read)Clock_Ip_InitClock/5 (write)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read)Clock_Ip_DistributePll/7 (read) Availability: available Varpool flags: initialized clockNotificationsCallback/1 (clockNotificationsCallback) @06c90558 Type: variable definition analyzed Visibility: prevailing_def_ironly References: ClockNotificatonsEmptyCallback/18 (addr) Referring: Clock_Ip_InstallNotificationsCallback/12 (write)ReportClockErrors/19 (read) Availability: available Varpool flags: initialized clockTreeIsConsumingPll/0 (clockTreeIsConsumingPll) @06c904c8 Type: variable definition analyzed Visibility: prevailing_def_ironly References: Referring: Clock_Ip_Init/4 (read)Clock_Ip_InitClock/5 (write)Clock_Ip_InitClock/5 (write)Clock_Ip_InitClock/5 (read)Clock_Ip_DistributePll/7 (read) Availability: available Varpool flags: initialized ClockTimeoutExpired (uint32 * startTimeInOut, uint32 * elapsedTimeInOut, uint32 TimeoutTicks) { boolean D.5258; long unsigned int D.5257; : # DEBUG BEGIN_STMT D.5257 = OsIf_GetElapsed (startTimeInOut, 0); _1 = *elapsedTimeInOut; _2 = D.5257 + _1; *elapsedTimeInOut = _2; # DEBUG BEGIN_STMT _3 = *elapsedTimeInOut; D.5258 = TimeoutTicks <= _3; return D.5258; } ClockStartTimeout (uint32 * startTimeOut, uint32 * elapsedTimeOut, uint32 * timeoutTicksOut, uint32 timeoutUs) { : # DEBUG BEGIN_STMT _1 = OsIf_GetCounter (0); *startTimeOut = _1; # DEBUG BEGIN_STMT *elapsedTimeOut = 0; # DEBUG BEGIN_STMT _2 = OsIf_MicrosToTicks (timeoutUs, 0); *timeoutTicksOut = _2; return; } ReportClockErrors (Clock_Ip_ClockNotificationType error, Clock_Ip_NameType clockName) { : # DEBUG BEGIN_STMT clockNotificationsCallback.21_1 = clockNotificationsCallback; clockNotificationsCallback.21_1 (error, clockName); return; } ClockNotificatonsEmptyCallback (Clock_Ip_ClockNotificationType notification, Clock_Ip_NameType clockName) { : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return; } Clock_Ip_TimeDelay () { : # 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 ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT ClockCalcFreqCallIdx.19_5 = ClockCalcFreqCallIdx; ClockCalcFreqCallIdx.20_6 = ClockCalcFreqCallIdx.19_5; _7 = ClockCalcFreqCallIdx.20_6 + 1; ClockCalcFreqCallIdx = _7; : return; } Clock_Ip_Sleep () { : # DEBUG BEGIN_STMT goto ; [INV] : # DEBUG BEGIN_STMT ClockCalcFreqCallIdx.3_1 = ClockCalcFreqCallIdx; _2 = (int) ClockCalcFreqCallIdx.3_1; _3 = calcFreqCallbacks[_2]; _3 (); # DEBUG BEGIN_STMT ClockCalcFreqCallIdx.4_4 = ClockCalcFreqCallIdx; ClockCalcFreqCallIdx.5_5 = ClockCalcFreqCallIdx.4_4; _6 = ClockCalcFreqCallIdx.5_5 + 1; ClockCalcFreqCallIdx = _6; : # DEBUG BEGIN_STMT ClockCalcFreqCallIdx.6_7 = ClockCalcFreqCallIdx; if (ClockCalcFreqCallIdx.6_7 <= 33) goto ; [INV] else goto ; [INV] : return; } Clock_Ip_GetClockFrequency (Clock_Ip_NameType clockName) { uint32 frequency; uint32 D.5253; : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT if (clockName > 21) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT _1 = (long unsigned int) clockName; _2 = _1 + 4294967274; _3 = consumerClockCallbacks[_2]; frequency = _3 (); goto ; [INV] : # DEBUG BEGIN_STMT frequency = GetProducerClockFreq (clockName); : # DEBUG BEGIN_STMT D.5253 = frequency; return D.5253; } Clock_Ip_EnableModuleClock (Clock_Ip_NameType clockName) { uint32 callbackIndex; : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) clockName; _2 = clockFeatures[_1][1]; _3 = (int) _2; _4 = gateCallbackIndex[_3]; callbackIndex = (uint32) _4; # DEBUG BEGIN_STMT _5 = gateCallbacks[callbackIndex].Update; _5 (clockName, 0); return; } Clock_Ip_DisableModuleClock (Clock_Ip_NameType clockName) { uint32 callbackIndex; : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) clockName; _2 = clockFeatures[_1][1]; _3 = (int) _2; _4 = gateCallbackIndex[_3]; callbackIndex = (uint32) _4; # DEBUG BEGIN_STMT _5 = gateCallbacks[callbackIndex].Update; _5 (clockName, 1); return; } Clock_Ip_InstallNotificationsCallback (void (*Clock_Ip_NotificationsCallbackType) (Clock_Ip_ClockNotificationType, Clock_Ip_NameType) callback) { : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT clockNotificationsCallback = callback; return; } Clock_Ip_PowerModeChangeNotification (power_modes_t powerMode, power_notification_t notification) { : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT UpdateFrequencies (powerMode); return; } Clock_Ip_ClearClockMonitorStatus (Clock_Ip_NameType clockName) { uint32 callbackIndex; : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) clockName; _2 = clockFeatures[_1][1]; _3 = (int) _2; _4 = cmuCallbackIndex[_3]; callbackIndex = (uint32) _4; # DEBUG BEGIN_STMT _5 = cmuCallbacks[callbackIndex].Clear; _5 (clockName); return; } Clock_Ip_GetClockMonitorStatus (Clock_Ip_NameType clockName) { uint32 callbackIndex; Clock_Ip_CmuStatusType D.5248; : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) clockName; _2 = clockFeatures[_1][1]; _3 = (int) _2; _4 = cmuCallbackIndex[_3]; callbackIndex = (uint32) _4; # DEBUG BEGIN_STMT _5 = cmuCallbacks[callbackIndex].GetStatus; D.5248 = _5 (clockName); return D.5248; } Clock_Ip_DisableClockMonitor (Clock_Ip_NameType clockName) { uint32 callbackIndex; : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = (int) clockName; _2 = clockFeatures[_1][1]; _3 = (int) _2; _4 = cmuCallbackIndex[_3]; callbackIndex = (uint32) _4; # DEBUG BEGIN_STMT _5 = cmuCallbacks[callbackIndex].Disable; _5 (clockName); return; } Clock_Ip_DistributePll () { uint32 callbackIndex; uint32 i; : # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT clockConfig.7_1 = clockConfig; if (clockConfig.7_1 != 0B) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT clockConfig.8_2 = clockConfig; _3 = clockConfig.8_2->selectors[i].value; _4 = (int) _3; _5 = clockName_sourceType[_4]; if (_5 != 1) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT clockConfig.9_6 = clockConfig; _7 = clockConfig.9_6->selectors[i].name; _8 = (int) _7; _9 = clockFeatures[_8][1]; _10 = (int) _9; _11 = selectorCallbackIndex[_10]; callbackIndex = (uint32) _11; # DEBUG BEGIN_STMT _12 = selectorCallbacks[callbackIndex].Set; clockConfig.10_13 = clockConfig; _14 = &clockConfig.10_13->selectors[i]; _12 (_14); : # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT clockConfig.11_15 = clockConfig; _16 = clockConfig.11_15->selectorsCount; _17 = (long unsigned int) _16; if (i < _17) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT clockTreeIsConsumingPll.12_18 = clockTreeIsConsumingPll; if (clockTreeIsConsumingPll.12_18 != 0) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT clockConfig.13_19 = clockConfig; _20 = &clockConfig.13_19->specificPeriphalConfiguration; SpecificPeripheralClockInitialization (_20); # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT clockConfig.14_21 = clockConfig; _22 = clockConfig.14_21->cmus[i].name; _23 = (int) _22; _24 = clockFeatures[_23][1]; _25 = (int) _24; _26 = cmuCallbackIndex[_25]; callbackIndex = (uint32) _26; # DEBUG BEGIN_STMT _27 = cmuCallbacks[callbackIndex].Set; clockConfig.15_28 = clockConfig; _29 = &clockConfig.15_28->cmus[i]; _27 (_29); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT clockConfig.16_30 = clockConfig; _31 = clockConfig.16_30->cmusCount; _32 = (long unsigned int) _31; if (i < _32) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT UpdateFrequencies (0); return; } Clock_Ip_GetPllStatus () { uint32 callbackIndex; uint32 i; clock_pll_status_t pllStatus; Clock_Ip_PllStatusType retValue; Clock_Ip_PllStatusType D.5240; : # DEBUG BEGIN_STMT retValue = 2; # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _1 = HwPllName[i]; _2 = (int) _1; _3 = clockFeatures[_2][1]; _4 = (int) _3; _5 = pllCallbackIndex[_4]; callbackIndex = (uint32) _5; # DEBUG BEGIN_STMT _6 = pllCallbacks[callbackIndex].Complete; _7 = HwPllName[i]; pllStatus = _6 (_7); # DEBUG BEGIN_STMT if (pllStatus == 1) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT retValue = 1; # DEBUG BEGIN_STMT goto ; [INV] : # DEBUG BEGIN_STMT if (pllStatus == 2) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT retValue = 0; : # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT if (i == 0) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT D.5240 = retValue; return D.5240; } Clock_Ip_InitClock (const struct Clock_Ip_ClockConfigType * config) { uint32 i; uint32 callbackIndex; : # 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 ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _2 = config->cmus[i].name; _3 = (int) _2; _4 = clockFeatures[_3][1]; _5 = (int) _4; _6 = cmuCallbackIndex[_5]; callbackIndex = (uint32) _6; # DEBUG BEGIN_STMT _7 = cmuCallbacks[callbackIndex].Reset; _8 = &config->cmus[i]; _7 (_8); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _9 = config->cmusCount; _10 = (long unsigned int) _9; if (i < _10) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT clockConfig = config; # DEBUG BEGIN_STMT SpecificPlatformInitClock (config); # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _11 = config->selectors[i].name; _12 = (int) _11; _13 = clockFeatures[_12][1]; _14 = (int) _13; _15 = selectorCallbackIndex[_14]; callbackIndex = (uint32) _15; # DEBUG BEGIN_STMT _16 = selectorCallbacks[callbackIndex].Reset; _17 = &config->selectors[i]; _16 (_17); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _18 = config->selectorsCount; _19 = (long unsigned int) _18; if (i < _19) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _20 = config->fracDivs[i].name; _21 = (int) _20; _22 = clockFeatures[_21][1]; _23 = (int) _22; _24 = fractional_dividerCallbackIndex[_23]; callbackIndex = (uint32) _24; # DEBUG BEGIN_STMT _25 = fracDivCallbacks[callbackIndex].Reset; _26 = &config->fracDivs[i]; _25 (_26); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _27 = config->fracDivsCount; _28 = (long unsigned int) _27; if (i < _28) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _29 = config->plls[i].name; _30 = (int) _29; _31 = clockFeatures[_30][1]; _32 = (int) _31; _33 = pllCallbackIndex[_32]; callbackIndex = (uint32) _33; # DEBUG BEGIN_STMT _34 = pllCallbacks[callbackIndex].Reset; _35 = &config->plls[i]; _34 (_35); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _36 = config->pllsCount; _37 = (long unsigned int) _36; if (i < _37) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _38 = config->xoscs[i].name; _39 = (int) _38; _40 = clockFeatures[_39][1]; _41 = (int) _40; _42 = xoscCallbackIndex[_41]; callbackIndex = (uint32) _42; # DEBUG BEGIN_STMT _43 = extOscCallbacks[callbackIndex].Reset; _44 = &config->xoscs[i]; _43 (_44); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _45 = config->xoscsCount; _46 = (long unsigned int) _45; if (i < _46) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _47 = config->ircoscs[i].name; _48 = (int) _47; _49 = clockFeatures[_48][1]; _50 = (int) _49; _51 = ircoscCallbackIndex[_50]; callbackIndex = (uint32) _51; # DEBUG BEGIN_STMT _52 = intOscCallbacks[callbackIndex].Set; _53 = &config->ircoscs[i]; _52 (_53); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _54 = config->ircoscsCount; _55 = (long unsigned int) _54; if (i < _55) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _56 = config->xoscs[i].name; _57 = (int) _56; _58 = clockFeatures[_57][1]; _59 = (int) _58; _60 = xoscCallbackIndex[_59]; callbackIndex = (uint32) _60; # DEBUG BEGIN_STMT _61 = extOscCallbacks[callbackIndex].Set; _62 = &config->xoscs[i]; _61 (_62); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _63 = config->xoscsCount; _64 = (long unsigned int) _63; if (i < _64) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT Clock_Ip_Sleep (); # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _65 = config->pcfs[i].name; _66 = (int) _65; _67 = clockFeatures[_66][1]; _68 = (int) _67; _69 = pcfsCallbackIndex[_68]; callbackIndex = (uint32) _69; # DEBUG BEGIN_STMT _70 = pcfsCallbacks[callbackIndex].Set; _71 = &config->pcfs[i]; _70 (_71); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _72 = config->pcfsCount; _73 = (long unsigned int) _72; if (i < _73) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _74 = config->dividerTriggers[i].name; _75 = (int) _74; _76 = clockFeatures[_75][1]; _77 = (int) _76; _78 = dividertriggerCallbackIndex[_77]; callbackIndex = (uint32) _78; # DEBUG BEGIN_STMT _79 = dividerTriggerCallbacks[callbackIndex].Configure; _80 = &config->dividerTriggers[i]; _79 (_80); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _81 = config->dividerTriggersCount; _82 = (long unsigned int) _81; if (i < _82) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _83 = config->dividers[i].name; _84 = (int) _83; _85 = clockFeatures[_84][1]; _86 = (int) _85; _87 = dividerCallbackIndex[_86]; callbackIndex = (uint32) _87; # DEBUG BEGIN_STMT _88 = dividerCallbacks[callbackIndex].Set; _89 = &config->dividers[i]; _88 (_89); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _90 = config->dividersCount; _91 = (long unsigned int) _90; if (i < _91) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _92 = config->dividerTriggers[i].name; _93 = (int) _92; _94 = clockFeatures[_93][1]; _95 = (int) _94; _96 = dividertriggerCallbackIndex[_95]; callbackIndex = (uint32) _96; # DEBUG BEGIN_STMT _97 = dividerTriggerCallbacks[callbackIndex].TriggerUpdate; _98 = &config->dividerTriggers[i]; _97 (_98); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _99 = config->dividerTriggersCount; _100 = (long unsigned int) _99; if (i < _100) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _101 = config->plls[i].name; _102 = (int) _101; _103 = clockFeatures[_102][1]; _104 = (int) _103; _105 = pllCallbackIndex[_104]; callbackIndex = (uint32) _105; # DEBUG BEGIN_STMT _106 = pllCallbacks[callbackIndex].Set; _107 = &config->plls[i]; _106 (_107); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _108 = config->pllsCount; _109 = (long unsigned int) _108; if (i < _109) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _110 = config->fracDivs[i].name; _111 = (int) _110; _112 = clockFeatures[_111][1]; _113 = (int) _112; _114 = fractional_dividerCallbackIndex[_113]; callbackIndex = (uint32) _114; # DEBUG BEGIN_STMT _115 = fracDivCallbacks[callbackIndex].Set; _116 = &config->fracDivs[i]; _115 (_116); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _117 = config->fracDivsCount; _118 = (long unsigned int) _117; if (i < _118) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT clockTreeIsConsumingPll = 0; # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _119 = config->selectors[i].value; _120 = (int) _119; _121 = clockName_sourceType[_120]; if (_121 == 1) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT _122 = config->selectors[i].name; _123 = (int) _122; _124 = clockFeatures[_123][1]; _125 = (int) _124; _126 = selectorCallbackIndex[_125]; callbackIndex = (uint32) _126; # DEBUG BEGIN_STMT _127 = selectorCallbacks[callbackIndex].Set; _128 = &config->selectors[i]; _127 (_128); goto ; [INV] : # DEBUG BEGIN_STMT clockTreeIsConsumingPll = 1; : # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _129 = config->selectorsCount; _130 = (long unsigned int) _129; if (i < _130) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _131 = config->gates[i].name; _132 = (int) _131; _133 = clockFeatures[_132][1]; _134 = (int) _133; _135 = gateCallbackIndex[_134]; callbackIndex = (uint32) _135; # DEBUG BEGIN_STMT _136 = gateCallbacks[callbackIndex].Set; _137 = &config->gates[i]; _136 (_137); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _138 = config->gatesCount; _139 = (long unsigned int) _138; if (i < _139) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT clockTreeIsConsumingPll.2_140 = clockTreeIsConsumingPll; _141 = ~clockTreeIsConsumingPll.2_140; if (_141 != 0) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT _142 = &config->specificPeriphalConfiguration; SpecificPeripheralClockInitialization (_142); # DEBUG BEGIN_STMT i = 0; goto ; [INV] : # DEBUG BEGIN_STMT _143 = config->cmus[i].name; _144 = (int) _143; _145 = clockFeatures[_144][1]; _146 = (int) _145; _147 = cmuCallbackIndex[_146]; callbackIndex = (uint32) _147; # DEBUG BEGIN_STMT _148 = cmuCallbacks[callbackIndex].Set; _149 = &config->cmus[i]; _148 (_149); # DEBUG BEGIN_STMT i = i + 1; : # DEBUG BEGIN_STMT _150 = config->cmusCount; _151 = (long unsigned int) _150; if (i < _151) goto ; [INV] else goto ; [INV] : # 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; Clock_Ip_StatusType D.5226; : # DEBUG BEGIN_STMT 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); # DEBUG BEGIN_STMT clockTreeIsConsumingPll.0_1 = clockTreeIsConsumingPll; if (clockTreeIsConsumingPll.0_1 != 0) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT pllStatus = Clock_Ip_GetPllStatus (); # DEBUG BEGIN_STMT if (pllStatus == 0) goto ; [INV] else goto ; [INV] : # DEBUG BEGIN_STMT Clock_Ip_DistributePll (); # DEBUG BEGIN_STMT clockStatus = 0; goto ; [INV] : # DEBUG BEGIN_STMT clockStatus = 0; : # DEBUG BEGIN_STMT D.5226 = clockStatus; return D.5226; }