Component: ARM Compiler 5.06 update 7 (build 960) Tool: armlink [4d3601]

==============================================================================

Section Cross References

    system_gd32f10x.o(i.SystemInit) refers to system_gd32f10x.o(i.system_clock_config) for system_clock_config
    system_gd32f10x.o(i.SystemInit) refers to gd32f10x_misc.o(i.nvic_vector_table_set) for nvic_vector_table_set
    system_gd32f10x.o(i.system_clock_config) refers to system_gd32f10x.o(i.system_clock_108m_hxtal) for system_clock_108m_hxtal
    startup_gd32f10x_xd.o(RESET) refers to startup_gd32f10x_xd.o(STACK) for __initial_sp
    startup_gd32f10x_xd.o(RESET) refers to startup_gd32f10x_xd.o(.text) for Reset_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.NMI_Handler) for NMI_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.HardFault_Handler) for HardFault_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.MemManage_Handler) for MemManage_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.BusFault_Handler) for BusFault_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.UsageFault_Handler) for UsageFault_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.SVC_Handler) for SVC_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.DebugMon_Handler) for DebugMon_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.PendSV_Handler) for PendSV_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.SysTick_Handler) for SysTick_Handler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.DMA0_Channel4_IRQHandler) for DMA0_Channel4_IRQHandler
    startup_gd32f10x_xd.o(RESET) refers to gd32f10x_it.o(i.USART0_IRQHandler) for USART0_IRQHandler
    startup_gd32f10x_xd.o(.text) refers to system_gd32f10x.o(i.SystemInit) for SystemInit
    startup_gd32f10x_xd.o(.text) refers to entry.o(.ARM.Collect$$$$00000000) for __main
    boot.o(i.BootLoader_Brance) refers to fmc.o(i.GD32_EraseFlash) for GD32_EraseFlash
    boot.o(i.BootLoader_Brance) refers to main.o(i.task_fwdgt_reload) for task_fwdgt_reload
    boot.o(i.BootLoader_Brance) refers to memseta.o(.text) for __aeabi_memclr4
    boot.o(i.BootLoader_Brance) refers to w25q32.o(i.W25Q32_Read) for W25Q32_Read
    boot.o(i.BootLoader_Brance) refers to fmc.o(i.GD32_WriteFlash) for GD32_WriteFlash
    boot.o(i.BootLoader_Brance) refers to ota_message.o(i.clear_ota_message_config_block) for clear_ota_message_config_block
    boot.o(i.BootLoader_Brance) refers to boot.o(i.LOAD_A) for LOAD_A
    boot.o(i.BootLoader_Clear) refers to gd32f10x_gpio.o(i.gpio_deinit) for gpio_deinit
    boot.o(i.LOAD_A) refers to boot.o(.emb_text) for MSR_SP
    boot.o(i.LOAD_A) refers to boot.o(i.BootLoader_Clear) for BootLoader_Clear
    boot.o(i.LOAD_A) refers to boot.o(.data) for load_A
    delay.o(i.Delay_Init) refers to gd32f10x_misc.o(i.systick_clksource_set) for systick_clksource_set
    delay.o(i.Delay_Ms) refers to delay.o(i.Delay_Us) for Delay_Us
    fmc.o(i.GD32_EraseFlash) refers to gd32f10x_fmc.o(i.fmc_unlock) for fmc_unlock
    fmc.o(i.GD32_EraseFlash) refers to gd32f10x_fmc.o(i.fmc_page_erase) for fmc_page_erase
    fmc.o(i.GD32_EraseFlash) refers to gd32f10x_fmc.o(i.fmc_lock) for fmc_lock
    fmc.o(i.GD32_WriteFlash) refers to gd32f10x_fmc.o(i.fmc_unlock) for fmc_unlock
    fmc.o(i.GD32_WriteFlash) refers to gd32f10x_fmc.o(i.fmc_word_program) for fmc_word_program
    fmc.o(i.GD32_WriteFlash) refers to gd32f10x_fmc.o(i.fmc_lock) for fmc_lock
    gd32f10x_it.o(i.DMA0_Channel4_IRQHandler) refers to gd32f10x_dma.o(i.dma_interrupt_flag_clear) for dma_interrupt_flag_clear
    gd32f10x_it.o(i.USART0_IRQHandler) refers to gd32f10x_usart.o(i.usart_interrupt_flag_get) for usart_interrupt_flag_get
    gd32f10x_it.o(i.USART0_IRQHandler) refers to gd32f10x_usart.o(i.usart_interrupt_flag_clear) for usart_interrupt_flag_clear
    gd32f10x_it.o(i.USART0_IRQHandler) refers to gd32f10x_usart.o(i.usart_data_receive) for usart_data_receive
    gd32f10x_it.o(i.USART0_IRQHandler) refers to gd32f10x_dma.o(i.dma_channel_disable) for dma_channel_disable
    gd32f10x_it.o(i.USART0_IRQHandler) refers to gd32f10x_dma.o(i.dma_channel_enable) for dma_channel_enable
    gd32f10x_it.o(i.USART0_IRQHandler) refers to usart.o(.data) for UART0_RX_STAT
    spi.o(i.SPI0_Init) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    spi.o(i.SPI0_Init) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    spi.o(i.SPI0_Init) refers to gd32f10x_spi.o(i.spi_i2s_deinit) for spi_i2s_deinit
    spi.o(i.SPI0_Init) refers to gd32f10x_spi.o(i.spi_init) for spi_init
    spi.o(i.SPI0_Init) refers to gd32f10x_spi.o(i.spi_enable) for spi_enable
    spi.o(i.SPI0_Read) refers to spi.o(i.SPI0_ReadWriteByte) for SPI0_ReadWriteByte
    spi.o(i.SPI0_ReadWriteByte) refers to gd32f10x_spi.o(i.spi_i2s_flag_get) for spi_i2s_flag_get
    spi.o(i.SPI0_ReadWriteByte) refers to gd32f10x_spi.o(i.spi_i2s_data_transmit) for spi_i2s_data_transmit
    spi.o(i.SPI0_ReadWriteByte) refers to gd32f10x_spi.o(i.spi_i2s_data_receive) for spi_i2s_data_receive
    spi.o(i.SPI0_Write) refers to spi.o(i.SPI0_ReadWriteByte) for SPI0_ReadWriteByte
    w25q32.o(i.W25Q32_Enable) refers to w25q32.o(i.W25Q32_WaitBusy) for W25Q32_WaitBusy
    w25q32.o(i.W25Q32_Enable) refers to gd32f10x_gpio.o(i.gpio_bit_reset) for gpio_bit_reset
    w25q32.o(i.W25Q32_Enable) refers to spi.o(i.SPI0_ReadWriteByte) for SPI0_ReadWriteByte
    w25q32.o(i.W25Q32_Enable) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    w25q32.o(i.W25Q32_Erase64K) refers to w25q32.o(i.W25Q32_WaitBusy) for W25Q32_WaitBusy
    w25q32.o(i.W25Q32_Erase64K) refers to w25q32.o(i.W25Q32_Enable) for W25Q32_Enable
    w25q32.o(i.W25Q32_Erase64K) refers to gd32f10x_gpio.o(i.gpio_bit_reset) for gpio_bit_reset
    w25q32.o(i.W25Q32_Erase64K) refers to spi.o(i.SPI0_Write) for SPI0_Write
    w25q32.o(i.W25Q32_Erase64K) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    w25q32.o(i.W25Q32_Init) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    w25q32.o(i.W25Q32_Init) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    w25q32.o(i.W25Q32_Init) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    w25q32.o(i.W25Q32_Init) refers to spi.o(i.SPI0_Init) for SPI0_Init
    w25q32.o(i.W25Q32_PageWrite) refers to w25q32.o(i.W25Q32_WaitBusy) for W25Q32_WaitBusy
    w25q32.o(i.W25Q32_PageWrite) refers to w25q32.o(i.W25Q32_Enable) for W25Q32_Enable
    w25q32.o(i.W25Q32_PageWrite) refers to gd32f10x_gpio.o(i.gpio_bit_reset) for gpio_bit_reset
    w25q32.o(i.W25Q32_PageWrite) refers to spi.o(i.SPI0_Write) for SPI0_Write
    w25q32.o(i.W25Q32_PageWrite) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    w25q32.o(i.W25Q32_Read) refers to w25q32.o(i.W25Q32_WaitBusy) for W25Q32_WaitBusy
    w25q32.o(i.W25Q32_Read) refers to gd32f10x_gpio.o(i.gpio_bit_reset) for gpio_bit_reset
    w25q32.o(i.W25Q32_Read) refers to spi.o(i.SPI0_Write) for SPI0_Write
    w25q32.o(i.W25Q32_Read) refers to spi.o(i.SPI0_Read) for SPI0_Read
    w25q32.o(i.W25Q32_Read) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    w25q32.o(i.W25Q32_WaitBusy) refers to gd32f10x_gpio.o(i.gpio_bit_reset) for gpio_bit_reset
    w25q32.o(i.W25Q32_WaitBusy) refers to spi.o(i.SPI0_ReadWriteByte) for SPI0_ReadWriteByte
    w25q32.o(i.W25Q32_WaitBusy) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    ota_message.o(i.WaitForUpData) refers to ota_message.o(i.extract_data_from_buffer) for extract_data_from_buffer
    ota_message.o(i.WaitForUpData) refers to ota_message.o(i.checksum) for checksum
    ota_message.o(i.WaitForUpData) refers to usart.o(.data) for UART0_RX_STAT
    ota_message.o(i.clear_ota_message_config_block) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    ota_message.o(i.clear_ota_message_config_block) refers to ec800m.o(i.WaitResponse) for WaitResponse
    ota_message.o(i.clear_ota_message_config_block) refers to ota_message.o(.data) for ota_message
    ota_message.o(i.extract_data_from_buffer) refers to _scanf_int.o(.text) for _scanf_int
    ota_message.o(i.extract_data_from_buffer) refers to ota_message.o(i.find_string) for find_string
    ota_message.o(i.extract_data_from_buffer) refers to __0sscanf.o(.text) for __0sscanf
    ota_message.o(i.extract_data_from_buffer) refers to strchr.o(.text) for strchr
    ota_message.o(i.find_string) refers to strstr.o(.text) for strstr
    ota_message.o(i.get_config_params) refers to ota_message.o(.data) for ota_message
    ota_message.o(i.load_ota_message_config_params) refers to malloc.o(i.malloc) for malloc
    ota_message.o(i.load_ota_message_config_params) refers to memseta.o(.text) for __aeabi_memclr
    ota_message.o(i.load_ota_message_config_params) refers to usart.o(i.dma_config_change) for dma_config_change
    ota_message.o(i.load_ota_message_config_params) refers to delay.o(i.Delay_Ms) for Delay_Ms
    ota_message.o(i.load_ota_message_config_params) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    ota_message.o(i.load_ota_message_config_params) refers to usart.o(i.dma_config) for dma_config
    ota_message.o(i.load_ota_message_config_params) refers to ota_message.o(i.WaitForUpData) for WaitForUpData
    ota_message.o(i.load_ota_message_config_params) refers to malloc.o(i.free) for free
    ota_message.o(i.load_ota_message_config_params) refers to ota_message.o(.data) for ota_message
    ota_message.o(i.save_ota_message_config_params) refers to ota_message.o(i.clear_ota_message_config_block) for clear_ota_message_config_block
    ota_message.o(i.save_ota_message_config_params) refers to ota_message.o(i.write_ota_message_to_flash) for write_ota_message_to_flash
    ota_message.o(i.save_ota_message_config_params) refers to ota_message.o(.data) for ota_message
    ota_message.o(i.write_ota_message_to_flash) refers to w25q32.o(i.W25Q32_PageWrite) for W25Q32_PageWrite
    ec800m.o(i.EC800MPwoerOn) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    ec800m.o(i.EC800MPwoerOn) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    ec800m.o(i.EC800MPwoerOn) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    ec800m.o(i.EC800MPwoerOn) refers to delay.o(i.Delay_Ms) for Delay_Ms
    ec800m.o(i.EC800MPwoerOn) refers to usart.o(i.gd_pull_EC800M_pwr_up) for gd_pull_EC800M_pwr_up
    ec800m.o(i.EC800MPwoerOn) refers to usart.o(i.gd_pull_EC800M_rst_down) for gd_pull_EC800M_rst_down
    ec800m.o(i.EC800MPwoerOn) refers to usart.o(i.gd_pull_EC800M_pwr_down) for gd_pull_EC800M_pwr_down
    ec800m.o(i.EC800MPwoerOn) refers to usart.o(i.gd_pull_EC800M_rst_up) for gd_pull_EC800M_rst_up
    ec800m.o(i.EC800MSendCmd) refers to gd32f10x_usart.o(i.usart_data_transmit) for usart_data_transmit
    ec800m.o(i.EC800MSendCmd) refers to gd32f10x_usart.o(i.usart_flag_get) for usart_flag_get
    ec800m.o(i.EC800MWaitReady) refers to ec800m.o(i.WaitResponse) for WaitResponse
    ec800m.o(i.WaitResponse) refers to delay.o(i.Delay_Ms) for Delay_Ms
    ec800m.o(i.WaitResponse) refers to strstr.o(.text) for strstr
    ec800m.o(i.WaitResponse) refers to usart.o(i.Clear_DMA_Buffer) for Clear_DMA_Buffer
    ec800m.o(i.WaitResponse) refers to usart.o(.data) for UART0_RX_STAT
    ec800m.o(i.WaitResponse) refers to usart.o(.bss) for UART0_RX_BUF
    usart.o(i.Clear_DMA_Buffer) refers to memseta.o(.text) for __aeabi_memclr
    usart.o(i.Clear_DMA_Buffer) refers to usart.o(.data) for UART0_RX_NUM
    usart.o(i.Clear_DMA_Buffer) refers to usart.o(.bss) for UART0_RX_BUF
    usart.o(i.dma_config) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    usart.o(i.dma_config) refers to gd32f10x_dma.o(i.dma_deinit) for dma_deinit
    usart.o(i.dma_config) refers to gd32f10x_dma.o(i.dma_init) for dma_init
    usart.o(i.dma_config) refers to gd32f10x_dma.o(i.dma_circulation_disable) for dma_circulation_disable
    usart.o(i.dma_config) refers to gd32f10x_dma.o(i.dma_memory_to_memory_disable) for dma_memory_to_memory_disable
    usart.o(i.dma_config) refers to gd32f10x_usart.o(i.usart_dma_transmit_config) for usart_dma_transmit_config
    usart.o(i.dma_config) refers to gd32f10x_dma.o(i.dma_interrupt_enable) for dma_interrupt_enable
    usart.o(i.dma_config) refers to gd32f10x_dma.o(i.dma_channel_enable) for dma_channel_enable
    usart.o(i.dma_config) refers to usart.o(.bss) for UART0_RX_BUF
    usart.o(i.dma_config_change) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    usart.o(i.dma_config_change) refers to gd32f10x_dma.o(i.dma_deinit) for dma_deinit
    usart.o(i.dma_config_change) refers to gd32f10x_dma.o(i.dma_init) for dma_init
    usart.o(i.dma_config_change) refers to gd32f10x_dma.o(i.dma_circulation_disable) for dma_circulation_disable
    usart.o(i.dma_config_change) refers to gd32f10x_dma.o(i.dma_memory_to_memory_disable) for dma_memory_to_memory_disable
    usart.o(i.dma_config_change) refers to gd32f10x_usart.o(i.usart_dma_transmit_config) for usart_dma_transmit_config
    usart.o(i.dma_config_change) refers to gd32f10x_dma.o(i.dma_interrupt_enable) for dma_interrupt_enable
    usart.o(i.dma_config_change) refers to gd32f10x_dma.o(i.dma_channel_enable) for dma_channel_enable
    usart.o(i.gd_EC800M_pin_init) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    usart.o(i.gd_EC800M_pin_init) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    usart.o(i.gd_com_init) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    usart.o(i.gd_com_init) refers to gd32f10x_gpio.o(i.gpio_pin_remap_config) for gpio_pin_remap_config
    usart.o(i.gd_com_init) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_deinit) for usart_deinit
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_baudrate_set) for usart_baudrate_set
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_word_length_set) for usart_word_length_set
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_stop_bit_set) for usart_stop_bit_set
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_parity_config) for usart_parity_config
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_hardware_flow_rts_config) for usart_hardware_flow_rts_config
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_hardware_flow_cts_config) for usart_hardware_flow_cts_config
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_receive_config) for usart_receive_config
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_transmit_config) for usart_transmit_config
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_enable) for usart_enable
    usart.o(i.gd_com_init) refers to gd32f10x_usart.o(i.usart_interrupt_enable) for usart_interrupt_enable
    usart.o(i.gd_com_init) refers to usart.o(.data) for COM_GPIO_CLK
    usart.o(i.nvic_config) refers to gd32f10x_misc.o(i.nvic_priority_group_set) for nvic_priority_group_set
    usart.o(i.nvic_config) refers to gd32f10x_misc.o(i.nvic_irq_enable) for nvic_irq_enable
    gd32f10x_wwdgt.o(i.wwdgt_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_wwdgt.o(i.wwdgt_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    gd32f10x_misc.o(i.nvic_irq_enable) refers to gd32f10x_misc.o(i.nvic_priority_group_set) for nvic_priority_group_set
    gd32f10x_rcu.o(i.rcu_deinit) refers to gd32f10x_rcu.o(i.rcu_osci_stab_wait) for rcu_osci_stab_wait
    gd32f10x_rcu.o(i.rcu_osci_stab_wait) refers to gd32f10x_rcu.o(i.rcu_flag_get) for rcu_flag_get
    gd32f10x_gpio.o(i.gpio_afio_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_gpio.o(i.gpio_afio_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    gd32f10x_gpio.o(i.gpio_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_gpio.o(i.gpio_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    gd32f10x_fmc.o(i.fmc_bank0_erase) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.fmc_bank0_ready_wait) refers to gd32f10x_fmc.o(i.fmc_bank0_state_get) for fmc_bank0_state_get
    gd32f10x_fmc.o(i.fmc_bank1_erase) refers to gd32f10x_fmc.o(i.fmc_bank1_ready_wait) for fmc_bank1_ready_wait
    gd32f10x_fmc.o(i.fmc_bank1_ready_wait) refers to gd32f10x_fmc.o(i.fmc_bank1_state_get) for fmc_bank1_state_get
    gd32f10x_fmc.o(i.fmc_halfword_program) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.fmc_halfword_program) refers to gd32f10x_fmc.o(i.fmc_bank1_ready_wait) for fmc_bank1_ready_wait
    gd32f10x_fmc.o(i.fmc_mass_erase) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.fmc_mass_erase) refers to gd32f10x_fmc.o(i.fmc_bank1_ready_wait) for fmc_bank1_ready_wait
    gd32f10x_fmc.o(i.fmc_page_erase) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.fmc_page_erase) refers to gd32f10x_fmc.o(i.fmc_bank1_ready_wait) for fmc_bank1_ready_wait
    gd32f10x_fmc.o(i.fmc_word_program) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.fmc_word_program) refers to gd32f10x_fmc.o(i.fmc_bank1_ready_wait) for fmc_bank1_ready_wait
    gd32f10x_fmc.o(i.ob_data_program) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.ob_erase) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.ob_erase) refers to gd32f10x_fmc.o(i.ob_spc_get) for ob_spc_get
    gd32f10x_fmc.o(i.ob_security_protection_config) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.ob_user_write) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_fmc.o(i.ob_write_protection_enable) refers to gd32f10x_fmc.o(i.fmc_bank0_ready_wait) for fmc_bank0_ready_wait
    gd32f10x_spi.o(i.i2s_psc_config) refers to gd32f10x_rcu.o(i.rcu_clock_freq_get) for rcu_clock_freq_get
    gd32f10x_spi.o(i.spi_i2s_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_spi.o(i.spi_i2s_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    gd32f10x_dma.o(i.dma_channel_disable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_channel_enable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_circulation_disable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_circulation_enable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_deinit) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_init) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_interrupt_disable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_interrupt_enable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_memory_address_config) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_memory_increase_disable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_memory_increase_enable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_memory_to_memory_disable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_memory_to_memory_enable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_memory_width_config) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_periph_address_config) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_periph_increase_disable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_periph_increase_enable) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_periph_width_config) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_priority_config) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_transfer_direction_config) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_transfer_number_config) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_dma.o(i.dma_transfer_number_get) refers to gd32f10x_dma.o(i.dma_periph_and_channel_check) for dma_periph_and_channel_check
    gd32f10x_usart.o(i.usart_baudrate_set) refers to gd32f10x_rcu.o(i.rcu_clock_freq_get) for rcu_clock_freq_get
    gd32f10x_usart.o(i.usart_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_usart.o(i.usart_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    main.o(i.main) refers to delay.o(i.Delay_Init) for Delay_Init
    main.o(i.main) refers to usart.o(i.nvic_config) for nvic_config
    main.o(i.main) refers to usart.o(i.gd_com_init) for gd_com_init
    main.o(i.main) refers to usart.o(i.dma_config) for dma_config
    main.o(i.main) refers to usart.o(i.gd_EC800M_pin_init) for gd_EC800M_pin_init
    main.o(i.main) refers to ec800m.o(i.EC800MPwoerOn) for EC800MPwoerOn
    main.o(i.main) refers to ec800m.o(i.EC800MWaitReady) for EC800MWaitReady
    main.o(i.main) refers to main.o(i.task_fwdgt_reload) for task_fwdgt_reload
    main.o(i.main) refers to main.o(i.my_test) for my_test
    main.o(i.main) refers to ota_message.o(i.load_ota_message_config_params) for load_ota_message_config_params
    main.o(i.main) refers to ota_message.o(i.get_config_params) for get_config_params
    main.o(i.main) refers to boot.o(i.BootLoader_Brance) for BootLoader_Brance
    main.o(i.main) refers to boot.o(i.LOAD_A) for LOAD_A
    main.o(i.my_test) refers to memcpya.o(.text) for __aeabi_memcpy4
    main.o(i.my_test) refers to strlen.o(.text) for strlen
    main.o(i.my_test) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    main.o(i.my_test) refers to memseta.o(.text) for __aeabi_memclr4
    main.o(i.my_test) refers to strcpy.o(.text) for strcpy
    main.o(i.my_test) refers to ec800m.o(i.WaitResponse) for WaitResponse
    main.o(i.my_test) refers to malloc.o(i.free) for free
    main.o(i.my_test) refers to delay.o(i.Delay_Ms) for Delay_Ms
    main.o(i.my_test) refers to main.o(.data) for ota_message
    main.o(i.my_test) refers to usart.o(.bss) for UART0_RX_BUF
    main.o(i.task_fwdgt_reload) refers to gd32f10x_fwdgt.o(i.fwdgt_write_enable) for fwdgt_write_enable
    main.o(i.task_fwdgt_reload) refers to gd32f10x_fwdgt.o(i.fwdgt_counter_reload) for fwdgt_counter_reload
    entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry10a.o(.ARM.Collect$$$$0000000F) for __rt_final_cpp
    entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry11a.o(.ARM.Collect$$$$00000011) for __rt_final_exit
    entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry12b.o(.ARM.Collect$$$$0000000E) for __rt_lib_shutdown_fini
    entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry7b.o(.ARM.Collect$$$$00000008) for _main_clock
    entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry8b.o(.ARM.Collect$$$$0000000A) for _main_cpp_init
    entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry9a.o(.ARM.Collect$$$$0000000B) for _main_init
    entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry5.o(.ARM.Collect$$$$00000004) for _main_scatterload
    entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry2.o(.ARM.Collect$$$$00000001) for _main_stk
    malloc.o(i.free) refers to mvars.o(.data) for __microlib_freelist
    malloc.o(i.malloc) refers to mvars.o(.data) for __microlib_freelist_initialised
    malloc.o(i.malloc) refers to mvars.o(.data) for __microlib_freelist
    malloc.o(i.malloc) refers to startup_gd32f10x_xd.o(HEAP) for __heap_base
    mallocr.o(i.__free$realloc) refers to mvars.o(.data) for __microlib_freelist
    mallocr.o(i.__malloc$realloc) refers to mallocr.o(i.internal_alloc) for internal_alloc
    mallocr.o(i.__malloc$realloc) refers to mvars.o(.data) for __microlib_freelist_initialised
    mallocr.o(i.__malloc$realloc) refers to startup_gd32f10x_xd.o(HEAP) for __heap_base
    mallocr.o(i.__malloc$realloc) refers to mvars.o(.data) for __microlib_freelist
    mallocr.o(i.internal_alloc) refers to memcpya.o(.text) for __aeabi_memcpy
    mallocr.o(i.internal_alloc) refers to mvars.o(.data) for __microlib_freelist
    mallocr.o(i.realloc) refers to mallocr.o(i.__free$realloc) for __free$realloc
    mallocr.o(i.realloc) refers to mallocr.o(i.internal_alloc) for internal_alloc
    mallocr.o(i.realloc) refers to mallocr.o(i.__malloc$realloc) for __malloc$realloc
    mallocr.o(i.realloc) refers to mvars.o(.data) for __microlib_freelist
    malloca.o(i.__aligned_malloc) refers to mvars.o(.data) for __microlib_freelist_initialised
    malloca.o(i.__aligned_malloc) refers to mvars.o(.data) for __microlib_freelist
    malloca.o(i.__aligned_malloc) refers to startup_gd32f10x_xd.o(HEAP) for __heap_base
    malloca.o(i.__free$memalign) refers to mvars.o(.data) for __microlib_freelist
    malloca.o(i.__malloc$memalign) refers to malloca.o(i.__aligned_malloc) for __aligned_malloc
    mallocra.o(i.__aligned_malloc$realloc) refers to mallocra.o(i.internal_alloc) for internal_alloc
    mallocra.o(i.__aligned_malloc$realloc) refers to mvars.o(.data) for __microlib_freelist_initialised
    mallocra.o(i.__aligned_malloc$realloc) refers to startup_gd32f10x_xd.o(HEAP) for __heap_base
    mallocra.o(i.__aligned_malloc$realloc) refers to mvars.o(.data) for __microlib_freelist
    mallocra.o(i.__free$realloc$memalign) refers to mvars.o(.data) for __microlib_freelist
    mallocra.o(i.__malloc$realloc$memalign) refers to mallocra.o(i.__aligned_malloc$realloc) for __aligned_malloc$realloc
    mallocra.o(i.__realloc$memalign) refers to mallocra.o(i.__free$realloc$memalign) for __free$realloc$memalign
    mallocra.o(i.__realloc$memalign) refers to mallocra.o(i.internal_alloc) for internal_alloc
    mallocra.o(i.__realloc$memalign) refers to mallocra.o(i.__malloc$realloc$memalign) for __malloc$realloc$memalign
    mallocra.o(i.__realloc$memalign) refers to mvars.o(.data) for __microlib_freelist
    mallocra.o(i.internal_alloc) refers to memcpya.o(.text) for __aeabi_memcpy
    mallocra.o(i.internal_alloc) refers to mvars.o(.data) for __microlib_freelist
    __0sscanf.o(.text) refers to scanf_char.o(.text) for __vfscanf_char
    __0sscanf.o(.text) refers to _sgetc.o(.text) for _sgetc
    _scanf_int.o(.text) refers to _chval.o(.text) for _chval
    entry2.o(.ARM.Collect$$$$00000001) refers to entry2.o(.ARM.Collect$$$$00002712) for __lit__00000000
    entry2.o(.ARM.Collect$$$$00002712) refers to startup_gd32f10x_xd.o(STACK) for __initial_sp
    entry2.o(__vectab_stack_and_reset_area) refers to startup_gd32f10x_xd.o(STACK) for __initial_sp
    entry2.o(__vectab_stack_and_reset_area) refers to entry.o(.ARM.Collect$$$$00000000) for __main
    entry5.o(.ARM.Collect$$$$00000004) refers to init.o(.text) for __scatterload
    entry9a.o(.ARM.Collect$$$$0000000B) refers to main.o(i.main) for main
    entry9b.o(.ARM.Collect$$$$0000000C) refers to main.o(i.main) for main
    scanf_char.o(.text) refers to _scanf.o(.text) for __vfscanf
    scanf_char.o(.text) refers to isspace_c.o(.text) for isspace
    init.o(.text) refers to entry5.o(.ARM.Collect$$$$00000004) for __main_after_scatterload
    isspace_c.o(.text) refers to ctype_c.o(.text) for __ctype_lookup
    _scanf.o(.text) refers (Weak) to _scanf_int.o(.text) for _scanf_int
    ctype_c.o(.text) refers to ctype_c.o(.constdata) for .constdata


==============================================================================

Removing Unused input sections from the image.

    Removing system_gd32f10x.o(.rev16_text), (4 bytes).
    Removing system_gd32f10x.o(.revsh_text), (4 bytes).
    Removing system_gd32f10x.o(.data), (4 bytes).
    Removing boot.o(.rev16_text), (4 bytes).
    Removing boot.o(.revsh_text), (4 bytes).
    Removing delay.o(.rev16_text), (4 bytes).
    Removing delay.o(.revsh_text), (4 bytes).
    Removing fmc.o(.rev16_text), (4 bytes).
    Removing fmc.o(.revsh_text), (4 bytes).
    Removing fmc.o(i.FLASH_Read), (84 bytes).
    Removing gd32f10x_it.o(.rev16_text), (4 bytes).
    Removing gd32f10x_it.o(.revsh_text), (4 bytes).
    Removing spi.o(.rev16_text), (4 bytes).
    Removing spi.o(.revsh_text), (4 bytes).
    Removing spi.o(i.SPI0_Init), (104 bytes).
    Removing w25q32.o(.rev16_text), (4 bytes).
    Removing w25q32.o(.revsh_text), (4 bytes).
    Removing w25q32.o(i.W25Q32_Enable), (36 bytes).
    Removing w25q32.o(i.W25Q32_Erase64K), (76 bytes).
    Removing w25q32.o(i.W25Q32_Init), (40 bytes).
    Removing w25q32.o(i.W25Q32_PageWrite), (84 bytes).
    Removing ota_message.o(.rev16_text), (4 bytes).
    Removing ota_message.o(.revsh_text), (4 bytes).
    Removing ota_message.o(i.save_ota_message_config_params), (48 bytes).
    Removing ota_message.o(i.write_ota_message_to_flash), (20 bytes).
    Removing ec800m.o(.rev16_text), (4 bytes).
    Removing ec800m.o(.revsh_text), (4 bytes).
    Removing usart.o(.rev16_text), (4 bytes).
    Removing usart.o(.revsh_text), (4 bytes).
    Removing gd32f10x_wwdgt.o(.rev16_text), (4 bytes).
    Removing gd32f10x_wwdgt.o(.revsh_text), (4 bytes).
    Removing gd32f10x_wwdgt.o(i.wwdgt_config), (28 bytes).
    Removing gd32f10x_wwdgt.o(i.wwdgt_counter_update), (16 bytes).
    Removing gd32f10x_wwdgt.o(i.wwdgt_deinit), (20 bytes).
    Removing gd32f10x_wwdgt.o(i.wwdgt_enable), (20 bytes).
    Removing gd32f10x_wwdgt.o(i.wwdgt_flag_clear), (12 bytes).
    Removing gd32f10x_wwdgt.o(i.wwdgt_flag_get), (24 bytes).
    Removing gd32f10x_wwdgt.o(i.wwdgt_interrupt_enable), (20 bytes).
    Removing gd32f10x_misc.o(.rev16_text), (4 bytes).
    Removing gd32f10x_misc.o(.revsh_text), (4 bytes).
    Removing gd32f10x_misc.o(i.nvic_irq_disable), (24 bytes).
    Removing gd32f10x_misc.o(i.system_lowpower_reset), (16 bytes).
    Removing gd32f10x_misc.o(i.system_lowpower_set), (16 bytes).
    Removing gd32f10x_rcu.o(.rev16_text), (4 bytes).
    Removing gd32f10x_rcu.o(.revsh_text), (4 bytes).
    Removing gd32f10x_rcu.o(i.rcu_adc_clock_config), (72 bytes).
    Removing gd32f10x_rcu.o(i.rcu_ahb_clock_config), (24 bytes).
    Removing gd32f10x_rcu.o(i.rcu_all_reset_flag_clear), (20 bytes).
    Removing gd32f10x_rcu.o(i.rcu_apb1_clock_config), (24 bytes).
    Removing gd32f10x_rcu.o(i.rcu_apb2_clock_config), (24 bytes).
    Removing gd32f10x_rcu.o(i.rcu_bkp_reset_disable), (20 bytes).
    Removing gd32f10x_rcu.o(i.rcu_bkp_reset_enable), (20 bytes).
    Removing gd32f10x_rcu.o(i.rcu_ckout0_config), (24 bytes).
    Removing gd32f10x_rcu.o(i.rcu_deepsleep_voltage_set), (16 bytes).
    Removing gd32f10x_rcu.o(i.rcu_deinit), (88 bytes).
    Removing gd32f10x_rcu.o(i.rcu_flag_get), (36 bytes).
    Removing gd32f10x_rcu.o(i.rcu_hxtal_clock_monitor_disable), (20 bytes).
    Removing gd32f10x_rcu.o(i.rcu_hxtal_clock_monitor_enable), (20 bytes).
    Removing gd32f10x_rcu.o(i.rcu_interrupt_disable), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_interrupt_enable), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_interrupt_flag_clear), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_interrupt_flag_get), (36 bytes).
    Removing gd32f10x_rcu.o(i.rcu_irc8m_adjust_value_set), (28 bytes).
    Removing gd32f10x_rcu.o(i.rcu_osci_bypass_mode_disable), (92 bytes).
    Removing gd32f10x_rcu.o(i.rcu_osci_bypass_mode_enable), (92 bytes).
    Removing gd32f10x_rcu.o(i.rcu_osci_off), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_osci_on), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_osci_stab_wait), (224 bytes).
    Removing gd32f10x_rcu.o(i.rcu_periph_clock_disable), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_periph_clock_sleep_disable), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_periph_clock_sleep_enable), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_pll_config), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_predv0_config), (32 bytes).
    Removing gd32f10x_rcu.o(i.rcu_rtc_clock_config), (24 bytes).
    Removing gd32f10x_rcu.o(i.rcu_system_clock_source_config), (24 bytes).
    Removing gd32f10x_rcu.o(i.rcu_system_clock_source_get), (16 bytes).
    Removing gd32f10x_rcu.o(i.rcu_usb_clock_config), (24 bytes).
    Removing gd32f10x_gpio.o(.rev16_text), (4 bytes).
    Removing gd32f10x_gpio.o(.revsh_text), (4 bytes).
    Removing gd32f10x_gpio.o(i.gpio_afio_deinit), (20 bytes).
    Removing gd32f10x_gpio.o(i.gpio_bit_write), (10 bytes).
    Removing gd32f10x_gpio.o(i.gpio_event_output_config), (28 bytes).
    Removing gd32f10x_gpio.o(i.gpio_event_output_disable), (20 bytes).
    Removing gd32f10x_gpio.o(i.gpio_event_output_enable), (20 bytes).
    Removing gd32f10x_gpio.o(i.gpio_exti_source_select), (152 bytes).
    Removing gd32f10x_gpio.o(i.gpio_input_bit_get), (16 bytes).
    Removing gd32f10x_gpio.o(i.gpio_input_port_get), (8 bytes).
    Removing gd32f10x_gpio.o(i.gpio_output_bit_get), (16 bytes).
    Removing gd32f10x_gpio.o(i.gpio_output_port_get), (8 bytes).
    Removing gd32f10x_gpio.o(i.gpio_pin_lock), (18 bytes).
    Removing gd32f10x_gpio.o(i.gpio_port_write), (4 bytes).
    Removing gd32f10x_fmc.o(.rev16_text), (4 bytes).
    Removing gd32f10x_fmc.o(.revsh_text), (4 bytes).
    Removing gd32f10x_fmc.o(i.fmc_bank0_erase), (68 bytes).
    Removing gd32f10x_fmc.o(i.fmc_bank0_lock), (20 bytes).
    Removing gd32f10x_fmc.o(i.fmc_bank0_unlock), (36 bytes).
    Removing gd32f10x_fmc.o(i.fmc_bank1_erase), (68 bytes).
    Removing gd32f10x_fmc.o(i.fmc_bank1_lock), (20 bytes).
    Removing gd32f10x_fmc.o(i.fmc_bank1_unlock), (36 bytes).
    Removing gd32f10x_fmc.o(i.fmc_flag_clear), (32 bytes).
    Removing gd32f10x_fmc.o(i.fmc_flag_get), (36 bytes).
    Removing gd32f10x_fmc.o(i.fmc_halfword_program), (192 bytes).
    Removing gd32f10x_fmc.o(i.fmc_interrupt_disable), (32 bytes).
    Removing gd32f10x_fmc.o(i.fmc_interrupt_enable), (32 bytes).
    Removing gd32f10x_fmc.o(i.fmc_interrupt_flag_clear), (32 bytes).
    Removing gd32f10x_fmc.o(i.fmc_interrupt_flag_get), (108 bytes).
    Removing gd32f10x_fmc.o(i.fmc_mass_erase), (196 bytes).
    Removing gd32f10x_fmc.o(i.fmc_wscnt_set), (24 bytes).
    Removing gd32f10x_fmc.o(i.ob_data_get), (16 bytes).
    Removing gd32f10x_fmc.o(i.ob_data_program), (68 bytes).
    Removing gd32f10x_fmc.o(i.ob_erase), (140 bytes).
    Removing gd32f10x_fmc.o(i.ob_lock), (20 bytes).
    Removing gd32f10x_fmc.o(i.ob_security_protection_config), (132 bytes).
    Removing gd32f10x_fmc.o(i.ob_spc_get), (24 bytes).
    Removing gd32f10x_fmc.o(i.ob_unlock), (48 bytes).
    Removing gd32f10x_fmc.o(i.ob_user_get), (16 bytes).
    Removing gd32f10x_fmc.o(i.ob_user_write), (96 bytes).
    Removing gd32f10x_fmc.o(i.ob_write_protection_enable), (168 bytes).
    Removing gd32f10x_fmc.o(i.ob_write_protection_get), (12 bytes).
    Removing gd32f10x_spi.o(.rev16_text), (4 bytes).
    Removing gd32f10x_spi.o(.revsh_text), (4 bytes).
    Removing gd32f10x_spi.o(i.i2s_disable), (10 bytes).
    Removing gd32f10x_spi.o(i.i2s_enable), (10 bytes).
    Removing gd32f10x_spi.o(i.i2s_init), (28 bytes).
    Removing gd32f10x_spi.o(i.i2s_psc_config), (164 bytes).
    Removing gd32f10x_spi.o(i.spi_bidirectional_transfer_config), (26 bytes).
    Removing gd32f10x_spi.o(i.spi_crc_error_clear), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_crc_get), (16 bytes).
    Removing gd32f10x_spi.o(i.spi_crc_next), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_crc_off), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_crc_on), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_crc_polynomial_get), (8 bytes).
    Removing gd32f10x_spi.o(i.spi_crc_polynomial_set), (12 bytes).
    Removing gd32f10x_spi.o(i.spi_disable), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_dma_disable), (22 bytes).
    Removing gd32f10x_spi.o(i.spi_dma_enable), (22 bytes).
    Removing gd32f10x_spi.o(i.spi_enable), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_i2s_data_frame_format_config), (16 bytes).
    Removing gd32f10x_spi.o(i.spi_i2s_deinit), (88 bytes).
    Removing gd32f10x_spi.o(i.spi_i2s_interrupt_disable), (8 bytes).
    Removing gd32f10x_spi.o(i.spi_i2s_interrupt_enable), (8 bytes).
    Removing gd32f10x_spi.o(i.spi_i2s_interrupt_flag_get), (100 bytes).
    Removing gd32f10x_spi.o(i.spi_init), (50 bytes).
    Removing gd32f10x_spi.o(i.spi_nss_internal_high), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_nss_internal_low), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_nss_output_disable), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_nss_output_enable), (10 bytes).
    Removing gd32f10x_spi.o(i.spi_struct_para_init), (18 bytes).
    Removing gd32f10x_fwdgt.o(.rev16_text), (4 bytes).
    Removing gd32f10x_fwdgt.o(.revsh_text), (4 bytes).
    Removing gd32f10x_fwdgt.o(i.fwdgt_config), (104 bytes).
    Removing gd32f10x_fwdgt.o(i.fwdgt_enable), (16 bytes).
    Removing gd32f10x_fwdgt.o(i.fwdgt_flag_get), (24 bytes).
    Removing gd32f10x_fwdgt.o(i.fwdgt_prescaler_value_config), (60 bytes).
    Removing gd32f10x_fwdgt.o(i.fwdgt_reload_value_config), (64 bytes).
    Removing gd32f10x_fwdgt.o(i.fwdgt_write_disable), (12 bytes).
    Removing gd32f10x_dma.o(.rev16_text), (4 bytes).
    Removing gd32f10x_dma.o(.revsh_text), (4 bytes).
    Removing gd32f10x_dma.o(i.dma_circulation_enable), (50 bytes).
    Removing gd32f10x_dma.o(i.dma_flag_clear), (16 bytes).
    Removing gd32f10x_dma.o(i.dma_flag_get), (24 bytes).
    Removing gd32f10x_dma.o(i.dma_interrupt_disable), (50 bytes).
    Removing gd32f10x_dma.o(i.dma_interrupt_flag_get), (130 bytes).
    Removing gd32f10x_dma.o(i.dma_memory_address_config), (36 bytes).
    Removing gd32f10x_dma.o(i.dma_memory_increase_disable), (50 bytes).
    Removing gd32f10x_dma.o(i.dma_memory_increase_enable), (50 bytes).
    Removing gd32f10x_dma.o(i.dma_memory_to_memory_enable), (50 bytes).
    Removing gd32f10x_dma.o(i.dma_memory_width_config), (58 bytes).
    Removing gd32f10x_dma.o(i.dma_periph_address_config), (36 bytes).
    Removing gd32f10x_dma.o(i.dma_periph_increase_disable), (50 bytes).
    Removing gd32f10x_dma.o(i.dma_periph_increase_enable), (50 bytes).
    Removing gd32f10x_dma.o(i.dma_periph_width_config), (58 bytes).
    Removing gd32f10x_dma.o(i.dma_priority_config), (58 bytes).
    Removing gd32f10x_dma.o(i.dma_struct_para_init), (22 bytes).
    Removing gd32f10x_dma.o(i.dma_transfer_direction_config), (84 bytes).
    Removing gd32f10x_dma.o(i.dma_transfer_number_config), (38 bytes).
    Removing gd32f10x_dma.o(i.dma_transfer_number_get), (34 bytes).
    Removing gd32f10x_exti.o(.rev16_text), (4 bytes).
    Removing gd32f10x_exti.o(.revsh_text), (4 bytes).
    Removing gd32f10x_exti.o(i.exti_deinit), (28 bytes).
    Removing gd32f10x_exti.o(i.exti_event_disable), (16 bytes).
    Removing gd32f10x_exti.o(i.exti_event_enable), (16 bytes).
    Removing gd32f10x_exti.o(i.exti_flag_clear), (12 bytes).
    Removing gd32f10x_exti.o(i.exti_flag_get), (24 bytes).
    Removing gd32f10x_exti.o(i.exti_init), (188 bytes).
    Removing gd32f10x_exti.o(i.exti_interrupt_disable), (16 bytes).
    Removing gd32f10x_exti.o(i.exti_interrupt_enable), (16 bytes).
    Removing gd32f10x_exti.o(i.exti_interrupt_flag_clear), (12 bytes).
    Removing gd32f10x_exti.o(i.exti_interrupt_flag_get), (24 bytes).
    Removing gd32f10x_exti.o(i.exti_software_interrupt_disable), (16 bytes).
    Removing gd32f10x_exti.o(i.exti_software_interrupt_enable), (16 bytes).
    Removing gd32f10x_usart.o(.rev16_text), (4 bytes).
    Removing gd32f10x_usart.o(.revsh_text), (4 bytes).
    Removing gd32f10x_usart.o(i.usart_address_config), (20 bytes).
    Removing gd32f10x_usart.o(i.usart_disable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_dma_receive_config), (16 bytes).
    Removing gd32f10x_usart.o(i.usart_flag_clear), (26 bytes).
    Removing gd32f10x_usart.o(i.usart_guard_time_config), (24 bytes).
    Removing gd32f10x_usart.o(i.usart_halfduplex_disable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_halfduplex_enable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_interrupt_disable), (26 bytes).
    Removing gd32f10x_usart.o(i.usart_irda_lowpower_config), (20 bytes).
    Removing gd32f10x_usart.o(i.usart_irda_mode_disable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_irda_mode_enable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_lin_break_detection_length_config), (20 bytes).
    Removing gd32f10x_usart.o(i.usart_lin_mode_disable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_lin_mode_enable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_mute_mode_disable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_mute_mode_enable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_mute_mode_wakeup_config), (16 bytes).
    Removing gd32f10x_usart.o(i.usart_prescaler_config), (16 bytes).
    Removing gd32f10x_usart.o(i.usart_send_break), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_smartcard_mode_disable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_smartcard_mode_enable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_smartcard_mode_nack_disable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_smartcard_mode_nack_enable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_synchronous_clock_config), (34 bytes).
    Removing gd32f10x_usart.o(i.usart_synchronous_clock_disable), (10 bytes).
    Removing gd32f10x_usart.o(i.usart_synchronous_clock_enable), (10 bytes).
    Removing main.o(.rev16_text), (4 bytes).
    Removing main.o(.revsh_text), (4 bytes).

