ADM/GW/Debug_FLASH/Project_Settings/Startup_Code/system.c.076i.inline
2024-10-11 09:49:54 +09:00

524 lines
13 KiB
Plaintext

IPA function summary for sys_m7_cache_init/7 inlinable
global time: 812.256203
self size: 38
global size: 38
min size: 0
self stack: 0
global stack: 0
size:35.000000, time:810.256203
size:3.000000, time:2.000000, executed if:(not inlined)
calls:
IPA function summary for SystemInit/6 inlinable
global time: 732.867143
self size: 33
global size: 33
min size: 2
self stack: 0
global stack: 0
size:29.000000, time:720.868343
size:3.000000, time:1.999800, executed if:(not inlined)
calls:
sys_m7_cache_init/7 function not considered for inlining
loop depth: 0 freq:1.00 size: 1 time: 10callee size:19 stack: 0
IPA function summary for Sys_GetCoreID/5 inlinable
global time: 4.000000
self size: 5
global size: 5
min size: 0
self stack: 0
global stack: 0
size:2.000000, time:2.000000
size:3.000000, time:2.000000, executed if:(not inlined)
calls:
IPA function summary for default_interrupt_routine/4 inlinable
global time: 0.000000
self size: 2
global size: 2
min size: 0
self stack: 0
global stack: 0
size:0.000000, time:0.000000
size:2.000000, time:0.000000, executed if:(not inlined)
calls:
IPA function summary for startup_go_to_user_mode/3 inlinable
global time: 2.000000
self size: 3
global size: 3
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)
calls:
Flattening functions:
Overall time estimate: 1551.123346 weighted by profile: 0.000000
Deciding on inlining of small functions. Starting with size 0.
Enqueueing calls in sys_m7_cache_init/7.
Enqueueing calls in SystemInit/6.
Enqueueing calls in Sys_GetCoreID/5.
Enqueueing calls in default_interrupt_routine/4.
Enqueueing calls in startup_go_to_user_mode/3.
Considering sys_m7_cache_init/7 with 38 size
to be inlined into SystemInit/6 in ../Project_Settings/Startup_Code/system.c:273
Estimated badness is -0.021069, frequency 1.00.
Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Deciding on functions to be inlined into all callers and removing useless speculations:
Overall time estimate: 1539.043310 weighted by profile: 0.000000
Why inlining failed?
IPA function summary for SystemInit/6 inlinable
global time: 1533.043310
self size: 33
global size: 67
min size: 2
self stack: 0
global stack: 0
size:64.000000, time:1531.043510
size:3.000000, time:1.999800, executed if:(not inlined)
calls:
sys_m7_cache_init/7 inlined
loop depth: 0 freq:1.00 size: 1 time: 10callee size:19 stack: 0
Stack frame offset 0, callee self size 0, callee size 0
IPA function summary for Sys_GetCoreID/5 inlinable
global time: 4.000000
self size: 5
global size: 5
min size: 0
self stack: 0
global stack: 0
size:2.000000, time:2.000000
size:3.000000, time:2.000000, executed if:(not inlined)
calls:
IPA function summary for default_interrupt_routine/4 inlinable
global time: 0.000000
self size: 2
global size: 2
min size: 0
self stack: 0
global stack: 0
size:0.000000, time:0.000000
size:2.000000, time:0.000000, executed if:(not inlined)
calls:
IPA function summary for startup_go_to_user_mode/3 inlinable
global time: 2.000000
self size: 3
global size: 3
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)
calls:
Symbol table:
sys_m7_cache_init/7 (sys_m7_cache_init) @05e0e700
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Function sys_m7_cache_init/7 is inline copy in SystemInit/6
Availability: local
Function flags: count:10737418 (estimated locally) body local optimize_size
Called by: SystemInit/6 (inlined) (10737418 (estimated locally),1.00 per call)
Calls:
SystemInit/6 (SystemInit) @05e0ee00
Type: function definition analyzed
Visibility: externally_visible public
References: rbar/0 (read)rasr/1 (read)
Referring:
Availability: available
Function flags: count:10738492 (estimated locally) body optimize_size
Called by:
Calls: sys_m7_cache_init/7 (inlined) (10737418 (estimated locally),1.00 per call)
Sys_GetCoreID/5 (Sys_GetCoreID) @05e0eb60
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
default_interrupt_routine/4 (default_interrupt_routine) @05e0e8c0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:107374 (estimated locally) body executed_once optimize_size
Called by:
Calls:
startup_go_to_user_mode/3 (startup_go_to_user_mode) @05e0e620
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
RESET_CATCH_CORE/2 (RESET_CATCH_CORE) @05e0a8b8
Type: variable definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Varpool flags: initialized
rasr/1 (rasr) @05d8c360
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: SystemInit/6 (read)
Availability: available
Varpool flags: initialized read-only const-value-known
rbar/0 (rbar) @05d8c288
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: SystemInit/6 (read)
Availability: available
Varpool flags: initialized read-only const-value-known
;; Function startup_go_to_user_mode (startup_go_to_user_mode, funcdef_no=0, decl_uid=4376, cgraph_uid=1, symbol_order=3)
startup_go_to_user_mode ()
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
return;
}
;; Function default_interrupt_routine (default_interrupt_routine, funcdef_no=1, decl_uid=4061, cgraph_uid=2, symbol_order=4) (executed once)
default_interrupt_routine ()
{
<bb 2> [local count: 107374]:
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 4> [local count: 1073741824]:
goto <bb 3>; [100.00%]
}
;; Function Sys_GetCoreID (Sys_GetCoreID, funcdef_no=2, decl_uid=4053, cgraph_uid=3, symbol_order=5)
Sys_GetCoreID ()
{
long unsigned int _1;
unsigned char _2;
uint8 _4;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 ={v} MEM[(struct MSCM_Type *)1076232192B].CPXNUM;
_2 = (unsigned char) _1;
_4 = _2 & 3;
return _4;
}
;; Function SystemInit (SystemInit, funcdef_no=3, decl_uid=4059, cgraph_uid=4, symbol_order=6)
Symbols to be put in SSA form
{ D.4424 }
Incremental SSA update started at block: 0
Number of blocks in CFG: 20
Number of blocks to update: 19 ( 95%)
Merging blocks 11 and 13
Removing basic block 16
Removing basic block 18
Merging blocks 19 and 12
;; 5 loops found
;;
;; Loop 0
;; header 0, latch 1
;; depth 0, outer -1
;; nodes: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
;;
;; Loop 3
;; header 12, latch 14
;; depth 1, outer 0
;; nodes: 12 14 13
;;
;; Loop 4
;; header 13, latch 13
;; depth 2, outer 3
;; nodes: 13
;;
;; Loop 2
;; header 10, latch 9
;; depth 1, outer 0
;; nodes: 10 9
;;
;; Loop 1
;; header 7, latch 6
;; depth 1, outer 0
;; nodes: 7 6
;; 2 succs { 4 5 3 }
;; 3 succs { 5 }
;; 4 succs { 5 }
;; 5 succs { 7 }
;; 6 succs { 7 }
;; 7 succs { 6 8 }
;; 8 succs { 10 }
;; 9 succs { 10 }
;; 10 succs { 9 11 }
;; 11 succs { 12 }
;; 12 succs { 13 }
;; 13 succs { 13 14 }
;; 14 succs { 12 15 }
;; 15 succs { 1 }
SystemInit ()
{
uint32 ccsidr;
uint32 sets;
uint32 ways;
uint8 regionNum;
uint32 coreMask;
uint32 i;
short unsigned int _1;
short unsigned int _2;
short unsigned int _3;
long unsigned int _4;
int _5;
long unsigned int _6;
long unsigned int _7;
long unsigned int _8;
long unsigned int _9;
long unsigned int _28;
unsigned char _29;
unsigned char _30;
long unsigned int _32;
long unsigned int _34;
long unsigned int _37;
long unsigned int _38;
long unsigned int _40;
long unsigned int _41;
long unsigned int _44;
long unsigned int _45;
long unsigned int _46;
long unsigned int _47;
<bb 2> [local count: 10738492]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG regionNum => 0
# DEBUG BEGIN_STMT
# DEBUG INLINE_ENTRY Sys_GetCoreID
# DEBUG BEGIN_STMT
_28 ={v} MEM[(struct MSCM_Type *)1076232192B].CPXNUM;
_29 = (unsigned char) _28;
_30 = _29 & 3;
# DEBUG coreId => _30
# DEBUG BEGIN_STMT
switch (_30) <default: <L2> [33.33%], case 0: <L10> [33.33%], case 1: <L1> [33.33%]>
<bb 3> [local count: 3579139]:
<L1>:
# DEBUG BEGIN_STMT
# DEBUG coreMask => 2
# DEBUG BEGIN_STMT
goto <bb 5>; [100.00%]
<bb 4> [local count: 3579139]:
<L2>:
# DEBUG BEGIN_STMT
# DEBUG coreMask => 0
# DEBUG BEGIN_STMT
<bb 5> [local count: 10737418]:
# coreMask_11 = PHI <1(2), 2(3), 0(4)>
<L10>:
# DEBUG coreMask => coreMask_11
# DEBUG BEGIN_STMT
# DEBUG i => 0
goto <bb 7>; [100.00%]
<bb 6> [local count: 1063004406]:
# DEBUG BEGIN_STMT
_1 ={v} MEM[(struct MSCM_Type *)1076232192B].IRSPRC[i_10];
_2 = (short unsigned int) coreMask_11;
_3 = _1 | _2;
MEM[(struct MSCM_Type *)1076232192B].IRSPRC[i_10] ={v} _3;
# DEBUG BEGIN_STMT
i_27 = i_10 + 1;
# DEBUG i => i_27
<bb 7> [local count: 1073741824]:
# i_10 = PHI <0(5), i_27(6)>
# DEBUG i => i_10
# DEBUG BEGIN_STMT
if (i_10 != 240)
goto <bb 6>; [99.00%]
else
goto <bb 8>; [1.00%]
<bb 8> [local count: 10737418]:
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
__asm__ __volatile__("isb");
# DEBUG BEGIN_STMT
# DEBUG regionNum => 0
goto <bb 10>; [100.00%]
<bb 9> [local count: 150243364]:
# DEBUG BEGIN_STMT
_4 = (long unsigned int) regionNum_12;
MEM[(struct S32_MPU_Type *)3758153728B].RNR ={v} _4;
# DEBUG BEGIN_STMT
_5 = (int) regionNum_12;
_6 = rbar[_5];
MEM[(struct S32_MPU_Type *)3758153728B].RBAR ={v} _6;
# DEBUG BEGIN_STMT
_7 = rasr[_5];
MEM[(struct S32_MPU_Type *)3758153728B].RASR ={v} _7;
# DEBUG BEGIN_STMT
regionNum_25 = regionNum_12 + 1;
# DEBUG regionNum => regionNum_25
<bb 10> [local count: 160980783]:
# regionNum_12 = PHI <0(8), regionNum_25(9)>
# DEBUG regionNum => regionNum_12
# DEBUG BEGIN_STMT
if (regionNum_12 != 14)
goto <bb 9>; [93.33%]
else
goto <bb 11>; [6.67%]
<bb 11> [local count: 10737418]:
# DEBUG BEGIN_STMT
_8 ={v} MEM[(struct S32_MPU_Type *)3758153728B].CTRL;
_9 = _8 | 1;
MEM[(struct S32_MPU_Type *)3758153728B].CTRL ={v} _9;
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
__asm__ __volatile__("isb");
# DEBUG BEGIN_STMT
# DEBUG INLINE_ENTRY sys_m7_cache_init
# DEBUG BEGIN_STMT
# DEBUG ccsidr => 0
# DEBUG BEGIN_STMT
# DEBUG sets => 0
# DEBUG BEGIN_STMT
# DEBUG ways => 0
# DEBUG BEGIN_STMT
MEM[(struct S32_SCB_Type *)3758153728B].CSSELR ={v} 0;
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
ccsidr_31 ={v} MEM[(struct S32_SCB_Type *)3758153728B].CCSIDR;
# DEBUG ccsidr => ccsidr_31
# DEBUG BEGIN_STMT
_32 = ccsidr_31 >> 13;
sets_33 = _32 & 32767;
# DEBUG sets => sets_33
<bb 12> [local count: 97612895]:
# sets_36 = PHI <sets_33(11), sets_43(14)>
# DEBUG sets => sets_36
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_34 = ccsidr_31 >> 3;
ways_35 = _34 & 1023;
# DEBUG ways => ways_35
<bb 13> [local count: 887389957]:
# ways_39 = PHI <ways_35(12), ways_42(13)>
# DEBUG ways => ways_39
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_37 = sets_36 << 5;
_38 = _37 & 16352;
_40 = ways_39 << 30;
_41 = _38 | _40;
MEM[(struct S32_SCB_Type *)3758153728B].DCISW ={v} _41;
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
ways_42 = ways_39 + 4294967295;
# DEBUG ways => ways_42
if (ways_39 != 0)
goto <bb 13>; [89.00%]
else
goto <bb 14>; [11.00%]
<bb 14> [local count: 97612895]:
# DEBUG BEGIN_STMT
sets_43 = sets_36 + 4294967295;
# DEBUG sets => sets_43
if (sets_36 != 0)
goto <bb 12>; [89.00%]
else
goto <bb 15>; [11.00%]
<bb 15> [local count: 10737418]:
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
_44 ={v} MEM[(struct S32_SCB_Type *)3758153728B].CCR;
_45 = _44 | 65536;
MEM[(struct S32_SCB_Type *)3758153728B].CCR ={v} _45;
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
__asm__ __volatile__("isb");
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
__asm__ __volatile__("isb");
# DEBUG BEGIN_STMT
MEM[(struct S32_SCB_Type *)3758153728B].ICIALLU ={v} 0;
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
__asm__ __volatile__("isb");
# DEBUG BEGIN_STMT
_46 ={v} MEM[(struct S32_SCB_Type *)3758153728B].CCR;
_47 = _46 | 131072;
MEM[(struct S32_SCB_Type *)3758153728B].CCR ={v} _47;
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
__asm__ __volatile__("isb");
# DEBUG ways => NULL
# DEBUG sets => NULL
# DEBUG ccsidr => NULL
return;
}