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

1319 lines
42 KiB
C++

IPA constant propagation start:
Determining dynamic type for call: _3 = get_char (_2);
Starting walk at: _3 = get_char (_2);
instance pointer: _2 Outer instance pointer: &gb.cmd_buf[_1] offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf ("\r\n");
Starting walk at: debug_printf ("\r\n");
instance pointer: "\r\n" Outer instance pointer: "\r\n" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf ("\b \b");
Starting walk at: debug_printf ("\b \b");
instance pointer: "\b \b" Outer instance pointer: "\b \b" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: _14 = get_char (_13);
Starting walk at: _14 = get_char (_13);
instance pointer: _13 Outer instance pointer: &gb.cmd_buf[_12] offset: 0 (bits) vtbl reference:
Function call may change dynamic type:_3 = get_char (_2);
Determining dynamic type for call: debug_printf ("\n\r\n");
Starting walk at: debug_printf ("\n\r\n");
instance pointer: "\n\r\n" Outer instance pointer: "\n\r\n" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf ("================================================\r\n");
Starting walk at: debug_printf ("================================================\r\n");
instance pointer: "================================================\r\n" Outer instance pointer: "================================================\r\n" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf (" MR S32K344 APPLICATION\n");
Starting walk at: debug_printf (" MR S32K344 APPLICATION\n");
instance pointer: " MR S32K344 APPLICATION\n" Outer instance pointer: " MR S32K344 APPLICATION\n" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf (" Version %04X\n", 1);
Starting walk at: debug_printf (" Version %04X\n", 1);
instance pointer: " Version %04X\n" Outer instance pointer: " Version %04X\n" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf (" Author : sihong89@gmail.com\n");
Starting walk at: debug_printf (" Author : sihong89@gmail.com\n");
instance pointer: " Author : sihong89@gmail.com\n" Outer instance pointer: " Author : sihong89@gmail.com\n" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf (" Last compiled : %s %s\n", "Oct 27 2021", "13:34:26");
Starting walk at: debug_printf (" Last compiled : %s %s\n", "Oct 27 2021", "13:34:26");
instance pointer: " Last compiled : %s %s\n" Outer instance pointer: " Last compiled : %s %s\n" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf (" Last compiled : %s %s\n", "Oct 27 2021", "13:34:26");
Starting walk at: debug_printf (" Last compiled : %s %s\n", "Oct 27 2021", "13:34:26");
instance pointer: "Oct 27 2021" Outer instance pointer: "Oct 27 2021" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf (" Last compiled : %s %s\n", "Oct 27 2021", "13:34:26");
Starting walk at: debug_printf (" Last compiled : %s %s\n", "Oct 27 2021", "13:34:26");
instance pointer: "13:34:26" Outer instance pointer: "13:34:26" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: debug_printf ("================================================\r\n");
Starting walk at: debug_printf ("================================================\r\n");
instance pointer: "================================================\r\n" Outer instance pointer: "================================================\r\n" offset: 0 (bits) vtbl reference:
Determining dynamic type for call: _8 = get_average (&gb.adc[1].raw, 10);
Starting walk at: _8 = get_average (&gb.adc[1].raw, 10);
instance pointer: &gb.adc[1].raw Outer instance pointer: gb offset: 4688 (bits) vtbl reference:
Function call may change dynamic type:_1 = Adc_Sar_Ip_GetConvData (1, 35);
Determining dynamic type for call: _17 = get_average (&gb.adc[0].raw, 10);
Starting walk at: _17 = get_average (&gb.adc[0].raw, 10);
instance pointer: &gb.adc[0].raw Outer instance pointer: gb offset: 4464 (bits) vtbl reference:
Function call may change dynamic type:_10 = Adc_Sar_Ip_GetConvData (1, 36);
Function call may change dynamic type:_1 = Adc_Sar_Ip_GetConvData (1, 35);
Determining dynamic type for call: _8 = get_average (&gb.adc[2].raw, 10);
Starting walk at: _8 = get_average (&gb.adc[2].raw, 10);
instance pointer: &gb.adc[2].raw Outer instance pointer: gb offset: 4912 (bits) vtbl reference:
Function call may change dynamic type:_1 = Adc_Sar_Ip_GetConvData (0, 33);
Determining dynamic type for call: _17 = get_average (&gb.adc[3].raw, 10);
Starting walk at: _17 = get_average (&gb.adc[3].raw, 10);
instance pointer: &gb.adc[3].raw Outer instance pointer: gb offset: 5136 (bits) vtbl reference:
Function call may change dynamic type:_10 = Adc_Sar_Ip_GetConvData (0, 47);
Function call may change dynamic type:_1 = Adc_Sar_Ip_GetConvData (0, 33);
IPA structures before propagation:
Jump functions:
Jump functions of caller strlen/56:
Jump functions of caller __builtin_va_end/55:
Jump functions of caller vsprintf/54:
Jump functions of caller __builtin_va_start/53:
Jump functions of caller Lpuart_Uart_Ip_SyncSend/52:
Jump functions of caller Lpuart_Uart_Ip_SetRxBuffer/51:
Jump functions of caller Lpuart_Uart_Ip_AsyncReceive/50:
Jump functions of caller Adc_Sar_Ip_StartConversion/49:
Jump functions of caller Adc_Sar_Ip_GetConvData/48:
Jump functions of caller Flexio_Pwm_Ip_UpdatePeriodDuty/47:
Jump functions of caller Siul2_Dio_Ip_WritePin/45:
Jump functions of caller debug_printf/44:
callsite debug_printf/44 -> put_char/42 :
param 0: UNKNOWN
value: 0x0, mask: 0xff
Unknown VR
Jump functions of caller get_line/43:
callsite get_line/43 -> put_char/42 :
param 0: UNKNOWN
value: 0x0, mask: 0xff
Unknown VR
callsite get_line/43 -> put_char/42 :
param 0: UNKNOWN
value: 0x0, mask: 0xff
Unknown VR
callsite get_line/43 -> put_char/42 :
param 0: UNKNOWN
value: 0x0, mask: 0xff
Unknown VR
callsite get_line/43 -> get_char/41 :
param 0: UNKNOWN
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
callsite get_line/43 -> put_char/42 :
param 0: UNKNOWN
value: 0x0, mask: 0xff
Unknown VR
callsite get_line/43 -> debug_printf/44 :
param 0: CONST: "\b \b"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
callsite get_line/43 -> debug_printf/44 :
param 0: CONST: "\r\n"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
callsite get_line/43 -> get_char/41 :
param 0: UNKNOWN
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
Jump functions of caller put_char/42:
Jump functions of caller get_char/41:
Jump functions of caller Gvar_init/40:
Jump functions of caller PrintLogo/39:
callsite PrintLogo/39 -> debug_printf/44 :
param 0: CONST: "================================================\r\n"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
callsite PrintLogo/39 -> debug_printf/44 :
param 0: CONST: " Last compiled : %s %s\n"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
param 1: CONST: "Oct 27 2021"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
param 2: CONST: "13:34:26"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
callsite PrintLogo/39 -> debug_printf/44 :
param 0: CONST: " Author : sihong89@gmail.com\n"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
callsite PrintLogo/39 -> debug_printf/44 :
param 0: CONST: " Version %04X\n"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
param 1: CONST: 1
value: 0x1, mask: 0x0
Unknown VR
callsite PrintLogo/39 -> debug_printf/44 :
param 0: CONST: " MR S32K344 APPLICATION\n"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
callsite PrintLogo/39 -> debug_printf/44 :
param 0: CONST: "================================================\r\n"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
callsite PrintLogo/39 -> debug_printf/44 :
param 0: CONST: "\n\r\n"
value: 0x0, mask: 0xffffffff
VR ~[0, 0]
Jump functions of caller UART0_RX_Callback/38:
Jump functions of caller board_init/37:
callsite board_init/37 -> led_onoff/30 :
param 0: CONST: 0
value: 0x0, mask: 0x0
Unknown VR
Jump functions of caller system_reset/36:
Jump functions of caller Pit_Callback/35:
callsite Pit_Callback/35 -> led_onoff/30 :
param 0: CONST: 1
value: 0x1, mask: 0x0
Unknown VR
callsite Pit_Callback/35 -> led_onoff/30 :
param 0: CONST: 0
value: 0x0, mask: 0x0
Unknown VR
Jump functions of caller Adc1EndOfChainNoti/34:
callsite Adc1EndOfChainNoti/34 -> get_average/32 :
param 0: CONST: &gb.adc[0].raw
value: 0x2, mask: 0xfffffffc
VR ~[0, 0]
param 1: CONST: 10
value: 0xa, mask: 0x0
Unknown VR
callsite Adc1EndOfChainNoti/34 -> get_average/32 :
param 0: CONST: &gb.adc[1].raw
value: 0x2, mask: 0xfffffffc
VR ~[0, 0]
param 1: CONST: 10
value: 0xa, mask: 0x0
Unknown VR
Jump functions of caller Adc0EndOfChainNoti/33:
callsite Adc0EndOfChainNoti/33 -> get_average/32 :
param 0: CONST: &gb.adc[3].raw
value: 0x2, mask: 0xfffffffc
VR ~[0, 0]
param 1: CONST: 10
value: 0xa, mask: 0x0
Unknown VR
callsite Adc0EndOfChainNoti/33 -> get_average/32 :
param 0: CONST: &gb.adc[2].raw
value: 0x2, mask: 0xfffffffc
VR ~[0, 0]
param 1: CONST: 10
value: 0xa, mask: 0x0
Unknown VR
Jump functions of caller get_average/32:
Jump functions of caller set_pwm/31:
Jump functions of caller led_onoff/30:
Propagating constants:
Not considering debug_printf for cloning; -fipa-cp-clone disabled.
Not considering get_line for cloning; -fipa-cp-clone disabled.
Not considering put_char for cloning; -fipa-cp-clone disabled.
Not considering get_char for cloning; -fipa-cp-clone disabled.
Not considering Gvar_init for cloning; -fipa-cp-clone disabled.
Not considering PrintLogo for cloning; -fipa-cp-clone disabled.
Not considering UART0_RX_Callback for cloning; -fipa-cp-clone disabled.
Not considering board_init for cloning; -fipa-cp-clone disabled.
Not considering system_reset for cloning; -fipa-cp-clone disabled.
Not considering Pit_Callback for cloning; -fipa-cp-clone disabled.
Not considering Adc1EndOfChainNoti for cloning; -fipa-cp-clone disabled.
Not considering Adc0EndOfChainNoti for cloning; -fipa-cp-clone disabled.
Not considering get_average for cloning; -fipa-cp-clone disabled.
Not considering set_pwm for cloning; -fipa-cp-clone disabled.
Not considering led_onoff for cloning; -fipa-cp-clone disabled.
overall_size: 307, max_new_size: 11001
- context independent values, size: 15, time_benefit: 2.000000
IPA lattices after all propagation:
Lattices:
Node: debug_printf/44:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: get_line/43:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: put_char/42:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: get_char/41:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: Gvar_init/40:
Node: PrintLogo/39:
Node: UART0_RX_Callback/38:
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
param [3]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: board_init/37:
Node: system_reset/36:
Node: Pit_Callback/35:
Node: Adc1EndOfChainNoti/34:
Node: Adc0EndOfChainNoti/33:
Node: get_average/32:
param [0]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
param [1]: BOTTOM
ctxs: BOTTOM
Bits unusable (BOTTOM)
VARYING
AGGS BOTTOM
Node: set_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: led_onoff/30:
param [0]: 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:
strlen/56 (strlen) @0886b1c0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: debug_printf/44 (118111600 (estimated locally),1.00 per call)
Calls:
__builtin_va_end/55 (__builtin_va_end) @0886b0e0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: debug_printf/44 (118111600 (estimated locally),1.00 per call)
Calls:
vsprintf/54 (vsprintf) @0886b000
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: debug_printf/44 (118111600 (estimated locally),1.00 per call)
Calls:
__builtin_va_start/53 (__builtin_va_start) @0885cee0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: debug_printf/44 (118111600 (estimated locally),1.00 per call)
Calls:
Lpuart_Uart_Ip_SyncSend/52 (Lpuart_Uart_Ip_SyncSend) @0885cc40
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: put_char/42 (1073741824 (estimated locally),1.00 per call)
Calls:
Lpuart_Uart_Ip_SetRxBuffer/51 (Lpuart_Uart_Ip_SetRxBuffer) @0885c620
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: UART0_RX_Callback/38 (354334802 (estimated locally),0.33 per call)
Calls:
Lpuart_Uart_Ip_AsyncReceive/50 (Lpuart_Uart_Ip_AsyncReceive) @0885c460
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: board_init/37 (1073741824 (estimated locally),1.00 per call)
Calls:
Adc_Sar_Ip_StartConversion/49 (Adc_Sar_Ip_StartConversion) @087ba2a0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Adc1EndOfChainNoti/34 (1073741824 (estimated locally),1.00 per call) Adc0EndOfChainNoti/33 (1073741824 (estimated locally),1.00 per call)
Calls:
Adc_Sar_Ip_GetConvData/48 (Adc_Sar_Ip_GetConvData) @087ba000
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Adc1EndOfChainNoti/34 (1073741824 (estimated locally),1.00 per call) Adc1EndOfChainNoti/34 (1073741824 (estimated locally),1.00 per call) Adc0EndOfChainNoti/33 (1073741824 (estimated locally),1.00 per call) Adc0EndOfChainNoti/33 (1073741824 (estimated locally),1.00 per call)
Calls:
Flexio_Pwm_Ip_UpdatePeriodDuty/47 (Flexio_Pwm_Ip_UpdatePeriodDuty) @087bad20
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: set_pwm/31 (1073741824 (estimated locally),1.00 per call)
Calls:
gb/46 (gb) @087be558
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: Gvar_init/40 (write)UART0_RX_Callback/38 (addr)board_init/37 (addr)Adc0EndOfChainNoti/33 (read)Adc0EndOfChainNoti/33 (write)Adc0EndOfChainNoti/33 (write)Adc1EndOfChainNoti/34 (addr)Adc1EndOfChainNoti/34 (write)UART0_RX_Callback/38 (read)UART0_RX_Callback/38 (read)UART0_RX_Callback/38 (write)Gvar_init/40 (write)get_char/41 (write)Pit_Callback/35 (read)Pit_Callback/35 (write)Pit_Callback/35 (read)Pit_Callback/35 (write)UART0_RX_Callback/38 (write)Adc1EndOfChainNoti/34 (read)Adc1EndOfChainNoti/34 (write)get_char/41 (read)get_char/41 (read)get_char/41 (read)get_char/41 (read)led_onoff/30 (write)Adc0EndOfChainNoti/33 (addr)Adc0EndOfChainNoti/33 (write)Adc0EndOfChainNoti/33 (read)Adc0EndOfChainNoti/33 (write)Adc0EndOfChainNoti/33 (write)Adc0EndOfChainNoti/33 (addr)Adc0EndOfChainNoti/33 (write)Adc1EndOfChainNoti/34 (write)Adc1EndOfChainNoti/34 (write)Adc1EndOfChainNoti/34 (read)Adc1EndOfChainNoti/34 (write)Adc1EndOfChainNoti/34 (write)Adc1EndOfChainNoti/34 (addr)Pit_Callback/35 (read)Pit_Callback/35 (write)get_line/43 (read)get_line/43 (addr)get_line/43 (read)get_line/43 (read)get_line/43 (write)get_line/43 (read)get_line/43 (write)get_line/43 (write)get_line/43 (write)get_line/43 (read)get_line/43 (write)get_line/43 (write)get_line/43 (addr)get_line/43 (read)get_line/43 (read)get_line/43 (read)get_line/43 (read)get_line/43 (read)get_line/43 (write)get_line/43 (read)get_line/43 (read)get_line/43 (read)get_line/43 (write)get_line/43 (write)
Availability: not_available
Varpool flags:
Siul2_Dio_Ip_WritePin/45 (Siul2_Dio_Ip_WritePin) @087bab60
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: led_onoff/30 (708669605 (estimated locally),0.66 per call) led_onoff/30 (365072220 (estimated locally),0.34 per call)
Calls:
debug_printf/44 (debug_printf) @087ba700
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:118111600 (estimated locally) body optimize_size
Called by: get_line/43 (70007698 (estimated locally),0.07 per call) get_line/43 (212144541 (estimated locally),0.20 per call) PrintLogo/39 (1073741824 (estimated locally),1.00 per call) PrintLogo/39 (1073741824 (estimated locally),1.00 per call) PrintLogo/39 (1073741824 (estimated locally),1.00 per call) PrintLogo/39 (1073741824 (estimated locally),1.00 per call) PrintLogo/39 (1073741824 (estimated locally),1.00 per call) PrintLogo/39 (1073741824 (estimated locally),1.00 per call) PrintLogo/39 (1073741824 (estimated locally),1.00 per call)
Calls: put_char/42 (955630223 (estimated locally),8.09 per call) strlen/56 (118111600 (estimated locally),1.00 per call) __builtin_va_end/55 (118111600 (estimated locally),1.00 per call) vsprintf/54 (118111600 (estimated locally),1.00 per call) __builtin_va_start/53 (118111600 (estimated locally),1.00 per call)
get_line/43 (get_line) @087ba460
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (read)gb/46 (addr)gb/46 (read)gb/46 (read)gb/46 (write)gb/46 (read)gb/46 (write)gb/46 (write)gb/46 (write)gb/46 (read)gb/46 (write)gb/46 (write)gb/46 (addr)gb/46 (read)gb/46 (read)gb/46 (read)gb/46 (read)gb/46 (read)gb/46 (write)gb/46 (read)gb/46 (read)gb/46 (read)gb/46 (write)gb/46 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: put_char/42 (23452579 (estimated locally),0.02 per call) put_char/42 (23452579 (estimated locally),0.02 per call) put_char/42 (23452579 (estimated locally),0.02 per call) get_char/41 (46905158 (estimated locally),0.04 per call) put_char/42 (70007698 (estimated locally),0.07 per call) debug_printf/44 (70007698 (estimated locally),0.07 per call) debug_printf/44 (212144541 (estimated locally),0.20 per call) get_char/41 (1073741824 (estimated locally),1.00 per call)
put_char/42 (put_char) @087ba1c0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by: get_line/43 (23452579 (estimated locally),0.02 per call) get_line/43 (23452579 (estimated locally),0.02 per call) get_line/43 (23452579 (estimated locally),0.02 per call) get_line/43 (70007698 (estimated locally),0.07 per call) debug_printf/44 (955630223 (estimated locally),8.09 per call)
Calls: Lpuart_Uart_Ip_SyncSend/52 (1073741824 (estimated locally),1.00 per call)
get_char/41 (get_char) @087b4e00
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (read)gb/46 (read)gb/46 (read)gb/46 (read)gb/46 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by: get_line/43 (46905158 (estimated locally),0.04 per call) get_line/43 (1073741824 (estimated locally),1.00 per call)
Calls:
Gvar_init/40 (Gvar_init) @087b48c0
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (write)gb/46 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
PrintLogo/39 (PrintLogo) @087b40e0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: debug_printf/44 (1073741824 (estimated locally),1.00 per call) debug_printf/44 (1073741824 (estimated locally),1.00 per call) debug_printf/44 (1073741824 (estimated locally),1.00 per call) debug_printf/44 (1073741824 (estimated locally),1.00 per call) debug_printf/44 (1073741824 (estimated locally),1.00 per call) debug_printf/44 (1073741824 (estimated locally),1.00 per call) debug_printf/44 (1073741824 (estimated locally),1.00 per call)
UART0_RX_Callback/38 (UART0_RX_Callback) @087b4d20
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (read)gb/46 (read)gb/46 (write)gb/46 (write)gb/46 (addr)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Uart_Ip_SetRxBuffer/51 (354334802 (estimated locally),0.33 per call)
board_init/37 (board_init) @087b4a80
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (addr)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: led_onoff/30 (1073741824 (estimated locally),1.00 per call) Lpuart_Uart_Ip_AsyncReceive/50 (1073741824 (estimated locally),1.00 per call)
system_reset/36 (system_reset) @087b47e0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Pit_Callback/35 (Pit_Callback) @087b4540
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (read)gb/46 (write)gb/46 (read)gb/46 (write)gb/46 (write)gb/46 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: led_onoff/30 (354334802 (estimated locally),0.33 per call) led_onoff/30 (182536110 (estimated locally),0.17 per call)
Adc1EndOfChainNoti/34 (Adc1EndOfChainNoti) @087b42a0
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (read)gb/46 (write)gb/46 (write)gb/46 (addr)gb/46 (write)gb/46 (read)gb/46 (write)gb/46 (write)gb/46 (addr)gb/46 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Adc_Sar_Ip_StartConversion/49 (1073741824 (estimated locally),1.00 per call) get_average/32 (1073741824 (estimated locally),1.00 per call) Adc_Sar_Ip_GetConvData/48 (1073741824 (estimated locally),1.00 per call) get_average/32 (1073741824 (estimated locally),1.00 per call) Adc_Sar_Ip_GetConvData/48 (1073741824 (estimated locally),1.00 per call)
Adc0EndOfChainNoti/33 (Adc0EndOfChainNoti) @087b4000
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (read)gb/46 (write)gb/46 (write)gb/46 (addr)gb/46 (write)gb/46 (read)gb/46 (write)gb/46 (write)gb/46 (addr)gb/46 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Adc_Sar_Ip_StartConversion/49 (1073741824 (estimated locally),1.00 per call) get_average/32 (1073741824 (estimated locally),1.00 per call) Adc_Sar_Ip_GetConvData/48 (1073741824 (estimated locally),1.00 per call) get_average/32 (1073741824 (estimated locally),1.00 per call) Adc_Sar_Ip_GetConvData/48 (1073741824 (estimated locally),1.00 per call)
get_average/32 (get_average) @087aac40
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: count:118111600 (estimated locally) body optimize_size
Called by: Adc1EndOfChainNoti/34 (1073741824 (estimated locally),1.00 per call) Adc1EndOfChainNoti/34 (1073741824 (estimated locally),1.00 per call) Adc0EndOfChainNoti/33 (1073741824 (estimated locally),1.00 per call) Adc0EndOfChainNoti/33 (1073741824 (estimated locally),1.00 per call)
Calls:
set_pwm/31 (set_pwm) @087aae00
Type: function definition analyzed
Visibility: externally_visible public
References: pwm_idx/29 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Flexio_Pwm_Ip_UpdatePeriodDuty/47 (1073741824 (estimated locally),1.00 per call)
led_onoff/30 (led_onoff) @087aab60
Type: function definition analyzed
Visibility: externally_visible public
References: gb/46 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by: board_init/37 (1073741824 (estimated locally),1.00 per call) Pit_Callback/35 (354334802 (estimated locally),0.33 per call) Pit_Callback/35 (182536110 (estimated locally),0.17 per call)
Calls: Siul2_Dio_Ip_WritePin/45 (708669605 (estimated locally),0.66 per call) Siul2_Dio_Ip_WritePin/45 (365072220 (estimated locally),0.34 per call)
pwm_idx/29 (pwm_idx) @087a7a68
Type: variable definition analyzed
Visibility: externally_visible public
References:
Referring: set_pwm/31 (read)
Availability: available
Varpool flags: initialized
;; Function led_onoff (led_onoff, funcdef_no=29, decl_uid=9850, cgraph_uid=30, symbol_order=30)
Modification phase of node led_onoff/30
led_onoff (int flag)
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
if (flag_2(D) == 1)
goto <bb 3>; [34.00%]
else
goto <bb 4>; [66.00%]
<bb 3> [local count: 365072220]:
# DEBUG BEGIN_STMT
Siul2_Dio_Ip_WritePin (1076434692B, 13, 0);
goto <bb 5>; [100.00%]
<bb 4> [local count: 708669605]:
# DEBUG BEGIN_STMT
Siul2_Dio_Ip_WritePin (1076434692B, 13, 1);
<bb 5> [local count: 1073741824]:
# DEBUG BEGIN_STMT
gb.led_flag = flag_2(D);
return;
}
;; Function set_pwm (set_pwm, funcdef_no=30, decl_uid=9848, cgraph_uid=31, symbol_order=31)
Modification phase of node set_pwm/31
set_pwm (u32 ch, u32 ratio)
{
u32 val;
u32 channel;
unsigned int _1;
unsigned char _2;
short unsigned int _3;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
channel_7 = pwm_idx[ch_6(D)];
# DEBUG channel => channel_7
# DEBUG BEGIN_STMT
if (ratio_8(D) > 99)
goto <bb 5>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
if (ratio_8(D) == 0)
goto <bb 5>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 4> [local count: 268435456]:
# DEBUG BEGIN_STMT
_1 = ratio_8(D) * 240;
val_9 = _1 / 100;
# DEBUG val => val_9
<bb 5> [local count: 1073741824]:
# val_4 = PHI <240(2), 0(3), val_9(4)>
# DEBUG val => val_4
# DEBUG BEGIN_STMT
_2 = (unsigned char) channel_7;
_3 = (short unsigned int) val_4;
Flexio_Pwm_Ip_UpdatePeriodDuty (0, _2, 240, _3);
return;
}
;; Function get_average (get_average, funcdef_no=31, decl_uid=9853, cgraph_uid=32, symbol_order=32)
Modification phase of node get_average/32
get_average (u16 * val, int len)
{
int i;
int sum;
int max;
int min;
unsigned int i.0_1;
unsigned int _2;
u16 * _3;
short unsigned int _4;
int _5;
int _10;
int _11;
int _12;
int _13;
int _18;
u32 _21;
<bb 2> [local count: 118111600]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG min => 65536
# DEBUG BEGIN_STMT
# DEBUG max => -65537
# DEBUG BEGIN_STMT
# DEBUG sum => 0
# DEBUG BEGIN_STMT
# DEBUG i => 0
goto <bb 4>; [100.00%]
<bb 3> [local count: 955630223]:
# DEBUG BEGIN_STMT
i.0_1 = (unsigned int) i_17;
_2 = i.0_1 * 2;
_3 = val_23(D) + _2;
_4 = *_3;
_5 = (int) _4;
sum_24 = _5 + sum_16;
# DEBUG sum => sum_24
# DEBUG BEGIN_STMT
max_9 = MAX_EXPR <_5, max_15>;
# DEBUG max => max_9
# DEBUG BEGIN_STMT
min_20 = MIN_EXPR <_5, min_14>;
# DEBUG min => min_20
# DEBUG BEGIN_STMT
i_25 = i_17 + 1;
# DEBUG i => i_25
<bb 4> [local count: 1073741824]:
# min_14 = PHI <65536(2), min_20(3)>
# max_15 = PHI <-65537(2), max_9(3)>
# sum_16 = PHI <0(2), sum_24(3)>
# i_17 = PHI <0(2), i_25(3)>
# DEBUG i => i_17
# DEBUG sum => sum_16
# DEBUG max => max_15
# DEBUG min => min_14
# DEBUG BEGIN_STMT
if (i_17 < len_19(D))
goto <bb 3>; [89.00%]
else
goto <bb 5>; [11.00%]
<bb 5> [local count: 118111601]:
# min_6 = PHI <min_14(4)>
# max_7 = PHI <max_15(4)>
# sum_8 = PHI <sum_16(4)>
# DEBUG BEGIN_STMT
_10 = sum_8 - max_7;
_11 = _10 - min_6;
_12 = len_19(D) + -2;
_13 = _11 / _12;
# DEBUG ret => (u16) _13
# DEBUG BEGIN_STMT
_18 = _13 & 65535;
_21 = (u32) _18;
return _21;
}
;; Function Adc0EndOfChainNoti (Adc0EndOfChainNoti, funcdef_no=32, decl_uid=9483, cgraph_uid=33, symbol_order=33)
Modification phase of node Adc0EndOfChainNoti/33
Adc0EndOfChainNoti ()
{
volatile u16 data;
short unsigned int _1;
short unsigned int _2;
int _3;
short unsigned int data.5_4;
int _5;
int _6;
short unsigned int _7;
unsigned int _8;
short unsigned int _9;
short unsigned int _10;
short unsigned int _11;
int _12;
short unsigned int data.6_13;
int _14;
int _15;
short unsigned int _16;
unsigned int _17;
short unsigned int _18;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 = Adc_Sar_Ip_GetConvData (0, 33);
data ={v} _1;
# DEBUG BEGIN_STMT
_2 = gb.adc[2].idx;
_3 = (int) _2;
data.5_4 ={v} data;
gb.adc[2].raw[_3] = data.5_4;
# DEBUG BEGIN_STMT
_5 = _3 + 1;
_6 = _5 % 10;
_7 = (short unsigned int) _6;
gb.adc[2].idx = _7;
# DEBUG BEGIN_STMT
_8 = get_average (&gb.adc[2].raw, 10);
_9 = (short unsigned int) _8;
gb.adc[2].avr = _9;
# DEBUG BEGIN_STMT
_10 = Adc_Sar_Ip_GetConvData (0, 47);
data ={v} _10;
# DEBUG BEGIN_STMT
_11 = gb.adc[3].idx;
_12 = (int) _11;
data.6_13 ={v} data;
gb.adc[3].raw[_12] = data.6_13;
# DEBUG BEGIN_STMT
_14 = _12 + 1;
_15 = _14 % 10;
_16 = (short unsigned int) _15;
gb.adc[3].idx = _16;
# DEBUG BEGIN_STMT
_17 = get_average (&gb.adc[3].raw, 10);
_18 = (short unsigned int) _17;
gb.adc[3].avr = _18;
# DEBUG BEGIN_STMT
Adc_Sar_Ip_StartConversion (0, 0);
return;
}
;; Function Adc1EndOfChainNoti (Adc1EndOfChainNoti, funcdef_no=33, decl_uid=9486, cgraph_uid=34, symbol_order=34)
Modification phase of node Adc1EndOfChainNoti/34
Adc1EndOfChainNoti ()
{
volatile u16 data;
short unsigned int _1;
short unsigned int _2;
int _3;
short unsigned int data.7_4;
int _5;
int _6;
short unsigned int _7;
unsigned int _8;
short unsigned int _9;
short unsigned int _10;
short unsigned int _11;
int _12;
short unsigned int data.8_13;
int _14;
int _15;
short unsigned int _16;
unsigned int _17;
short unsigned int _18;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 = Adc_Sar_Ip_GetConvData (1, 35);
data ={v} _1;
# DEBUG BEGIN_STMT
_2 = gb.adc[1].idx;
_3 = (int) _2;
data.7_4 ={v} data;
gb.adc[1].raw[_3] = data.7_4;
# DEBUG BEGIN_STMT
_5 = _3 + 1;
_6 = _5 % 10;
_7 = (short unsigned int) _6;
gb.adc[1].idx = _7;
# DEBUG BEGIN_STMT
_8 = get_average (&gb.adc[1].raw, 10);
_9 = (short unsigned int) _8;
gb.adc[1].avr = _9;
# DEBUG BEGIN_STMT
_10 = Adc_Sar_Ip_GetConvData (1, 36);
data ={v} _10;
# DEBUG BEGIN_STMT
_11 = gb.adc[0].idx;
_12 = (int) _11;
data.8_13 ={v} data;
gb.adc[0].raw[_12] = data.8_13;
# DEBUG BEGIN_STMT
_14 = _12 + 1;
_15 = _14 % 10;
_16 = (short unsigned int) _15;
gb.adc[0].idx = _16;
# DEBUG BEGIN_STMT
_17 = get_average (&gb.adc[0].raw, 10);
_18 = (short unsigned int) _17;
gb.adc[0].avr = _18;
# DEBUG BEGIN_STMT
Adc_Sar_Ip_StartConversion (1, 0);
return;
}
;; Function Pit_Callback (Pit_Callback, funcdef_no=34, decl_uid=9887, cgraph_uid=35, symbol_order=35)
Modification phase of node Pit_Callback/35
Pit_Callback ()
{
long unsigned int _1;
long unsigned int _2;
unsigned int _3;
unsigned int _4;
int _5;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 = gb.tmr_cnt;
_2 = _1 + 1;
gb.tmr_cnt = _2;
# DEBUG BEGIN_STMT
_3 = gb.led_cnt;
_4 = _3 + 1;
gb.led_cnt = _4;
# DEBUG BEGIN_STMT
if (_4 > 1000)
goto <bb 3>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
gb.led_cnt = 0;
# DEBUG BEGIN_STMT
_5 = gb.led_flag;
if (_5 == 1)
goto <bb 4>; [34.00%]
else
goto <bb 5>; [66.00%]
<bb 4> [local count: 182536110]:
# DEBUG BEGIN_STMT
led_onoff (0);
goto <bb 6>; [100.00%]
<bb 5> [local count: 354334802]:
# DEBUG BEGIN_STMT
led_onoff (1);
<bb 6> [local count: 1073741824]:
return;
}
;; Function system_reset (system_reset, funcdef_no=35, decl_uid=9845, cgraph_uid=36, symbol_order=36)
Modification phase of node system_reset/36
system_reset ()
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG addr => 1076297728B
# DEBUG BEGIN_STMT
MEM[(u32 *)1076297728B] = 1;
return;
}
;; Function board_init (board_init, funcdef_no=36, decl_uid=9841, cgraph_uid=37, symbol_order=37)
Modification phase of node board_init/37
board_init ()
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
Lpuart_Uart_Ip_AsyncReceive (0, &gb.utemp, 1);
# DEBUG BEGIN_STMT
led_onoff (0);
return;
}
;; Function UART0_RX_Callback (UART0_RX_Callback, funcdef_no=37, decl_uid=5326, cgraph_uid=38, symbol_order=38)
Modification phase of node UART0_RX_Callback/38
UART0_RX_Callback (uint32 instance, void * driverState, Lpuart_Uart_Ip_EventType event, void * userData)
{
unsigned int _1;
char _2;
unsigned int _3;
unsigned int _4;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
if (event_6(D) == 0)
goto <bb 3>; [33.00%]
else
goto <bb 4>; [67.00%]
<bb 3> [local count: 354334802]:
# DEBUG BEGIN_STMT
_1 = gb.ubuf_tail;
_2 = gb.utemp[0];
gb.ubuf[_1] = _2;
# DEBUG BEGIN_STMT
_3 = _1 + 1;
_4 = _3 & 255;
gb.ubuf_tail = _4;
# DEBUG BEGIN_STMT
Lpuart_Uart_Ip_SetRxBuffer (instance_10(D), &gb.utemp, 1);
<bb 4> [local count: 1073741824]:
return;
}
;; Function Gvar_init (Gvar_init, funcdef_no=39, decl_uid=9831, cgraph_uid=40, symbol_order=40)
Modification phase of node Gvar_init/40
Gvar_init ()
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
gb.ubuf_head = 0;
# DEBUG BEGIN_STMT
gb.ubuf_tail = 0;
return;
}
;; Function get_char (get_char, funcdef_no=40, decl_uid=9839, cgraph_uid=41, symbol_order=41)
Modification phase of node get_char/41
get_char (char * ch)
{
unsigned int _1;
unsigned int _2;
char _3;
unsigned int _4;
unsigned int _5;
unsigned int _6;
int _7;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 = gb.ubuf_head;
_2 = gb.ubuf_tail;
if (_1 == _2)
goto <bb 4>; [20.97%]
else
goto <bb 3>; [79.03%]
<bb 3> [local count: 848578164]:
# DEBUG BEGIN_STMT
_3 = gb.ubuf[_1];
*ch_10(D) = _3;
# DEBUG BEGIN_STMT
_4 = gb.ubuf_head;
_5 = _4 + 1;
_6 = _5 & 255;
gb.ubuf_head = _6;
# DEBUG BEGIN_STMT
<bb 4> [local count: 1073741824]:
# _7 = PHI <1(2), 0(3)>
return _7;
}
;; Function put_char (put_char, funcdef_no=41, decl_uid=9833, cgraph_uid=42, symbol_order=42)
Modification phase of node put_char/42
put_char (char ch)
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
Lpuart_Uart_Ip_SyncSend (0, &ch, 1);
return;
}
;; Function debug_printf (debug_printf, funcdef_no=43, decl_uid=9835, cgraph_uid=44, symbol_order=44)
Modification phase of node debug_printf/44
debug_printf (char * msg)
{
u8 len;
u8 i;
struct va_list argptr;
char str[256];
unsigned int _1;
int _2;
char _3;
<bb 2> [local count: 118111600]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
__builtin_va_start (&argptr, 0);
# DEBUG BEGIN_STMT
vsprintf (&str, msg_8(D), argptr);
# DEBUG BEGIN_STMT
__builtin_va_end (&argptr);
# DEBUG BEGIN_STMT
_1 = strlen (&str);
len_11 = (u8) _1;
# DEBUG len => len_11
# DEBUG BEGIN_STMT
# DEBUG i => 0
goto <bb 4>; [100.00%]
<bb 3> [local count: 955630223]:
# DEBUG BEGIN_STMT
_2 = (int) i_4;
_3 = str[_2];
put_char (_3);
# DEBUG BEGIN_STMT
i_15 = i_4 + 1;
# DEBUG i => i_15
<bb 4> [local count: 1073741824]:
# i_4 = PHI <0(2), i_15(3)>
# DEBUG i => i_4
# DEBUG BEGIN_STMT
if (i_4 < len_11)
goto <bb 3>; [89.00%]
else
goto <bb 5>; [11.00%]
<bb 5> [local count: 118111601]:
str ={v} {CLOBBER};
argptr ={v} {CLOBBER};
return;
}
;; Function PrintLogo (PrintLogo, funcdef_no=38, decl_uid=9837, cgraph_uid=39, symbol_order=39)
Modification phase of node PrintLogo/39
PrintLogo ()
{
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
debug_printf ("\n\r\n");
# DEBUG BEGIN_STMT
debug_printf ("================================================\r\n");
# DEBUG BEGIN_STMT
debug_printf (" MR S32K344 APPLICATION\n");
# DEBUG BEGIN_STMT
debug_printf (" Version %04X\n", 1);
# DEBUG BEGIN_STMT
debug_printf (" Author : sihong89@gmail.com\n");
# DEBUG BEGIN_STMT
debug_printf (" Last compiled : %s %s\n", "Oct 27 2021", "13:34:26");
# DEBUG BEGIN_STMT
debug_printf ("================================================\r\n");
return;
}
;; Function get_line (get_line, funcdef_no=42, decl_uid=9843, cgraph_uid=43, symbol_order=43)
Modification phase of node get_line/43
get_line (u32 max_len)
{
unsigned int _1;
char * _2;
int _3;
unsigned int _4;
char _5;
unsigned int _6;
unsigned int _7;
char _8;
unsigned int _9;
unsigned int _10;
char _11;
unsigned int _12;
char * _13;
int _14;
unsigned int _15;
unsigned int _16;
char _17;
unsigned int _18;
char _19;
unsigned int _20;
unsigned int _21;
unsigned int _22;
unsigned int _23;
char _24;
unsigned int _25;
unsigned int _26;
int _27;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 = gb.cmd_idx;
_2 = &gb.cmd_buf[_1];
_3 = get_char (_2);
if (_3 == 1)
goto <bb 16>; [20.97%]
else
goto <bb 3>; [79.03%]
<bb 3> [local count: 848578164]:
# DEBUG BEGIN_STMT
_4 = gb.cmd_idx;
_5 = gb.cmd_buf[_4];
switch (_5) <default: <L8> [25.00%], case 0: <L2> [25.00%], case 8: <L5> [25.00%], case 10: <L3> [25.00%], case 13: <L3> [25.00%]>
<bb 4> [local count: 212144541]:
<L2>:
# DEBUG BEGIN_STMT
gb.cmd_idx = 0;
# DEBUG BEGIN_STMT
goto <bb 16>; [100.00%]
<bb 5> [local count: 212144541]:
<L3>:
# DEBUG BEGIN_STMT
debug_printf ("\r\n");
# DEBUG BEGIN_STMT
_6 = gb.cmd_idx;
gb.cmd_buf[_6] = 0;
# DEBUG BEGIN_STMT
gb.cmd_idx = 0;
# DEBUG BEGIN_STMT
goto <bb 16>; [100.00%]
<bb 6> [local count: 212144541]:
<L5>:
# DEBUG BEGIN_STMT
if (_4 != 0)
goto <bb 7>; [33.00%]
else
goto <bb 14>; [67.00%]
<bb 7> [local count: 70007698]:
# DEBUG BEGIN_STMT
_7 = _4 + 4294967295;
gb.cmd_idx = _7;
# DEBUG BEGIN_STMT
debug_printf ("\b \b");
goto <bb 14>; [100.00%]
<bb 8> [local count: 212144541]:
<L8>:
# DEBUG BEGIN_STMT
_8 = _5 + 224;
if (_8 <= 94)
goto <bb 9>; [33.00%]
else
goto <bb 10>; [67.00%]
<bb 9> [local count: 70007698]:
# DEBUG BEGIN_STMT
put_char (_5);
# DEBUG BEGIN_STMT
_9 = gb.cmd_idx;
_10 = _9 + 1;
gb.cmd_idx = _10;
goto <bb 14>; [100.00%]
<bb 10> [local count: 142136842]:
# DEBUG BEGIN_STMT
_11 = _5 + 80;
if (_11 <= 24)
goto <bb 11>; [33.00%]
else
goto <bb 14>; [67.00%]
<bb 11> [local count: 46905158]:
# DEBUG BEGIN_STMT
_12 = _4 + 1;
gb.cmd_idx = _12;
# DEBUG BEGIN_STMT
_13 = &gb.cmd_buf[_12];
_14 = get_char (_13);
if (_14 == 0)
goto <bb 12>; [50.00%]
else
goto <bb 13>; [50.00%]
<bb 12> [local count: 23452579]:
# DEBUG BEGIN_STMT
_15 = gb.cmd_idx;
_16 = _15 + 4294967295;
_17 = gb.cmd_buf[_16];
put_char (_17);
# DEBUG BEGIN_STMT
_18 = gb.cmd_idx;
_19 = gb.cmd_buf[_18];
put_char (_19);
# DEBUG BEGIN_STMT
_20 = gb.cmd_idx;
_21 = _20 + 1;
gb.cmd_idx = _21;
goto <bb 14>; [100.00%]
<bb 13> [local count: 23452579]:
# DEBUG BEGIN_STMT
_22 = gb.cmd_idx;
_23 = _22 + 4294967295;
_24 = gb.cmd_buf[_23];
put_char (_24);
<bb 14> [local count: 424289081]:
# DEBUG BEGIN_STMT
_25 = gb.cmd_idx;
if (_25 >= max_len_46(D))
goto <bb 15>; [34.00%]
else
goto <bb 16>; [66.00%]
<bb 15> [local count: 144258288]:
# DEBUG BEGIN_STMT
_26 = max_len_46(D) + 4294967295;
gb.cmd_buf[_26] = 0;
# DEBUG BEGIN_STMT
gb.cmd_idx = 0;
# DEBUG BEGIN_STMT
<bb 16> [local count: 1073741823]:
# _27 = PHI <1(2), 0(4), 0(5), 0(15), 1(14)>
return _27;
}