
IPA constant propagation start:

IPA structures before propagation:

Jump functions:
  Jump functions of caller  led_onoff/86:
  Jump functions of caller  CAN_Task_1000ms/85:
  Jump functions of caller  PWM_for_dirve_mode/84:
  Jump functions of caller  CAN_Task_200ms/83:
  Jump functions of caller  CAN_Task_100ms/82:
  Jump functions of caller  CAN_Task_20ms/81:
  Jump functions of caller  CAN_Task_10ms/80:
  Jump functions of caller  CAN_Task_5ms/79:
  Jump functions of caller  ECU3_KATECH_Logic_2ms/78:
  Jump functions of caller  can_main_ECU3/77:
  Jump functions of caller  can_tx_check/76:
  Jump functions of caller  uds_wait/75:
  Jump functions of caller  WATCHDOG_HAL_Fed/74:
  Jump functions of caller  ECU3_KATECH_Logic_init/73:
  Jump functions of caller  debug_printf/72:
  Jump functions of caller  WATCHDOG_HAL_Init/71:
  Jump functions of caller  tmr_delay/70:
  Jump functions of caller  board_init/69:
  Jump functions of caller  Can_Init_ECU3/68:
  Jump functions of caller  Pit_Ip_StartChannel/67:
  Jump functions of caller  Pit_Ip_EnableChannelInterrupt/66:
  Jump functions of caller  Pit_Ip_InitChannel/64:
  Jump functions of caller  Pit_Ip_Init/62:
  Jump functions of caller  SPI_init/61:
  Jump functions of caller  i2c0_init/60:
  Jump functions of caller  i2c1_init/59:
  Jump functions of caller  Adc_Init/58:
  Jump functions of caller  pwm_init/57:
  Jump functions of caller  Uart_Init/56:
  Jump functions of caller  IntCtrl_Ip_ConfigIrqRouting/54:
  Jump functions of caller  IntCtrl_Ip_Init/52:
  Jump functions of caller  Siul2_Port_Ip_Init/50:
  Jump functions of caller  Clock_Ip_Init/48:
  Jump functions of caller  Gvar_init/47:
  Jump functions of caller  task_1s/46:
  Jump functions of caller  task_200ms/43:
  Jump functions of caller  task_100ms/42:
  Jump functions of caller  task_50ms/40:
  Jump functions of caller  task_20ms/38:
  Jump functions of caller  task_10ms/37:
  Jump functions of caller  task_5ms/36:
  Jump functions of caller  task_2ms/35:
  Jump functions of caller  task_1ms/34:
  Jump functions of caller  task_500us/33:
  Jump functions of caller  main/32:
    callsite  main/32 -> task_500us/33 : 
    callsite  main/32 -> task_100ms/42 : 
    callsite  main/32 -> task_200ms/43 : 
    callsite  main/32 -> task_1s/46 : 

 Propagating constants:

Not considering task_1s for cloning; -fipa-cp-clone disabled.
Not considering task_200ms for cloning; -fipa-cp-clone disabled.
Not considering task_100ms for cloning; -fipa-cp-clone disabled.
Function task_50ms/40 is not versionable, reason: not a tree_versionable_function.
Not considering task_20ms for cloning; -fipa-cp-clone disabled.
Not considering task_10ms for cloning; -fipa-cp-clone disabled.
Not considering task_5ms for cloning; -fipa-cp-clone disabled.
Not considering task_2ms for cloning; -fipa-cp-clone disabled.
Not considering task_1ms for cloning; -fipa-cp-clone disabled.
Not considering task_500us for cloning; -fipa-cp-clone disabled.
Not considering main for cloning; -fipa-cp-clone disabled.

overall_size: 169, max_new_size: 11001

IPA lattices after all propagation:

Lattices:
  Node: task_1s/46:
  Node: task_200ms/43:
  Node: task_100ms/42:
  Node: task_50ms/40:
  Node: task_20ms/38:
  Node: task_10ms/37:
  Node: task_5ms/36:
  Node: task_2ms/35:
  Node: task_1ms/34:
  Node: task_500us/33:
  Node: main/32:

