Histogram: TriggerUpdateCgmXDivTrigCtrlTctlHhenUpdStat.part.0 (const struct Clock_Ip_DividerTriggerConfigType * config) { uint32 instance; uint32 selectorIndex; boolean TimeoutOccurred; uint32 StartTime; uint32 ElapsedTime; uint32 TimeoutTicks; uint32 DividerStatus; _2; [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT _2 = config_1(D)->name; ReportClockErrors (1, _2); [local count: 1073741824]: StartTime ={v} {CLOBBER}; ElapsedTime ={v} {CLOBBER}; TimeoutTicks ={v} {CLOBBER}; return; } TriggerUpdateCgmXDivTrigCtrlTctlHhenUpdStat (const struct Clock_Ip_DividerTriggerConfigType * config) { uint32 DividerStatus; uint32 TimeoutTicks; uint32 ElapsedTime; uint32 StartTime; boolean TimeoutOccurred; uint32 selectorIndex; uint32 instance; _1; int _2; unsigned char _3; unsigned char _6; _7; volatile struct cgmMux_Type * _8; long unsigned int _9; long unsigned int TimeoutTicks.0_10; [local count: 348071309]: # DEBUG BEGIN_STMT _1 = config_14(D)->name; _2 = (int) _1; _3 = clockFeatures[_2][0]; instance_15 = (uint32) _3; # DEBUG instance => instance_15 # DEBUG BEGIN_STMT _6 = clockFeatures[_2][2]; selectorIndex_16 = (uint32) _6; # DEBUG selectorIndex => selectorIndex_16 # DEBUG BEGIN_STMT # DEBUG TimeoutOccurred => 0 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _7 = config_14(D)->triggerType; if (_7 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 114863532]: # DEBUG BEGIN_STMT _8 = cgm[instance_15][selectorIndex_16]; _8->MUX_DIV_TRIG ={v} 1; # DEBUG BEGIN_STMT ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 10000); [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _9 ={v} _8->MUX_DIV_UPD_STAT; DividerStatus_19 = _9 & 1; # DEBUG DividerStatus => DividerStatus_19 # DEBUG BEGIN_STMT TimeoutTicks.0_10 = TimeoutTicks; TimeoutOccurred_21 = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.0_10); # DEBUG TimeoutOccurred => TimeoutOccurred_21 # DEBUG BEGIN_STMT if (DividerStatus_19 != 0) goto ; [94.50%] else goto ; [5.50%] [local count: 1014686025]: if (TimeoutOccurred_21 != 0) goto ; [5.50%] else goto ; [94.50%] [local count: 958878294]: goto ; [100.00%] [local count: 114863532]: # TimeoutOccurred_4 = PHI # DEBUG BEGIN_STMT if (TimeoutOccurred_4 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 37904965]: TriggerUpdateCgmXDivTrigCtrlTctlHhenUpdStat.part.0 (config_14(D)); [local count: 348071309]: StartTime ={v} {CLOBBER}; ElapsedTime ={v} {CLOBBER}; TimeoutTicks ={v} {CLOBBER}; return; } ConfigureCgmXDivTrigCtrlTctlHhenUpdStat (const struct Clock_Ip_DividerTriggerConfigType * config) { uint32 selectorIndex; uint32 instance; _1; int _2; unsigned char _3; unsigned char _4; _5; volatile struct cgmMux_Type * _6; volatile struct cgmMux_Type * _7; long unsigned int _8; long unsigned int _9; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = config_12(D)->name; _2 = (int) _1; _3 = clockFeatures[_2][0]; instance_13 = (uint32) _3; # DEBUG instance => instance_13 # DEBUG BEGIN_STMT _4 = clockFeatures[_2][2]; selectorIndex_14 = (uint32) _4; # DEBUG selectorIndex => selectorIndex_14 # DEBUG BEGIN_STMT _5 = config_12(D)->triggerType; if (_5 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _6 = cgm[instance_13][selectorIndex_14]; _6->MUX_DIV_TRIG_CTRL ={v} 1; goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _7 = cgm[instance_13][selectorIndex_14]; _8 ={v} _7->MUX_DIV_TRIG_CTRL; _9 = _8 & 4294967294; _7->MUX_DIV_TRIG_CTRL ={v} _9; [local count: 1073741824]: return; } Callback_DividerTriggerEmpty (const struct Clock_Ip_DividerTriggerConfigType * config) { [local count: 1073741824]: # DEBUG BEGIN_STMT return; }