221 unused section(s) (total 6832 bytes) removed from the image.

==============================================================================

Image Symbol Table

    Local Symbols

    Symbol Name                              Value     Ov Type        Size  Object(Section)

    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  ctype_c.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isspace_c.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry8a.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry11a.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry10b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry7b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry9a.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry8b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry10a.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry12b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry12a.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry2.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry5.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry11b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry9b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry7a.o ABSOLUTE
    ../clib/microlib/malloc/malloc.c         0x00000000   Number         0  malloc.o ABSOLUTE
    ../clib/microlib/malloc/malloc.c         0x00000000   Number         0  mallocr.o ABSOLUTE
    ../clib/microlib/malloc/malloc.c         0x00000000   Number         0  malloca.o ABSOLUTE
    ../clib/microlib/malloc/malloc.c         0x00000000   Number         0  mallocra.o ABSOLUTE
    ../clib/microlib/malloc/mvars.c          0x00000000   Number         0  mvars.o ABSOLUTE
    ../clib/microlib/string/memcpy.c         0x00000000   Number         0  memcpya.o ABSOLUTE
    ../clib/microlib/string/memcpy.c         0x00000000   Number         0  memcpyb.o ABSOLUTE
    ../clib/microlib/string/memset.c         0x00000000   Number         0  memseta.o ABSOLUTE
    ../clib/microlib/string/strchr.c         0x00000000   Number         0  strchr.o ABSOLUTE
    ../clib/microlib/string/strcpy.c         0x00000000   Number         0  strcpy.o ABSOLUTE
    ../clib/microlib/string/strlen.c         0x00000000   Number         0  strlen.o ABSOLUTE
    ../clib/microlib/string/strstr.c         0x00000000   Number         0  strstr.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _chval.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _scanf.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  __0sscanf.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _scanf_int.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _sgetc.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  scanf_char.o ABSOLUTE
    ..\CMSIS\Source\startup_gd32f10x_xd.s    0x00000000   Number         0  startup_gd32f10x_xd.o ABSOLUTE
    ..\CMSIS\Source\system_gd32f10x.c        0x00000000   Number         0  system_gd32f10x.o ABSOLUTE
    ..\HW\Source\boot.c                      0x00000000   Number         0  boot.o ABSOLUTE
    ..\HW\Source\delay.c                     0x00000000   Number         0  delay.o ABSOLUTE
    ..\HW\Source\ec800m.c                    0x00000000   Number         0  ec800m.o ABSOLUTE
    ..\HW\Source\fmc.c                       0x00000000   Number         0  fmc.o ABSOLUTE
    ..\HW\Source\gd32f10x_it.c               0x00000000   Number         0  gd32f10x_it.o ABSOLUTE
    ..\HW\Source\ota_message.c               0x00000000   Number         0  ota_message.o ABSOLUTE
    ..\HW\Source\spi.c                       0x00000000   Number         0  spi.o ABSOLUTE
    ..\HW\Source\usart.c                     0x00000000   Number         0  usart.o ABSOLUTE
    ..\HW\Source\w25q32.c                    0x00000000   Number         0  w25q32.o ABSOLUTE
    ..\LIB\Source\gd32f10x_dma.c             0x00000000   Number         0  gd32f10x_dma.o ABSOLUTE
    ..\LIB\Source\gd32f10x_exti.c            0x00000000   Number         0  gd32f10x_exti.o ABSOLUTE
    ..\LIB\Source\gd32f10x_fmc.c             0x00000000   Number         0  gd32f10x_fmc.o ABSOLUTE
    ..\LIB\Source\gd32f10x_fwdgt.c           0x00000000   Number         0  gd32f10x_fwdgt.o ABSOLUTE
    ..\LIB\Source\gd32f10x_gpio.c            0x00000000   Number         0  gd32f10x_gpio.o ABSOLUTE
    ..\LIB\Source\gd32f10x_misc.c            0x00000000   Number         0  gd32f10x_misc.o ABSOLUTE
    ..\LIB\Source\gd32f10x_rcu.c             0x00000000   Number         0  gd32f10x_rcu.o ABSOLUTE
    ..\LIB\Source\gd32f10x_spi.c             0x00000000   Number         0  gd32f10x_spi.o ABSOLUTE
    ..\LIB\Source\gd32f10x_usart.c           0x00000000   Number         0  gd32f10x_usart.o ABSOLUTE
    ..\LIB\Source\gd32f10x_wwdgt.c           0x00000000   Number         0  gd32f10x_wwdgt.o ABSOLUTE
    ..\\CMSIS\\Source\\system_gd32f10x.c     0x00000000   Number         0  system_gd32f10x.o ABSOLUTE
    ..\\HW\\Source\\boot.c                   0x00000000   Number         0  boot.o ABSOLUTE
    ..\\HW\\Source\\delay.c                  0x00000000   Number         0  delay.o ABSOLUTE
    ..\\HW\\Source\\ec800m.c                 0x00000000   Number         0  ec800m.o ABSOLUTE
    ..\\HW\\Source\\fmc.c                    0x00000000   Number         0  fmc.o ABSOLUTE
    ..\\HW\\Source\\gd32f10x_it.c            0x00000000   Number         0  gd32f10x_it.o ABSOLUTE
    ..\\HW\\Source\\ota_message.c            0x00000000   Number         0  ota_message.o ABSOLUTE
    ..\\HW\\Source\\spi.c                    0x00000000   Number         0  spi.o ABSOLUTE
    ..\\HW\\Source\\usart.c                  0x00000000   Number         0  usart.o ABSOLUTE
    ..\\HW\\Source\\w25q32.c                 0x00000000   Number         0  w25q32.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_dma.c          0x00000000   Number         0  gd32f10x_dma.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_exti.c         0x00000000   Number         0  gd32f10x_exti.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_fmc.c          0x00000000   Number         0  gd32f10x_fmc.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_fwdgt.c        0x00000000   Number         0  gd32f10x_fwdgt.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_gpio.c         0x00000000   Number         0  gd32f10x_gpio.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_misc.c         0x00000000   Number         0  gd32f10x_misc.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_rcu.c          0x00000000   Number         0  gd32f10x_rcu.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_spi.c          0x00000000   Number         0  gd32f10x_spi.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_usart.c        0x00000000   Number         0  gd32f10x_usart.o ABSOLUTE
    ..\\LIB\\Source\\gd32f10x_wwdgt.c        0x00000000   Number         0  gd32f10x_wwdgt.o ABSOLUTE
    dc.s                                     0x00000000   Number         0  dc.o ABSOLUTE
    handlers.s                               0x00000000   Number         0  handlers.o ABSOLUTE
    init.s                                   0x00000000   Number         0  init.o ABSOLUTE
    main.c                                   0x00000000   Number         0  main.o ABSOLUTE
    main.c                                   0x00000000   Number         0  main.o ABSOLUTE
    RESET                                    0x08000000   Section      304  startup_gd32f10x_xd.o(RESET)
    .ARM.Collect$$$$00000000                 0x08000130   Section        0  entry.o(.ARM.Collect$$$$00000000)
    .ARM.Collect$$$$00000001                 0x08000130   Section        4  entry2.o(.ARM.Collect$$$$00000001)
    .ARM.Collect$$$$00000004                 0x08000134   Section        4  entry5.o(.ARM.Collect$$$$00000004)
    .ARM.Collect$$$$00000008                 0x08000138   Section        0  entry7b.o(.ARM.Collect$$$$00000008)
    .ARM.Collect$$$$0000000A                 0x08000138   Section        0  entry8b.o(.ARM.Collect$$$$0000000A)
    .ARM.Collect$$$$0000000B                 0x08000138   Section        8  entry9a.o(.ARM.Collect$$$$0000000B)
    .ARM.Collect$$$$0000000E                 0x08000140   Section        4  entry12b.o(.ARM.Collect$$$$0000000E)
    .ARM.Collect$$$$0000000F                 0x08000144   Section        0  entry10a.o(.ARM.Collect$$$$0000000F)
    .ARM.Collect$$$$00000011                 0x08000144   Section        0  entry11a.o(.ARM.Collect$$$$00000011)
    .ARM.Collect$$$$00002712                 0x08000144   Section        4  entry2.o(.ARM.Collect$$$$00002712)
    __lit__00000000                          0x08000144   Data           4  entry2.o(.ARM.Collect$$$$00002712)
    .emb_text                                0x08000148   Section        6  boot.o(.emb_text)
    .text                                    0x08000150   Section       36  startup_gd32f10x_xd.o(.text)
    .text                                    0x08000174   Section        0  memcpya.o(.text)
    .text                                    0x08000198   Section        0  memseta.o(.text)
    .text                                    0x080001bc   Section        0  strstr.o(.text)
    .text                                    0x080001e0   Section        0  strchr.o(.text)
    .text                                    0x080001f4   Section        0  strlen.o(.text)
    .text                                    0x08000202   Section        0  strcpy.o(.text)
    .text                                    0x08000214   Section        0  __0sscanf.o(.text)
    .text                                    0x0800024c   Section        0  _scanf_int.o(.text)
    .text                                    0x08000398   Section        0  _chval.o(.text)
    .text                                    0x080003b4   Section        0  scanf_char.o(.text)
    _scanf_char_input                        0x080003b5   Thumb Code    12  scanf_char.o(.text)
    .text                                    0x080003dc   Section        0  _sgetc.o(.text)
    .text                                    0x0800041c   Section       36  init.o(.text)
    .text                                    0x08000440   Section        0  isspace_c.o(.text)
    .text                                    0x0800044c   Section        0  _scanf.o(.text)
    .text                                    0x0800077c   Section        0  ctype_c.o(.text)
    i.BootLoader_Brance                      0x080007a4   Section        0  boot.o(i.BootLoader_Brance)
    i.BootLoader_Clear                       0x08000844   Section        0  boot.o(i.BootLoader_Clear)
    i.BusFault_Handler                       0x0800085c   Section        0  gd32f10x_it.o(i.BusFault_Handler)
    i.Clear_DMA_Buffer                       0x08000860   Section        0  usart.o(i.Clear_DMA_Buffer)
    i.DMA0_Channel4_IRQHandler               0x0800087c   Section        0  gd32f10x_it.o(i.DMA0_Channel4_IRQHandler)
    i.DebugMon_Handler                       0x08000890   Section        0  gd32f10x_it.o(i.DebugMon_Handler)
    i.Delay_Init                             0x08000892   Section        0  delay.o(i.Delay_Init)
    i.Delay_Ms                               0x0800089c   Section        0  delay.o(i.Delay_Ms)
    i.Delay_Us                               0x080008b6   Section        0  delay.o(i.Delay_Us)
    i.EC800MPwoerOn                          0x080008f0   Section        0  ec800m.o(i.EC800MPwoerOn)
    i.EC800MSendCmd                          0x08000948   Section        0  ec800m.o(i.EC800MSendCmd)
    i.EC800MWaitReady                        0x0800097c   Section        0  ec800m.o(i.EC800MWaitReady)
    i.GD32_EraseFlash                        0x08000990   Section        0  fmc.o(i.GD32_EraseFlash)
    i.GD32_WriteFlash                        0x080009c0   Section        0  fmc.o(i.GD32_WriteFlash)
    i.HardFault_Handler                      0x080009e6   Section        0  gd32f10x_it.o(i.HardFault_Handler)
    i.LOAD_A                                 0x080009ec   Section        0  boot.o(i.LOAD_A)
    i.MemManage_Handler                      0x08000a20   Section        0  gd32f10x_it.o(i.MemManage_Handler)
    i.NMI_Handler                            0x08000a24   Section        0  gd32f10x_it.o(i.NMI_Handler)
    i.PendSV_Handler                         0x08000a26   Section        0  gd32f10x_it.o(i.PendSV_Handler)
    i.SPI0_Read                              0x08000a28   Section        0  spi.o(i.SPI0_Read)
    i.SPI0_ReadWriteByte                     0x08000a44   Section        0  spi.o(i.SPI0_ReadWriteByte)
    i.SPI0_Write                             0x08000a7c   Section        0  spi.o(i.SPI0_Write)
    i.SVC_Handler                            0x08000a96   Section        0  gd32f10x_it.o(i.SVC_Handler)
    i.SysTick_Handler                        0x08000a98   Section        0  gd32f10x_it.o(i.SysTick_Handler)
    i.SystemInit                             0x08000a9c   Section        0  system_gd32f10x.o(i.SystemInit)
    i.USART0_IRQHandler                      0x08000b70   Section        0  gd32f10x_it.o(i.USART0_IRQHandler)
    i.UsageFault_Handler                     0x08000bb4   Section        0  gd32f10x_it.o(i.UsageFault_Handler)
    i.W25Q32_Read                            0x08000bb8   Section        0  w25q32.o(i.W25Q32_Read)
    i.W25Q32_WaitBusy                        0x08000c04   Section        0  w25q32.o(i.W25Q32_WaitBusy)
    i.WaitForUpData                          0x08000c34   Section        0  ota_message.o(i.WaitForUpData)
    i.WaitResponse                           0x08000c74   Section        0  ec800m.o(i.WaitResponse)
    i.__scatterload_copy                     0x08000cd0   Section       14  handlers.o(i.__scatterload_copy)
    i.__scatterload_null                     0x08000cde   Section        2  handlers.o(i.__scatterload_null)
    i.__scatterload_zeroinit                 0x08000ce0   Section       14  handlers.o(i.__scatterload_zeroinit)
    i.checksum                               0x08000cee   Section        0  ota_message.o(i.checksum)
    checksum                                 0x08000cef   Thumb Code    66  ota_message.o(i.checksum)
    i.clear_ota_message_config_block         0x08000d30   Section        0  ota_message.o(i.clear_ota_message_config_block)
    i.dma_channel_disable                    0x08000e00   Section        0  gd32f10x_dma.o(i.dma_channel_disable)
    i.dma_channel_enable                     0x08000e32   Section        0  gd32f10x_dma.o(i.dma_channel_enable)
    i.dma_circulation_disable                0x08000e64   Section        0  gd32f10x_dma.o(i.dma_circulation_disable)
    i.dma_config                             0x08000e98   Section        0  usart.o(i.dma_config)
    i.dma_config_change                      0x08000f20   Section        0  usart.o(i.dma_config_change)
    i.dma_deinit                             0x08000fa0   Section        0  gd32f10x_dma.o(i.dma_deinit)
    i.dma_init                               0x08001010   Section        0  gd32f10x_dma.o(i.dma_init)
    i.dma_interrupt_enable                   0x0800113e   Section        0  gd32f10x_dma.o(i.dma_interrupt_enable)
    i.dma_interrupt_flag_clear               0x08001170   Section        0  gd32f10x_dma.o(i.dma_interrupt_flag_clear)
    i.dma_memory_to_memory_disable           0x08001180   Section        0  gd32f10x_dma.o(i.dma_memory_to_memory_disable)
    i.dma_periph_and_channel_check           0x080011b4   Section        0  gd32f10x_dma.o(i.dma_periph_and_channel_check)
    dma_periph_and_channel_check             0x080011b5   Thumb Code    18  gd32f10x_dma.o(i.dma_periph_and_channel_check)
    i.extract_data_from_buffer               0x080011cc   Section        0  ota_message.o(i.extract_data_from_buffer)
    extract_data_from_buffer                 0x080011cd   Thumb Code    80  ota_message.o(i.extract_data_from_buffer)
    i.find_string                            0x0800122c   Section        0  ota_message.o(i.find_string)
    find_string                              0x0800122d   Thumb Code    56  ota_message.o(i.find_string)
    i.fmc_bank0_ready_wait                   0x08001264   Section        0  gd32f10x_fmc.o(i.fmc_bank0_ready_wait)
    i.fmc_bank0_state_get                    0x08001288   Section        0  gd32f10x_fmc.o(i.fmc_bank0_state_get)
    i.fmc_bank1_ready_wait                   0x080012b8   Section        0  gd32f10x_fmc.o(i.fmc_bank1_ready_wait)
    i.fmc_bank1_state_get                    0x080012dc   Section        0  gd32f10x_fmc.o(i.fmc_bank1_state_get)
    i.fmc_lock                               0x0800130c   Section        0  gd32f10x_fmc.o(i.fmc_lock)
    i.fmc_page_erase                         0x08001338   Section        0  gd32f10x_fmc.o(i.fmc_page_erase)
    i.fmc_unlock                             0x08001424   Section        0  gd32f10x_fmc.o(i.fmc_unlock)
    i.fmc_word_program                       0x08001468   Section        0  gd32f10x_fmc.o(i.fmc_word_program)
    i.free                                   0x08001528   Section        0  malloc.o(i.free)
    i.fwdgt_counter_reload                   0x08001578   Section        0  gd32f10x_fwdgt.o(i.fwdgt_counter_reload)
    i.fwdgt_write_enable                     0x08001588   Section        0  gd32f10x_fwdgt.o(i.fwdgt_write_enable)
    i.gd_EC800M_pin_init                     0x08001598   Section        0  usart.o(i.gd_EC800M_pin_init)
    i.gd_com_init                            0x080015e0   Section        0  usart.o(i.gd_com_init)
    i.gd_pull_EC800M_pwr_down                0x080016dc   Section        0  usart.o(i.gd_pull_EC800M_pwr_down)
    i.gd_pull_EC800M_pwr_up                  0x080016e8   Section        0  usart.o(i.gd_pull_EC800M_pwr_up)
    i.gd_pull_EC800M_rst_down                0x080016f4   Section        0  usart.o(i.gd_pull_EC800M_rst_down)
    i.gd_pull_EC800M_rst_up                  0x08001704   Section        0  usart.o(i.gd_pull_EC800M_rst_up)
    i.get_config_params                      0x08001714   Section        0  ota_message.o(i.get_config_params)
    i.gpio_bit_reset                         0x0800171c   Section        0  gd32f10x_gpio.o(i.gpio_bit_reset)
    i.gpio_bit_set                           0x08001720   Section        0  gd32f10x_gpio.o(i.gpio_bit_set)
    i.gpio_deinit                            0x08001724   Section        0  gd32f10x_gpio.o(i.gpio_deinit)
    i.gpio_init                              0x080017e8   Section        0  gd32f10x_gpio.o(i.gpio_init)
    i.gpio_pin_remap_config                  0x08001894   Section        0  gd32f10x_gpio.o(i.gpio_pin_remap_config)
    i.load_ota_message_config_params         0x08001924   Section        0  ota_message.o(i.load_ota_message_config_params)
    i.main                                   0x080019bc   Section        0  main.o(i.main)
    i.malloc                                 0x08001a08   Section        0  malloc.o(i.malloc)
    i.my_test                                0x08001a74   Section        0  main.o(i.my_test)
    i.nvic_config                            0x08001c4c   Section        0  usart.o(i.nvic_config)
    i.nvic_irq_enable                        0x08001c6c   Section        0  gd32f10x_misc.o(i.nvic_irq_enable)
    i.nvic_priority_group_set                0x08001d18   Section        0  gd32f10x_misc.o(i.nvic_priority_group_set)
    i.nvic_vector_table_set                  0x08001d2c   Section        0  gd32f10x_misc.o(i.nvic_vector_table_set)
    i.rcu_clock_freq_get                     0x08001d44   Section        0  gd32f10x_rcu.o(i.rcu_clock_freq_get)
    i.rcu_periph_clock_enable                0x08001e68   Section        0  gd32f10x_rcu.o(i.rcu_periph_clock_enable)
    i.rcu_periph_reset_disable               0x08001e88   Section        0  gd32f10x_rcu.o(i.rcu_periph_reset_disable)
    i.rcu_periph_reset_enable                0x08001ea8   Section        0  gd32f10x_rcu.o(i.rcu_periph_reset_enable)
    i.spi_i2s_data_receive                   0x08001ec8   Section        0  gd32f10x_spi.o(i.spi_i2s_data_receive)
    i.spi_i2s_data_transmit                  0x08001ed0   Section        0  gd32f10x_spi.o(i.spi_i2s_data_transmit)
    i.spi_i2s_flag_get                       0x08001ed4   Section        0  gd32f10x_spi.o(i.spi_i2s_flag_get)
    i.system_clock_108m_hxtal                0x08001ee4   Section        0  system_gd32f10x.o(i.system_clock_108m_hxtal)
    system_clock_108m_hxtal                  0x08001ee5   Thumb Code   182  system_gd32f10x.o(i.system_clock_108m_hxtal)
    i.system_clock_config                    0x08001fa8   Section        0  system_gd32f10x.o(i.system_clock_config)
    system_clock_config                      0x08001fa9   Thumb Code     8  system_gd32f10x.o(i.system_clock_config)
    i.systick_clksource_set                  0x08001fb0   Section        0  gd32f10x_misc.o(i.systick_clksource_set)
    i.task_fwdgt_reload                      0x08001fd8   Section        0  main.o(i.task_fwdgt_reload)
    i.usart_baudrate_set                     0x08001fe4   Section        0  gd32f10x_usart.o(i.usart_baudrate_set)
    i.usart_data_receive                     0x08002074   Section        0  gd32f10x_usart.o(i.usart_data_receive)
    i.usart_data_transmit                    0x0800207e   Section        0  gd32f10x_usart.o(i.usart_data_transmit)
    i.usart_deinit                           0x08002088   Section        0  gd32f10x_usart.o(i.usart_deinit)
    i.usart_dma_transmit_config              0x08002118   Section        0  gd32f10x_usart.o(i.usart_dma_transmit_config)
    i.usart_enable                           0x08002128   Section        0  gd32f10x_usart.o(i.usart_enable)
    i.usart_flag_get                         0x08002132   Section        0  gd32f10x_usart.o(i.usart_flag_get)
    i.usart_hardware_flow_cts_config         0x08002150   Section        0  gd32f10x_usart.o(i.usart_hardware_flow_cts_config)
    i.usart_hardware_flow_rts_config         0x08002160   Section        0  gd32f10x_usart.o(i.usart_hardware_flow_rts_config)
    i.usart_interrupt_enable                 0x08002170   Section        0  gd32f10x_usart.o(i.usart_interrupt_enable)
    i.usart_interrupt_flag_clear             0x0800218a   Section        0  gd32f10x_usart.o(i.usart_interrupt_flag_clear)
    i.usart_interrupt_flag_get               0x080021a4   Section        0  gd32f10x_usart.o(i.usart_interrupt_flag_get)
    i.usart_parity_config                    0x080021dc   Section        0  gd32f10x_usart.o(i.usart_parity_config)
    i.usart_receive_config                   0x080021ec   Section        0  gd32f10x_usart.o(i.usart_receive_config)
    i.usart_stop_bit_set                     0x080021fc   Section        0  gd32f10x_usart.o(i.usart_stop_bit_set)
    i.usart_transmit_config                  0x0800220c   Section        0  gd32f10x_usart.o(i.usart_transmit_config)
    i.usart_word_length_set                  0x0800221c   Section        0  gd32f10x_usart.o(i.usart_word_length_set)
    .constdata                               0x0800222c   Section       64  ctype_c.o(.constdata)
    .data                                    0x20000000   Section        4  boot.o(.data)
    .data                                    0x20000004   Section       16  ota_message.o(.data)
    ota_message                              0x20000004   Data           8  ota_message.o(.data)
    ota_message                              0x2000000c   Data           8  ota_message.o(.data)
    .data                                    0x20000014   Section       84  usart.o(.data)
    COM_CLK                                  0x20000014   Data           6  usart.o(.data)
    COM_TX_PIN                               0x2000001c   Data          12  usart.o(.data)
    COM_RX_PIN                               0x20000028   Data          12  usart.o(.data)
    COM_GPIO_PORT                            0x20000034   Data          12  usart.o(.data)
    COM_GPIO_CLK                             0x20000040   Data           6  usart.o(.data)
    COM_IT_HANDLER                           0x20000048   Data          12  usart.o(.data)
    COM_BAUDTATE                             0x20000054   Data          12  usart.o(.data)
    .data                                    0x20000068   Section       16  main.o(.data)
    ota_message                              0x20000070   Data           8  main.o(.data)
    .data                                    0x20000078   Section        4  mvars.o(.data)
    .data                                    0x2000007c   Section        4  mvars.o(.data)
    .bss                                     0x20000080   Section     4354  usart.o(.bss)
    HEAP                                     0x20001188   Section    65536  startup_gd32f10x_xd.o(HEAP)
    STACK                                    0x20011188   Section     4096  startup_gd32f10x_xd.o(STACK)

    Global Symbols

    Symbol Name                              Value     Ov Type        Size  Object(Section)

    BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$USESV6$~STKCKD$USESV7$~SHL$OSPACE$EBA8$MICROLIB$REQ8$PRES8$EABIv2 0x00000000   Number         0  anon$$obj.o ABSOLUTE
    __ARM_use_no_argv                        0x00000000   Number         0  main.o ABSOLUTE
    __arm_fini_                               - Undefined Weak Reference
    __cpp_initialize__aeabi_                  - Undefined Weak Reference
    __cxa_finalize                            - Undefined Weak Reference
    __decompress                              - Undefined Weak Reference
    _clock_init                               - Undefined Weak Reference
    _microlib_exit                            - Undefined Weak Reference
    _scanf_longlong                           - Undefined Weak Reference
    _scanf_real                               - Undefined Weak Reference
    _scanf_string                             - Undefined Weak Reference
    __Vectors_Size                           0x00000130   Number         0  startup_gd32f10x_xd.o ABSOLUTE
    __Vectors                                0x08000000   Data           4  startup_gd32f10x_xd.o(RESET)
    __Vectors_End                            0x08000130   Data           0  startup_gd32f10x_xd.o(RESET)
    __main                                   0x08000131   Thumb Code     0  entry.o(.ARM.Collect$$$$00000000)
    _main_stk                                0x08000131   Thumb Code     0  entry2.o(.ARM.Collect$$$$00000001)
    _main_scatterload                        0x08000135   Thumb Code     0  entry5.o(.ARM.Collect$$$$00000004)
    __main_after_scatterload                 0x08000139   Thumb Code     0  entry5.o(.ARM.Collect$$$$00000004)
    _main_clock                              0x08000139   Thumb Code     0  entry7b.o(.ARM.Collect$$$$00000008)
    _main_cpp_init                           0x08000139   Thumb Code     0  entry8b.o(.ARM.Collect$$$$0000000A)
    _main_init                               0x08000139   Thumb Code     0  entry9a.o(.ARM.Collect$$$$0000000B)
    __rt_lib_shutdown_fini                   0x08000141   Thumb Code     0  entry12b.o(.ARM.Collect$$$$0000000E)
    __rt_final_cpp                           0x08000145   Thumb Code     0  entry10a.o(.ARM.Collect$$$$0000000F)
    __rt_final_exit                          0x08000145   Thumb Code     0  entry11a.o(.ARM.Collect$$$$00000011)
    MSR_SP                                   0x08000149   Thumb Code     6  boot.o(.emb_text)
    Reset_Handler                            0x08000151   Thumb Code     8  startup_gd32f10x_xd.o(.text)
    ADC0_1_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    ADC2_IRQHandler                          0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    CAN0_EWMC_IRQHandler                     0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    CAN0_RX1_IRQHandler                      0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel0_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel1_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel2_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel3_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel5_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel6_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA1_Channel0_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA1_Channel1_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA1_Channel2_IRQHandler                 0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA1_Channel3_4_IRQHandler               0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXMC_IRQHandler                          0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI0_IRQHandler                         0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI10_15_IRQHandler                     0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI1_IRQHandler                         0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI2_IRQHandler                         0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI3_IRQHandler                         0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI4_IRQHandler                         0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI5_9_IRQHandler                       0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    FMC_IRQHandler                           0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    I2C0_ER_IRQHandler                       0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    I2C0_EV_IRQHandler                       0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    I2C1_ER_IRQHandler                       0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    I2C1_EV_IRQHandler                       0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    LVD_IRQHandler                           0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    RCU_IRQHandler                           0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    RTC_Alarm_IRQHandler                     0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    RTC_IRQHandler                           0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    SDIO_IRQHandler                          0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    SPI0_IRQHandler                          0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    SPI1_IRQHandler                          0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    SPI2_IRQHandler                          0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TAMPER_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER0_BRK_TIMER8_IRQHandler             0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER0_Channel_IRQHandler                0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER0_TRG_CMT_TIMER10_IRQHandler        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER0_UP_TIMER9_IRQHandler              0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER1_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER2_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER3_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER4_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER5_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER6_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER7_BRK_TIMER11_IRQHandler            0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER7_Channel_IRQHandler                0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER7_TRG_CMT_TIMER13_IRQHandler        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER7_UP_TIMER12_IRQHandler             0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    UART3_IRQHandler                         0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    UART4_IRQHandler                         0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    USART1_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    USART2_IRQHandler                        0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    USBD_HP_CAN0_TX_IRQHandler               0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    USBD_LP_CAN0_RX0_IRQHandler              0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    USBD_WKUP_IRQHandler                     0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    WWDGT_IRQHandler                         0x0800016b   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    __aeabi_memcpy                           0x08000175   Thumb Code    36  memcpya.o(.text)
    __aeabi_memcpy4                          0x08000175   Thumb Code     0  memcpya.o(.text)
    __aeabi_memcpy8                          0x08000175   Thumb Code     0  memcpya.o(.text)
    __aeabi_memset                           0x08000199   Thumb Code    14  memseta.o(.text)
    __aeabi_memset4                          0x08000199   Thumb Code     0  memseta.o(.text)
    __aeabi_memset8                          0x08000199   Thumb Code     0  memseta.o(.text)
    __aeabi_memclr                           0x080001a7   Thumb Code     4  memseta.o(.text)
    __aeabi_memclr4                          0x080001a7   Thumb Code     0  memseta.o(.text)
    __aeabi_memclr8                          0x080001a7   Thumb Code     0  memseta.o(.text)
    _memset$wrapper                          0x080001ab   Thumb Code    18  memseta.o(.text)
    strstr                                   0x080001bd   Thumb Code    36  strstr.o(.text)
    strchr                                   0x080001e1   Thumb Code    20  strchr.o(.text)
    strlen                                   0x080001f5   Thumb Code    14  strlen.o(.text)
    strcpy                                   0x08000203   Thumb Code    18  strcpy.o(.text)
    __0sscanf                                0x08000215   Thumb Code    48  __0sscanf.o(.text)
    _scanf_int                               0x0800024d   Thumb Code   332  _scanf_int.o(.text)
    _chval                                   0x08000399   Thumb Code    28  _chval.o(.text)
    __vfscanf_char                           0x080003c1   Thumb Code    20  scanf_char.o(.text)
    _sgetc                                   0x080003dd   Thumb Code    30  _sgetc.o(.text)
    _sbackspace                              0x080003fb   Thumb Code    34  _sgetc.o(.text)
    __scatterload                            0x0800041d   Thumb Code    28  init.o(.text)
    __scatterload_rt2                        0x0800041d   Thumb Code     0  init.o(.text)
    isspace                                  0x08000441   Thumb Code    10  isspace_c.o(.text)
    __vfscanf                                0x0800044d   Thumb Code   810  _scanf.o(.text)
    __ctype_lookup                           0x0800077d   Thumb Code    34  ctype_c.o(.text)
    BootLoader_Brance                        0x080007a5   Thumb Code   154  boot.o(i.BootLoader_Brance)
    BootLoader_Clear                         0x08000845   Thumb Code    16  boot.o(i.BootLoader_Clear)
    BusFault_Handler                         0x0800085d   Thumb Code     4  gd32f10x_it.o(i.BusFault_Handler)
    Clear_DMA_Buffer                         0x08000861   Thumb Code    20  usart.o(i.Clear_DMA_Buffer)
    DMA0_Channel4_IRQHandler                 0x0800087d   Thumb Code    14  gd32f10x_it.o(i.DMA0_Channel4_IRQHandler)
    DebugMon_Handler                         0x08000891   Thumb Code     2  gd32f10x_it.o(i.DebugMon_Handler)
    Delay_Init                               0x08000893   Thumb Code    10  delay.o(i.Delay_Init)
    Delay_Ms                                 0x0800089d   Thumb Code    26  delay.o(i.Delay_Ms)
    Delay_Us                                 0x080008b7   Thumb Code    58  delay.o(i.Delay_Us)
    EC800MPwoerOn                            0x080008f1   Thumb Code    82  ec800m.o(i.EC800MPwoerOn)
    EC800MSendCmd                            0x08000949   Thumb Code    48  ec800m.o(i.EC800MSendCmd)
    EC800MWaitReady                          0x0800097d   Thumb Code    14  ec800m.o(i.EC800MWaitReady)
    GD32_EraseFlash                          0x08000991   Thumb Code    48  fmc.o(i.GD32_EraseFlash)
    GD32_WriteFlash                          0x080009c1   Thumb Code    38  fmc.o(i.GD32_WriteFlash)
    HardFault_Handler                        0x080009e7   Thumb Code     4  gd32f10x_it.o(i.HardFault_Handler)
    LOAD_A                                   0x080009ed   Thumb Code    44  boot.o(i.LOAD_A)
    MemManage_Handler                        0x08000a21   Thumb Code     4  gd32f10x_it.o(i.MemManage_Handler)
    NMI_Handler                              0x08000a25   Thumb Code     2  gd32f10x_it.o(i.NMI_Handler)
    PendSV_Handler                           0x08000a27   Thumb Code     2  gd32f10x_it.o(i.PendSV_Handler)
    SPI0_Read                                0x08000a29   Thumb Code    28  spi.o(i.SPI0_Read)
    SPI0_ReadWriteByte                       0x08000a45   Thumb Code    50  spi.o(i.SPI0_ReadWriteByte)
    SPI0_Write                               0x08000a7d   Thumb Code    26  spi.o(i.SPI0_Write)
    SVC_Handler                              0x08000a97   Thumb Code     2  gd32f10x_it.o(i.SVC_Handler)
    SysTick_Handler                          0x08000a99   Thumb Code     2  gd32f10x_it.o(i.SysTick_Handler)
    SystemInit                               0x08000a9d   Thumb Code   196  system_gd32f10x.o(i.SystemInit)
    USART0_IRQHandler                        0x08000b71   Thumb Code    50  gd32f10x_it.o(i.USART0_IRQHandler)
    UsageFault_Handler                       0x08000bb5   Thumb Code     4  gd32f10x_it.o(i.UsageFault_Handler)
    W25Q32_Read                              0x08000bb9   Thumb Code    70  w25q32.o(i.W25Q32_Read)
    W25Q32_WaitBusy                          0x08000c05   Thumb Code    44  w25q32.o(i.W25Q32_WaitBusy)
    WaitForUpData                            0x08000c35   Thumb Code    60  ota_message.o(i.WaitForUpData)
    WaitResponse                             0x08000c75   Thumb Code    82  ec800m.o(i.WaitResponse)
    __scatterload_copy                       0x08000cd1   Thumb Code    14  handlers.o(i.__scatterload_copy)
    __scatterload_null                       0x08000cdf   Thumb Code     2  handlers.o(i.__scatterload_null)
    __scatterload_zeroinit                   0x08000ce1   Thumb Code    14  handlers.o(i.__scatterload_zeroinit)
    clear_ota_message_config_block           0x08000d31   Thumb Code   106  ota_message.o(i.clear_ota_message_config_block)
    dma_channel_disable                      0x08000e01   Thumb Code    50  gd32f10x_dma.o(i.dma_channel_disable)
    dma_channel_enable                       0x08000e33   Thumb Code    50  gd32f10x_dma.o(i.dma_channel_enable)
    dma_circulation_disable                  0x08000e65   Thumb Code    50  gd32f10x_dma.o(i.dma_circulation_disable)
    dma_config                               0x08000e99   Thumb Code   122  usart.o(i.dma_config)
    dma_config_change                        0x08000f21   Thumb Code   120  usart.o(i.dma_config_change)
    dma_deinit                               0x08000fa1   Thumb Code   112  gd32f10x_dma.o(i.dma_deinit)
    dma_init                                 0x08001011   Thumb Code   302  gd32f10x_dma.o(i.dma_init)
    dma_interrupt_enable                     0x0800113f   Thumb Code    50  gd32f10x_dma.o(i.dma_interrupt_enable)
    dma_interrupt_flag_clear                 0x08001171   Thumb Code    16  gd32f10x_dma.o(i.dma_interrupt_flag_clear)
    dma_memory_to_memory_disable             0x08001181   Thumb Code    50  gd32f10x_dma.o(i.dma_memory_to_memory_disable)
    fmc_bank0_ready_wait                     0x08001265   Thumb Code    34  gd32f10x_fmc.o(i.fmc_bank0_ready_wait)
    fmc_bank0_state_get                      0x08001289   Thumb Code    44  gd32f10x_fmc.o(i.fmc_bank0_state_get)
    fmc_bank1_ready_wait                     0x080012b9   Thumb Code    34  gd32f10x_fmc.o(i.fmc_bank1_ready_wait)
    fmc_bank1_state_get                      0x080012dd   Thumb Code    44  gd32f10x_fmc.o(i.fmc_bank1_state_get)
    fmc_lock                                 0x0800130d   Thumb Code    34  gd32f10x_fmc.o(i.fmc_lock)
    fmc_page_erase                           0x08001339   Thumb Code   222  gd32f10x_fmc.o(i.fmc_page_erase)
    fmc_unlock                               0x08001425   Thumb Code    52  gd32f10x_fmc.o(i.fmc_unlock)
    fmc_word_program                         0x08001469   Thumb Code   178  gd32f10x_fmc.o(i.fmc_word_program)
    free                                     0x08001529   Thumb Code    76  malloc.o(i.free)
    fwdgt_counter_reload                     0x08001579   Thumb Code    10  gd32f10x_fwdgt.o(i.fwdgt_counter_reload)
    fwdgt_write_enable                       0x08001589   Thumb Code    10  gd32f10x_fwdgt.o(i.fwdgt_write_enable)
    gd_EC800M_pin_init                       0x08001599   Thumb Code    62  usart.o(i.gd_EC800M_pin_init)
    gd_com_init                              0x080015e1   Thumb Code   210  usart.o(i.gd_com_init)
    gd_pull_EC800M_pwr_down                  0x080016dd   Thumb Code     8  usart.o(i.gd_pull_EC800M_pwr_down)
    gd_pull_EC800M_pwr_up                    0x080016e9   Thumb Code     8  usart.o(i.gd_pull_EC800M_pwr_up)
    gd_pull_EC800M_rst_down                  0x080016f5   Thumb Code    10  usart.o(i.gd_pull_EC800M_rst_down)
    gd_pull_EC800M_rst_up                    0x08001705   Thumb Code    10  usart.o(i.gd_pull_EC800M_rst_up)
    get_config_params                        0x08001715   Thumb Code     4  ota_message.o(i.get_config_params)
    gpio_bit_reset                           0x0800171d   Thumb Code     4  gd32f10x_gpio.o(i.gpio_bit_reset)
    gpio_bit_set                             0x08001721   Thumb Code     4  gd32f10x_gpio.o(i.gpio_bit_set)
    gpio_deinit                              0x08001725   Thumb Code   186  gd32f10x_gpio.o(i.gpio_deinit)
    gpio_init                                0x080017e9   Thumb Code   172  gd32f10x_gpio.o(i.gpio_init)
    gpio_pin_remap_config                    0x08001895   Thumb Code   138  gd32f10x_gpio.o(i.gpio_pin_remap_config)
    load_ota_message_config_params           0x08001925   Thumb Code   122  ota_message.o(i.load_ota_message_config_params)
    main                                     0x080019bd   Thumb Code    68  main.o(i.main)
    malloc                                   0x08001a09   Thumb Code    92  malloc.o(i.malloc)
    my_test                                  0x08001a75   Thumb Code   282  main.o(i.my_test)
    nvic_config                              0x08001c4d   Thumb Code    32  usart.o(i.nvic_config)
    nvic_irq_enable                          0x08001c6d   Thumb Code   162  gd32f10x_misc.o(i.nvic_irq_enable)
    nvic_priority_group_set                  0x08001d19   Thumb Code    10  gd32f10x_misc.o(i.nvic_priority_group_set)
    nvic_vector_table_set                    0x08001d2d   Thumb Code    16  gd32f10x_misc.o(i.nvic_vector_table_set)
    rcu_clock_freq_get                       0x08001d45   Thumb Code   264  gd32f10x_rcu.o(i.rcu_clock_freq_get)
    rcu_periph_clock_enable                  0x08001e69   Thumb Code    28  gd32f10x_rcu.o(i.rcu_periph_clock_enable)
    rcu_periph_reset_disable                 0x08001e89   Thumb Code    28  gd32f10x_rcu.o(i.rcu_periph_reset_disable)
    rcu_periph_reset_enable                  0x08001ea9   Thumb Code    28  gd32f10x_rcu.o(i.rcu_periph_reset_enable)
    spi_i2s_data_receive                     0x08001ec9   Thumb Code     8  gd32f10x_spi.o(i.spi_i2s_data_receive)
    spi_i2s_data_transmit                    0x08001ed1   Thumb Code     4  gd32f10x_spi.o(i.spi_i2s_data_transmit)
    spi_i2s_flag_get                         0x08001ed5   Thumb Code    16  gd32f10x_spi.o(i.spi_i2s_flag_get)
    systick_clksource_set                    0x08001fb1   Thumb Code    40  gd32f10x_misc.o(i.systick_clksource_set)
    task_fwdgt_reload                        0x08001fd9   Thumb Code    12  main.o(i.task_fwdgt_reload)
    usart_baudrate_set                       0x08001fe5   Thumb Code   136  gd32f10x_usart.o(i.usart_baudrate_set)
    usart_data_receive                       0x08002075   Thumb Code    10  gd32f10x_usart.o(i.usart_data_receive)
    usart_data_transmit                      0x0800207f   Thumb Code     8  gd32f10x_usart.o(i.usart_data_transmit)
    usart_deinit                             0x08002089   Thumb Code   136  gd32f10x_usart.o(i.usart_deinit)
    usart_dma_transmit_config                0x08002119   Thumb Code    16  gd32f10x_usart.o(i.usart_dma_transmit_config)
    usart_enable                             0x08002129   Thumb Code    10  gd32f10x_usart.o(i.usart_enable)
    usart_flag_get                           0x08002133   Thumb Code    30  gd32f10x_usart.o(i.usart_flag_get)
    usart_hardware_flow_cts_config           0x08002151   Thumb Code    16  gd32f10x_usart.o(i.usart_hardware_flow_cts_config)
    usart_hardware_flow_rts_config           0x08002161   Thumb Code    16  gd32f10x_usart.o(i.usart_hardware_flow_rts_config)
    usart_interrupt_enable                   0x08002171   Thumb Code    26  gd32f10x_usart.o(i.usart_interrupt_enable)
    usart_interrupt_flag_clear               0x0800218b   Thumb Code    26  gd32f10x_usart.o(i.usart_interrupt_flag_clear)
    usart_interrupt_flag_get                 0x080021a5   Thumb Code    56  gd32f10x_usart.o(i.usart_interrupt_flag_get)
    usart_parity_config                      0x080021dd   Thumb Code    16  gd32f10x_usart.o(i.usart_parity_config)
    usart_receive_config                     0x080021ed   Thumb Code    16  gd32f10x_usart.o(i.usart_receive_config)
    usart_stop_bit_set                       0x080021fd   Thumb Code    16  gd32f10x_usart.o(i.usart_stop_bit_set)
    usart_transmit_config                    0x0800220d   Thumb Code    16  gd32f10x_usart.o(i.usart_transmit_config)
    usart_word_length_set                    0x0800221d   Thumb Code    16  gd32f10x_usart.o(i.usart_word_length_set)
    __ctype_categories                       0x0800222c   Data          64  ctype_c.o(.constdata)
    Region$$Table$$Base                      0x0800226c   Number         0  anon$$obj.o(Region$$Table)
    Region$$Table$$Limit                     0x0800228c   Number         0  anon$$obj.o(Region$$Table)
    load_A                                   0x20000000   Data           4  boot.o(.data)
    UART0_RX_STAT                            0x20000060   Data           1  usart.o(.data)
    UART0_RX_MQTT_SUB_STAT                   0x20000061   Data           1  usart.o(.data)
    UART0_RX_NUM                             0x20000064   Data           4  usart.o(.data)
    UpDataA                                  0x20000068   Data           8  main.o(.data)
    __microlib_freelist                      0x20000078   Data           4  mvars.o(.data)
    __microlib_freelist_initialised          0x2000007c   Data           4  mvars.o(.data)
    UART0_RX_BUF                             0x20000080   Data        4096  usart.o(.bss)
    usart1_rx_buf                            0x20001080   Data         258  usart.o(.bss)
    __heap_base                              0x20001188   Data           0  startup_gd32f10x_xd.o(HEAP)
    __heap_limit                             0x20011188   Data           0  startup_gd32f10x_xd.o(HEAP)
    __initial_sp                             0x20012188   Data           0  startup_gd32f10x_xd.o(STACK)