IPA decision stage:


IPA constant propagation end

Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:

led_onoff/86 (led_onoff) @095bb0e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: task_1s/46 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
CAN_Task_1000ms/85 (CAN_Task_1000ms) @095bb000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: task_1s/46 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
PWM_for_dirve_mode/84 (PWM_for_dirve_mode) @095b6e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: task_200ms/43 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
CAN_Task_200ms/83 (CAN_Task_200ms) @095b6d20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: task_200ms/43 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
CAN_Task_100ms/82 (CAN_Task_100ms) @095b6b60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: task_100ms/42 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
CAN_Task_20ms/81 (CAN_Task_20ms) @095b67e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (354334802 (estimated locally),3300.01 per call) task_20ms/38 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
CAN_Task_10ms/80 (CAN_Task_10ms) @095b6620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (354334802 (estimated locally),3300.01 per call) task_10ms/37 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
CAN_Task_5ms/79 (CAN_Task_5ms) @095b6460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (354334802 (estimated locally),3300.01 per call) task_5ms/36 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
ECU3_KATECH_Logic_2ms/78 (ECU3_KATECH_Logic_2ms) @095b62a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (354334802 (estimated locally),3300.01 per call) task_2ms/35 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
can_main_ECU3/77 (can_main_ECU3) @095b6000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: task_500us/33 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
can_tx_check/76 (can_tx_check) @095b5460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: task_500us/33 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
uds_wait/75 (uds_wait) @095b5e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (1073741824 (estimated locally),10000.02 per call) 
  Calls: 
WATCHDOG_HAL_Fed/74 (WATCHDOG_HAL_Fed) @095b5d20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (1073741824 (estimated locally),10000.02 per call) 
  Calls: 
ECU3_KATECH_Logic_init/73 (ECU3_KATECH_Logic_init) @095b5c40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
debug_printf/72 (debug_printf) @095b5b60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
WATCHDOG_HAL_Init/71 (WATCHDOG_HAL_Init) @095b5a80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
tmr_delay/70 (tmr_delay) @095b59a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
board_init/69 (board_init) @095b58c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
Can_Init_ECU3/68 (Can_Init_ECU3) @095b57e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (644019 (estimated locally),6.00 per call) 
  Calls: 
Pit_Ip_StartChannel/67 (Pit_Ip_StartChannel) @095b5700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
Pit_Ip_EnableChannelInterrupt/66 (Pit_Ip_EnableChannelInterrupt) @095b5620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
PIT_0_ChannelConfig_PB/65 (PIT_0_ChannelConfig_PB) @095b43a8
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: main/32 (addr)
  Availability: not_available
  Varpool flags:
Pit_Ip_InitChannel/64 (Pit_Ip_InitChannel) @095b5540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
PIT_0_InitConfig_PB/63 (PIT_0_InitConfig_PB) @095b4318
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: main/32 (addr)
  Availability: not_available
  Varpool flags:
Pit_Ip_Init/62 (Pit_Ip_Init) @095b5380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
SPI_init/61 (SPI_init) @095b52a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
i2c0_init/60 (i2c0_init) @095b51c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
i2c1_init/59 (i2c1_init) @095b50e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
Adc_Init/58 (Adc_Init) @095b5000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
pwm_init/57 (pwm_init) @095ac2a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
Uart_Init/56 (Uart_Init) @095acee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
intRouteConfig/55 (intRouteConfig) @095b40d8
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: main/32 (addr)
  Availability: not_available
  Varpool flags: read-only
IntCtrl_Ip_ConfigIrqRouting/54 (IntCtrl_Ip_ConfigIrqRouting) @095ace00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
IntCtrlConfig_0/53 (IntCtrlConfig_0) @095b4048
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: main/32 (addr)
  Availability: not_available
  Varpool flags: read-only
IntCtrl_Ip_Init/52 (IntCtrl_Ip_Init) @095acd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
g_pin_mux_InitConfigArr0/51 (g_pin_mux_InitConfigArr0) @095b0f78
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: main/32 (addr)
  Availability: not_available
  Varpool flags:
Siul2_Port_Ip_Init/50 (Siul2_Port_Ip_Init) @095acc40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
Mcu_aClockConfigPB/49 (Mcu_aClockConfigPB) @095b0ee8
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: main/32 (addr)
  Availability: not_available
  Varpool flags: read-only
Clock_Ip_Init/48 (Clock_Ip_Init) @095acb60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
Gvar_init/47 (Gvar_init) @095aca80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: main/32 (107374 (estimated locally),1.00 per call) 
  Calls: 
task_1s/46 (task_1s) @095ac460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: gb/27 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: main/32 (354334802 (estimated locally),3300.01 per call) 
  Calls: led_onoff/86 (1073741824 (estimated locally),1.00 per call) CAN_Task_1000ms/85 (1073741824 (estimated locally),1.00 per call) 
PWM_CH/45 (PWM_CH) @0959fc18
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Varpool flags: initialized
toggle_PWM/44 (toggle_PWM) @0959fb88
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Varpool flags:
task_200ms/43 (task_200ms) @095ac000
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: main/32 (354334802 (estimated locally),3300.01 per call) 
  Calls: PWM_for_dirve_mode/84 (1073741824 (estimated locally),1.00 per call) CAN_Task_200ms/83 (1073741824 (estimated locally),1.00 per call) 
task_100ms/42 (task_100ms) @095a8b60
  Type: function definition analyzed
  Visibility: externally_visible public
  References: test_pwm/39 (read)test_pwm/39 (write)test_pwm/39 (write)C_100ms/41 (read)C_100ms/41 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: main/32 (354334802 (estimated locally),3300.01 per call) 
  Calls: CAN_Task_100ms/82 (1073741824 (estimated locally),1.00 per call) 
C_100ms/41 (C_100ms) @0959fa68
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: task_100ms/42 (read)task_100ms/42 (write)
  Availability: available
  Varpool flags: initialized
task_50ms/40 (task_50ms) @095a8380
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body icf_merged optimize_size
  Called by: 
  Calls: task_1ms/34 (1073741824 (estimated locally),1.00 per call) 
test_pwm/39 (test_pwm) @0959f990
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: task_100ms/42 (read)task_100ms/42 (write)task_100ms/42 (write)
  Availability: available
  Varpool flags:
task_20ms/38 (task_20ms) @095a8d20
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: CAN_Task_20ms/81 (1073741824 (estimated locally),1.00 per call) 
task_10ms/37 (task_10ms) @095a8a80
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: CAN_Task_10ms/80 (1073741824 (estimated locally),1.00 per call) 
task_5ms/36 (task_5ms) @095a87e0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: CAN_Task_5ms/79 (1073741824 (estimated locally),1.00 per call) 
task_2ms/35 (task_2ms) @095a8540
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: ECU3_KATECH_Logic_2ms/78 (1073741824 (estimated locally),1.00 per call) 
task_1ms/34 (task_1ms) @095a82a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body icf_merged optimize_size
  Called by: task_50ms/40 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
task_500us/33 (task_500us) @095a8000
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: main/32 (719407022 (estimated locally),6700.01 per call) 
  Calls: can_main_ECU3/77 (1073741824 (estimated locally),1.00 per call) can_tx_check/76 (1073741824 (estimated locally),1.00 per call) 
