IPA constant propagation start: Determining dynamic type for call: ret_20 = execute_cmd (argc_14, &argv); Starting walk at: ret_20 = execute_cmd (argc_14, &argv); instance pointer: &argv Outer instance pointer: argv offset: 0 (bits) vtbl reference: Function call may change dynamic type:tmp_13 = strtok (&gb.cmd_buf, " \r\n\t"); Function call may change dynamic type:ret_10 = get_line (128); Function call may change dynamic type:tmp_17 = strtok (0B, " \r\n\t"); Determining dynamic type for call: _4 (argc_12(D), argv_10(D)); Starting walk at: _4 (argc_12(D), argv_10(D)); instance pointer: argv_10(D) Outer instance pointer: argv_10(D) offset: 0 (bits) vtbl reference: Determining dynamic type for call: cmd_mm.part.0 (argv_4(D)); Starting walk at: cmd_mm.part.0 (argv_4(D)); instance pointer: argv_4(D) Outer instance pointer: argv_4(D) offset: 0 (bits) vtbl reference: IPA structures before propagation: Jump functions: Jump functions of caller cmd_debug.part.0/55: Jump functions of caller cmd_md.part.0/54: Jump functions of caller cmd_mm.part.0/53: Jump functions of caller strtok/52: Jump functions of caller get_line/51: Jump functions of caller strcmp/50: Jump functions of caller strlen/49: Jump functions of caller system_reset/48: Jump functions of caller strncasecmp/47: Jump functions of caller set_pwm/45: Jump functions of caller Adc_Sar_Ip_StartConversion/44: Jump functions of caller debug_printf/43: Jump functions of caller strtoul/42: Jump functions of caller cmd_main/41: callsite cmd_main/41 -> execute_cmd/40 : param 0: UNKNOWN value: 0x0, mask: 0xf VR [0, 8] param 1: UNKNOWN value: 0x0, mask: 0xfffffffc VR ~[0, 0] Jump functions of caller execute_cmd/40: indirect simple callsite, calling param -1, offset 0, for stmt _4 (argc_12(D), argv_10(D)); param 0: PASS THROUGH: 0, op nop_expr value: 0x0, mask: 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff Unknown VR param 1: PASS THROUGH: 1, op nop_expr, agg_preserved value: 0x0, mask: 0xffffffff Unknown VR Jump functions of caller cmd_help/39: Jump functions of caller cmd_show/38: Jump functions of caller cmd_clear/37: Jump functions of caller cmd_reset/36: Jump functions of caller cmd_save/35: Jump functions of caller cmd_debug/34: callsite cmd_debug/34 -> cmd_debug.part.0/55 : Jump functions of caller cmd_md/33: callsite cmd_md/33 -> cmd_md.part.0/54 : Jump functions of caller cmd_mm/32: callsite cmd_mm/32 -> cmd_mm.part.0/53 : param 0: PASS THROUGH: 1, op nop_expr, agg_preserved value: 0x0, mask: 0xffffffff Unknown VR Jump functions of caller cmd_pwm/31: Jump functions of caller cmd_adc/30: Propagating constants: Not considering cmd_main for cloning; -fipa-cp-clone disabled. Not considering execute_cmd for cloning; -fipa-cp-clone disabled. Not considering cmd_help for cloning; -fipa-cp-clone disabled. Not considering cmd_show for cloning; -fipa-cp-clone disabled. Not considering cmd_clear for cloning; -fipa-cp-clone disabled. Not considering cmd_reset for cloning; -fipa-cp-clone disabled. Not considering cmd_save for cloning; -fipa-cp-clone disabled. Not considering cmd_debug for cloning; -fipa-cp-clone disabled. Not considering cmd_md for cloning; -fipa-cp-clone disabled. Not considering cmd_mm for cloning; -fipa-cp-clone disabled. Not considering cmd_pwm for cloning; -fipa-cp-clone disabled. Not considering cmd_adc for cloning; -fipa-cp-clone disabled. overall_size: 295, max_new_size: 11001 - context independent values, size: 30, time_benefit: 2.000000 - context independent values, size: 23, time_benefit: 2.000000 - context independent values, size: 7, time_benefit: 2.000000 - context independent values, size: 6, time_benefit: 2.000000 - context independent values, size: 3, time_benefit: 2.000000 IPA lattices after all propagation: Lattices: Node: cmd_debug.part.0/55: Node: cmd_md.part.0/54: Node: cmd_mm.part.0/53: param [0]: VARIABLE ctxs: VARIABLE Bits unusable (BOTTOM) VARYING AGGS VARIABLE Node: cmd_main/41: Node: execute_cmd/40: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_help/39: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_show/38: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_clear/37: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_reset/36: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_save/35: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_debug/34: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_md/33: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_mm/32: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_pwm/31: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM Node: cmd_adc/30: param [0]: BOTTOM ctxs: BOTTOM Bits unusable (BOTTOM) VARYING AGGS BOTTOM param [1]: 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: cmd_debug.part.0/55 (cmd_debug.part.0) @068c0540 Type: function definition analyzed Visibility: prevailing_def_ironly artificial References: gb/46 (write) Referring: Availability: local Function flags: count:1073741824 (estimated locally) first_run:1 body local split_part optimize_size Called by: cmd_debug/34 (118702158 (estimated locally),0.11 per call) Calls: debug_printf/43 (1073741824 (estimated locally),1.00 per call) cmd_md.part.0/54 (cmd_md.part.0) @068c02a0 Type: function definition analyzed Visibility: prevailing_def_ironly artificial References: Referring: Availability: local Function flags: count:1073741824 (estimated locally) first_run:1 body local split_part optimize_size Called by: cmd_md/33 (43132906 (estimated locally),0.27 per call) Calls: debug_printf/43 (1073741824 (estimated locally),1.00 per call) debug_printf/43 (1073741824 (estimated locally),1.00 per call) debug_printf/43 (1073741824 (estimated locally),1.00 per call) cmd_mm.part.0/53 (cmd_mm.part.0) @068b9e00 Type: function definition analyzed Visibility: prevailing_def_ironly artificial References: Referring: Availability: local Function flags: count:1073741824 (estimated locally) first_run:1 body local split_part optimize_size Called by: cmd_mm/32 (536870912 (estimated locally),0.50 per call) Calls: strtoul/42 (1073741824 (estimated locally),1.00 per call) strtoul/42 (1073741824 (estimated locally),1.00 per call) debug_printf/43 (1073741824 (estimated locally),1.00 per call) strtok/52 (strtok) @087f2a80 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_main/41 (901954409 (estimated locally),1.31 per call) cmd_main/41 (171787418 (estimated locally),0.25 per call) Calls: get_line/51 (get_line) @087f29a0 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_main/41 (687149673 (estimated locally),1.00 per call) Calls: strcmp/50 (strcmp) @087f27e0 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: execute_cmd/40 (1014686025 (estimated locally),8.83 per call) Calls: strlen/49 (strlen) @087f2620 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_help/39 (118111600 (estimated locally),8.09 per call) Calls: system_reset/48 (system_reset) @087f22a0 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_reset/36 (1073741824 (estimated locally),1.00 per call) Calls: strncasecmp/47 (strncasecmp) @087f2000 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_debug/34 (359703511 (estimated locally),0.33 per call) cmd_debug/34 (536870913 (estimated locally),0.50 per call) Calls: gb/46 (gb) @087dac18 Type: variable Body removed by symtab_remove_unreachable_nodes Visibility: external public References: Referring: cmd_show/38 (read)cmd_debug/34 (read)cmd_debug/34 (write)cmd_show/38 (read)cmd_debug.part.0/55 (write)cmd_main/41 (read)cmd_main/41 (addr) Availability: not_available Varpool flags: set_pwm/45 (set_pwm) @087d4e00 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_pwm/31 (114311242 (estimated locally),0.11 per call) Calls: Adc_Sar_Ip_StartConversion/44 (Adc_Sar_Ip_StartConversion) @087d4c40 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_adc/30 (141450453 (estimated locally),0.13 per call) Calls: debug_printf/43 (debug_printf) @087d4b60 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_main/41 (171787418 (estimated locally),0.25 per call) cmd_main/41 (34769773 (estimated locally),0.05 per call) cmd_main/41 (171787418 (estimated locally),0.25 per call) cmd_help/39 (14598063 (estimated locally),1.00 per call) cmd_help/39 (118111601 (estimated locally),8.09 per call) cmd_help/39 (955630224 (estimated locally),65.46 per call) cmd_help/39 (118111600 (estimated locally),8.09 per call) cmd_help/39 (14598062 (estimated locally),1.00 per call) cmd_help/39 (14598062 (estimated locally),1.00 per call) cmd_reset/36 (1073741824 (estimated locally),1.00 per call) cmd_debug/34 (177167401 (estimated locally),0.17 per call) cmd_debug/34 (536870913 (estimated locally),0.50 per call) cmd_debug.part.0/55 (1073741824 (estimated locally),1.00 per call) cmd_pwm/31 (959430584 (estimated locally),0.89 per call) cmd_pwm/31 (959430584 (estimated locally),0.89 per call) cmd_pwm/31 (114311242 (estimated locally),0.11 per call) cmd_adc/30 (932291372 (estimated locally),0.87 per call) cmd_adc/30 (932291372 (estimated locally),0.87 per call) cmd_adc/30 (141450453 (estimated locally),0.13 per call) cmd_show/38 (214748365 (estimated locally),1.00 per call) cmd_show/38 (858993459 (estimated locally),4.00 per call) cmd_show/38 (214748364 (estimated locally),1.00 per call) cmd_show/38 (214748364 (estimated locally),1.00 per call) cmd_show/38 (214748364 (estimated locally),1.00 per call) cmd_show/38 (214748364 (estimated locally),1.00 per call) cmd_clear/37 (1073741824 (estimated locally),1.00 per call) cmd_md/33 (118111601 (estimated locally),0.73 per call) cmd_md/33 (955630224 (estimated locally),5.93 per call) cmd_md/33 (315357974 (estimated locally),1.96 per call) cmd_md.part.0/54 (1073741824 (estimated locally),1.00 per call) cmd_md.part.0/54 (1073741824 (estimated locally),1.00 per call) cmd_md.part.0/54 (1073741824 (estimated locally),1.00 per call) cmd_mm/32 (536870913 (estimated locally),0.50 per call) cmd_mm/32 (536870913 (estimated locally),0.50 per call) cmd_mm.part.0/53 (1073741824 (estimated locally),1.00 per call) Calls: strtoul/42 (strtoul) @087d4a80 Type: function Visibility: external public References: Referring: Availability: not_available Function flags: optimize_size Called by: cmd_pwm/31 (354334802 (estimated locally),0.33 per call) cmd_pwm/31 (354334802 (estimated locally),0.33 per call) cmd_adc/30 (354334802 (estimated locally),0.33 per call) cmd_md/33 (118111602 (estimated locally),0.73 per call) cmd_md/33 (57732951 (estimated locally),0.36 per call) cmd_mm.part.0/53 (1073741824 (estimated locally),1.00 per call) cmd_mm.part.0/53 (1073741824 (estimated locally),1.00 per call) Calls: cmd_main/41 (cmd_main) @087d4540 Type: function definition analyzed Visibility: externally_visible public References: gb/46 (read)gb/46 (addr) Referring: Availability: available Function flags: count:687149673 (estimated locally) body optimize_size Called by: Calls: debug_printf/43 (171787418 (estimated locally),0.25 per call) debug_printf/43 (34769773 (estimated locally),0.05 per call) execute_cmd/40 (171787418 (estimated locally),0.25 per call) strtok/52 (901954409 (estimated locally),1.31 per call) strtok/52 (171787418 (estimated locally),0.25 per call) debug_printf/43 (171787418 (estimated locally),0.25 per call) get_line/51 (687149673 (estimated locally),1.00 per call) execute_cmd/40 (execute_cmd) @087d42a0 Type: function definition analyzed Visibility: externally_visible public References: mmi_cmd/29 (read)mmi_cmd/29 (read) Referring: Availability: available Function flags: count:114863532 (estimated locally) body optimize_size Called by: cmd_main/41 (171787418 (estimated locally),0.25 per call) Calls: strcmp/50 (1014686025 (estimated locally),8.83 per call) Indirect call(55807731 (estimated locally),0.49 per call) cmd_help/39 (cmd_help) @087d4000 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: mmi_cmd/29 (read)mmi_cmd/29 (read)mmi_cmd/29 (read) Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:14598062 (estimated locally) body optimize_size Called by: Calls: debug_printf/43 (14598063 (estimated locally),1.00 per call) debug_printf/43 (118111601 (estimated locally),8.09 per call) debug_printf/43 (955630224 (estimated locally),65.46 per call) strlen/49 (118111600 (estimated locally),8.09 per call) debug_printf/43 (118111600 (estimated locally),8.09 per call) debug_printf/43 (14598062 (estimated locally),1.00 per call) debug_printf/43 (14598062 (estimated locally),1.00 per call) cmd_show/38 (cmd_show) @08855b60 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: gb/46 (read)gb/46 (read) Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:214748364 (estimated locally) body optimize_size Called by: Calls: debug_printf/43 (214748365 (estimated locally),1.00 per call) debug_printf/43 (858993459 (estimated locally),4.00 per call) debug_printf/43 (214748364 (estimated locally),1.00 per call) debug_printf/43 (214748364 (estimated locally),1.00 per call) debug_printf/43 (214748364 (estimated locally),1.00 per call) debug_printf/43 (214748364 (estimated locally),1.00 per call) cmd_clear/37 (cmd_clear) @08855620 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: debug_printf/43 (1073741824 (estimated locally),1.00 per call) cmd_reset/36 (cmd_reset) @088550e0 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: system_reset/48 (1073741824 (estimated locally),1.00 per call) debug_printf/43 (1073741824 (estimated locally),1.00 per call) cmd_save/35 (cmd_save) @08855d20 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: cmd_debug/34 (cmd_debug) @08855a80 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: gb/46 (read)gb/46 (write) Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: cmd_debug.part.0/55 (118702158 (estimated locally),0.11 per call) strncasecmp/47 (359703511 (estimated locally),0.33 per call) debug_printf/43 (177167401 (estimated locally),0.17 per call) strncasecmp/47 (536870913 (estimated locally),0.50 per call) debug_printf/43 (536870913 (estimated locally),0.50 per call) cmd_md/33 (cmd_md) @088557e0 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:161244508 (estimated locally) body optimize_size Called by: Calls: debug_printf/43 (118111601 (estimated locally),0.73 per call) debug_printf/43 (955630224 (estimated locally),5.93 per call) debug_printf/43 (315357974 (estimated locally),1.96 per call) strtoul/42 (118111602 (estimated locally),0.73 per call) strtoul/42 (57732951 (estimated locally),0.36 per call) cmd_md.part.0/54 (43132906 (estimated locally),0.27 per call) cmd_mm/32 (cmd_mm) @08855540 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: cmd_mm.part.0/53 (536870912 (estimated locally),0.50 per call) debug_printf/43 (536870913 (estimated locally),0.50 per call) debug_printf/43 (536870913 (estimated locally),0.50 per call) cmd_pwm/31 (cmd_pwm) @088552a0 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: debug_printf/43 (959430584 (estimated locally),0.89 per call) debug_printf/43 (959430584 (estimated locally),0.89 per call) set_pwm/45 (114311242 (estimated locally),0.11 per call) debug_printf/43 (114311242 (estimated locally),0.11 per call) strtoul/42 (354334802 (estimated locally),0.33 per call) strtoul/42 (354334802 (estimated locally),0.33 per call) cmd_adc/30 (cmd_adc) @08855000 Type: function definition analyzed Visibility: externally_visible public Address is taken. References: Referring: mmi_cmd/29 (addr) Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: debug_printf/43 (932291372 (estimated locally),0.87 per call) debug_printf/43 (932291372 (estimated locally),0.87 per call) Adc_Sar_Ip_StartConversion/44 (141450453 (estimated locally),0.13 per call) debug_printf/43 (141450453 (estimated locally),0.13 per call) strtoul/42 (354334802 (estimated locally),0.33 per call) mmi_cmd/29 (mmi_cmd) @06a6f288 Type: variable definition analyzed Visibility: externally_visible public References: cmd_reset/36 (addr)cmd_clear/37 (addr)cmd_show/38 (addr)cmd_save/35 (addr)cmd_md/33 (addr)cmd_adc/30 (addr)cmd_mm/32 (addr)cmd_pwm/31 (addr)cmd_debug/34 (addr)cmd_help/39 (addr) Referring: cmd_help/39 (read)cmd_help/39 (read)cmd_help/39 (read)execute_cmd/40 (read)execute_cmd/40 (read) Availability: available Varpool flags: initialized ;; Function cmd_save (cmd_save, funcdef_no=34, decl_uid=10673, cgraph_uid=35, symbol_order=35) Modification phase of node cmd_save/35 cmd_save (int argc, char * * argv) { [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return; } ;; Function cmd_clear (cmd_clear, funcdef_no=36, decl_uid=10664, cgraph_uid=37, symbol_order=37) Modification phase of node cmd_clear/37 cmd_clear (int argc, char * * argv) { [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT debug_printf ("%c[2J%c[H", 27, 27); # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return; } ;; Function cmd_show (cmd_show, funcdef_no=37, decl_uid=10670, cgraph_uid=38, symbol_order=38) Modification phase of node cmd_show/38 cmd_show (int argc, char * * argv) { u32 i; long unsigned int _1; short unsigned int _2; int _3; [local count: 214748364]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT debug_printf ("\r\nShow Information\r\n"); # DEBUG BEGIN_STMT debug_printf ("---------------------------------------------------------\r\n"); # DEBUG BEGIN_STMT _1 = gb.tmr_cnt; debug_printf (" TMR COUNTER : %d\n", _1); # DEBUG BEGIN_STMT debug_printf ("---------------------------------------------------------\r\n"); # DEBUG BEGIN_STMT # DEBUG i => 0 goto ; [100.00%] [local count: 858993459]: # DEBUG BEGIN_STMT _2 = gb.adc[i_4].avr; _3 = (int) _2; debug_printf (" ADC [%d] : %d\n", i_4, _3); # DEBUG BEGIN_STMT i_13 = i_4 + 1; # DEBUG i => i_13 [local count: 1073741824]: # i_4 = PHI <0(2), i_13(3)> # DEBUG i => i_4 # DEBUG BEGIN_STMT if (i_4 != 4) goto ; [80.00%] else goto ; [20.00%] [local count: 214748365]: # DEBUG BEGIN_STMT debug_printf ("---------------------------------------------------------\r\n"); # DEBUG BEGIN_STMT return; } ;; Function cmd_adc (cmd_adc, funcdef_no=29, decl_uid=10679, cgraph_uid=30, symbol_order=30) Modification phase of node cmd_adc/30 cmd_adc (int argc, char * * argv) { u32 ch; char * _1; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT if (argc_4(D) != 2) goto ; [67.00%] else goto ; [33.00%] [local count: 719407023]: # DEBUG BEGIN_STMT // predicted unlikely by goto predictor. goto ; [100.00%] [local count: 354334802]: # DEBUG BEGIN_STMT _1 = MEM[(char * *)argv_5(D) + 4B]; ch_8 = strtoul (_1, 0B, 10); # DEBUG ch => ch_8 # DEBUG BEGIN_STMT if (ch_8 > 1) goto ; [60.08%] else goto ; [39.92%] [local count: 212884349]: # DEBUG BEGIN_STMT // predicted unlikely by goto predictor. goto ; [100.00%] [local count: 141450453]: # DEBUG BEGIN_STMT debug_printf ("START ADC CH[%d]\n", ch_8); # DEBUG BEGIN_STMT Adc_Sar_Ip_StartConversion (ch_8, 0); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 932291372]: usage: # DEBUG BEGIN_STMT debug_printf ("\r\nUsage:\r\n"); # DEBUG BEGIN_STMT debug_printf ("\tadc [channel]\n"); # DEBUG BEGIN_STMT [local count: 1073741824]: return; } ;; Function cmd_pwm (cmd_pwm, funcdef_no=30, decl_uid=10685, cgraph_uid=31, symbol_order=31) Modification phase of node cmd_pwm/31 cmd_pwm (int argc, char * * argv) { u32 ratio; u32 ch; char * _1; char * _2; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT if (argc_5(D) != 3) goto ; [67.00%] else goto ; [33.00%] [local count: 719407023]: # DEBUG BEGIN_STMT // predicted unlikely by goto predictor. goto ; [100.00%] [local count: 354334802]: # DEBUG BEGIN_STMT _1 = MEM[(char * *)argv_6(D) + 4B]; ch_9 = strtoul (_1, 0B, 10); # DEBUG ch => ch_9 # DEBUG BEGIN_STMT _2 = MEM[(char * *)argv_6(D) + 8B]; ratio_11 = strtoul (_2, 0B, 10); # DEBUG ratio => ratio_11 # DEBUG BEGIN_STMT if (ch_9 > 7) goto ; [34.00%] else goto ; [66.00%] [local count: 120473833]: # DEBUG BEGIN_STMT // predicted unlikely by goto predictor. goto ; [100.00%] [local count: 233860969]: # DEBUG BEGIN_STMT if (ratio_11 > 100) goto ; [51.12%] else goto ; [48.88%] [local count: 119549728]: # DEBUG BEGIN_STMT // predicted unlikely by goto predictor. goto ; [100.00%] [local count: 114311242]: # DEBUG BEGIN_STMT debug_printf ("PWM SET[%d], %d[%%]\n", ch_9, ratio_11); # DEBUG BEGIN_STMT set_pwm (ch_9, ratio_11); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 959430584]: usage: # DEBUG BEGIN_STMT debug_printf ("\r\nUsage:\r\n"); # DEBUG BEGIN_STMT debug_printf ("\tpwm [channel] [ratio]\n"); # DEBUG BEGIN_STMT [local count: 1073741824]: return; } ;; Function cmd_reset (cmd_reset, funcdef_no=35, decl_uid=10661, cgraph_uid=36, symbol_order=36) Modification phase of node cmd_reset/36 cmd_reset (int argc, char * * argv) { [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT debug_printf ("SYSTEM RESET\n"); # DEBUG BEGIN_STMT system_reset (); return; } ;; Function cmd_help (cmd_help, funcdef_no=38, decl_uid=10667, cgraph_uid=39, symbol_order=39) Modification phase of node cmd_help/39 cmd_help (int argc, char * * argv) { int len; int j; int i; char * _1; unsigned int _2; char * _3; char * _4; [local count: 14598062]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT debug_printf ("\r\nShow using command\r\n"); # DEBUG BEGIN_STMT debug_printf ("---------------------------------------------------------\r\n"); # DEBUG BEGIN_STMT # DEBUG i => 0 goto ; [100.00%] [local count: 118111600]: # DEBUG BEGIN_STMT debug_printf (" %s", _4); # DEBUG BEGIN_STMT _1 = mmi_cmd[i_5].name; _2 = strlen (_1); len_14 = (int) _2; # DEBUG len => len_14 # DEBUG BEGIN_STMT len_15 = 20 - len_14; # DEBUG len => len_15 # DEBUG BEGIN_STMT # DEBUG j => 0 goto ; [100.00%] [local count: 955630224]: # DEBUG BEGIN_STMT debug_printf (" "); # DEBUG BEGIN_STMT j_19 = j_6 + 1; # DEBUG j => j_19 [local count: 1073741824]: # j_6 = PHI <0(3), j_19(4)> # DEBUG j => j_6 # DEBUG BEGIN_STMT if (j_6 < len_15) goto ; [89.00%] else goto ; [11.00%] [local count: 118111601]: # DEBUG BEGIN_STMT _3 = mmi_cmd[i_5].usage; debug_printf ("%s\r\n", _3); # DEBUG BEGIN_STMT i_17 = i_5 + 1; # DEBUG i => i_17 [local count: 132709663]: # i_5 = PHI <0(2), i_17(6)> # DEBUG i => i_5 # DEBUG BEGIN_STMT _4 = mmi_cmd[i_5].name; if (_4 != 0B) goto ; [89.00%] else goto ; [11.00%] [local count: 14598063]: # DEBUG BEGIN_STMT debug_printf ("---------------------------------------------------------\r\n"); # DEBUG BEGIN_STMT return; } ;; Function cmd_mm (cmd_mm, funcdef_no=31, decl_uid=10682, cgraph_uid=32, symbol_order=32) Modification phase of node cmd_mm/32 cmd_mm (int argc, char * * argv) { [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT if (argc_3(D) != 3) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT // predicted unlikely by goto predictor. # DEBUG usage => NULL # DEBUG BEGIN_STMT debug_printf ("\r\nUsage:\r\n"); # DEBUG BEGIN_STMT debug_printf ("\tmm [addr] [value]\n"); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 536870912]: # DEBUG D#1 => argc_3(D) cmd_mm.part.0 (argv_4(D)); [local count: 1073741824]: return; } ;; Function cmd_md (cmd_md, funcdef_no=32, decl_uid=10676, cgraph_uid=33, symbol_order=33) Modification phase of node cmd_md/33 cmd_md (int argc, char * * argv) { u32 * addr; u32 i; u32 len; unsigned int argc.0_1; unsigned int _2; char * _4; char * _6; long unsigned int _7; unsigned int _8; unsigned int _9; [local count: 161244508]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT argc.0_1 = (unsigned int) argc_17(D); _2 = argc.0_1 + 4294967294; if (_2 > 1) goto ; [26.75%] else goto ; [73.25%] [local count: 43132906]: # DEBUG D#3 => argc_17(D) # DEBUG D#4 => argv_18(D) cmd_md.part.0 (); goto ; [100.00%] [local count: 118111602]: # DEBUG BEGIN_STMT if (argc_17(D) == 2) goto ; [51.12%] else goto ; [48.88%] [local count: 57732951]: # DEBUG BEGIN_STMT _4 = MEM[(char * *)argv_18(D) + 8B]; len_21 = strtoul (_4, 0B, 16); # DEBUG len => len_21 [local count: 118111602]: # len_10 = PHI <1(4), len_21(5)> # DEBUG len => len_10 # DEBUG BEGIN_STMT _6 = MEM[(char * *)argv_18(D) + 4B]; _7 = strtoul (_6, 0B, 16); addr_23 = (u32 *) _7; # DEBUG addr => addr_23 # DEBUG BEGIN_STMT # DEBUG i => 0 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 955630223]: # DEBUG BEGIN_STMT _8 = i_12 & 7; if (_8 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 315357974]: # DEBUG BEGIN_STMT debug_printf ("\n0x%08X : ", addr_13); [local count: 955630224]: # DEBUG BEGIN_STMT _9 = *addr_13; debug_printf ("0x%08X ", _9); # DEBUG BEGIN_STMT addr_27 = addr_13 + 4; # DEBUG addr => addr_27 # DEBUG BEGIN_STMT i_28 = i_12 + 1; # DEBUG i => i_28 # DEBUG BEGIN_STMT len_29 = len_11 + 4294967295; # DEBUG len => len_29 [local count: 1073741824]: # len_11 = PHI # i_12 = PHI <0(6), i_28(9)> # addr_13 = PHI # DEBUG addr => addr_13 # DEBUG i => i_12 # DEBUG len => len_11 # DEBUG BEGIN_STMT if (len_11 != 0) goto ; [89.00%] else goto ; [11.00%] [local count: 118111601]: # DEBUG BEGIN_STMT debug_printf ("\n"); # DEBUG BEGIN_STMT [local count: 161244507]: return; } ;; Function cmd_debug (cmd_debug, funcdef_no=33, decl_uid=10688, cgraph_uid=34, symbol_order=34) Modification phase of node cmd_debug/34 cmd_debug (int argc, char * * argv) { int _1; char * _2; int _3; int _6; char * iftmp.1_7; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT if (argc_8(D) != 2) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _1 = gb.debug; if (_1 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: [local count: 536870913]: # iftmp.1_7 = PHI <"ON"(3), "OFF"(4)> debug_printf ("DEBUG FLAG %s\n", iftmp.1_7); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _2 = MEM[(char * *)argv_9(D) + 4B]; _3 = strncasecmp (_2, "ON", 2); if (_3 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 177167401]: # DEBUG BEGIN_STMT debug_printf ("DEBUG FLAG ON\n"); # DEBUG BEGIN_STMT gb.debug = 0; goto ; [100.00%] [local count: 359703511]: # DEBUG BEGIN_STMT _6 = strncasecmp (_2, "OFF", 3); if (_6 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 118702158]: # DEBUG D#7 => argc_8(D) # DEBUG D#8 => argv_9(D) cmd_debug.part.0 (); [local count: 1073741824]: return; } ;; Function execute_cmd (execute_cmd, funcdef_no=39, decl_uid=10760, cgraph_uid=40, symbol_order=40) Modification phase of node execute_cmd/40 execute_cmd (int argc, char * * argv) { int i; char * _1; int _3; void (*) (int, char * *) _4; char * _5; int _7; [local count: 114863532]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG i => 0 goto ; [100.00%] [local count: 1014686025]: # DEBUG BEGIN_STMT _1 = *argv_10(D); _3 = strcmp (_1, _5); if (_3 == 0) goto ; [5.50%] else goto ; [94.50%] [local count: 55807731]: # i_2 = PHI # DEBUG BEGIN_STMT _4 = mmi_cmd[i_2].func; _4 (argc_12(D), argv_10(D)); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 958878293]: # DEBUG BEGIN_STMT i_11 = i_6 + 1; # DEBUG i => i_11 [local count: 1073741824]: # i_6 = PHI <0(2), i_11(5)> # DEBUG i => i_6 # DEBUG BEGIN_STMT _5 = mmi_cmd[i_6].name; if (_5 != 0B) goto ; [94.50%] else goto ; [5.50%] [local count: 114863532]: # _7 = PHI <0(4), 1(6)> return _7; } ;; Function cmd_main (cmd_main, funcdef_no=40, decl_uid=10651, cgraph_uid=41, symbol_order=41) Modification phase of node cmd_main/41 cmd_main () { int argc; int ret; char * argv[8]; char * tmp; char _1; [local count: 687149673]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT ret_10 = get_line (128); # DEBUG ret => ret_10 # DEBUG BEGIN_STMT if (ret_10 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 343574836]: # DEBUG BEGIN_STMT _1 = gb.cmd_buf[0]; if (_1 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 171787418]: # DEBUG BEGIN_STMT debug_printf ("%s", "MR $ "); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 171787418]: # DEBUG BEGIN_STMT tmp_13 = strtok (&gb.cmd_buf, " \r\n\t"); # DEBUG tmp => tmp_13 # DEBUG BEGIN_STMT # DEBUG argc => 0 goto ; [100.00%] [local count: 954449109]: # DEBUG BEGIN_STMT if (tmp_2 != 0B) goto ; [94.50%] else goto ; [5.50%] [local count: 901954409]: # DEBUG BEGIN_STMT argv[argc_3] = tmp_2; # DEBUG BEGIN_STMT tmp_17 = strtok (0B, " \r\n\t"); # DEBUG tmp => tmp_17 # DEBUG BEGIN_STMT argc_18 = argc_3 + 1; # DEBUG argc => argc_18 [local count: 1073741824]: # tmp_2 = PHI # argc_3 = PHI <0(5), argc_18(7)> # DEBUG argc => argc_3 # DEBUG tmp => tmp_2 # DEBUG BEGIN_STMT if (argc_3 != 8) goto ; [88.89%] else goto ; [11.11%] [local count: 171787418]: # argc_14 = PHI # DEBUG BEGIN_STMT ret_20 = execute_cmd (argc_14, &argv); # DEBUG ret => ret_20 # DEBUG BEGIN_STMT if (ret_20 == 1) goto ; [20.24%] else goto ; [79.76%] [local count: 34769773]: # DEBUG BEGIN_STMT debug_printf ("Command not found\r\n"); [local count: 171787418]: # DEBUG BEGIN_STMT debug_printf ("%s", "MR $ "); # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 343574836]: argv ={v} {CLOBBER}; goto ; [100.00%] [local count: 343574836]: argv ={v} {CLOBBER}; [local count: 687149672]: return; }