Static Call Graph for image .\output\GD32E230C_START.axf



#<CALLGRAPH># ARM Linker, 6090000: Last Updated: Mon Nov 20 15:12:18 2023

Maximum Stack Usage = 492 bytes + Unknown(Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

main ⇒ USART0_Init ⇒ usart_baudrate_set ⇒ rcu_clock_freq_get

Mutually Recursive functions

  • ADC_CMP_IRQHandler   ⇒   ADC_CMP_IRQHandler

    Function Pointers

    Global Symbols

    __main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
    [Address Reference Count : 1]

    _main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))

    _main_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

    [Calls]

    __main_after_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

    [Called By]

    _main_clock (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))

    _main_cpp_init (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))

    _main_init (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))

    __rt_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))

    __rt_final_exit (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))

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

    ADC_CMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32e23x.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    rand (Thumb, 18 bytes, Stack size 0 bytes, rand.o(.text))

    [Called By]

    srand (Thumb, 6 bytes, Stack size 0 bytes, rand.o(.text), UNUSED)

    __aeabi_uidiv (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)

    __aeabi_uidivmod (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)

    [Called By]

    __aeabi_uldivmod (Thumb, 96 bytes, Stack size 48 bytes, uldiv.o(.text), UNUSED)

    [Calls]


    [Called By]

    __I$use$fp (Thumb, 0 bytes, Stack size 48 bytes, iusefp.o(.text), UNUSED)

    __aeabi_dadd (Thumb, 328 bytes, Stack size 48 bytes, dadd.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_dsub (Thumb, 12 bytes, Stack size 8 bytes, dadd.o(.text), UNUSED)

    [Calls]

    __aeabi_drsub (Thumb, 12 bytes, Stack size 8 bytes, dadd.o(.text), UNUSED)

    [Calls]

    __aeabi_dmul (Thumb, 202 bytes, Stack size 72 bytes, dmul.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_ddiv (Thumb, 234 bytes, Stack size 40 bytes, ddiv.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_d2ulz (Thumb, 54 bytes, Stack size 8 bytes, dfixul.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_cdrcmple (Thumb, 38 bytes, Stack size 0 bytes, cdrcmple.o(.text), UNUSED)

    [Called By]

    __scatterload (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))

    [Calls]


    [Called By]

    __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)

    __aeabi_llsl (Thumb, 32 bytes, Stack size 8 bytes, llshl.o(.text), UNUSED)

    [Called By]

    _ll_shift_l (Thumb, 0 bytes, Stack size 8 bytes, llshl.o(.text), UNUSED)

    __aeabi_llsr (Thumb, 34 bytes, Stack size 8 bytes, llushr.o(.text), UNUSED)

    [Called By]

    _ll_ushift_r (Thumb, 0 bytes, Stack size 8 bytes, llushr.o(.text), UNUSED)

    __aeabi_lasr (Thumb, 38 bytes, Stack size 8 bytes, llsshr.o(.text), UNUSED)

    [Called By]

    _ll_sshift_r (Thumb, 0 bytes, Stack size 8 bytes, llsshr.o(.text), UNUSED)

    _double_round (Thumb, 26 bytes, Stack size 8 bytes, depilogue.o(.text), UNUSED)

    [Called By]

    _double_epilogue (Thumb, 164 bytes, Stack size 48 bytes, depilogue.o(.text), UNUSED)

    [Calls]


    [Called By]

    CheckBusy (Thumb, 28 bytes, Stack size 0 bytes, usart.o(.text.CheckBusy))

    [Called By]

    Delay_ms (Thumb, 56 bytes, Stack size 12 bytes, delay.o(.text.Delay_ms))

    [Stack]


    [Called By]

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

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

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

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

    SysTick_Handler (Thumb, 8 bytes, Stack size 8 bytes, gd32e23x_it.o(.text.SysTick_Handler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    SystemInit (Thumb, 172 bytes, Stack size 16 bytes, system_gd32e23x.o(.text.SystemInit))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USART0_IRQHandler (Thumb, 56 bytes, Stack size 16 bytes, usart.o(.text.USART0_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USART0_Init (Thumb, 224 bytes, Stack size 40 bytes, usart.o(.text.USART0_Init))

    [Stack]


    [Calls]
    [Called By]

    USART0_Send_Byte (Thumb, 60 bytes, Stack size 24 bytes, usart.o(.text.USART0_Send_Byte))

    [Stack]


    [Calls]
    [Called By]

    USART0_Send_Str (Thumb, 42 bytes, Stack size 16 bytes, usart.o(.text.USART0_Send_Str))

    [Stack]


    [Calls]
    [Called By]

    USART1_IRQHandler (Thumb, 92 bytes, Stack size 16 bytes, usart.o(.text.USART1_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    UartSend (Thumb, 80 bytes, Stack size 24 bytes, usart.o(.text.UartSend))

    [Stack]


    [Calls]
    [Called By]

    delay_decrement (Thumb, 28 bytes, Stack size 0 bytes, systick.o(.text.delay_decrement))

    [Called By]

    getch (Thumb, 288 bytes, Stack size 8 bytes, usart.o(.text.getch))

    [Stack]


    [Called By]

    gpio_af_set (Thumb, 200 bytes, Stack size 52 bytes, gd32e23x_gpio.o(.text.gpio_af_set))

    [Stack]


    [Called By]

    gpio_mode_set (Thumb, 146 bytes, Stack size 64 bytes, gd32e23x_gpio.o(.text.gpio_mode_set))

    [Stack]


    [Called By]

    gpio_output_options_set (Thumb, 152 bytes, Stack size 60 bytes, gd32e23x_gpio.o(.text.gpio_output_options_set))

    [Stack]


    [Called By]

    main (Thumb, 604 bytes, Stack size 320 bytes, main.o(.text.main))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    nvic_irq_enable (Thumb, 46 bytes, Stack size 32 bytes, gd32e23x_misc.o(.text.nvic_irq_enable))

    [Stack]


    [Calls]
    [Called By]

    nvic_vector_table_set (Thumb, 44 bytes, Stack size 24 bytes, gd32e23x_misc.o(.text.nvic_vector_table_set))

    [Stack]


    [Called By]

    rcu_clock_freq_get (Thumb, 764 bytes, Stack size 84 bytes, gd32e23x_rcu.o(.text.rcu_clock_freq_get))

    [Stack]


    [Called By]

    rcu_periph_clock_enable (Thumb, 44 bytes, Stack size 16 bytes, gd32e23x_rcu.o(.text.rcu_periph_clock_enable))

    [Stack]


    [Called By]

    rcu_periph_reset_disable (Thumb, 44 bytes, Stack size 16 bytes, gd32e23x_rcu.o(.text.rcu_periph_reset_disable))

    [Stack]


    [Called By]

    rcu_periph_reset_enable (Thumb, 44 bytes, Stack size 16 bytes, gd32e23x_rcu.o(.text.rcu_periph_reset_enable))

    [Stack]


    [Called By]

    systick_config (Thumb, 52 bytes, Stack size 16 bytes, systick.o(.text.systick_config))

    [Stack]


    [Calls]
    [Called By]

    usart_baudrate_set (Thumb, 192 bytes, Stack size 48 bytes, gd32e23x_usart.o(.text.usart_baudrate_set))

    [Stack]


    [Calls]
    [Called By]

    usart_data_receive (Thumb, 24 bytes, Stack size 8 bytes, gd32e23x_usart.o(.text.usart_data_receive))

    [Stack]


    [Called By]

    usart_data_transmit (Thumb, 32 bytes, Stack size 16 bytes, gd32e23x_usart.o(.text.usart_data_transmit))

    [Stack]


    [Called By]

    usart_deinit (Thumb, 88 bytes, Stack size 32 bytes, gd32e23x_usart.o(.text.usart_deinit))

    [Stack]


    [Calls]
    [Called By]

    usart_enable (Thumb, 22 bytes, Stack size 8 bytes, gd32e23x_usart.o(.text.usart_enable))

    [Stack]


    [Called By]

    usart_flag_get (Thumb, 66 bytes, Stack size 28 bytes, gd32e23x_usart.o(.text.usart_flag_get))

    [Stack]


    [Called By]

    usart_hardware_flow_cts_config (Thumb, 52 bytes, Stack size 24 bytes, gd32e23x_usart.o(.text.usart_hardware_flow_cts_config))

    [Stack]


    [Called By]

    usart_hardware_flow_rts_config (Thumb, 52 bytes, Stack size 24 bytes, gd32e23x_usart.o(.text.usart_hardware_flow_rts_config))

    [Stack]


    [Called By]

    usart_interrupt_enable (Thumb, 44 bytes, Stack size 32 bytes, gd32e23x_usart.o(.text.usart_interrupt_enable))

    [Stack]


    [Called By]

    usart_interrupt_flag_clear (Thumb, 72 bytes, Stack size 16 bytes, gd32e23x_usart.o(.text.usart_interrupt_flag_clear))

    [Stack]


    [Called By]

    usart_interrupt_flag_get (Thumb, 116 bytes, Stack size 48 bytes, gd32e23x_usart.o(.text.usart_interrupt_flag_get))

    [Stack]


    [Called By]

    usart_parity_config (Thumb, 52 bytes, Stack size 24 bytes, gd32e23x_usart.o(.text.usart_parity_config))

    [Stack]


    [Called By]

    usart_receive_config (Thumb, 40 bytes, Stack size 24 bytes, gd32e23x_usart.o(.text.usart_receive_config))

    [Stack]


    [Called By]

    usart_stop_bit_set (Thumb, 52 bytes, Stack size 24 bytes, gd32e23x_usart.o(.text.usart_stop_bit_set))

    [Stack]


    [Called By]

    usart_transmit_config (Thumb, 40 bytes, Stack size 24 bytes, gd32e23x_usart.o(.text.usart_transmit_config))

    [Stack]


    [Called By]

    usart_word_length_set (Thumb, 52 bytes, Stack size 24 bytes, gd32e23x_usart.o(.text.usart_word_length_set))

    [Stack]


    [Called By]

    __0sprintf (Thumb, 36 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)

    [Calls]

    __1sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)

    __2sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)

    __c89sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)

    sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf))

    [Stack]


    [Called By]

    __ARM_clz (Thumb, 46 bytes, Stack size 0 bytes, depilogue.o(i.__ARM_clz), UNUSED)

    [Called By]

    __scatterload_copy (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)

    __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)

    __scatterload_zeroinit (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)

    Local Symbols

    SysTick_Config (Thumb, 88 bytes, Stack size 24 bytes, systick.o(.text.SysTick_Config))

    [Stack]


    [Calls]
    [Called By]

    __NVIC_SetPriority (Thumb, 144 bytes, Stack size 32 bytes, systick.o(.text.__NVIC_SetPriority))

    [Stack]


    [Called By]

    system_clock_72m_hxtal (Thumb, 232 bytes, Stack size 12 bytes, system_gd32e23x.o(.text.system_clock_72m_hxtal))

    [Stack]


    [Called By]

    system_clock_config (Thumb, 8 bytes, Stack size 8 bytes, system_gd32e23x.o(.text.system_clock_config))

    [Stack]


    [Calls]
    [Called By]

    __NVIC_EnableIRQ (Thumb, 60 bytes, Stack size 8 bytes, gd32e23x_misc.o(.text.__NVIC_EnableIRQ))

    [Stack]


    [Called By]

    __NVIC_SetPriority (Thumb, 144 bytes, Stack size 32 bytes, gd32e23x_misc.o(.text.__NVIC_SetPriority))

    [Stack]


    [Called By]

    _fp_digits (Thumb, 344 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)

    [Calls]


    [Called By]

    _printf_core (Thumb, 1754 bytes, Stack size 128 bytes, printfa.o(i._printf_core), UNUSED)

    [Calls]


    [Called By]

    _printf_post_padding (Thumb, 32 bytes, Stack size 24 bytes, printfa.o(i._printf_post_padding), UNUSED)

    [Called By]

    _printf_pre_padding (Thumb, 44 bytes, Stack size 40 bytes, printfa.o(i._printf_pre_padding), UNUSED)

    [Called By]

    _sputc (Thumb, 10 bytes, Stack size 0 bytes, printfa.o(i._sputc))

    [Called By]


    [Address Reference Count : 1]

    Undefined Global Symbols