main/32 (main) @095a0ee0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Mcu_aClockConfigPB/49 (addr)g_pin_mux_InitConfigArr0/51 (addr)IntCtrlConfig_0/53 (addr)intRouteConfig/55 (addr)gb/27 (read)PIT_0_InitConfig_PB/63 (addr)PIT_0_ChannelConfig_PB/65 (addr)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)gb/27 (read)
  Referring: 
  Availability: available
  Function flags: count:107374 (estimated locally) body only_called_at_startup executed_once optimize_size
  Called by: 
  Calls: uds_wait/75 (1073741824 (estimated locally),10000.02 per call) WATCHDOG_HAL_Fed/74 (1073741824 (estimated locally),10000.02 per call) task_500us/33 (719407022 (estimated locally),6700.01 per call) ECU3_KATECH_Logic_2ms/78 (354334802 (estimated locally),3300.01 per call) CAN_Task_5ms/79 (354334802 (estimated locally),3300.01 per call) CAN_Task_10ms/80 (354334802 (estimated locally),3300.01 per call) CAN_Task_20ms/81 (354334802 (estimated locally),3300.01 per call) task_100ms/42 (354334802 (estimated locally),3300.01 per call) task_200ms/43 (354334802 (estimated locally),3300.01 per call) task_1s/46 (354334802 (estimated locally),3300.01 per call) ECU3_KATECH_Logic_init/73 (107374 (estimated locally),1.00 per call) debug_printf/72 (107374 (estimated locally),1.00 per call) WATCHDOG_HAL_Init/71 (107374 (estimated locally),1.00 per call) tmr_delay/70 (107374 (estimated locally),1.00 per call) board_init/69 (107374 (estimated locally),1.00 per call) Can_Init_ECU3/68 (644019 (estimated locally),6.00 per call) Pit_Ip_StartChannel/67 (107374 (estimated locally),1.00 per call) Pit_Ip_EnableChannelInterrupt/66 (107374 (estimated locally),1.00 per call) Pit_Ip_InitChannel/64 (107374 (estimated locally),1.00 per call) Pit_Ip_Init/62 (107374 (estimated locally),1.00 per call) SPI_init/61 (107374 (estimated locally),1.00 per call) i2c0_init/60 (107374 (estimated locally),1.00 per call) i2c1_init/59 (107374 (estimated locally),1.00 per call) Adc_Init/58 (107374 (estimated locally),1.00 per call) pwm_init/57 (107374 (estimated locally),1.00 per call) Uart_Init/56 (107374 (estimated locally),1.00 per call) IntCtrl_Ip_ConfigIrqRouting/54 (107374 (estimated locally),1.00 per call) IntCtrl_Ip_Init/52 (107374 (estimated locally),1.00 per call) Siul2_Port_Ip_Init/50 (107374 (estimated locally),1.00 per call) Clock_Ip_Init/48 (107374 (estimated locally),1.00 per call) Gvar_init/47 (107374 (estimated locally),1.00 per call) 
boot_vector/31 (boot_vector) @0959f2d0
  Type: variable definition analyzed
  Visibility: externally_visible public section:.boot_vector
  References: 
  Referring: 
  Availability: available
  Varpool flags: initialized read-only const-value-known
appsign/30 (appsign) @0959f240
  Type: variable definition analyzed
  Visibility: externally_visible public section:.appsign
  References: 
  Referring: 
  Availability: available
  Varpool flags: initialized read-only const-value-known
AppVersion/29 (AppVersion) @0959f1b0
  Type: variable definition analyzed
  Visibility: externally_visible public section:.appversion
  References: 
  Referring: 
  Availability: available
  Varpool flags: initialized read-only const-value-known
adc0/28 (adc0) @0959f0d8
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Varpool flags:
gb/27 (gb) @092e1288
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: task_1s/46 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)main/32 (read)
  Availability: available
  Varpool flags:
write_flag/0 (write_flag) @06b13048
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Varpool flags: initialized

;; Function task_500us (task_500us, funcdef_no=27, decl_uid=10519, cgraph_uid=28, symbol_order=33)

Modification phase of node task_500us/33
task_500us ()
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  can_tx_check ();
  # DEBUG BEGIN_STMT
  can_main_ECU3 ();
  return;

}



;; Function task_1ms (task_1ms, funcdef_no=28, decl_uid=10521, cgraph_uid=29, symbol_order=34)

Modification phase of node task_1ms/34
task_1ms ()
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return;

}



;; Function task_2ms (task_2ms, funcdef_no=29, decl_uid=10523, cgraph_uid=30, symbol_order=35)

Modification phase of node task_2ms/35
task_2ms ()
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  ECU3_KATECH_Logic_2ms ();
  return;

}



