ADM/GW/Debug_RAM/RTD/src/Clock_Ip_Gate.c.072i.cp
2024-08-08 10:00:15 +09:00

493 lines
16 KiB
C++

IPA constant propagation start:
Determining dynamic type for call: ClockSetGateMcMePartitionCollectionClockRequest (&config);
Starting walk at: ClockSetGateMcMePartitionCollectionClockRequest (&config);
instance pointer: &config Outer instance pointer: config offset: 0 (bits) vtbl reference:
IPA structures before propagation:
Jump functions:
Jump functions of caller ReportClockErrors/12:
Jump functions of caller ClockTimeoutExpired/11:
Jump functions of caller ClockStartTimeout/10:
Jump functions of caller McMeEnterKey/9:
Jump functions of caller ClockUpdateGateMcMePartitionCollectionClockRequest/4:
callsite ClockUpdateGateMcMePartitionCollectionClockRequest/4 -> ClockSetGateMcMePartitionCollectionClockRequest/3 :
param 0: UNKNOWN
value: 0x0, mask: 0xfffffffc
VR ~[0, 0]
Jump functions of caller ClockSetGateMcMePartitionCollectionClockRequest/3:
Jump functions of caller ClockUpdateGateEmpty/2:
Jump functions of caller ClockSetGateEmpty/1:
Propagating constants:
Not considering ClockUpdateGateMcMePartitionCollectionClockRequest for cloning; -fipa-cp-clone disabled.
Not considering ClockSetGateMcMePartitionCollectionClockRequest for cloning; -fipa-cp-clone disabled.
Not considering ClockUpdateGateEmpty for cloning; -fipa-cp-clone disabled.
Not considering ClockSetGateEmpty for cloning; -fipa-cp-clone disabled.
overall_size: 113, max_new_size: 11001
- context independent values, size: 3, time_benefit: 2.000000
- context independent values, size: 3, time_benefit: 1.000000
IPA lattices after all propagation:
Lattices:
Node: ClockUpdateGateMcMePartitionCollectionClockRequest/4:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
param [1]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: ClockSetGateMcMePartitionCollectionClockRequest/3:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: ClockUpdateGateEmpty/2:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
param [1]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: ClockSetGateEmpty/1:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
IPA decision stage:
IPA constant propagation end
Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:
ReportClockErrors/12 (ReportClockErrors) @06ba6a80
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: ClockSetGateMcMePartitionCollectionClockRequest/3 (37904965 (estimated locally),0.05 per call) ClockSetGateMcMePartitionCollectionClockRequest/3 (37904965 (estimated locally),0.05 per call)
Calls:
ClockTimeoutExpired/11 (ClockTimeoutExpired) @06ba69a0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: ClockSetGateMcMePartitionCollectionClockRequest/3 (1073741824 (estimated locally),1.54 per call) ClockSetGateMcMePartitionCollectionClockRequest/3 (1073741824 (estimated locally),1.54 per call)
Calls:
ClockStartTimeout/10 (ClockStartTimeout) @06ba68c0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: ClockSetGateMcMePartitionCollectionClockRequest/3 (114863532 (estimated locally),0.16 per call) ClockSetGateMcMePartitionCollectionClockRequest/3 (114863532 (estimated locally),0.16 per call)
Calls:
McMeEnterKey/9 (McMeEnterKey) @06ba67e0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: ClockSetGateMcMePartitionCollectionClockRequest/3 (114863532 (estimated locally),0.16 per call) ClockSetGateMcMePartitionCollectionClockRequest/3 (114863532 (estimated locally),0.16 per call)
Calls:
mcmeTriggerPartitions/8 (mcmeTriggerPartitions) @06bad3f0
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)
Availability: not_available
Varpool flags: read-only
mcmeSetPartitions/7 (mcmeSetPartitions) @06bad3a8
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)
Availability: not_available
Varpool flags: read-only
mcmeGetPartitions/6 (mcmeGetPartitions) @06bad360
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)
Availability: not_available
Varpool flags: read-only
clockFeatures/5 (clockFeatures) @06bad318
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)ClockSetGateMcMePartitionCollectionClockRequest/3 (read)
Availability: not_available
Varpool flags: read-only
ClockUpdateGateMcMePartitionCollectionClockRequest/4 (ClockUpdateGateMcMePartitionCollectionClockRequest) @06ba61c0
Type: function definition analyzed
Visibility: prevailing_def_ironly
Address is taken.
References:
Referring: gateCallbacks/0 (addr)
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: ClockSetGateMcMePartitionCollectionClockRequest/3 (1073741824 (estimated locally),1.00 per call)
ClockSetGateMcMePartitionCollectionClockRequest/3 (ClockSetGateMcMePartitionCollectionClockRequest) @06bdcd20
Type: function definition analyzed
Visibility: prevailing_def_ironly
Address is taken.
References: clockFeatures/5 (read)clockFeatures/5 (read)clockFeatures/5 (read)mcmeGetPartitions/6 (read)mcmeSetPartitions/7 (read)mcmeTriggerPartitions/8 (read)mcmeGetPartitions/6 (read)mcmeSetPartitions/7 (read)mcmeTriggerPartitions/8 (read)
Referring: gateCallbacks/0 (addr)
Availability: available
Function flags: count:696142619 (estimated locally) body optimize_size
Called by: ClockUpdateGateMcMePartitionCollectionClockRequest/4 (1073741824 (estimated locally),1.00 per call)
Calls: ReportClockErrors/12 (37904965 (estimated locally),0.05 per call) ClockTimeoutExpired/11 (1073741824 (estimated locally),1.54 per call) ClockStartTimeout/10 (114863532 (estimated locally),0.16 per call) McMeEnterKey/9 (114863532 (estimated locally),0.16 per call) ReportClockErrors/12 (37904965 (estimated locally),0.05 per call) ClockTimeoutExpired/11 (1073741824 (estimated locally),1.54 per call) ClockStartTimeout/10 (114863532 (estimated locally),0.16 per call) McMeEnterKey/9 (114863532 (estimated locally),0.16 per call)
ClockUpdateGateEmpty/2 (ClockUpdateGateEmpty) @06bdcee0
Type: function definition analyzed
Visibility: prevailing_def_ironly
Address is taken.
References:
Referring: gateCallbacks/0 (addr)
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
ClockSetGateEmpty/1 (ClockSetGateEmpty) @06bdcc40
Type: function definition analyzed
Visibility: prevailing_def_ironly
Address is taken.
References:
Referring: gateCallbacks/0 (addr)
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
gateCallbacks/0 (gateCallbacks) @06bd6ee8
Type: variable definition analyzed
Visibility: externally_visible public
References: ClockSetGateEmpty/1 (addr)ClockUpdateGateEmpty/2 (addr)ClockSetGateMcMePartitionCollectionClockRequest/3 (addr)ClockUpdateGateMcMePartitionCollectionClockRequest/4 (addr)
Referring:
Availability: available
Varpool flags: initialized read-only const-value-known
;; Function ClockSetGateEmpty (ClockSetGateEmpty, funcdef_no=0, decl_uid=5054, cgraph_uid=1, symbol_order=1)
Modification phase of node ClockSetGateEmpty/1
ClockSetGateEmpty (const struct Clock_Ip_GateConfigType * config)
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
return;
}
;; Function ClockUpdateGateEmpty (ClockUpdateGateEmpty, funcdef_no=1, decl_uid=5057, cgraph_uid=2, symbol_order=2)
Modification phase of node ClockUpdateGateEmpty/2
ClockUpdateGateEmpty (Clock_Ip_NameType clockName, boolean gate)
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
return;
}
;; Function ClockSetGateMcMePartitionCollectionClockRequest (ClockSetGateMcMePartitionCollectionClockRequest, funcdef_no=2, decl_uid=5059, cgraph_uid=3, symbol_order=3)
Modification phase of node ClockSetGateMcMePartitionCollectionClockRequest/3
ClockSetGateMcMePartitionCollectionClockRequest (const struct Clock_Ip_GateConfigType * config)
{
uint32 enableRequest;
uint32 collection;
uint32 partition;
uint32 TimeoutTicks;
uint32 ElapsedTime;
uint32 StartTime;
boolean TimeoutOccurred;
<unnamed type> _1;
int _2;
unsigned char _3;
unsigned char _6;
unsigned char _7;
short unsigned int _8;
const volatile struct getMcmePartition_Type * _9;
long unsigned int _10;
long unsigned int _11;
long unsigned int _12;
volatile struct setMcmePartition_Type * _13;
long unsigned int _14;
long unsigned int _15;
long unsigned int _16;
volatile struct triggerMcmePartition_Type * _17;
long unsigned int _18;
long unsigned int _19;
long unsigned int _20;
long unsigned int _21;
long unsigned int TimeoutTicks.0_22;
long unsigned int _23;
long unsigned int _24;
long unsigned int _25;
<unnamed type> _26;
const volatile struct getMcmePartition_Type * _27;
long unsigned int _28;
long unsigned int _29;
long unsigned int _30;
volatile struct setMcmePartition_Type * _31;
long unsigned int _32;
long unsigned int _33;
long unsigned int _34;
long unsigned int _35;
volatile struct triggerMcmePartition_Type * _36;
long unsigned int _37;
long unsigned int _38;
long unsigned int _39;
long unsigned int _40;
long unsigned int TimeoutTicks.1_41;
long unsigned int _42;
long unsigned int _43;
long unsigned int _44;
<unnamed type> _45;
<bb 2> [local count: 696142619]:
# DEBUG BEGIN_STMT
# DEBUG TimeoutOccurred => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 = config_50(D)->name;
_2 = (int) _1;
_3 = clockFeatures[_2][3];
partition_51 = (uint32) _3;
# DEBUG partition => partition_51
# DEBUG BEGIN_STMT
_6 = clockFeatures[_2][4];
collection_52 = (uint32) _6;
# DEBUG collection => collection_52
# DEBUG BEGIN_STMT
_7 = clockFeatures[_2][5];
enableRequest_53 = (uint32) _7;
# DEBUG enableRequest => enableRequest_53
# DEBUG BEGIN_STMT
_8 = config_50(D)->enable;
if (_8 != 0)
goto <bb 3>; [50.00%]
else
goto <bb 9>; [50.00%]
<bb 3> [local count: 348071309]:
# DEBUG BEGIN_STMT
_9 = mcmeGetPartitions[partition_51];
_10 ={v} _9->PRTN_COFB_STAT[collection_52];
_11 = _10 >> enableRequest_53;
_12 = _11 & 1;
if (_12 == 0)
goto <bb 4>; [33.00%]
else
goto <bb 15>; [67.00%]
<bb 4> [local count: 114863532]:
# DEBUG BEGIN_STMT
_13 = mcmeSetPartitions[partition_51];
_14 ={v} _13->PRTN_COFB_CLKEN[collection_52];
_15 = 1 << enableRequest_53;
_16 = _14 | _15;
_13->PRTN_COFB_CLKEN[collection_52] ={v} _16;
# DEBUG BEGIN_STMT
_17 = mcmeTriggerPartitions[partition_51];
_18 ={v} _17->PRTN_PCONF;
_19 = _18 | 1;
_17->PRTN_PCONF ={v} _19;
# DEBUG BEGIN_STMT
_20 ={v} _17->PRTN_PUPD;
_21 = _20 | 1;
_17->PRTN_PUPD ={v} _21;
# DEBUG BEGIN_STMT
McMeEnterKey ();
# DEBUG BEGIN_STMT
ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 10000);
<bb 5> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
TimeoutTicks.0_22 = TimeoutTicks;
TimeoutOccurred_68 = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.0_22);
# DEBUG TimeoutOccurred => TimeoutOccurred_68
# DEBUG BEGIN_STMT
_23 ={v} _9->PRTN_COFB_STAT[collection_52];
_24 = _23 >> enableRequest_53;
_25 = _24 & 1;
if (_25 == 0)
goto <bb 6>; [94.50%]
else
goto <bb 7>; [5.50%]
<bb 6> [local count: 1014686025]:
if (TimeoutOccurred_68 != 0)
goto <bb 7>; [5.50%]
else
goto <bb 16>; [94.50%]
<bb 16> [local count: 958878292]:
goto <bb 5>; [100.00%]
<bb 7> [local count: 114863532]:
# TimeoutOccurred_5 = PHI <TimeoutOccurred_68(5), TimeoutOccurred_68(6)>
# DEBUG BEGIN_STMT
if (TimeoutOccurred_5 != 0)
goto <bb 8>; [33.00%]
else
goto <bb 15>; [67.00%]
<bb 8> [local count: 37904965]:
# DEBUG BEGIN_STMT
_26 = config_50(D)->name;
ReportClockErrors (1, _26);
goto <bb 15>; [100.00%]
<bb 9> [local count: 348071309]:
# DEBUG BEGIN_STMT
_27 = mcmeGetPartitions[partition_51];
_28 ={v} _27->PRTN_COFB_STAT[collection_52];
_29 = _28 >> enableRequest_53;
_30 = _29 & 1;
if (_30 != 0)
goto <bb 10>; [33.00%]
else
goto <bb 15>; [67.00%]
<bb 10> [local count: 114863532]:
# DEBUG BEGIN_STMT
_31 = mcmeSetPartitions[partition_51];
_32 ={v} _31->PRTN_COFB_CLKEN[collection_52];
_33 = 1 << enableRequest_53;
_34 = ~_33;
_35 = _32 & _34;
_31->PRTN_COFB_CLKEN[collection_52] ={v} _35;
# DEBUG BEGIN_STMT
_36 = mcmeTriggerPartitions[partition_51];
_37 ={v} _36->PRTN_PCONF;
_38 = _37 | 1;
_36->PRTN_PCONF ={v} _38;
# DEBUG BEGIN_STMT
_39 ={v} _36->PRTN_PUPD;
_40 = _39 | 1;
_36->PRTN_PUPD ={v} _40;
# DEBUG BEGIN_STMT
McMeEnterKey ();
# DEBUG BEGIN_STMT
ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 10000);
<bb 11> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
TimeoutTicks.1_41 = TimeoutTicks;
TimeoutOccurred_60 = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.1_41);
# DEBUG TimeoutOccurred => TimeoutOccurred_60
# DEBUG BEGIN_STMT
_42 ={v} _27->PRTN_COFB_STAT[collection_52];
_43 = _42 >> enableRequest_53;
_44 = _43 & 1;
if (_44 != 0)
goto <bb 12>; [94.50%]
else
goto <bb 13>; [5.50%]
<bb 12> [local count: 1014686025]:
if (TimeoutOccurred_60 != 0)
goto <bb 13>; [5.50%]
else
goto <bb 17>; [94.50%]
<bb 17> [local count: 958878292]:
goto <bb 11>; [100.00%]
<bb 13> [local count: 114863532]:
# TimeoutOccurred_4 = PHI <TimeoutOccurred_60(11), TimeoutOccurred_60(12)>
# DEBUG BEGIN_STMT
if (TimeoutOccurred_4 != 0)
goto <bb 14>; [33.00%]
else
goto <bb 15>; [67.00%]
<bb 14> [local count: 37904965]:
# DEBUG BEGIN_STMT
_45 = config_50(D)->name;
ReportClockErrors (1, _45);
<bb 15> [local count: 696142618]:
StartTime ={v} {CLOBBER};
ElapsedTime ={v} {CLOBBER};
TimeoutTicks ={v} {CLOBBER};
return;
}
;; Function ClockUpdateGateMcMePartitionCollectionClockRequest (ClockUpdateGateMcMePartitionCollectionClockRequest, funcdef_no=3, decl_uid=5062, cgraph_uid=4, symbol_order=4)
Modification phase of node ClockUpdateGateMcMePartitionCollectionClockRequest/4
ClockUpdateGateMcMePartitionCollectionClockRequest (Clock_Ip_NameType clockName, boolean gate)
{
struct Clock_Ip_GateConfigType config;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
config.name = clockName_3(D);
# DEBUG BEGIN_STMT
if (gate_5(D) != 0)
goto <bb 3>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
config.enable = 0;
goto <bb 5>; [100.00%]
<bb 4> [local count: 536870913]:
# DEBUG BEGIN_STMT
config.enable = 1;
<bb 5> [local count: 1073741824]:
# DEBUG BEGIN_STMT
ClockSetGateMcMePartitionCollectionClockRequest (&config);
config ={v} {CLOBBER};
return;
}