# Static Call Graph for image .\objects\boot.axf

#<CALLGRAPH># ARM Linker, 6220000: Last Updated: Fri Apr 10 15:19:56 2026

### Maximum Stack Usage = 144 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

### Call chain for Maximum Stack Depth:

__rt_entry_main ⇒ main ⇒ wk_usb_app_task ⇒ usb_printf ⇒ usb_vcp_send_data ⇒ usbd_ept_send ⇒ usb_write_packet

### Functions with no stack information

- __user_initial_stackheap

### Mutually Recursive functions

- ACC_IRQHandler ⇒ ACC_IRQHandler
- BusFault_Handler ⇒ BusFault_Handler
- HardFault_Handler ⇒ HardFault_Handler
- MemManage_Handler ⇒ MemManage_Handler
- UsageFault_Handler ⇒ UsageFault_Handler

  ### Function Pointers

  - ACC_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - ADC1_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - BusFault_Handler from at32f425_int.o(.text.BusFault_Handler) referenced from startup_at32f425.o(RESET)
  - CAN1_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - CRM_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - DMA1_Channel1_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - DMA1_Channel3_2_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - DMA1_Channel7_4_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - DebugMon_Handler from at32f425_int.o(.text.DebugMon_Handler) referenced from startup_at32f425.o(RESET)
  - ERTC_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - EXINT15_4_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - EXINT1_0_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - EXINT3_2_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - FLASH_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - HardFault_Handler from at32f425_int.o(.text.HardFault_Handler) referenced from startup_at32f425.o(RESET)
  - I2C1_ERR_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - I2C1_EVT_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - I2C2_ERR_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - I2C2_EVT_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - MemManage_Handler from at32f425_int.o(.text.MemManage_Handler) referenced from startup_at32f425.o(RESET)
  - NMI_Handler from at32f425_int.o(.text.NMI_Handler) referenced from startup_at32f425.o(RESET)
  - OTGFS1_IRQHandler from at32f425_int.o(.text.OTGFS1_IRQHandler) referenced from startup_at32f425.o(RESET)
  - PVM_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - PendSV_Handler from at32f425_int.o(.text.PendSV_Handler) referenced from startup_at32f425.o(RESET)
  - Reset_Handler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - SPI1_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - SPI2_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - SPI3_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - SVC_Handler from at32f425_int.o(.text.SVC_Handler) referenced from startup_at32f425.o(RESET)
  - SysTick_Handler from at32f425_int.o(.text.SysTick_Handler) referenced from startup_at32f425.o(RESET)
  - SystemInit from system_at32f425.o(.text.SystemInit) referenced from startup_at32f425.o(.text)
  - TMR13_GLOBAL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR14_GLOBAL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR15_GLOBAL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR16_GLOBAL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR17_GLOBAL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR1_BRK_OVF_TRG_HALL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR1_CH_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR2_GLOBAL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR3_GLOBAL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - TMR6_GLOBAL_IRQHandler from at32f425_int.o(.text.TMR6_GLOBAL_IRQHandler) referenced from startup_at32f425.o(RESET)
  - TMR7_GLOBAL_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - USART1_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - USART2_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - USART4_3_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - UsageFault_Handler from at32f425_int.o(.text.UsageFault_Handler) referenced from startup_at32f425.o(RESET)
  - WWDT_IRQHandler from startup_at32f425.o(.text) referenced from startup_at32f425.o(RESET)
  - __main from __main.o(!!!main) referenced from startup_at32f425.o(.text)
  - class_clear_handler from cdc_class.o(.text.class_clear_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - class_ept0_rx_handler from cdc_class.o(.text.class_ept0_rx_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - class_ept0_tx_handler from cdc_class.o(.text.class_ept0_tx_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - class_event_handler from cdc_class.o(.text.class_event_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - class_in_handler from cdc_class.o(.text.class_in_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - class_init_handler from cdc_class.o(.text.class_init_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - class_out_handler from cdc_class.o(.text.class_out_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - class_setup_handler from cdc_class.o(.text.class_setup_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - class_sof_handler from cdc_class.o(.text.class_sof_handler) referenced from cdc_class.o(.data.cdc_class_handler)
  - get_device_config_string from cdc_desc.o(.text.get_device_config_string) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_configuration from cdc_desc.o(.text.get_device_configuration) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_descriptor from cdc_desc.o(.text.get_device_descriptor) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_interface_string from cdc_desc.o(.text.get_device_interface_string) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_lang_id from cdc_desc.o(.text.get_device_lang_id) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_manufacturer_string from cdc_desc.o(.text.get_device_manufacturer_string) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_other_speed from cdc_desc.o(.text.get_device_other_speed) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_product_string from cdc_desc.o(.text.get_device_product_string) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_qualifier from cdc_desc.o(.text.get_device_qualifier) referenced from cdc_desc.o(.data.cdc_desc_handler)
  - get_device_serial_string from cdc_desc.o(.text.get_device_serial_string) referenced from cdc_desc.o(.data.cdc_desc_handler)

  ### Global Symbols

  __main (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
  [Calls]

  - >> __scatterload
  - >> __rt_entry
  [Address Reference Count : 1]
  - startup_at32f425.o(.text)

  __scatterload (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
  [Called By]

  - >> __main

  __scatterload_rt2 (Thumb, 84 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
  [Calls]

  - >> __rt_entry

  __scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __scatterload_loop (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __scatterload_copy (Thumb, 26 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
  [Calls]

  - >> __scatterload_copy
  [Called By]
  - >> __scatterload_copy

  __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, __scatter.o(!!handler_null), UNUSED)

  __scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)

  __rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
  [Called By]

  - >> __rt_entry_li

  __rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030))

  __rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))

  __rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))

  __rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023))

  __rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000034))

  __rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032))

  __rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000002))

  __rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))

  __rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025))

  __rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C))

  __rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))

  __rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))

  __rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))

  __rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))

  __rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))

  __rt_lib_init_preinit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006))

  __rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000010))

  __rt_lib_init_relocate_pie_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004))

  __rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000035))

  __rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))

  __rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000027))

  __rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))

  __rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
  [Called By]

  - >> __rt_exit_ls

  __rt_lib_shutdown_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002))

  __rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000007))

  __rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))

  __rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000010))

  __rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A))

  __rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000004))

  __rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C))

  __rt_entry (Thumb, 0 bytes, Stack size unknown bytes, __rtentry.o(.ARM.Collect$$rtentry$$00000000))
  [Called By]

  - >> __scatterload_rt2
  - >> __main

  __rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002))

  __rt_entry_sh (Thumb, 0 bytes, Stack size unknown bytes, __rtentry4.o(.ARM.Collect$$rtentry$$00000004))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = __rt_entry_sh ⇒ __user_setup_stackheap
  [Calls]
  - >> __user_setup_stackheap

  __rt_entry_li (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
  [Calls]

  - >> __rt_lib_init

  __rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009))

  __rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
  [Stack]

  - Max Depth = 144 + Unknown Stack Size
  - Call Chain = __rt_entry_main ⇒ main ⇒ wk_usb_app_task ⇒ usb_printf ⇒ usb_vcp_send_data ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> main
  - >> exit

  __rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C))

  __rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
  [Called By]

  - >> exit

  __rt_exit_ls (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
  [Calls]

  - >> __rt_lib_shutdown

  __rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))

  __rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
  [Calls]

  - >> _sys_exit

  Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  ACC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Calls]

  - >> ACC_IRQHandler
  [Called By]
  - >> ACC_IRQHandler
  [Address Reference Count : 1]
  - startup_at32f425.o(RESET)

  ADC1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  CAN1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  CRM_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  DMA1_Channel1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  DMA1_Channel3_2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  DMA1_Channel7_4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  ERTC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  EXINT15_4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  EXINT1_0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  EXINT3_2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  FLASH_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  I2C1_ERR_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  I2C1_EVT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  I2C2_ERR_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  I2C2_EVT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  PVM_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  SPI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  SPI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  SPI3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR13_GLOBAL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR14_GLOBAL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR15_GLOBAL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR16_GLOBAL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR17_GLOBAL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR1_BRK_OVF_TRG_HALL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR1_CH_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR2_GLOBAL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR3_GLOBAL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  TMR7_GLOBAL_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  USART1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  USART2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  USART4_3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  WWDT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_at32f425.o(.text))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  __user_initial_stackheap (Thumb, 0 bytes, Stack size unknown bytes, startup_at32f425.o(.text))
  [Called By]

  - >> __user_setup_stackheap

  __aeabi_memclr4 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text))
  [Called By]

  - >> wk_usb_app_task

  __aeabi_memclr8 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)

  __rt_memclr_w (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)

  _memset_w (Thumb, 74 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)

  __use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __user_setup_stackheap (Thumb, 74 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = __user_setup_stackheap
  [Calls]
  - >> __user_initial_stackheap
  - >> __user_perproc_libspace
  [Called By]
  - >> __rt_entry_sh

  exit (Thumb, 18 bytes, Stack size 8 bytes, exit.o(.text))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = exit
  [Calls]
  - >> __rt_exit
  [Called By]
  - >> __rt_entry_main

  __user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

  __user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
  [Called By]

  - >> __user_setup_stackheap

  __user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

  _sys_exit (Thumb, 8 bytes, Stack size 0 bytes, sys_exit.o(.text))
  [Called By]

  - >> __rt_exit_exit

  __I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

  __use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

  __semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED)

  BusFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.BusFault_Handler))
  [Calls]

  - >> BusFault_Handler
  [Called By]
  - >> BusFault_Handler
  [Address Reference Count : 1]
  - startup_at32f425.o(RESET)

  DebugMon_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.DebugMon_Handler))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  HardFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.HardFault_Handler))
  [Calls]

  - >> HardFault_Handler
  [Called By]
  - >> HardFault_Handler
  [Address Reference Count : 1]
  - startup_at32f425.o(RESET)

  MemManage_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.MemManage_Handler))
  [Calls]

  - >> MemManage_Handler
  [Called By]
  - >> MemManage_Handler
  [Address Reference Count : 1]
  - startup_at32f425.o(RESET)

  NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.NMI_Handler))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  OTGFS1_IRQHandler (Thumb, 4 bytes, Stack size 0 bytes, at32f425_int.o(.text.OTGFS1_IRQHandler))
  [Stack]

  - Max Depth = 136
  - Call Chain = OTGFS1_IRQHandler ⇒ wk_otgfs1_irq_handler ⇒ usbd_irq_handler ⇒ usbd_outept_handler ⇒ usbd_core_setup_handler ⇒ usbd_endpoint_request ⇒ usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> wk_otgfs1_irq_handler
  [Address Reference Count : 1]
  - startup_at32f425.o(RESET)

  PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.PendSV_Handler))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.SVC_Handler))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  SysTick_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.SysTick_Handler))
  [Address Reference Count : 1]

  - startup_at32f425.o(RESET)

  SystemInit (Thumb, 136 bytes, Stack size 0 bytes, system_at32f425.o(.text.SystemInit))
  [Address Reference Count : 1]

  - startup_at32f425.o(.text)

  TMR6_GLOBAL_IRQHandler (Thumb, 96 bytes, Stack size 16 bytes, at32f425_int.o(.text.TMR6_GLOBAL_IRQHandler))
  [Stack]

  - Max Depth = 16
  - Call Chain = TMR6_GLOBAL_IRQHandler
  [Calls]
  - >> tmr_flag_clear
  - >> gpio_bits_toggle
  - >> tmr_interrupt_flag_get
  [Address Reference Count : 1]
  - startup_at32f425.o(RESET)

  UsageFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, at32f425_int.o(.text.UsageFault_Handler))
  [Calls]

  - >> UsageFault_Handler
  [Called By]
  - >> UsageFault_Handler
  [Address Reference Count : 1]
  - startup_at32f425.o(RESET)

  acc_calibration_mode_enable (Thumb, 32 bytes, Stack size 0 bytes, at32f425_acc.o(.text.acc_calibration_mode_enable))
  [Called By]

  - >> wk_acc_init

  acc_write_c1 (Thumb, 12 bytes, Stack size 0 bytes, at32f425_acc.o(.text.acc_write_c1))
  [Called By]

  - >> wk_acc_init

  acc_write_c2 (Thumb, 12 bytes, Stack size 0 bytes, at32f425_acc.o(.text.acc_write_c2))
  [Called By]

  - >> wk_acc_init

  acc_write_c3 (Thumb, 12 bytes, Stack size 0 bytes, at32f425_acc.o(.text.acc_write_c3))
  [Called By]

  - >> wk_acc_init

  crm_ahb_div_set (Thumb, 26 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_ahb_div_set))
  [Called By]

  - >> wk_system_clock_config

  crm_apb1_div_set (Thumb, 26 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_apb1_div_set))
  [Called By]

  - >> wk_system_clock_config

  crm_apb2_div_set (Thumb, 26 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_apb2_div_set))
  [Called By]

  - >> wk_system_clock_config

  crm_clock_source_enable (Thumb, 130 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_clock_source_enable))
  [Called By]

  - >> wk_system_clock_config

  crm_clocks_freq_get (Thumb, 256 bytes, Stack size 20 bytes, at32f425_crm.o(.text.crm_clocks_freq_get))
  [Stack]

  - Max Depth = 20
  - Call Chain = crm_clocks_freq_get
  [Called By]
  - >> wk_timebase_init

  crm_flag_get (Thumb, 26 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_flag_get))
  [Called By]

  - >> wk_system_clock_config

  crm_periph_clock_enable (Thumb, 40 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_periph_clock_enable))
  [Called By]

  - >> main
  - >> wk_periph_clock_config

  crm_pll_config (Thumb, 90 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_pll_config))
  [Called By]

  - >> wk_system_clock_config

  crm_reset (Thumb, 122 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_reset))
  [Called By]

  - >> wk_system_clock_config

  crm_sysclk_switch (Thumb, 18 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_sysclk_switch))
  [Called By]

  - >> wk_system_clock_config

  crm_sysclk_switch_status_get (Thumb, 16 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_sysclk_switch_status_get))
  [Called By]

  - >> system_core_clock_update
  - >> wk_system_clock_config

  crm_usb_clock_source_select (Thumb, 50 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_usb_clock_source_select))
  [Called By]

  - >> wk_usb_otgfs1_init

  crm_usb_div_reset (Thumb, 50 bytes, Stack size 0 bytes, at32f425_crm.o(.text.crm_usb_div_reset))
  [Called By]

  - >> wk_usb_otgfs1_init

  erase_app_sectors (Thumb, 372 bytes, Stack size 8 bytes, flash.o(.text.erase_app_sectors))
  [Stack]

  - Max Depth = 8
  - Call Chain = erase_app_sectors
  [Calls]
  - >> flash_lock
  - >> flash_sector_erase
  - >> flash_unlock
  [Called By]
  - >> wk_usb_app_task

  flash_60bytes_write (Thumb, 70 bytes, Stack size 16 bytes, flash.o(.text.flash_60bytes_write))
  [Stack]

  - Max Depth = 16
  - Call Chain = flash_60bytes_write
  [Calls]
  - >> flash_flag_clear
  - >> flash_lock
  - >> flash_halfword_program
  - >> flash_unlock
  [Called By]
  - >> wk_usb_app_task

  flash_flag_clear (Thumb, 12 bytes, Stack size 0 bytes, at32f425_flash.o(.text.flash_flag_clear))
  [Called By]

  - >> flash_60bytes_write

  flash_halfword_program (Thumb, 390 bytes, Stack size 0 bytes, at32f425_flash.o(.text.flash_halfword_program))
  [Called By]

  - >> flash_60bytes_write

  flash_lock (Thumb, 18 bytes, Stack size 0 bytes, at32f425_flash.o(.text.flash_lock))
  [Called By]

  - >> erase_app_sectors
  - >> iap_init
  - >> iap_command_handle
  - >> flash_60bytes_write

  flash_sector_erase (Thumb, 398 bytes, Stack size 0 bytes, at32f425_flash.o(.text.flash_sector_erase))
  [Called By]

  - >> erase_app_sectors
  - >> iap_init
  - >> iap_command_handle

  flash_unlock (Thumb, 30 bytes, Stack size 0 bytes, at32f425_flash.o(.text.flash_unlock))
  [Called By]

  - >> erase_app_sectors
  - >> iap_init
  - >> iap_command_handle
  - >> flash_60bytes_write

  flash_upgrade_flag_read (Thumb, 28 bytes, Stack size 0 bytes, flash.o(.text.flash_upgrade_flag_read))
  [Called By]

  - >> main

  flash_word_program (Thumb, 390 bytes, Stack size 0 bytes, at32f425_flash.o(.text.flash_word_program))
  [Called By]

  - >> iap_command_handle

  gpio_bits_reset (Thumb, 4 bytes, Stack size 0 bytes, at32f425_gpio.o(.text.gpio_bits_reset))
  [Called By]

  - >> wk_gpio_config

  gpio_bits_toggle (Thumb, 16 bytes, Stack size 0 bytes, at32f425_gpio.o(.text.gpio_bits_toggle))
  [Called By]

  - >> TMR6_GLOBAL_IRQHandler

  gpio_default_para_init (Thumb, 14 bytes, Stack size 0 bytes, at32f425_gpio.o(.text.gpio_default_para_init))
  [Called By]

  - >> wk_gpio_config

  gpio_init (Thumb, 122 bytes, Stack size 20 bytes, at32f425_gpio.o(.text.gpio_init))
  [Stack]

  - Max Depth = 20
  - Call Chain = gpio_init
  [Called By]
  - >> wk_gpio_config

  iap_command_handle (Thumb, 52 bytes, Stack size 16 bytes, flash.o(.text.iap_command_handle))
  [Stack]

  - Max Depth = 16
  - Call Chain = iap_command_handle
  [Calls]
  - >> flash_word_program
  - >> flash_lock
  - >> flash_sector_erase
  - >> flash_unlock
  [Called By]
  - >> wk_usb_app_task

  iap_init (Thumb, 44 bytes, Stack size 8 bytes, flash.o(.text.iap_init))
  [Stack]

  - Max Depth = 8
  - Call Chain = iap_init
  [Calls]
  - >> flash_lock
  - >> flash_sector_erase
  - >> flash_unlock
  [Called By]
  - >> wk_usb_app_task

  main (Thumb, 154 bytes, Stack size 0 bytes, main.o(.text.main))
  [Stack]

  - Max Depth = 144 + Unknown Stack Size
  - Call Chain = main ⇒ wk_usb_app_task ⇒ usb_printf ⇒ usb_vcp_send_data ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> wk_usb_app_task
  - >> wk_usb_app_init
  - >> flash_upgrade_flag_read
  - >> wk_tmr6_init
  - >> wk_usb_otgfs1_init
  - >> wk_acc_init
  - >> wk_gpio_config
  - >> wk_timebase_init
  - >> wk_scfg_init
  - >> nvic_irq_disable
  - >> wk_nvic_config
  - >> crm_periph_clock_enable
  - >> wk_periph_clock_config
  - >> wk_system_clock_config
  [Called By]
  - >> __rt_entry_main

  nvic_irq_disable (Thumb, 42 bytes, Stack size 0 bytes, at32f425_misc.o(.text.nvic_irq_disable))
  [Called By]

  - >> main

  nvic_irq_enable (Thumb, 114 bytes, Stack size 16 bytes, at32f425_misc.o(.text.nvic_irq_enable))
  [Stack]

  - Max Depth = 16
  - Call Chain = nvic_irq_enable
  [Called By]
  - >> wk_nvic_config

  nvic_priority_group_config (Thumb, 32 bytes, Stack size 0 bytes, at32f425_misc.o(.text.nvic_priority_group_config))
  [Called By]

  - >> wk_nvic_config

  nvic_system_reset (Thumb, 4 bytes, Stack size 0 bytes, at32f425_misc.o(.text.nvic_system_reset))
  [Calls]

  - >> __NVIC_SystemReset
  [Called By]
  - >> wk_usb_app_task

  scfg_i2s_full_duplex_config (Thumb, 20 bytes, Stack size 0 bytes, at32f425_scfg.o(.text.scfg_i2s_full_duplex_config))
  [Called By]

  - >> wk_scfg_init

  scfg_pa11pa12_pin_remap (Thumb, 24 bytes, Stack size 0 bytes, at32f425_scfg.o(.text.scfg_pa11pa12_pin_remap))
  [Called By]

  - >> wk_scfg_init

  system_core_clock_update (Thumb, 212 bytes, Stack size 16 bytes, system_at32f425.o(.text.system_core_clock_update))
  [Stack]

  - Max Depth = 16
  - Call Chain = system_core_clock_update
  [Calls]
  - >> crm_sysclk_switch_status_get
  [Called By]
  - >> wk_system_clock_config

  systick_clock_source_config (Thumb, 24 bytes, Stack size 0 bytes, at32f425_misc.o(.text.systick_clock_source_config))
  [Called By]

  - >> wk_timebase_init

  tmr_base_init (Thumb, 14 bytes, Stack size 0 bytes, at32f425_tmr.o(.text.tmr_base_init))
  [Called By]

  - >> wk_tmr6_init

  tmr_cnt_dir_set (Thumb, 18 bytes, Stack size 0 bytes, at32f425_tmr.o(.text.tmr_cnt_dir_set))
  [Called By]

  - >> wk_tmr6_init

  tmr_counter_enable (Thumb, 10 bytes, Stack size 0 bytes, at32f425_tmr.o(.text.tmr_counter_enable))
  [Called By]

  - >> wk_tmr6_init

  tmr_flag_clear (Thumb, 6 bytes, Stack size 0 bytes, at32f425_tmr.o(.text.tmr_flag_clear))
  [Called By]

  - >> TMR6_GLOBAL_IRQHandler

  tmr_interrupt_enable (Thumb, 26 bytes, Stack size 0 bytes, at32f425_tmr.o(.text.tmr_interrupt_enable))
  [Called By]

  - >> wk_tmr6_init

  tmr_interrupt_flag_get (Thumb, 20 bytes, Stack size 0 bytes, at32f425_tmr.o(.text.tmr_interrupt_flag_get))
  [Called By]

  - >> TMR6_GLOBAL_IRQHandler

  tmr_period_buffer_enable (Thumb, 18 bytes, Stack size 0 bytes, at32f425_tmr.o(.text.tmr_period_buffer_enable))
  [Called By]

  - >> wk_tmr6_init

  tmr_primary_mode_select (Thumb, 18 bytes, Stack size 0 bytes, at32f425_tmr.o(.text.tmr_primary_mode_select))
  [Called By]

  - >> wk_tmr6_init

  usb_connect (Thumb, 14 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_connect))
  [Called By]

  - >> usbd_core_init

  usb_disconnect (Thumb, 14 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_disconnect))
  [Called By]

  - >> usbd_core_init

  usb_ept0_setup (Thumb, 28 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept0_setup))
  [Called By]

  - >> usbd_irq_handler

  usb_ept0_start (Thumb, 48 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept0_start))
  [Called By]

  - >> usbd_reset_handler

  usb_ept_clear_stall (Thumb, 54 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept_clear_stall))
  [Called By]

  - >> usbd_clear_stall

  usb_ept_close (Thumb, 112 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept_close))
  [Called By]

  - >> usbd_ept_close

  usb_ept_default_init (Thumb, 282 bytes, Stack size 20 bytes, usbd_core.o(.text.usb_ept_default_init))
  [Stack]

  - Max Depth = 20
  - Call Chain = usb_ept_default_init
  [Called By]
  - >> usbd_core_init

  usb_ept_in_clear (Thumb, 10 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept_in_clear))
  [Called By]

  - >> usbd_inept_handler

  usb_ept_in_interrupt (Thumb, 30 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept_in_interrupt))
  [Called By]

  - >> usbd_inept_handler

  usb_ept_open (Thumb, 306 bytes, Stack size 8 bytes, at32f425_usb.o(.text.usb_ept_open))
  [Stack]

  - Max Depth = 8
  - Call Chain = usb_ept_open
  [Called By]
  - >> usbd_ept_open

  usb_ept_out_clear (Thumb, 10 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept_out_clear))
  [Called By]

  - >> usbd_outept_handler

  usb_ept_out_interrupt (Thumb, 16 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept_out_interrupt))
  [Called By]

  - >> usbd_outept_handler

  usb_ept_stall (Thumb, 64 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_ept_stall))
  [Called By]

  - >> usbd_set_stall
  - >> usbd_ctrl_unsupport
  - >> usbd_core_setup_handler

  usb_flush_rx_fifo (Thumb, 72 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_flush_rx_fifo))
  [Called By]

  - >> usbd_core_init

  usb_flush_tx_fifo (Thumb, 80 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_flush_tx_fifo))
  [Called By]

  - >> usbd_reset_handler
  - >> usbd_flush_tx_fifo
  - >> usbd_ept_send
  - >> usbd_core_init

  usb_get_all_in_interrupt (Thumb, 14 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_get_all_in_interrupt))
  [Called By]

  - >> usbd_inept_handler

  usb_get_all_out_interrupt (Thumb, 14 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_get_all_out_interrupt))
  [Called By]

  - >> usbd_outept_handler

  usb_global_clear_interrupt (Thumb, 4 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_global_clear_interrupt))
  [Called By]

  - >> usbd_irq_handler

  usb_global_get_all_interrupt (Thumb, 8 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_global_get_all_interrupt))
  [Called By]

  - >> usbd_irq_handler

  usb_global_init (Thumb, 126 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_global_init))
  [Called By]

  - >> usbd_core_init

  usb_global_interrupt_enable (Thumb, 16 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_global_interrupt_enable))
  [Called By]

  - >> usbd_rxflvl_handler

  usb_global_select_core (Thumb, 6 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_global_select_core))
  [Called By]

  - >> usbd_init

  usb_global_set_mode (Thumb, 70 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_global_set_mode))
  [Called By]

  - >> usbd_core_init

  usb_interrupt_disable (Thumb, 10 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_interrupt_disable))
  [Called By]

  - >> usbd_core_init

  usb_interrupt_enable (Thumb, 10 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_interrupt_enable))
  [Called By]

  - >> usbd_core_init

  usb_open_phy_clk (Thumb, 14 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_open_phy_clk))
  [Called By]

  - >> usbd_core_init
  - >> usbd_irq_handler

  usb_printf (Thumb, 1566 bytes, Stack size 56 bytes, usb_app.o(.text.usb_printf))
  [Stack]

  - Max Depth = 112
  - Call Chain = usb_printf ⇒ usb_vcp_send_data ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usb_vcp_send_data
  [Called By]
  - >> wk_usb_app_task

  usb_read_packet (Thumb, 108 bytes, Stack size 8 bytes, at32f425_usb.o(.text.usb_read_packet))
  [Stack]

  - Max Depth = 8
  - Call Chain = usb_read_packet
  [Called By]
  - >> usbd_rxflvl_handler

  usb_set_address (Thumb, 22 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_set_address))
  [Called By]

  - >> usbd_reset_handler
  - >> usbd_set_device_addr

  usb_set_rx_fifo (Thumb, 4 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_set_rx_fifo))
  [Called By]

  - >> usbd_fifo_alloc

  usb_set_tx_fifo (Thumb, 150 bytes, Stack size 20 bytes, at32f425_usb.o(.text.usb_set_tx_fifo))
  [Stack]

  - Max Depth = 20
  - Call Chain = usb_set_tx_fifo
  [Called By]
  - >> usbd_fifo_alloc

  usb_stop_phy_clk (Thumb, 14 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_stop_phy_clk))
  [Called By]

  - >> usbd_enter_suspend

  usb_suspend_status_get (Thumb, 10 bytes, Stack size 0 bytes, at32f425_usb.o(.text.usb_suspend_status_get))
  [Called By]

  - >> usbd_enter_suspend

  usb_vcp_get_rxdata (Thumb, 118 bytes, Stack size 24 bytes, cdc_class.o(.text.usb_vcp_get_rxdata))
  [Stack]

  - Max Depth = 40
  - Call Chain = usb_vcp_get_rxdata ⇒ usbd_ept_recv
  [Calls]
  - >> usbd_ept_recv
  [Called By]
  - >> wk_usb_app_task

  usb_vcp_send_data (Thumb, 38 bytes, Stack size 8 bytes, cdc_class.o(.text.usb_vcp_send_data))
  [Stack]

  - Max Depth = 56
  - Call Chain = usb_vcp_send_data ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_ept_send
  [Called By]
  - >> usb_printf
  - >> wk_usb_app_task

  usb_write_packet (Thumb, 104 bytes, Stack size 8 bytes, at32f425_usb.o(.text.usb_write_packet))
  [Stack]

  - Max Depth = 8
  - Call Chain = usb_write_packet
  [Called By]
  - >> usbd_inept_handler
  - >> usbd_ept_send

  usbd_clear_stall (Thumb, 50 bytes, Stack size 8 bytes, usbd_core.o(.text.usbd_clear_stall))
  [Stack]

  - Max Depth = 8
  - Call Chain = usbd_clear_stall
  [Calls]
  - >> usb_ept_clear_stall
  [Called By]
  - >> usbd_endpoint_request

  usbd_core_in_handler (Thumb, 284 bytes, Stack size 8 bytes, usbd_core.o(.text.usbd_core_in_handler))
  [Stack]

  - Max Depth = 56
  - Call Chain = usbd_core_in_handler ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_ept_recv
  - >> usbd_ept_send
  [Called By]
  - >> usbd_inept_handler

  usbd_core_init (Thumb, 970 bytes, Stack size 16 bytes, usbd_core.o(.text.usbd_core_init))
  [Stack]

  - Max Depth = 44
  - Call Chain = usbd_core_init ⇒ usbd_fifo_alloc ⇒ usb_set_tx_fifo
  [Calls]
  - >> usbd_fifo_alloc
  - >> usb_ept_default_init
  - >> usb_disconnect
  - >> usb_connect
  - >> usb_open_phy_clk
  - >> usb_global_set_mode
  - >> usb_interrupt_disable
  - >> usb_interrupt_enable
  - >> usb_flush_rx_fifo
  - >> usb_flush_tx_fifo
  - >> usb_global_init
  [Called By]
  - >> usbd_init

  usbd_core_out_handler (Thumb, 196 bytes, Stack size 8 bytes, usbd_core.o(.text.usbd_core_out_handler))
  [Stack]

  - Max Depth = 56
  - Call Chain = usbd_core_out_handler ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_ept_send
  [Called By]
  - >> usbd_outept_handler

  usbd_core_setup_handler (Thumb, 114 bytes, Stack size 16 bytes, usbd_core.o(.text.usbd_core_setup_handler))
  [Stack]

  - Max Depth = 80
  - Call Chain = usbd_core_setup_handler ⇒ usbd_endpoint_request ⇒ usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_endpoint_request
  - >> usbd_interface_request
  - >> usbd_device_request
  - >> usbd_setup_request_parse
  - >> usb_ept_stall
  [Called By]
  - >> usbd_outept_handler

  usbd_ctrl_recv (Thumb, 132 bytes, Stack size 8 bytes, usbd_core.o(.text.usbd_ctrl_recv))
  [Stack]

  - Max Depth = 8
  - Call Chain = usbd_ctrl_recv
  [Called By]
  - >> class_setup_handler

  usbd_ctrl_send (Thumb, 22 bytes, Stack size 0 bytes, usbd_core.o(.text.usbd_ctrl_send))
  [Stack]

  - Max Depth = 48
  - Call Chain = usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_ept_send
  [Called By]
  - >> class_setup_handler
  - >> usbd_endpoint_request
  - >> usbd_device_request

  usbd_ctrl_send_status (Thumb, 18 bytes, Stack size 0 bytes, usbd_core.o(.text.usbd_ctrl_send_status))
  [Stack]

  - Max Depth = 48
  - Call Chain = usbd_ctrl_send_status ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_ept_send
  [Called By]
  - >> usbd_endpoint_request
  - >> usbd_interface_request
  - >> usbd_device_request

  usbd_ctrl_unsupport (Thumb, 34 bytes, Stack size 16 bytes, usbd_core.o(.text.usbd_ctrl_unsupport))
  [Stack]

  - Max Depth = 16
  - Call Chain = usbd_ctrl_unsupport
  [Calls]
  - >> usb_ept_stall
  [Called By]
  - >> class_setup_handler
  - >> usbd_endpoint_request
  - >> usbd_interface_request
  - >> usbd_device_request

  usbd_device_request (Thumb, 630 bytes, Stack size 16 bytes, usbd_sdr.o(.text.usbd_device_request))
  [Stack]

  - Max Depth = 64
  - Call Chain = usbd_device_request ⇒ usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_set_device_addr
  - >> usbd_ctrl_send
  - >> usbd_ctrl_unsupport
  - >> usbd_ctrl_send_status
  [Called By]
  - >> usbd_core_setup_handler

  usbd_endpoint_request (Thumb, 270 bytes, Stack size 16 bytes, usbd_sdr.o(.text.usbd_endpoint_request))
  [Stack]

  - Max Depth = 64
  - Call Chain = usbd_endpoint_request ⇒ usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_set_stall
  - >> usbd_clear_stall
  - >> usbd_ctrl_send
  - >> usbd_ctrl_unsupport
  - >> usbd_ctrl_send_status
  [Called By]
  - >> usbd_core_setup_handler

  usbd_enter_suspend (Thumb, 26 bytes, Stack size 8 bytes, usbd_core.o(.text.usbd_enter_suspend))
  [Stack]

  - Max Depth = 8
  - Call Chain = usbd_enter_suspend
  [Calls]
  - >> usb_suspend_status_get
  - >> usb_stop_phy_clk
  [Called By]
  - >> usbd_irq_handler

  usbd_ept_close (Thumb, 36 bytes, Stack size 0 bytes, usbd_core.o(.text.usbd_ept_close))
  [Calls]

  - >> usb_ept_close
  [Called By]
  - >> class_clear_handler

  usbd_ept_open (Thumb, 70 bytes, Stack size 20 bytes, usbd_core.o(.text.usbd_ept_open))
  [Stack]

  - Max Depth = 28
  - Call Chain = usbd_ept_open ⇒ usb_ept_open
  [Calls]
  - >> usb_ept_open
  [Called By]
  - >> class_init_handler
  - >> usbd_irq_handler

  usbd_ept_recv (Thumb, 184 bytes, Stack size 16 bytes, usbd_core.o(.text.usbd_ept_recv))
  [Stack]

  - Max Depth = 16
  - Call Chain = usbd_ept_recv
  [Called By]
  - >> class_init_handler
  - >> usbd_core_in_handler
  - >> usb_vcp_get_rxdata

  usbd_ept_send (Thumb, 398 bytes, Stack size 40 bytes, usbd_core.o(.text.usbd_ept_send))
  [Stack]

  - Max Depth = 48
  - Call Chain = usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usb_write_packet
  - >> usb_flush_tx_fifo
  [Called By]
  - >> usbd_ctrl_send
  - >> usbd_ctrl_send_status
  - >> usbd_core_out_handler
  - >> usbd_core_in_handler
  - >> usb_vcp_send_data

  usbd_fifo_alloc (Thumb, 122 bytes, Stack size 8 bytes, usbd_core.o(.text.usbd_fifo_alloc))
  [Stack]

  - Max Depth = 28
  - Call Chain = usbd_fifo_alloc ⇒ usb_set_tx_fifo
  [Calls]
  - >> usb_set_tx_fifo
  - >> usb_set_rx_fifo
  [Called By]
  - >> usbd_reset_handler
  - >> usbd_core_init

  usbd_flush_tx_fifo (Thumb, 10 bytes, Stack size 0 bytes, usbd_core.o(.text.usbd_flush_tx_fifo))
  [Calls]

  - >> usb_flush_tx_fifo
  [Called By]
  - >> class_in_handler

  usbd_get_recv_len (Thumb, 16 bytes, Stack size 0 bytes, usbd_core.o(.text.usbd_get_recv_len))
  [Called By]

  - >> class_out_handler
  - >> class_ept0_rx_handler

  usbd_inept_handler (Thumb, 354 bytes, Stack size 40 bytes, usbd_int.o(.text.usbd_inept_handler))
  [Stack]

  - Max Depth = 96
  - Call Chain = usbd_inept_handler ⇒ usbd_core_in_handler ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_core_in_handler
  - >> usb_ept_in_clear
  - >> usb_ept_in_interrupt
  - >> usb_get_all_in_interrupt
  - >> usb_write_packet
  [Called By]
  - >> usbd_irq_handler

  usbd_init (Thumb, 94 bytes, Stack size 24 bytes, usb_core.o(.text.usbd_init))
  [Stack]

  - Max Depth = 68
  - Call Chain = usbd_init ⇒ usbd_core_init ⇒ usbd_fifo_alloc ⇒ usb_set_tx_fifo
  [Calls]
  - >> usbd_core_init
  - >> usb_global_select_core
  [Called By]
  - >> wk_usb_app_init

  usbd_interface_request (Thumb, 58 bytes, Stack size 8 bytes, usbd_sdr.o(.text.usbd_interface_request))
  [Stack]

  - Max Depth = 56
  - Call Chain = usbd_interface_request ⇒ usbd_ctrl_send_status ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_ctrl_unsupport
  - >> usbd_ctrl_send_status
  [Called By]
  - >> usbd_core_setup_handler

  usbd_irq_handler (Thumb, 404 bytes, Stack size 24 bytes, usbd_int.o(.text.usbd_irq_handler))
  [Stack]

  - Max Depth = 136
  - Call Chain = usbd_irq_handler ⇒ usbd_outept_handler ⇒ usbd_core_setup_handler ⇒ usbd_endpoint_request ⇒ usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_rxflvl_handler
  - >> usbd_reset_handler
  - >> usbd_outept_handler
  - >> usbd_inept_handler
  - >> usbd_enter_suspend
  - >> usbd_ept_open
  - >> usb_ept0_setup
  - >> usb_open_phy_clk
  - >> usb_global_clear_interrupt
  - >> usb_global_get_all_interrupt
  [Called By]
  - >> wk_otgfs1_irq_handler

  usbd_outept_handler (Thumb, 154 bytes, Stack size 32 bytes, usbd_int.o(.text.usbd_outept_handler))
  [Stack]

  - Max Depth = 112
  - Call Chain = usbd_outept_handler ⇒ usbd_core_setup_handler ⇒ usbd_endpoint_request ⇒ usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_core_setup_handler
  - >> usbd_core_out_handler
  - >> usb_ept_out_clear
  - >> usb_ept_out_interrupt
  - >> usb_get_all_out_interrupt
  [Called By]
  - >> usbd_irq_handler

  usbd_reset_handler (Thumb, 610 bytes, Stack size 16 bytes, usbd_int.o(.text.usbd_reset_handler))
  [Stack]

  - Max Depth = 44
  - Call Chain = usbd_reset_handler ⇒ usbd_fifo_alloc ⇒ usb_set_tx_fifo
  [Calls]
  - >> usbd_fifo_alloc
  - >> usb_ept0_start
  - >> usb_set_address
  - >> usb_flush_tx_fifo
  [Called By]
  - >> usbd_irq_handler

  usbd_rxflvl_handler (Thumb, 106 bytes, Stack size 24 bytes, usbd_int.o(.text.usbd_rxflvl_handler))
  [Stack]

  - Max Depth = 32
  - Call Chain = usbd_rxflvl_handler ⇒ usb_read_packet
  [Calls]
  - >> usb_read_packet
  - >> usb_global_interrupt_enable
  [Called By]
  - >> usbd_irq_handler

  usbd_set_device_addr (Thumb, 6 bytes, Stack size 0 bytes, usbd_core.o(.text.usbd_set_device_addr))
  [Calls]

  - >> usb_set_address
  [Called By]
  - >> usbd_device_request

  usbd_set_stall (Thumb, 50 bytes, Stack size 8 bytes, usbd_core.o(.text.usbd_set_stall))
  [Stack]

  - Max Depth = 8
  - Call Chain = usbd_set_stall
  [Calls]
  - >> usb_ept_stall
  [Called By]
  - >> usbd_endpoint_request

  usbd_setup_request_parse (Thumb, 22 bytes, Stack size 0 bytes, usbd_sdr.o(.text.usbd_setup_request_parse))
  [Called By]

  - >> usbd_core_setup_handler

  wk_acc_init (Thumb, 38 bytes, Stack size 8 bytes, wk_acc.o(.text.wk_acc_init))
  [Stack]

  - Max Depth = 8
  - Call Chain = wk_acc_init
  [Calls]
  - >> acc_calibration_mode_enable
  - >> acc_write_c3
  - >> acc_write_c2
  - >> acc_write_c1
  [Called By]
  - >> main

  wk_gpio_config (Thumb, 48 bytes, Stack size 24 bytes, wk_gpio.o(.text.wk_gpio_config))
  [Stack]

  - Max Depth = 44
  - Call Chain = wk_gpio_config ⇒ gpio_init
  [Calls]
  - >> gpio_bits_reset
  - >> gpio_init
  - >> gpio_default_para_init
  [Called By]
  - >> main

  wk_nvic_config (Thumb, 102 bytes, Stack size 8 bytes, at32f425_wk_config.o(.text.wk_nvic_config))
  [Stack]

  - Max Depth = 24
  - Call Chain = wk_nvic_config ⇒ nvic_irq_enable
  [Calls]
  - >> nvic_irq_enable
  - >> nvic_priority_group_config
  [Called By]
  - >> main

  wk_otgfs1_irq_handler (Thumb, 12 bytes, Stack size 0 bytes, usb_app.o(.text.wk_otgfs1_irq_handler))
  [Stack]

  - Max Depth = 136
  - Call Chain = wk_otgfs1_irq_handler ⇒ usbd_irq_handler ⇒ usbd_outept_handler ⇒ usbd_core_setup_handler ⇒ usbd_endpoint_request ⇒ usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_irq_handler
  [Called By]
  - >> OTGFS1_IRQHandler

  wk_periph_clock_config (Thumb, 88 bytes, Stack size 8 bytes, at32f425_wk_config.o(.text.wk_periph_clock_config))
  [Stack]

  - Max Depth = 8
  - Call Chain = wk_periph_clock_config
  [Calls]
  - >> crm_periph_clock_enable
  [Called By]
  - >> main

  wk_scfg_init (Thumb, 18 bytes, Stack size 8 bytes, wk_scfg.o(.text.wk_scfg_init))
  [Stack]

  - Max Depth = 8
  - Call Chain = wk_scfg_init
  [Calls]
  - >> scfg_i2s_full_duplex_config
  - >> scfg_pa11pa12_pin_remap
  [Called By]
  - >> main

  wk_system_clock_config (Thumb, 136 bytes, Stack size 8 bytes, at32f425_wk_config.o(.text.wk_system_clock_config))
  [Stack]

  - Max Depth = 24
  - Call Chain = wk_system_clock_config ⇒ system_core_clock_update
  [Calls]
  - >> system_core_clock_update
  - >> crm_sysclk_switch_status_get
  - >> crm_sysclk_switch
  - >> crm_apb1_div_set
  - >> crm_apb2_div_set
  - >> crm_ahb_div_set
  - >> crm_pll_config
  - >> crm_flag_get
  - >> crm_clock_source_enable
  - >> crm_reset
  [Called By]
  - >> main

  wk_timebase_init (Thumb, 72 bytes, Stack size 40 bytes, wk_system.o(.text.wk_timebase_init))
  [Stack]

  - Max Depth = 60
  - Call Chain = wk_timebase_init ⇒ crm_clocks_freq_get
  [Calls]
  - >> systick_clock_source_config
  - >> crm_clocks_freq_get
  [Called By]
  - >> main

  wk_tmr6_init (Thumb, 68 bytes, Stack size 8 bytes, wk_tmr.o(.text.wk_tmr6_init))
  [Stack]

  - Max Depth = 8
  - Call Chain = wk_tmr6_init
  [Calls]
  - >> tmr_interrupt_enable
  - >> tmr_counter_enable
  - >> tmr_primary_mode_select
  - >> tmr_base_init
  - >> tmr_period_buffer_enable
  - >> tmr_cnt_dir_set
  [Called By]
  - >> main

  wk_usb_app_init (Thumb, 44 bytes, Stack size 16 bytes, usb_app.o(.text.wk_usb_app_init))
  [Stack]

  - Max Depth = 84
  - Call Chain = wk_usb_app_init ⇒ usbd_init ⇒ usbd_core_init ⇒ usbd_fifo_alloc ⇒ usb_set_tx_fifo
  [Calls]
  - >> usbd_init
  [Called By]
  - >> main

  wk_usb_app_task (Thumb, 760 bytes, Stack size 32 bytes, usb_app.o(.text.wk_usb_app_task))
  [Stack]

  - Max Depth = 144 + Unknown Stack Size
  - Call Chain = wk_usb_app_task ⇒ usb_printf ⇒ usb_vcp_send_data ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> erase_app_sectors
  - >> iap_init
  - >> nvic_system_reset
  - >> iap_command_handle
  - >> flash_60bytes_write
  - >> usb_vcp_get_rxdata
  - >> usb_vcp_send_data
  - >> usb_printf
  - >> __aeabi_memclr4
  [Called By]
  - >> main

  wk_usb_otgfs1_init (Thumb, 16 bytes, Stack size 8 bytes, wk_usb_otgfs.o(.text.wk_usb_otgfs1_init))
  [Stack]

  - Max Depth = 8
  - Call Chain = wk_usb_otgfs1_init
  [Calls]
  - >> crm_usb_clock_source_select
  - >> crm_usb_div_reset
  [Called By]
  - >> main

  ### Local Symbols

  __NVIC_SystemReset (Thumb, 42 bytes, Stack size 0 bytes, at32f425_misc.o(.text.__NVIC_SystemReset))
  [Called By]

  - >> nvic_system_reset

  class_init_handler (Thumb, 98 bytes, Stack size 16 bytes, cdc_class.o(.text.class_init_handler))
  [Stack]

  - Max Depth = 44
  - Call Chain = class_init_handler ⇒ usbd_ept_open ⇒ usb_ept_open
  [Calls]
  - >> usbd_ept_open
  - >> usbd_ept_recv
  [Address Reference Count : 1]
  - cdc_class.o(.data.cdc_class_handler)

  class_clear_handler (Thumb, 30 bytes, Stack size 8 bytes, cdc_class.o(.text.class_clear_handler))
  [Stack]

  - Max Depth = 8
  - Call Chain = class_clear_handler
  [Calls]
  - >> usbd_ept_close
  [Address Reference Count : 1]
  - cdc_class.o(.data.cdc_class_handler)

  class_setup_handler (Thumb, 202 bytes, Stack size 8 bytes, cdc_class.o(.text.class_setup_handler))
  [Stack]

  - Max Depth = 56
  - Call Chain = class_setup_handler ⇒ usbd_ctrl_send ⇒ usbd_ept_send ⇒ usb_write_packet
  [Calls]
  - >> usbd_ctrl_recv
  - >> usbd_ctrl_send
  - >> usbd_ctrl_unsupport
  [Address Reference Count : 1]
  - cdc_class.o(.data.cdc_class_handler)

  class_ept0_tx_handler (Thumb, 4 bytes, Stack size 0 bytes, cdc_class.o(.text.class_ept0_tx_handler))
  [Address Reference Count : 1]

  - cdc_class.o(.data.cdc_class_handler)

  class_ept0_rx_handler (Thumb, 60 bytes, Stack size 16 bytes, cdc_class.o(.text.class_ept0_rx_handler))
  [Stack]

  - Max Depth = 16
  - Call Chain = class_ept0_rx_handler
  [Calls]
  - >> usbd_get_recv_len
  [Address Reference Count : 1]
  - cdc_class.o(.data.cdc_class_handler)

  class_in_handler (Thumb, 20 bytes, Stack size 8 bytes, cdc_class.o(.text.class_in_handler))
  [Stack]

  - Max Depth = 8
  - Call Chain = class_in_handler
  [Calls]
  - >> usbd_flush_tx_fifo
  [Address Reference Count : 1]
  - cdc_class.o(.data.cdc_class_handler)

  class_out_handler (Thumb, 24 bytes, Stack size 8 bytes, cdc_class.o(.text.class_out_handler))
  [Stack]

  - Max Depth = 8
  - Call Chain = class_out_handler
  [Calls]
  - >> usbd_get_recv_len
  [Address Reference Count : 1]
  - cdc_class.o(.data.cdc_class_handler)

  class_sof_handler (Thumb, 4 bytes, Stack size 0 bytes, cdc_class.o(.text.class_sof_handler))
  [Address Reference Count : 1]

  - cdc_class.o(.data.cdc_class_handler)

  class_event_handler (Thumb, 4 bytes, Stack size 0 bytes, cdc_class.o(.text.class_event_handler))
  [Address Reference Count : 1]

  - cdc_class.o(.data.cdc_class_handler)

  get_device_descriptor (Thumb, 10 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_descriptor))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_qualifier (Thumb, 4 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_qualifier))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_configuration (Thumb, 10 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_configuration))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_other_speed (Thumb, 4 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_other_speed))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_lang_id (Thumb, 10 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_lang_id))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_manufacturer_string (Thumb, 60 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_manufacturer_string))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_product_string (Thumb, 134 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_product_string))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_serial_string (Thumb, 362 bytes, Stack size 16 bytes, cdc_desc.o(.text.get_device_serial_string))
  [Stack]

  - Max Depth = 16
  - Call Chain = get_device_serial_string
  [Address Reference Count : 1]
  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_interface_string (Thumb, 154 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_interface_string))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  get_device_config_string (Thumb, 134 bytes, Stack size 0 bytes, cdc_desc.o(.text.get_device_config_string))
  [Address Reference Count : 1]

  - cdc_desc.o(.data.cdc_desc_handler)

  ### Undefined Global Symbols