;; Function task_5ms (task_5ms, funcdef_no=30, decl_uid=10525, cgraph_uid=31, symbol_order=36)

Modification phase of node task_5ms/36
task_5ms ()
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  CAN_Task_5ms ();
  return;

}



;; Function task_10ms (task_10ms, funcdef_no=31, decl_uid=10527, cgraph_uid=32, symbol_order=37)

Modification phase of node task_10ms/37
task_10ms ()
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  CAN_Task_10ms ();
  return;

}



;; Function task_20ms (task_20ms, funcdef_no=32, decl_uid=10529, cgraph_uid=33, symbol_order=38)

Modification phase of node task_20ms/38
task_20ms ()
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  CAN_Task_20ms ();
  return;

}



;; Function task_50ms (task_50ms, funcdef_no=38, decl_uid=10531, cgraph_uid=34, symbol_order=40)

Modification phase of node task_50ms/40
task_50ms ()
{
  <bb 2> [local count: 1073741824]:
  task_1ms (); [tail call]
  return;

}



;; Function task_100ms (task_100ms, funcdef_no=34, decl_uid=10533, cgraph_uid=35, symbol_order=42)

Modification phase of node task_100ms/42
task_100ms ()
{
  unsigned char test_pwm.1_1;
  unsigned char _2;
  long unsigned int C_100ms.4_3;
  long unsigned int _4;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  test_pwm.1_1 = test_pwm;
  if (test_pwm.1_1 <= 99)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  _2 = test_pwm.1_1 + 1;
  test_pwm = _2;
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  test_pwm = 0;

  <bb 5> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  C_100ms.4_3 = C_100ms;
  _4 = C_100ms.4_3 + 1;
  C_100ms = _4;
  # DEBUG BEGIN_STMT
  CAN_Task_100ms ();
  return;

}



;; Function task_200ms (task_200ms, funcdef_no=35, decl_uid=10535, cgraph_uid=36, symbol_order=43)

Modification phase of node task_200ms/43
task_200ms ()
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  CAN_Task_200ms ();
  # DEBUG BEGIN_STMT
  PWM_for_dirve_mode ();
  return;

}



;; Function task_1s (task_1s, funcdef_no=36, decl_uid=10537, cgraph_uid=37, symbol_order=46)

Modification phase of node task_1s/46
task_1s ()
{
  int _1;
  _Bool _2;
  int _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  CAN_Task_1000ms ();
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = gb.led_flag;
  _2 = _1 == 0;
  _3 = (int) _2;
  led_onoff (_3);
  return;

}



;; Function main (main, funcdef_no=26, decl_uid=13756, cgraph_uid=27, symbol_order=32) (executed once)

