Analyzing function: sys_m7_cache_init/7 ;; 3 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 3 4 8 5 7 6 ;; ;; Loop 1 ;; header 3, latch 7 ;; depth 1, outer 0 ;; nodes: 3 7 5 4 8 ;; ;; Loop 2 ;; header 4, latch 8 ;; depth 2, outer 1 ;; nodes: 4 8 ;; 2 succs { 3 } ;; 3 succs { 4 } ;; 4 succs { 8 5 } ;; 8 succs { 4 } ;; 5 succs { 7 6 } ;; 7 succs { 3 } ;; 6 succs { 1 } Analyzing function body size: sys_m7_cache_init IPA function summary for sys_m7_cache_init/7 inlinable global time: 812.256203 self size: 38 global size: 0 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: Analyzing function: SystemInit/6 ;; 3 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 ;; ;; 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 { 1 } Analyzing function body size: SystemInit IPA function summary for SystemInit/6 inlinable global time: 732.867143 self size: 33 global size: 0 min size: 0 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 Analyzing function: Sys_GetCoreID/5 ;; 1 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 ;; 2 succs { 1 } Analyzing function body size: Sys_GetCoreID IPA function summary for Sys_GetCoreID/5 inlinable global time: 4.000000 self size: 5 global size: 0 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: Analyzing function: default_interrupt_routine/4 ;; 2 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 3 4 ;; ;; Loop 1 ;; header 3, latch 4 ;; depth 1, outer 0 ;; nodes: 3 4 ;; 2 succs { 3 } ;; 3 succs { 4 } ;; 4 succs { 3 } Analyzing function body size: default_interrupt_routine IPA function summary for default_interrupt_routine/4 inlinable global time: 0.000000 self size: 2 global size: 0 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: Analyzing function: startup_go_to_user_mode/3 ;; 1 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 ;; 2 succs { 1 } Analyzing function body size: startup_go_to_user_mode IPA function summary for startup_go_to_user_mode/3 inlinable global time: 2.000000 self size: 3 global size: 0 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) @06a41700 Type: function definition analyzed Visibility: prevailing_def_ironly References: Referring: Availability: local Function flags: count:12992276 (estimated locally) body local optimize_size Called by: SystemInit/6 (10737418 (estimated locally),1.00 per call) Calls: SystemInit/6 (SystemInit) @06a41e00 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 (10737418 (estimated locally),1.00 per call) Sys_GetCoreID/5 (Sys_GetCoreID) @06a41b60 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) @06a418c0 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) @06a41620 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) @06a3c8b8 Type: variable definition analyzed Visibility: externally_visible public References: Referring: Availability: available Varpool flags: initialized rasr/1 (rasr) @069bd360 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) @069bd288 Type: variable definition analyzed Visibility: prevailing_def_ironly References: Referring: SystemInit/6 (read) Availability: available Varpool flags: initialized read-only const-value-known sys_m7_cache_init () { uint32 ways; uint32 sets; uint32 ccsidr; long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; [local count: 12992276]: # 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_18 ={v} MEM[(struct S32_SCB_Type *)3758153728B].CCSIDR; # DEBUG ccsidr => ccsidr_18 # DEBUG BEGIN_STMT _1 = ccsidr_18 >> 13; sets_19 = _1 & 32767; # DEBUG sets => sets_19 [local count: 118111600]: # sets_11 = PHI # DEBUG sets => sets_11 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _2 = ccsidr_18 >> 3; ways_20 = _2 & 1023; # DEBUG ways => ways_20 [local count: 1073741824]: # ways_12 = PHI # DEBUG ways => ways_12 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _3 = sets_11 << 5; _4 = _3 & 16352; _5 = ways_12 << 30; _6 = _4 | _5; MEM[(struct S32_SCB_Type *)3758153728B].DCISW ={v} _6; # DEBUG BEGIN_STMT __asm__ __volatile__("dsb"); # DEBUG BEGIN_STMT ways_23 = ways_12 + 4294967295; # DEBUG ways => ways_23 if (ways_12 != 0) goto ; [89.00%] else goto ; [11.00%] [local count: 955630224]: goto ; [100.00%] [local count: 118111601]: # DEBUG BEGIN_STMT sets_24 = sets_11 + 4294967295; # DEBUG sets => sets_24 if (sets_11 != 0) goto ; [89.00%] else goto ; [11.00%] [local count: 105119325]: goto ; [100.00%] [local count: 12992276]: # DEBUG BEGIN_STMT __asm__ __volatile__("dsb"); # DEBUG BEGIN_STMT _7 ={v} MEM[(struct S32_SCB_Type *)3758153728B].CCR; _8 = _7 | 65536; MEM[(struct S32_SCB_Type *)3758153728B].CCR ={v} _8; # 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 _9 ={v} MEM[(struct S32_SCB_Type *)3758153728B].CCR; _10 = _9 | 131072; MEM[(struct S32_SCB_Type *)3758153728B].CCR ={v} _10; # DEBUG BEGIN_STMT __asm__ __volatile__("dsb"); # DEBUG BEGIN_STMT __asm__ __volatile__("isb"); return; } SystemInit () { 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; [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) [33.33%], case 0: [33.33%], case 1: [33.33%]> [local count: 3579139]: : # DEBUG BEGIN_STMT # DEBUG coreMask => 2 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 3579139]: : # DEBUG BEGIN_STMT # DEBUG coreMask => 0 # DEBUG BEGIN_STMT [local count: 10737418]: # coreMask_11 = PHI <1(2), 2(3), 0(4)> : # DEBUG coreMask => coreMask_11 # DEBUG BEGIN_STMT # DEBUG i => 0 goto ; [100.00%] [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 [local count: 1073741824]: # i_10 = PHI <0(5), i_27(6)> # DEBUG i => i_10 # DEBUG BEGIN_STMT if (i_10 != 240) goto ; [99.00%] else goto ; [1.00%] [local count: 10737418]: # DEBUG BEGIN_STMT __asm__ __volatile__("dsb"); # DEBUG BEGIN_STMT __asm__ __volatile__("isb"); # DEBUG BEGIN_STMT # DEBUG regionNum => 0 goto ; [100.00%] [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 [local count: 160980783]: # regionNum_12 = PHI <0(8), regionNum_25(9)> # DEBUG regionNum => regionNum_12 # DEBUG BEGIN_STMT if (regionNum_12 != 14) goto ; [93.33%] else goto ; [6.67%] [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 sys_m7_cache_init (); return; } Sys_GetCoreID () { long unsigned int _1; unsigned char _2; uint8 _4; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 ={v} MEM[(struct MSCM_Type *)1076232192B].CPXNUM; _2 = (unsigned char) _1; _4 = _2 & 3; return _4; } default_interrupt_routine () { [local count: 107374]: [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT [local count: 1073741824]: goto ; [100.00%] } startup_go_to_user_mode () { [local count: 1073741824]: # DEBUG BEGIN_STMT return; }