==============================================================================

Memory Map of the image

  Image Entry point : 0x08000131

  Load Region LR_IROM1 (Base: 0x08000000, Size: 0x0000230c, Max: 0x00005000, ABSOLUTE)

    Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x0000228c, Max: 0x00005000, ABSOLUTE)

    Exec Addr    Load Addr    Size         Type   Attr      Idx    E Section Name        Object

    0x08000000   0x08000000   0x00000130   Data   RO          136    RESET               startup_gd32f10x_xd.o
    0x08000130   0x08000130   0x00000000   Code   RO         2151  * .ARM.Collect$$$$00000000  mc_w.l(entry.o)
    0x08000130   0x08000130   0x00000004   Code   RO         2200    .ARM.Collect$$$$00000001  mc_w.l(entry2.o)
    0x08000134   0x08000134   0x00000004   Code   RO         2203    .ARM.Collect$$$$00000004  mc_w.l(entry5.o)
    0x08000138   0x08000138   0x00000000   Code   RO         2205    .ARM.Collect$$$$00000008  mc_w.l(entry7b.o)
    0x08000138   0x08000138   0x00000000   Code   RO         2207    .ARM.Collect$$$$0000000A  mc_w.l(entry8b.o)
    0x08000138   0x08000138   0x00000008   Code   RO         2208    .ARM.Collect$$$$0000000B  mc_w.l(entry9a.o)
    0x08000140   0x08000140   0x00000004   Code   RO         2215    .ARM.Collect$$$$0000000E  mc_w.l(entry12b.o)
    0x08000144   0x08000144   0x00000000   Code   RO         2210    .ARM.Collect$$$$0000000F  mc_w.l(entry10a.o)
    0x08000144   0x08000144   0x00000000   Code   RO         2212    .ARM.Collect$$$$00000011  mc_w.l(entry11a.o)
    0x08000144   0x08000144   0x00000004   Code   RO         2201    .ARM.Collect$$$$00002712  mc_w.l(entry2.o)
    0x08000148   0x08000148   0x00000006   Code   RO          143    .emb_text           boot.o
    0x0800014e   0x0800014e   0x00000002   PAD
    0x08000150   0x08000150   0x00000024   Code   RO          137    .text               startup_gd32f10x_xd.o
    0x08000174   0x08000174   0x00000024   Code   RO         2154    .text               mc_w.l(memcpya.o)
    0x08000198   0x08000198   0x00000024   Code   RO         2156    .text               mc_w.l(memseta.o)
    0x080001bc   0x080001bc   0x00000024   Code   RO         2158    .text               mc_w.l(strstr.o)
    0x080001e0   0x080001e0   0x00000014   Code   RO         2160    .text               mc_w.l(strchr.o)
    0x080001f4   0x080001f4   0x0000000e   Code   RO         2162    .text               mc_w.l(strlen.o)
    0x08000202   0x08000202   0x00000012   Code   RO         2164    .text               mc_w.l(strcpy.o)
    0x08000214   0x08000214   0x00000038   Code   RO         2196    .text               mc_w.l(__0sscanf.o)
    0x0800024c   0x0800024c   0x0000014c   Code   RO         2198    .text               mc_w.l(_scanf_int.o)
    0x08000398   0x08000398   0x0000001c   Code   RO         2218    .text               mc_w.l(_chval.o)
    0x080003b4   0x080003b4   0x00000028   Code   RO         2220    .text               mc_w.l(scanf_char.o)
    0x080003dc   0x080003dc   0x00000040   Code   RO         2222    .text               mc_w.l(_sgetc.o)
    0x0800041c   0x0800041c   0x00000024   Code   RO         2224    .text               mc_w.l(init.o)
    0x08000440   0x08000440   0x0000000a   Code   RO         2226    .text               mc_w.l(isspace_c.o)
    0x0800044a   0x0800044a   0x00000002   PAD
    0x0800044c   0x0800044c   0x00000330   Code   RO         2228    .text               mc_w.l(_scanf.o)
    0x0800077c   0x0800077c   0x00000028   Code   RO         2230    .text               mc_w.l(ctype_c.o)
    0x080007a4   0x080007a4   0x000000a0   Code   RO          144    i.BootLoader_Brance  boot.o
    0x08000844   0x08000844   0x00000018   Code   RO          145    i.BootLoader_Clear  boot.o
    0x0800085c   0x0800085c   0x00000004   Code   RO          273    i.BusFault_Handler  gd32f10x_it.o
    0x08000860   0x08000860   0x0000001c   Code   RO          563    i.Clear_DMA_Buffer  usart.o
    0x0800087c   0x0800087c   0x00000014   Code   RO          274    i.DMA0_Channel4_IRQHandler  gd32f10x_it.o
    0x08000890   0x08000890   0x00000002   Code   RO          275    i.DebugMon_Handler  gd32f10x_it.o
    0x08000892   0x08000892   0x0000000a   Code   RO          209    i.Delay_Init        delay.o
    0x0800089c   0x0800089c   0x0000001a   Code   RO          210    i.Delay_Ms          delay.o
    0x080008b6   0x080008b6   0x0000003a   Code   RO          211    i.Delay_Us          delay.o
    0x080008f0   0x080008f0   0x00000058   Code   RO          525    i.EC800MPwoerOn     ec800m.o
    0x08000948   0x08000948   0x00000034   Code   RO          526    i.EC800MSendCmd     ec800m.o
    0x0800097c   0x0800097c   0x00000014   Code   RO          527    i.EC800MWaitReady   ec800m.o
    0x08000990   0x08000990   0x00000030   Code   RO          242    i.GD32_EraseFlash   fmc.o
    0x080009c0   0x080009c0   0x00000026   Code   RO          243    i.GD32_WriteFlash   fmc.o
    0x080009e6   0x080009e6   0x00000004   Code   RO          276    i.HardFault_Handler  gd32f10x_it.o
    0x080009ea   0x080009ea   0x00000002   PAD
    0x080009ec   0x080009ec   0x00000034   Code   RO          146    i.LOAD_A            boot.o
    0x08000a20   0x08000a20   0x00000004   Code   RO          277    i.MemManage_Handler  gd32f10x_it.o
    0x08000a24   0x08000a24   0x00000002   Code   RO          278    i.NMI_Handler       gd32f10x_it.o
    0x08000a26   0x08000a26   0x00000002   Code   RO          279    i.PendSV_Handler    gd32f10x_it.o
    0x08000a28   0x08000a28   0x0000001c   Code   RO          361    i.SPI0_Read         spi.o
    0x08000a44   0x08000a44   0x00000038   Code   RO          362    i.SPI0_ReadWriteByte  spi.o
    0x08000a7c   0x08000a7c   0x0000001a   Code   RO          363    i.SPI0_Write        spi.o
    0x08000a96   0x08000a96   0x00000002   Code   RO          280    i.SVC_Handler       gd32f10x_it.o
    0x08000a98   0x08000a98   0x00000002   Code   RO          281    i.SysTick_Handler   gd32f10x_it.o
    0x08000a9a   0x08000a9a   0x00000002   PAD
    0x08000a9c   0x08000a9c   0x000000d4   Code   RO            3    i.SystemInit        system_gd32f10x.o
    0x08000b70   0x08000b70   0x00000044   Code   RO          282    i.USART0_IRQHandler  gd32f10x_it.o
    0x08000bb4   0x08000bb4   0x00000004   Code   RO          283    i.UsageFault_Handler  gd32f10x_it.o
    0x08000bb8   0x08000bb8   0x0000004c   Code   RO          405    i.W25Q32_Read       w25q32.o
    0x08000c04   0x08000c04   0x00000030   Code   RO          406    i.W25Q32_WaitBusy   w25q32.o
    0x08000c34   0x08000c34   0x00000040   Code   RO          451    i.WaitForUpData     ota_message.o
    0x08000c74   0x08000c74   0x0000005c   Code   RO          528    i.WaitResponse      ec800m.o
    0x08000cd0   0x08000cd0   0x0000000e   Code   RO         2235    i.__scatterload_copy  mc_w.l(handlers.o)
    0x08000cde   0x08000cde   0x00000002   Code   RO         2236    i.__scatterload_null  mc_w.l(handlers.o)
    0x08000ce0   0x08000ce0   0x0000000e   Code   RO         2237    i.__scatterload_zeroinit  mc_w.l(handlers.o)
    0x08000cee   0x08000cee   0x00000042   Code   RO          452    i.checksum          ota_message.o
    0x08000d30   0x08000d30   0x000000d0   Code   RO          453    i.clear_ota_message_config_block  ota_message.o
    0x08000e00   0x08000e00   0x00000032   Code   RO         1576    i.dma_channel_disable  gd32f10x_dma.o
    0x08000e32   0x08000e32   0x00000032   Code   RO         1577    i.dma_channel_enable  gd32f10x_dma.o
    0x08000e64   0x08000e64   0x00000032   Code   RO         1578    i.dma_circulation_disable  gd32f10x_dma.o
    0x08000e96   0x08000e96   0x00000002   PAD
    0x08000e98   0x08000e98   0x00000088   Code   RO          564    i.dma_config        usart.o
    0x08000f20   0x08000f20   0x00000080   Code   RO          565    i.dma_config_change  usart.o
    0x08000fa0   0x08000fa0   0x00000070   Code   RO         1580    i.dma_deinit        gd32f10x_dma.o
    0x08001010   0x08001010   0x0000012e   Code   RO         1583    i.dma_init          gd32f10x_dma.o
    0x0800113e   0x0800113e   0x00000032   Code   RO         1585    i.dma_interrupt_enable  gd32f10x_dma.o
    0x08001170   0x08001170   0x00000010   Code   RO         1586    i.dma_interrupt_flag_clear  gd32f10x_dma.o
    0x08001180   0x08001180   0x00000032   Code   RO         1591    i.dma_memory_to_memory_disable  gd32f10x_dma.o
    0x080011b2   0x080011b2   0x00000002   PAD
    0x080011b4   0x080011b4   0x00000018   Code   RO         1595    i.dma_periph_and_channel_check  gd32f10x_dma.o
    0x080011cc   0x080011cc   0x00000060   Code   RO          454    i.extract_data_from_buffer  ota_message.o
    0x0800122c   0x0800122c   0x00000038   Code   RO          455    i.find_string       ota_message.o
    0x08001264   0x08001264   0x00000022   Code   RO         1104    i.fmc_bank0_ready_wait  gd32f10x_fmc.o
    0x08001286   0x08001286   0x00000002   PAD
    0x08001288   0x08001288   0x00000030   Code   RO         1105    i.fmc_bank0_state_get  gd32f10x_fmc.o
    0x080012b8   0x080012b8   0x00000022   Code   RO         1109    i.fmc_bank1_ready_wait  gd32f10x_fmc.o
    0x080012da   0x080012da   0x00000002   PAD
    0x080012dc   0x080012dc   0x00000030   Code   RO         1110    i.fmc_bank1_state_get  gd32f10x_fmc.o
    0x0800130c   0x0800130c   0x0000002c   Code   RO         1119    i.fmc_lock          gd32f10x_fmc.o
    0x08001338   0x08001338   0x000000ec   Code   RO         1121    i.fmc_page_erase    gd32f10x_fmc.o
    0x08001424   0x08001424   0x00000044   Code   RO         1122    i.fmc_unlock        gd32f10x_fmc.o
    0x08001468   0x08001468   0x000000c0   Code   RO         1123    i.fmc_word_program  gd32f10x_fmc.o
    0x08001528   0x08001528   0x00000050   Code   RO         2168    i.free              mc_w.l(malloc.o)
    0x08001578   0x08001578   0x00000010   Code   RO         1515    i.fwdgt_counter_reload  gd32f10x_fwdgt.o
    0x08001588   0x08001588   0x00000010   Code   RO         1521    i.fwdgt_write_enable  gd32f10x_fwdgt.o
    0x08001598   0x08001598   0x00000048   Code   RO          566    i.gd_EC800M_pin_init  usart.o
    0x080015e0   0x080015e0   0x000000fc   Code   RO          567    i.gd_com_init       usart.o
    0x080016dc   0x080016dc   0x0000000c   Code   RO          568    i.gd_pull_EC800M_pwr_down  usart.o
    0x080016e8   0x080016e8   0x0000000c   Code   RO          569    i.gd_pull_EC800M_pwr_up  usart.o
    0x080016f4   0x080016f4   0x00000010   Code   RO          570    i.gd_pull_EC800M_rst_down  usart.o
    0x08001704   0x08001704   0x00000010   Code   RO          571    i.gd_pull_EC800M_rst_up  usart.o
    0x08001714   0x08001714   0x00000008   Code   RO          456    i.get_config_params  ota_message.o
    0x0800171c   0x0800171c   0x00000004   Code   RO          987    i.gpio_bit_reset    gd32f10x_gpio.o
    0x08001720   0x08001720   0x00000004   Code   RO          988    i.gpio_bit_set      gd32f10x_gpio.o
    0x08001724   0x08001724   0x000000c4   Code   RO          990    i.gpio_deinit       gd32f10x_gpio.o
    0x080017e8   0x080017e8   0x000000ac   Code   RO          995    i.gpio_init         gd32f10x_gpio.o
    0x08001894   0x08001894   0x00000090   Code   RO         1001    i.gpio_pin_remap_config  gd32f10x_gpio.o
    0x08001924   0x08001924   0x00000098   Code   RO          457    i.load_ota_message_config_params  ota_message.o
    0x080019bc   0x080019bc   0x0000004c   Code   RO         2115    i.main              main.o
    0x08001a08   0x08001a08   0x0000006c   Code   RO         2169    i.malloc            mc_w.l(malloc.o)
    0x08001a74   0x08001a74   0x000001d8   Code   RO         2116    i.my_test           main.o
    0x08001c4c   0x08001c4c   0x00000020   Code   RO          572    i.nvic_config       usart.o
    0x08001c6c   0x08001c6c   0x000000ac   Code   RO          701    i.nvic_irq_enable   gd32f10x_misc.o
    0x08001d18   0x08001d18   0x00000014   Code   RO          702    i.nvic_priority_group_set  gd32f10x_misc.o
    0x08001d2c   0x08001d2c   0x00000018   Code   RO          703    i.nvic_vector_table_set  gd32f10x_misc.o
    0x08001d44   0x08001d44   0x00000124   Code   RO          764    i.rcu_clock_freq_get  gd32f10x_rcu.o
    0x08001e68   0x08001e68   0x00000020   Code   RO          781    i.rcu_periph_clock_enable  gd32f10x_rcu.o
    0x08001e88   0x08001e88   0x00000020   Code   RO          784    i.rcu_periph_reset_disable  gd32f10x_rcu.o
    0x08001ea8   0x08001ea8   0x00000020   Code   RO          785    i.rcu_periph_reset_enable  gd32f10x_rcu.o
    0x08001ec8   0x08001ec8   0x00000008   Code   RO         1337    i.spi_i2s_data_receive  gd32f10x_spi.o
    0x08001ed0   0x08001ed0   0x00000004   Code   RO         1338    i.spi_i2s_data_transmit  gd32f10x_spi.o
    0x08001ed4   0x08001ed4   0x00000010   Code   RO         1340    i.spi_i2s_flag_get  gd32f10x_spi.o
    0x08001ee4   0x08001ee4   0x000000c4   Code   RO            4    i.system_clock_108m_hxtal  system_gd32f10x.o
    0x08001fa8   0x08001fa8   0x00000008   Code   RO            5    i.system_clock_config  system_gd32f10x.o
    0x08001fb0   0x08001fb0   0x00000028   Code   RO          706    i.systick_clksource_set  gd32f10x_misc.o
    0x08001fd8   0x08001fd8   0x0000000c   Code   RO         2117    i.task_fwdgt_reload  main.o
    0x08001fe4   0x08001fe4   0x00000090   Code   RO         1844    i.usart_baudrate_set  gd32f10x_usart.o
    0x08002074   0x08002074   0x0000000a   Code   RO         1845    i.usart_data_receive  gd32f10x_usart.o
    0x0800207e   0x0800207e   0x00000008   Code   RO         1846    i.usart_data_transmit  gd32f10x_usart.o
    0x08002086   0x08002086   0x00000002   PAD
    0x08002088   0x08002088   0x00000090   Code   RO         1847    i.usart_deinit      gd32f10x_usart.o
    0x08002118   0x08002118   0x00000010   Code   RO         1850    i.usart_dma_transmit_config  gd32f10x_usart.o
    0x08002128   0x08002128   0x0000000a   Code   RO         1851    i.usart_enable      gd32f10x_usart.o
    0x08002132   0x08002132   0x0000001e   Code   RO         1853    i.usart_flag_get    gd32f10x_usart.o
    0x08002150   0x08002150   0x00000010   Code   RO         1857    i.usart_hardware_flow_cts_config  gd32f10x_usart.o
    0x08002160   0x08002160   0x00000010   Code   RO         1858    i.usart_hardware_flow_rts_config  gd32f10x_usart.o
    0x08002170   0x08002170   0x0000001a   Code   RO         1860    i.usart_interrupt_enable  gd32f10x_usart.o
    0x0800218a   0x0800218a   0x0000001a   Code   RO         1861    i.usart_interrupt_flag_clear  gd32f10x_usart.o
    0x080021a4   0x080021a4   0x00000038   Code   RO         1862    i.usart_interrupt_flag_get  gd32f10x_usart.o
    0x080021dc   0x080021dc   0x00000010   Code   RO         1872    i.usart_parity_config  gd32f10x_usart.o
    0x080021ec   0x080021ec   0x00000010   Code   RO         1874    i.usart_receive_config  gd32f10x_usart.o
    0x080021fc   0x080021fc   0x00000010   Code   RO         1880    i.usart_stop_bit_set  gd32f10x_usart.o
    0x0800220c   0x0800220c   0x00000010   Code   RO         1884    i.usart_transmit_config  gd32f10x_usart.o
    0x0800221c   0x0800221c   0x00000010   Code   RO         1885    i.usart_word_length_set  gd32f10x_usart.o
    0x0800222c   0x0800222c   0x00000040   Data   RO         2231    .constdata          mc_w.l(ctype_c.o)
    0x0800226c   0x0800226c   0x00000020   Data   RO         2233    Region$$Table       anon$$obj.o


    Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x0800228c, Size: 0x00012188, Max: 0x00018000, ABSOLUTE)

    Exec Addr    Load Addr    Size         Type   Attr      Idx    E Section Name        Object

    0x20000000   0x0800228c   0x00000004   Data   RW          147    .data               boot.o
    0x20000004   0x08002290   0x00000010   Data   RW          460    .data               ota_message.o
    0x20000014   0x080022a0   0x00000054   Data   RW          574    .data               usart.o
    0x20000068   0x080022f4   0x00000010   Data   RW         2118    .data               main.o
    0x20000078   0x08002304   0x00000004   Data   RW         2216    .data               mc_w.l(mvars.o)
    0x2000007c   0x08002308   0x00000004   Data   RW         2217    .data               mc_w.l(mvars.o)
    0x20000080        -       0x00001102   Zero   RW          573    .bss                usart.o
    0x20001182   0x0800230c   0x00000006   PAD
    0x20001188        -       0x00010000   Zero   RW          135    HEAP                startup_gd32f10x_xd.o
    0x20011188        -       0x00001000   Zero   RW          134    STACK               startup_gd32f10x_xd.o


