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

233 lines
6.5 KiB
C++

IPA constant propagation start:
Determining dynamic type for call: _12 (0, _13);
Starting walk at: _12 (0, _13);
instance pointer: _13 Outer instance pointer: _13 offset: 0 (bits) vtbl reference:
Determining dynamic type for call: _23 (1, _24);
Starting walk at: _23 (1, _24);
instance pointer: _24 Outer instance pointer: _24 offset: 0 (bits) vtbl reference:
Function call may change dynamic type:_12 (0, _13);
Determining dynamic type for call: _21 (2, _22);
Starting walk at: _21 (2, _22);
instance pointer: _22 Outer instance pointer: _22 offset: 0 (bits) vtbl reference:
Function call may change dynamic type:_12 (0, _13);
IPA structures before propagation:
Jump functions:
Jump functions of caller Flexio_Pwm_Ip_IrqHandler/21:
indirect simple callsite, calling param -1, offset 0, for stmt _23 (1, _24);
param 0: CONST: 1
value: 0x1, mask: 0x0
Unknown VR
param 1: UNKNOWN
value: 0x0, mask: 0xffffffff
Unknown VR
indirect simple callsite, calling param -1, offset 0, for stmt _21 (2, _22);
param 0: CONST: 2
value: 0x2, mask: 0x0
Unknown VR
param 1: UNKNOWN
value: 0x0, mask: 0xffffffff
Unknown VR
indirect simple callsite, calling param -1, offset 0, for stmt _12 (0, _13);
param 0: CONST: 0
value: 0x0, mask: 0x0
Unknown VR
param 1: UNKNOWN
value: 0x0, mask: 0xffffffff
Unknown VR
Propagating constants:
Not considering Flexio_Pwm_Ip_IrqHandler for cloning; -fipa-cp-clone disabled.
overall_size: 46, max_new_size: 11001
IPA lattices after all propagation:
Lattices:
Node: Flexio_Pwm_Ip_IrqHandler/21:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
param [1]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
param [2]: 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:
pinIrqMask/25 (pinIrqMask) @06921438
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: Flexio_Pwm_Ip_IrqHandler/21 (read)
Availability: not_available
Varpool flags:
timerIrqMask/24 (timerIrqMask) @06921360
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: Flexio_Pwm_Ip_IrqHandler/21 (read)
Availability: not_available
Varpool flags:
Flexio_Pwm_Ip_aState/23 (Flexio_Pwm_Ip_aState) @069212d0
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: Flexio_Pwm_Ip_IrqHandler/21 (read)Flexio_Pwm_Ip_IrqHandler/21 (read)
Availability: not_available
Varpool flags:
Flexio_Pwm_Ip_aBasePtr/22 (Flexio_Pwm_Ip_aBasePtr) @06921288
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: Flexio_Pwm_Ip_IrqHandler/21 (read)
Availability: not_available
Varpool flags: read-only
Flexio_Pwm_Ip_IrqHandler/21 (Flexio_Pwm_Ip_IrqHandler) @0691b2a0
Type: function definition analyzed
Visibility: externally_visible public
References: Flexio_Pwm_Ip_aBasePtr/22 (read)Flexio_Pwm_Ip_aState/23 (read)timerIrqMask/24 (read)pinIrqMask/25 (read)Flexio_Pwm_Ip_aState/23 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Indirect call(268435456 (estimated locally),0.25 per call)
Indirect call(268435456 (estimated locally),0.25 per call)
Indirect call(536870913 (estimated locally),0.50 per call)
;; Function Flexio_Pwm_Ip_IrqHandler (Flexio_Pwm_Ip_IrqHandler, funcdef_no=21, decl_uid=4048, cgraph_uid=22, symbol_order=21)
Modification phase of node Flexio_Pwm_Ip_IrqHandler/21
Flexio_Pwm_Ip_IrqHandler (uint8 channelId, uint8 timerFlags, uint32 pinFlags)
{
struct Flexio_Pwm_Ip_HwAddrType * _1;
int _2;
const struct Flexio_Pwm_Ip_ChannelConfigType * _3;
unsigned char _4;
unsigned char timerIrqMask.0_5;
unsigned char _6;
unsigned int _7;
unsigned char _8;
int _9;
unsigned int _10;
unsigned int _11;
void (*<T2cc>) (Flexio_Pwm_Ip_OccurredIRQType, void *) _12;
void * _13;
long unsigned int pinIrqMask.1_14;
long unsigned int _15;
const struct Flexio_Pwm_Ip_ChannelConfigType * _16;
unsigned char _17;
int _18;
unsigned int _19;
long unsigned int _20;
void (*<T2cc>) (Flexio_Pwm_Ip_OccurredIRQType, void *) _21;
void * _22;
void (*<T2cc>) (Flexio_Pwm_Ip_OccurredIRQType, void *) _23;
void * _24;
long unsigned int _34;
int _35;
long unsigned int _36;
_Bool _37;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 = Flexio_Pwm_Ip_aBasePtr[0];
_2 = (int) channelId_28(D);
_3 = Flexio_Pwm_Ip_aState[_2];
_4 = _3->pinId;
# DEBUG base => _1
# DEBUG pin => _4
# DEBUG INLINE_ENTRY Flexio_Pwm_Ip_GetPinState
# DEBUG BEGIN_STMT
_34 ={v} MEM[(const struct Flexio_Pwm_Ip_HwAddrType *)_1].PIN;
_35 = (int) _4;
_36 = _34 >> _35;
_37 = (_Bool) _36;
# DEBUG base => NULL
# DEBUG pin => NULL
# DEBUG pinState => _37
# DEBUG BEGIN_STMT
timerIrqMask.0_5 ={v} timerIrqMask;
_6 = timerIrqMask.0_5 & timerFlags_29(D);
_7 = (unsigned int) _6;
_8 = _3->timerId;
_9 = (int) _8;
_10 = _7 >> _9;
_11 = _10 & 1;
if (_11 != 0)
goto <bb 3>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
_12 = _3->callback.cbFunction;
_13 = _3->callback.cbParameter;
_12 (0, _13);
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
pinIrqMask.1_14 ={v} pinIrqMask;
_15 = pinIrqMask.1_14 & pinFlags_31(D);
_16 = Flexio_Pwm_Ip_aState[_2];
_17 = _16->pinId;
_18 = (int) _17;
_19 = 1 << _18;
_20 = _15 & _19;
if (_20 != 0)
goto <bb 5>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
if (_37 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 6> [local count: 268435456]:
# DEBUG BEGIN_STMT
_21 = _16->callback.cbFunction;
_22 = _16->callback.cbParameter;
_21 (2, _22);
goto <bb 8>; [100.00%]
<bb 7> [local count: 268435456]:
# DEBUG BEGIN_STMT
_23 = _16->callback.cbFunction;
_24 = _16->callback.cbParameter;
_23 (1, _24);
<bb 8> [local count: 1073741824]:
# DEBUG BEGIN_STMT
return;
}