ADM/GW/Debug_FLASH/RTD/src/Lin_Ip_Common.c.076i.inline

354 lines
9.5 KiB
Plaintext

IPA function summary for Lin_Ip_MakeChecksumByte/2 inlinable
global time: 78.538920
self size: 21
global size: 21
min size: 0
self stack: 0
global stack: 0
size:10.000000, time:71.772728
size:3.000000, time:2.000000, executed if:(not inlined)
size:2.000000, time:2.000000, nonconst if:(op2 changed)
size:2.000000, time:1.320000, executed if:(op2 != 60), nonconst if:(op2 changed) && (op2 != 60)
size:2.000000, time:0.871200, executed if:(op2 != 125) && (op2 != 60), nonconst if:(op2 changed) && (op2 != 125) && (op2 != 60)
size:2.000000, time:0.574992, executed if:(op2 != 254) && (op2 != 125) && (op2 != 60), nonconst if:(op2 changed) && (op2 != 254) && (op2 != 125) && (op2 != 60)
loop iterations:(op1 changed)
calls:
IPA function summary for Lin_Ip_ProcessParity/1 inlinable
global time: 25.000000
self size: 28
global size: 28
min size: 0
self stack: 0
global stack: 0
size:0.000000, time:0.000000
size:3.000000, time:2.000000, executed if:(not inlined)
size:19.000000, time:19.000000, nonconst if:(op0 changed)
size:2.000000, time:2.000000, nonconst if:(op1 changed)
size:2.000000, time:1.000000, executed if:(op1 != 0), nonconst if:(op1 changed) && (op1 != 0)
size:2.000000, time:1.000000, executed if:(op1 == 0), nonconst if:(op0 changed) && (op1 == 0)
calls:
Flattening functions:
Overall time estimate: 103.538920 weighted by profile: 0.000000
Deciding on inlining of small functions. Starting with size 0.
Enqueueing calls in Lin_Ip_MakeChecksumByte/2.
Enqueueing calls in Lin_Ip_ProcessParity/1.
Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Deciding on functions to be inlined into all callers and removing useless speculations:
Overall time estimate: 103.538920 weighted by profile: 0.000000
Why inlining failed?
IPA function summary for Lin_Ip_MakeChecksumByte/2 inlinable
global time: 78.538920
self size: 21
global size: 21
min size: 0
self stack: 0
global stack: 0
size:10.000000, time:71.772728
size:3.000000, time:2.000000, executed if:(not inlined)
size:2.000000, time:2.000000, nonconst if:(op2 changed)
size:2.000000, time:1.320000, executed if:(op2 != 60), nonconst if:(op2 changed) && (op2 != 60)
size:2.000000, time:0.871200, executed if:(op2 != 125) && (op2 != 60), nonconst if:(op2 changed) && (op2 != 125) && (op2 != 60)
size:2.000000, time:0.574992, executed if:(op2 != 254) && (op2 != 125) && (op2 != 60), nonconst if:(op2 changed) && (op2 != 254) && (op2 != 125) && (op2 != 60)
loop iterations:(op1 changed)
calls:
IPA function summary for Lin_Ip_ProcessParity/1 inlinable
global time: 25.000000
self size: 28
global size: 28
min size: 0
self stack: 0
global stack: 0
size:0.000000, time:0.000000
size:3.000000, time:2.000000, executed if:(not inlined)
size:19.000000, time:19.000000, nonconst if:(op0 changed)
size:2.000000, time:2.000000, nonconst if:(op1 changed)
size:2.000000, time:1.000000, executed if:(op1 != 0), nonconst if:(op1 changed) && (op1 != 0)
size:2.000000, time:1.000000, executed if:(op1 == 0), nonconst if:(op0 changed) && (op1 == 0)
calls:
Symbol table:
Lin_Ip_MakeChecksumByte/2 (Lin_Ip_MakeChecksumByte) @05c86e00
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:118111600 (estimated locally) body optimize_size
Called by:
Calls:
Lin_Ip_ProcessParity/1 (Lin_Ip_ProcessParity) @05c86b60
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
;; Function Lin_Ip_ProcessParity (Lin_Ip_ProcessParity, funcdef_no=1, decl_uid=4064, cgraph_uid=2, symbol_order=1)
Lin_Ip_ProcessParity (const uint8 u8Pid, const Lin_Ip_ParityActionType eTypeAction)
{
uint8 retVal;
uint8 u8CalPid;
unsigned char _1;
unsigned char _2;
unsigned char iftmp.0_4;
unsigned char _7;
unsigned char _9;
int _10;
unsigned char _11;
unsigned char _14;
int _15;
unsigned char _16;
unsigned char _17;
unsigned char _18;
int _19;
unsigned char _20;
unsigned char _21;
int _22;
unsigned char _23;
unsigned char _24;
int _25;
unsigned char _26;
int _27;
unsigned char _28;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
u8CalPid_6 = u8Pid_5(D) & 63;
# DEBUG u8CalPid => u8CalPid_6
# DEBUG BEGIN_STMT
# DEBUG retVal => 255
# DEBUG BEGIN_STMT
# DEBUG A => u8Pid_5(D)
# DEBUG B => 0
# DEBUG INLINE_ENTRY BIT
# DEBUG BEGIN_STMT
_27 = (int) u8Pid_5(D);
# DEBUG A => NULL
# DEBUG B => NULL
# DEBUG A => u8Pid_5(D)
# DEBUG B => 1
# DEBUG INLINE_ENTRY BIT
# DEBUG BEGIN_STMT
_25 = _27 >> 1;
_26 = (unsigned char) _25;
# DEBUG A => NULL
# DEBUG B => NULL
_7 = u8Pid_5(D) ^ _26;
# DEBUG A => u8Pid_5(D)
# DEBUG B => 2
# DEBUG INLINE_ENTRY BIT
# DEBUG BEGIN_STMT
_22 = _27 >> 2;
_23 = (unsigned char) _22;
# DEBUG A => NULL
# DEBUG B => NULL
_28 = _7 ^ _23;
# DEBUG A => u8Pid_5(D)
# DEBUG B => 4
# DEBUG INLINE_ENTRY BIT
# DEBUG BEGIN_STMT
_19 = _27 >> 4;
_20 = (unsigned char) _19;
# DEBUG A => NULL
# DEBUG B => NULL
_24 = _20 ^ _28;
_21 = _24 << 6;
_1 = _21 & 64;
# DEBUG A => u8Pid_5(D)
# DEBUG B => 1
# DEBUG INLINE_ENTRY NULL
# DEBUG BEGIN_STMT
# DEBUG A => NULL
# DEBUG B => NULL
# DEBUG A => u8Pid_5(D)
# DEBUG B => 3
# DEBUG INLINE_ENTRY BIT
# DEBUG BEGIN_STMT
_15 = _27 >> 3;
_16 = (unsigned char) _15;
# DEBUG A => NULL
# DEBUG B => NULL
_18 = _16 ^ _26;
# DEBUG A => u8Pid_5(D)
# DEBUG B => 4
# DEBUG INLINE_ENTRY NULL
# DEBUG BEGIN_STMT
# DEBUG A => NULL
# DEBUG B => NULL
_17 = _18 ^ _20;
# DEBUG A => u8Pid_5(D)
# DEBUG B => 5
# DEBUG INLINE_ENTRY BIT
# DEBUG BEGIN_STMT
_10 = _27 >> 5;
_9 = (unsigned char) _10;
# DEBUG A => NULL
# DEBUG B => NULL
_14 = _9 ^ _17;
_2 = _14 & 1;
if (_2 == 0)
goto <bb 4>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 536870913]:
<bb 4> [local count: 1073741824]:
# iftmp.0_4 = PHI <128(2), 0(3)>
_11 = _1 | iftmp.0_4;
u8CalPid_12 = u8CalPid_6 | _11;
# DEBUG u8CalPid => u8CalPid_12
# DEBUG BEGIN_STMT
if (eTypeAction_13(D) == 0)
goto <bb 5>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
if (u8Pid_5(D) != u8CalPid_12)
goto <bb 9>; [51.11%]
else
goto <bb 6>; [48.89%]
<bb 6> [local count: 262476189]:
# DEBUG BEGIN_STMT
# DEBUG retVal => u8CalPid_6
goto <bb 9>; [100.00%]
<bb 7> [local count: 536870913]:
# DEBUG BEGIN_STMT
if (eTypeAction_13(D) == 1)
goto <bb 8>; [48.89%]
else
goto <bb 9>; [51.11%]
<bb 8> [local count: 262476189]:
# DEBUG BEGIN_STMT
# DEBUG retVal => u8CalPid_12
<bb 9> [local count: 1073741824]:
# retVal_3 = PHI <u8CalPid_6(6), 255(7), u8CalPid_12(8), 255(5)>
# DEBUG retVal => retVal_3
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
return retVal_3;
}
;; Function Lin_Ip_MakeChecksumByte (Lin_Ip_MakeChecksumByte, funcdef_no=2, decl_uid=4068, cgraph_uid=3, symbol_order=2)
Lin_Ip_MakeChecksumByte (const uint8 * pBuffer, const uint8 u8SizeBuffer, const uint8 u8Pid)
{
uint16 checksum;
uint8 length;
sizetype _1;
const uint8 * _2;
unsigned char _3;
short unsigned int _4;
unsigned char _6;
uint8 _15;
<bb 2> [local count: 118111600]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG checksum => 0
# DEBUG BEGIN_STMT
if (u8Pid_12(D) != 60)
goto <bb 3>; [66.00%]
else
goto <bb 11>; [34.00%]
<bb 3> [local count: 77953656]:
if (u8Pid_12(D) != 125)
goto <bb 4>; [66.00%]
else
goto <bb 11>; [34.00%]
<bb 4> [local count: 51449413]:
if (u8Pid_12(D) != 254)
goto <bb 5>; [66.00%]
else
goto <bb 11>; [34.00%]
<bb 5> [local count: 33956613]:
if (u8Pid_12(D) != 191)
goto <bb 6>; [66.00%]
else
goto <bb 11>; [34.00%]
<bb 6> [local count: 22411364]:
# DEBUG BEGIN_STMT
checksum_13 = (uint16) u8Pid_12(D);
# DEBUG checksum => checksum_13
<bb 11> [local count: 118111600]:
# length_8 = PHI <0(3), 0(2), 0(6), 0(4), 0(5)>
# checksum_11 = PHI <0(3), 0(2), checksum_13(6), 0(4), 0(5)>
goto <bb 13>; [100.00%]
<bb 8> [local count: 955630224]:
# DEBUG BEGIN_STMT
_1 = (sizetype) length_7;
_2 = pBuffer_17(D) + _1;
_3 = *_2;
_4 = (short unsigned int) _3;
checksum_18 = _4 + checksum_10;
# DEBUG checksum => checksum_18
# DEBUG BEGIN_STMT
if (checksum_18 > 255)
goto <bb 9>; [50.00%]
else
goto <bb 10>; [50.00%]
<bb 9> [local count: 477815112]:
# DEBUG BEGIN_STMT
checksum_19 = checksum_18 + 65281;
# DEBUG checksum => checksum_19
<bb 10> [local count: 955630224]:
# checksum_9 = PHI <checksum_18(8), checksum_19(9)>
# DEBUG checksum => checksum_9
# DEBUG BEGIN_STMT
length_20 = length_7 + 1;
# DEBUG length => length_20
<bb 13> [local count: 1073741824]:
# length_7 = PHI <length_8(11), length_20(10)>
# checksum_10 = PHI <checksum_11(11), checksum_9(10)>
# DEBUG checksum => checksum_10
# DEBUG length => length_7
# DEBUG BEGIN_STMT
if (length_7 < u8SizeBuffer_14(D))
goto <bb 8>; [89.00%]
else
goto <bb 12>; [11.00%]
<bb 12> [local count: 118111601]:
# checksum_5 = PHI <checksum_10(13)>
# DEBUG BEGIN_STMT
_6 = (unsigned char) checksum_5;
_15 = ~_6;
return _15;
}