==============================================================================

Image component sizes


      Code (inc. data)   RO Data    RW Data    ZI Data      Debug   Object Name

       242         22          0          4          0       3041   boot.o
        94          0          0          0          0       1327   delay.o
       252         26          0          0          0       2209   ec800m.o
        86          0          0          0          0       1580   fmc.o
       704          6          0          0          0       5726   gd32f10x_dma.o
       704         62          0          0          0       4378   gd32f10x_fmc.o
        32         12          0          0          0        856   gd32f10x_fwdgt.o
       520         16          0          0          0       3126   gd32f10x_gpio.o
       114         24          0          0          0       4613   gd32f10x_it.o
       256         28          0          0          0       2244   gd32f10x_misc.o
       388         40          0          0          0       2524   gd32f10x_rcu.o
        28          0          0          0          0       1578   gd32f10x_spi.o
       582         16          0          0          0       9456   gd32f10x_usart.o
       560        198          0         16          0       2955   main.o
       650        156          0         16          0       5170   ota_message.o
       110          6          0          0          0       2018   spi.o
        36          8        304          0      69632        784   startup_gd32f10x_xd.o
       416         30          0          0          0      40333   system_gd32f10x.o
       704        102          0         84       4354       7108   usart.o
       124         10          0          0          0       1528   w25q32.o

    ----------------------------------------------------------------------
      6618        762        336        120      73992     102554   Object Totals
         0          0         32          0          0          0   (incl. Generated)
        16          0          0          0          6          0   (incl. Padding)

    ----------------------------------------------------------------------

      Code (inc. data)   RO Data    RW Data    ZI Data      Debug   Library Member Name

        56          8          0          0          0         84   __0sscanf.o
        28          0          0          0          0         68   _chval.o
       816          6          0          0          0        112   _scanf.o
       332          0          0          0          0         96   _scanf_int.o
        64          0          0          0          0         84   _sgetc.o
        40          6         64          0          0         68   ctype_c.o
         0          0          0          0          0          0   entry.o
         0          0          0          0          0          0   entry10a.o
         0          0          0          0          0          0   entry11a.o
         4          0          0          0          0          0   entry12b.o
         8          4          0          0          0          0   entry2.o
         4          0          0          0          0          0   entry5.o
         0          0          0          0          0          0   entry7b.o
         0          0          0          0          0          0   entry8b.o
         8          4          0          0          0          0   entry9a.o
        30          0          0          0          0          0   handlers.o
        36          8          0          0          0         68   init.o
        10          0          0          0          0         68   isspace_c.o
       188         20          0          0          0        160   malloc.o
        36          0          0          0          0         68   memcpya.o
        36          0          0          0          0        108   memseta.o
         0          0          0          8          0          0   mvars.o
        40          8          0          0          0         84   scanf_char.o
        20          0          0          0          0         68   strchr.o
        18          0          0          0          0         68   strcpy.o
        14          0          0          0          0         68   strlen.o
        36          0          0          0          0         80   strstr.o

    ----------------------------------------------------------------------
      1826         64         64          8          0       1352   Library Totals
         2          0          0          0          0          0   (incl. Padding)

    ----------------------------------------------------------------------

      Code (inc. data)   RO Data    RW Data    ZI Data      Debug   Library Name

      1824         64         64          8          0       1352   mc_w.l

    ----------------------------------------------------------------------
      1826         64         64          8          0       1352   Library Totals

    ----------------------------------------------------------------------

==============================================================================


      Code (inc. data)   RO Data    RW Data    ZI Data      Debug   

      8444        826        400        128      73992      98182   Grand Totals
      8444        826        400        128      73992      98182   ELF Image Totals
      8444        826        400        128          0          0   ROM Totals

==============================================================================

    Total RO  Size (Code + RO Data)                 8844 (   8.64kB)
    Total RW  Size (RW Data + ZI Data)             74120 (  72.38kB)
    Total ROM Size (Code + RO Data + RW Data)       8972 (   8.76kB)

==============================================================================