Modification phase of node main/32
main ()
{
  u64 tick_200ms;
  u64 tick_5ms;
  u64 tick_500us;
  u64 tick_1ms;
  u64 tick_1sec;
  u64 tick_2ms;
  u64 tick_50ms;
  u64 tick_20ms;
  u64 tick_10ms;
  u64 tick_100ms;
  char ch;
  unsigned int _1;
  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;
  long unsigned int _11;
  long unsigned int _12;
  long unsigned int _13;
  long unsigned int _14;
  long unsigned int _15;
  long unsigned int _16;
  long unsigned int _17;
  long unsigned int _18;
  long unsigned int _19;
  long unsigned int _20;
  long unsigned int _21;
  long unsigned int _22;

  <bb 2> [local count: 107374]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  Gvar_init ();
  # DEBUG BEGIN_STMT
  Clock_Ip_Init (&Mcu_aClockConfigPB[0]);
  # DEBUG BEGIN_STMT
  Siul2_Port_Ip_Init (78, &g_pin_mux_InitConfigArr0);
  # DEBUG BEGIN_STMT
  IntCtrl_Ip_Init (&IntCtrlConfig_0);
  # DEBUG BEGIN_STMT
  IntCtrl_Ip_ConfigIrqRouting (&intRouteConfig);
  # DEBUG BEGIN_STMT
  Uart_Init ();
  # DEBUG BEGIN_STMT
  _1 = gb.pwm_max_tick;
  pwm_init (_1);
  # DEBUG BEGIN_STMT
  Adc_Init ();
  # DEBUG BEGIN_STMT
  i2c1_init ();
  # DEBUG BEGIN_STMT
  i2c0_init ();
  # DEBUG BEGIN_STMT
  SPI_init ();
  # DEBUG BEGIN_STMT
  Pit_Ip_Init (0, &PIT_0_InitConfig_PB);
  # DEBUG BEGIN_STMT
  Pit_Ip_InitChannel (0, &PIT_0_ChannelConfig_PB[0]);
  # DEBUG BEGIN_STMT
  Pit_Ip_EnableChannelInterrupt (0, 0);
  # DEBUG BEGIN_STMT
  Pit_Ip_StartChannel (0, 0, 20000);
  # DEBUG BEGIN_STMT
  # DEBUG ch => 0
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 644019]:
  # DEBUG BEGIN_STMT
  _2 = (int) ch_23;
  Can_Init_ECU3 (_2);
  # DEBUG BEGIN_STMT
  ch_104 = ch_23 + 1;
  # DEBUG ch => ch_104

  <bb 4> [local count: 751393]:
  # ch_23 = PHI <0(2), ch_104(3)>
  # DEBUG ch => ch_23
  # DEBUG BEGIN_STMT
  if (ch_23 != 6)
    goto <bb 3>; [85.71%]
  else
    goto <bb 5>; [14.29%]

  <bb 5> [local count: 107374]:
  # DEBUG BEGIN_STMT
  board_init ();
  # DEBUG BEGIN_STMT
  tick_500us_71 ={v} gb.tmr_cnt;
  # DEBUG tick_500us => tick_500us_71
  # DEBUG BEGIN_STMT
  tick_1ms_72 ={v} gb.tmr_cnt;
  # DEBUG tick_1ms => tick_1ms_72
  # DEBUG BEGIN_STMT
  tick_2ms_73 ={v} gb.tmr_cnt;
  # DEBUG tick_2ms => tick_2ms_73
  # DEBUG BEGIN_STMT
  tick_5ms_74 ={v} gb.tmr_cnt;
  # DEBUG tick_5ms => tick_5ms_74
  # DEBUG BEGIN_STMT
  tick_10ms_75 ={v} gb.tmr_cnt;
  # DEBUG tick_10ms => tick_10ms_75
  # DEBUG BEGIN_STMT
  tick_20ms_76 ={v} gb.tmr_cnt;
  # DEBUG tick_20ms => tick_20ms_76
  # DEBUG BEGIN_STMT
  tick_50ms_77 ={v} gb.tmr_cnt;
  # DEBUG tick_50ms => tick_50ms_77
  # DEBUG BEGIN_STMT
  tick_100ms_78 ={v} gb.tmr_cnt;
  # DEBUG tick_100ms => tick_100ms_78
  # DEBUG BEGIN_STMT
  tick_200ms_79 ={v} gb.tmr_cnt;
  # DEBUG tick_200ms => tick_200ms_79
  # DEBUG BEGIN_STMT
  tick_1sec_80 ={v} gb.tmr_cnt;
  # DEBUG tick_1sec => tick_1sec_80
  # DEBUG BEGIN_STMT
  tmr_delay (1000);
  # DEBUG BEGIN_STMT
  WATCHDOG_HAL_Init ();
  # DEBUG BEGIN_STMT
  debug_printf ("Board Init Finished\n\r");
  # DEBUG BEGIN_STMT
  ECU3_KATECH_Logic_init ();

  <bb 6> [local count: 1073741824]:
  # tick_100ms_24 = PHI <tick_100ms_78(5), tick_100ms_25(26)>
  # tick_10ms_26 = PHI <tick_10ms_75(5), tick_10ms_27(26)>
  # tick_20ms_28 = PHI <tick_20ms_76(5), tick_20ms_29(26)>
  # tick_50ms_30 = PHI <tick_50ms_77(5), tick_50ms_31(26)>
  # tick_2ms_32 = PHI <tick_2ms_73(5), tick_2ms_33(26)>
  # tick_1sec_34 = PHI <tick_1sec_80(5), tick_1sec_35(26)>
  # tick_1ms_36 = PHI <tick_1ms_72(5), tick_1ms_37(26)>
  # tick_500us_38 = PHI <tick_500us_71(5), tick_500us_39(26)>
  # tick_5ms_40 = PHI <tick_5ms_74(5), tick_5ms_41(26)>
  # tick_200ms_42 = PHI <tick_200ms_79(5), tick_200ms_43(26)>
  # DEBUG tick_200ms => tick_200ms_42
  # DEBUG tick_5ms => tick_5ms_40
  # DEBUG tick_500us => tick_500us_38
  # DEBUG tick_1ms => tick_1ms_36
  # DEBUG tick_1sec => tick_1sec_34
  # DEBUG tick_2ms => tick_2ms_32
  # DEBUG tick_50ms => tick_50ms_30
  # DEBUG tick_20ms => tick_20ms_28
  # DEBUG tick_10ms => tick_10ms_26
  # DEBUG tick_100ms => tick_100ms_24
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _3 ={v} gb.tmr_cnt;
  _4 = tick_1sec_34 + 1000;
  if (_3 >= _4)
    goto <bb 7>; [33.00%]
  else
    goto <bb 8>; [67.00%]

  <bb 7> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  tick_1sec_85 ={v} gb.tmr_cnt;
  # DEBUG tick_1sec => tick_1sec_85
  # DEBUG BEGIN_STMT
  task_1s ();

  <bb 8> [local count: 1073741824]:
  # tick_1sec_35 = PHI <tick_1sec_34(6), tick_1sec_85(7)>
  # DEBUG tick_1sec => tick_1sec_35
  # DEBUG BEGIN_STMT
  _5 ={v} gb.tmr_cnt;
  _6 = tick_200ms_42 + 200;
  if (_5 >= _6)
    goto <bb 9>; [33.00%]
  else
    goto <bb 10>; [67.00%]

  <bb 9> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  tick_200ms_87 ={v} gb.tmr_cnt;
  # DEBUG tick_200ms => tick_200ms_87
  # DEBUG BEGIN_STMT
  task_200ms ();

  <bb 10> [local count: 1073741824]:
  # tick_200ms_43 = PHI <tick_200ms_42(8), tick_200ms_87(9)>
  # DEBUG tick_200ms => tick_200ms_43
  # DEBUG BEGIN_STMT
  _7 ={v} gb.tmr_cnt;
  _8 = tick_100ms_24 + 100;
  if (_7 >= _8)
    goto <bb 11>; [33.00%]
  else
    goto <bb 12>; [67.00%]

  <bb 11> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  tick_100ms_89 ={v} gb.tmr_cnt;
  # DEBUG tick_100ms => tick_100ms_89
  # DEBUG BEGIN_STMT
  task_100ms ();

  <bb 12> [local count: 1073741824]:
  # tick_100ms_25 = PHI <tick_100ms_24(10), tick_100ms_89(11)>
  # DEBUG tick_100ms => tick_100ms_25
  # DEBUG BEGIN_STMT
  _9 ={v} gb.tmr_cnt;
  _10 = tick_50ms_30 + 50;
  if (_9 >= _10)
    goto <bb 13>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 13> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  tick_50ms_91 ={v} gb.tmr_cnt;
  # DEBUG tick_50ms => tick_50ms_91
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY task_50ms
  # DEBUG BEGIN_STMT

  <bb 14> [local count: 1073741824]:
  # tick_50ms_31 = PHI <tick_50ms_30(12), tick_50ms_91(13)>
  # DEBUG tick_50ms => tick_50ms_31
  # DEBUG BEGIN_STMT
  _11 ={v} gb.tmr_cnt;
  _12 = tick_20ms_28 + 20;
  if (_11 >= _12)
    goto <bb 15>; [33.00%]
  else
    goto <bb 16>; [67.00%]

  <bb 15> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  tick_20ms_93 ={v} gb.tmr_cnt;
  # DEBUG tick_20ms => tick_20ms_93
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY task_20ms
  # DEBUG BEGIN_STMT
  CAN_Task_20ms ();

  <bb 16> [local count: 1073741824]:
  # tick_20ms_29 = PHI <tick_20ms_28(14), tick_20ms_93(15)>
  # DEBUG tick_20ms => tick_20ms_29
  # DEBUG BEGIN_STMT
  _13 ={v} gb.tmr_cnt;
  _14 = tick_10ms_26 + 10;
  if (_13 >= _14)
    goto <bb 17>; [33.00%]
  else
    goto <bb 18>; [67.00%]

  <bb 17> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  tick_10ms_94 ={v} gb.tmr_cnt;
  # DEBUG tick_10ms => tick_10ms_94
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY task_10ms
  # DEBUG BEGIN_STMT
  CAN_Task_10ms ();

  <bb 18> [local count: 1073741824]:
  # tick_10ms_27 = PHI <tick_10ms_26(16), tick_10ms_94(17)>
  # DEBUG tick_10ms => tick_10ms_27
  # DEBUG BEGIN_STMT
  _15 ={v} gb.tmr_cnt;
  _16 = tick_5ms_40 + 5;
  if (_15 >= _16)
    goto <bb 19>; [33.00%]
  else
    goto <bb 20>; [67.00%]

  <bb 19> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  tick_5ms_95 ={v} gb.tmr_cnt;
  # DEBUG tick_5ms => tick_5ms_95
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY task_5ms
  # DEBUG BEGIN_STMT
  CAN_Task_5ms ();

  <bb 20> [local count: 1073741824]:
  # tick_5ms_41 = PHI <tick_5ms_40(18), tick_5ms_95(19)>
  # DEBUG tick_5ms => tick_5ms_41
  # DEBUG BEGIN_STMT
  _17 ={v} gb.tmr_cnt;
  _18 = tick_2ms_32 + 2;
  if (_17 >= _18)
    goto <bb 21>; [33.00%]
  else
    goto <bb 22>; [67.00%]

  <bb 21> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  tick_2ms_96 ={v} gb.tmr_cnt;
  # DEBUG tick_2ms => tick_2ms_96
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY task_2ms
  # DEBUG BEGIN_STMT
  ECU3_KATECH_Logic_2ms ();

  <bb 22> [local count: 1073741824]:
  # tick_2ms_33 = PHI <tick_2ms_32(20), tick_2ms_96(21)>
  # DEBUG tick_2ms => tick_2ms_33
  # DEBUG BEGIN_STMT
  _19 ={v} gb.tmr_cnt;
  _20 = tick_1ms_36 + 1;
  if (_19 >= _20)
    goto <bb 23>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 23> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  tick_1ms_97 ={v} gb.tmr_cnt;
  # DEBUG tick_1ms => tick_1ms_97
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY task_1ms
  # DEBUG BEGIN_STMT

  <bb 24> [local count: 1073741824]:
  # tick_1ms_37 = PHI <tick_1ms_36(22), tick_1ms_97(23)>
  # DEBUG tick_1ms => tick_1ms_37
  # DEBUG BEGIN_STMT
  _21 ={v} gb.x500us;
  _22 = tick_500us_38 + 1;
  if (_21 >= _22)
    goto <bb 25>; [67.00%]
  else
    goto <bb 26>; [33.00%]

  <bb 25> [local count: 719407022]:
  # DEBUG BEGIN_STMT
  tick_500us_99 ={v} gb.x500us;
  # DEBUG tick_500us => tick_500us_99
  # DEBUG BEGIN_STMT
  task_500us ();

  <bb 26> [local count: 1073741824]:
  # tick_500us_39 = PHI <tick_500us_38(24), tick_500us_99(25)>
  # DEBUG tick_500us => tick_500us_39
  # DEBUG BEGIN_STMT
  WATCHDOG_HAL_Fed ();
  # DEBUG BEGIN_STMT
  uds_wait ();
  # DEBUG BEGIN_STMT
  goto <bb 6>; [100.00%]

}


