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 key.o(i.EXTI1_IRQHandler) for EXTI1_IRQHandler
    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(RESET) refers to gd32f10x_it.o(i.USART1_IRQHandler) for USART1_IRQHandler
    startup_gd32f10x_xd.o(RESET) refers to pc.o(i.USART2_IRQHandler) for USART2_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
    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.SysTick_Handler) refers to systick.o(i.delay_decrement) for delay_decrement
    gd32f10x_it.o(i.SysTick_Handler) refers to systick.o(i.runtime_increment) for runtime_increment
    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 mqttrecv.o(i.Receive_MQTT_DataPack) for Receive_MQTT_DataPack
    gd32f10x_it.o(i.USART0_IRQHandler) refers to usart.o(.data) for UART0_RX_STAT
    gd32f10x_it.o(i.USART1_IRQHandler) refers to mmodbus.o(i.mmodbus_callback) for mmodbus_callback
    gd32f10x_it.o(i.USART1_IRQHandler) refers to dlt645_port.o(i.dlt_callback) for dlt_callback
    gd32f10x_it.o(i.USART1_IRQHandler) refers to parsedevicemessage.o(.data) for protocol
    systick.o(i.delay_1ms) refers to systick.o(.data) for delay
    systick.o(i.delay_decrement) refers to systick.o(.data) for delay
    systick.o(i.gettick) refers to systick.o(.data) for runtime
    systick.o(i.runtime_increment) refers to systick.o(.data) for runtime
    systick.o(i.systick_config) refers to systick.o(i.NVIC_SetPriority) for NVIC_SetPriority
    systick.o(i.systick_config) refers to system_gd32f10x.o(.data) for SystemCoreClock
    log.o(i.LogPrint) refers to printfa.o(i.__0vsnprintf) for vsnprintf
    log.o(i.LogPrint) refers to printfa.o(i.__0printf) for __2printf
    log.o(i.fputc) refers to gd32f10x_usart.o(i.usart_data_transmit) for usart_data_transmit
    log.o(i.fputc) refers to gd32f10x_usart.o(i.usart_flag_get) for usart_flag_get
    ec800m.o(i.ConnectMQTTSever) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    ec800m.o(i.ConnectMQTTSever) refers to ec800m.o(i.WaitResponse) for WaitResponse
    ec800m.o(i.ConnectMQTTSever) refers to printfa.o(i.__0sprintf) for __2sprintf
    ec800m.o(i.ConnectMQTTSever) refers to strlen.o(.text) for strlen
    ec800m.o(i.EC800MGetUrl) refers to strlen.o(.text) for strlen
    ec800m.o(i.EC800MGetUrl) refers to printfa.o(i.__0sprintf) for __2sprintf
    ec800m.o(i.EC800MGetUrl) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    ec800m.o(i.EC800MGetUrl) refers to ec800m.o(i.WaitResponse) for WaitResponse
    ec800m.o(i.EC800MGetUrl) refers to systick.o(i.delay_1ms) for delay_1ms
    ec800m.o(i.EC800MGetUrl) refers to usart.o(i.dma_config_change) for dma_config_change
    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 systick.o(i.delay_1ms) for delay_1ms
    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.EC800MSetPDP) refers to systick.o(i.delay_1ms) for delay_1ms
    ec800m.o(i.EC800MSetPDP) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    ec800m.o(i.EC800MSetPDP) refers to ec800m.o(i.WaitResponse) for WaitResponse
    ec800m.o(i.EC800MWaitReady) refers to ec800m.o(i.WaitResponse) for WaitResponse
    ec800m.o(i.MQTTPublish) refers to device_message.o(i.get_gateway_config_params) for get_gateway_config_params
    ec800m.o(i.MQTTPublish) refers to mallocr.o(i.__malloc$realloc) for malloc
    ec800m.o(i.MQTTPublish) refers to printfa.o(i.__0sprintf) for __2sprintf
    ec800m.o(i.MQTTPublish) refers to f2d.o(.text) for __aeabi_f2d
    ec800m.o(i.MQTTPublish) refers to strlen.o(.text) for strlen
    ec800m.o(i.MQTTPublish) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    ec800m.o(i.MQTTPublish) refers to ec800m.o(i.WaitResponse) for WaitResponse
    ec800m.o(i.MQTTPublish) refers to systick.o(i.delay_1ms) for delay_1ms
    ec800m.o(i.MQTTPublish) refers to mallocr.o(i.__free$realloc) for free
    ec800m.o(i.MQTTSubTopic) refers to printfa.o(i.__0sprintf) for __2sprintf
    ec800m.o(i.MQTTSubTopic) refers to strlen.o(.text) for strlen
    ec800m.o(i.MQTTSubTopic) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    ec800m.o(i.MQTTSubTopic) refers to ec800m.o(i.WaitResponse) for WaitResponse
    ec800m.o(i.WaitResponse) refers to systick.o(i.delay_1ms) for delay_1ms
    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
    device_message.o(i.addCommandListParams) refers to mallocr.o(i.__malloc$realloc) for malloc
    device_message.o(i.addCommandListParams) refers to device_message.o(i.parseStringField) for parseStringField
    device_message.o(i.addCommandListParams) refers to device_message.o(i.parseIntField) for parseIntField
    device_message.o(i.addDevice) refers to mallocr.o(i.__malloc$realloc) for malloc
    device_message.o(i.addDevice) refers to device_message.o(i.parseStringField) for parseStringField
    device_message.o(i.addDevice) refers to device_message.o(i.parseIntField) for parseIntField
    device_message.o(i.addDevice) refers to strstr.o(.text) for strstr
    device_message.o(i.addDevice) refers to device_message.o(i.addSensorListParams) for addSensorListParams
    device_message.o(i.addDevice) refers to device_message.o(i.addCommandListParams) for addCommandListParams
    device_message.o(i.addDevice) refers to device_message.o(.bss) for gateway_config_params
    device_message.o(i.addGatewayParams) refers to device_message.o(i.parseStringField) for parseStringField
    device_message.o(i.addGatewayParams) refers to device_message.o(i.parseIntField) for parseIntField
    device_message.o(i.addGatewayParams) refers to strstr.o(.text) for strstr
    device_message.o(i.addGatewayParams) refers to device_message.o(i.addDevice) for addDevice
    device_message.o(i.addGatewayParams) refers to device_message.o(.bss) for gateway_config_params
    device_message.o(i.addSensorListParams) refers to _scanf_int.o(.text) for _scanf_int
    device_message.o(i.addSensorListParams) refers to mallocr.o(i.__malloc$realloc) for malloc
    device_message.o(i.addSensorListParams) refers to device_message.o(i.parseIntField) for parseIntField
    device_message.o(i.addSensorListParams) refers to device_message.o(i.parseStringField) for parseStringField
    device_message.o(i.addSensorListParams) refers to __0sscanf.o(.text) for __0sscanf
    device_message.o(i.addSensorListParams) refers to mallocr.o(i.__free$realloc) for free
    device_message.o(i.get_gateway_config_params) refers to device_message.o(.bss) for gateway_config_params
    device_message.o(i.parseIntField) refers to strstr.o(.text) for strstr
    device_message.o(i.parseIntField) refers to strlen.o(.text) for strlen
    device_message.o(i.parseIntField) refers to strtol.o(.text) for strtol
    device_message.o(i.parseStringField) refers to _scanf_str.o(.text) for _scanf_string
    device_message.o(i.parseStringField) refers to strstr.o(.text) for strstr
    device_message.o(i.parseStringField) refers to strlen.o(.text) for strlen
    device_message.o(i.parseStringField) refers to __0sscanf.o(.text) for __0sscanf
    parsedevicemessage.o(i.Read_Data) refers to device_message.o(i.get_gateway_config_params) for get_gateway_config_params
    parsedevicemessage.o(i.Read_Data) refers to mmodbus.o(i.mmodbus_set16bitOrder) for mmodbus_set16bitOrder
    parsedevicemessage.o(i.Read_Data) refers to systick.o(i.delay_1ms) for delay_1ms
    parsedevicemessage.o(i.Read_Data) refers to dlt645.o(i.dlt645_set_addr) for dlt645_set_addr
    parsedevicemessage.o(i.Read_Data) refers to dlt645.o(i.dlt645_read_data) for dlt645_read_data
    parsedevicemessage.o(i.Read_Data) refers to memcpya.o(.text) for __aeabi_memcpy4
    parsedevicemessage.o(i.Read_Data) refers to mallocr.o(i.__malloc$realloc) for malloc
    parsedevicemessage.o(i.Read_Data) refers to mmodbus.o(i.mmodbus_readHoldingRegisters16i) for mmodbus_readHoldingRegisters16i
    parsedevicemessage.o(i.Read_Data) refers to dfltui.o(.text) for __aeabi_ui2d
    parsedevicemessage.o(i.Read_Data) refers to pow.o(i.pow) for pow
    parsedevicemessage.o(i.Read_Data) refers to ffltui.o(.text) for __aeabi_ui2f
    parsedevicemessage.o(i.Read_Data) refers to f2d.o(.text) for __aeabi_f2d
    parsedevicemessage.o(i.Read_Data) refers to ddiv.o(.text) for __aeabi_ddiv
    parsedevicemessage.o(i.Read_Data) refers to d2f.o(.text) for __aeabi_d2f
    parsedevicemessage.o(i.Read_Data) refers to mmodbus.o(i.mmodbus_readCoils) for mmodbus_readCoils
    parsedevicemessage.o(i.Read_Data) refers to mallocr.o(i.__free$realloc) for free
    parsedevicemessage.o(i.Read_Data) refers to main.o(i.task_fwdgt_reload) for task_fwdgt_reload
    parsedevicemessage.o(i.Read_Data) refers to parsedevicemessage.o(.data) for protocol
    parsedevicemessage.o(i.Read_Data) refers to dlt645_port.o(.data) for dlt645
    parsedevicemessage.o(i.WaitForUpData) refers to parsedevicemessage.o(i.extract_data_from_buffer) for extract_data_from_buffer
    parsedevicemessage.o(i.WaitForUpData) refers to parsedevicemessage.o(i.checksum) for checksum
    parsedevicemessage.o(i.WaitForUpData) refers to device_message.o(i.addGatewayParams) for addGatewayParams
    parsedevicemessage.o(i.WaitForUpData) refers to usart.o(.data) for UART0_RX_STAT
    parsedevicemessage.o(i.compareWithLastData) refers to memcmp.o(.text) for memcmp
    parsedevicemessage.o(i.compareWithLastData) refers to memcpya.o(.text) for __aeabi_memcpy
    parsedevicemessage.o(i.extract_data_from_buffer) refers to _scanf_int.o(.text) for _scanf_int
    parsedevicemessage.o(i.extract_data_from_buffer) refers to strstr.o(.text) for strstr
    parsedevicemessage.o(i.extract_data_from_buffer) refers to __0sscanf.o(.text) for __0sscanf
    parsedevicemessage.o(i.extract_data_from_buffer) refers to strchr.o(.text) for strchr
    parsedevicemessage.o(i.parseMQTTData) refers to memseta.o(.text) for __aeabi_memclr4
    parsedevicemessage.o(i.parseMQTTData) refers to log.o(i.LogPrint) for LogPrint
    parsedevicemessage.o(i.parseMQTTData) refers to cjson.o(i.cJSON_Parse) for cJSON_Parse
    parsedevicemessage.o(i.parseMQTTData) refers to parsedevicemessage.o(i.processStringData) for processStringData
    parsedevicemessage.o(i.parseMQTTData) refers to strcpy.o(.text) for strcpy
    parsedevicemessage.o(i.parseMQTTData) refers to parsedevicemessage.o(i.processIntData) for processIntData
    parsedevicemessage.o(i.parseMQTTData) refers to strcmp.o(.text) for strcmp
    parsedevicemessage.o(i.parseMQTTData) refers to mmodbus.o(i.mmodbus_set16bitOrder) for mmodbus_set16bitOrder
    parsedevicemessage.o(i.parseMQTTData) refers to mmodbus.o(i.mmodbus_writeCoil) for mmodbus_writeCoil
    parsedevicemessage.o(i.parseMQTTData) refers to printfa.o(i.__0sprintf) for __2sprintf
    parsedevicemessage.o(i.parseMQTTData) refers to mmodbus.o(i.mmodbus_writeHoldingRegister16i) for mmodbus_writeHoldingRegister16i
    parsedevicemessage.o(i.parseMQTTData) refers to mmodbus.o(i.mmodbus_readCoils) for mmodbus_readCoils
    parsedevicemessage.o(i.parseMQTTData) refers to dlt645.o(i.dlt645_set_addr) for dlt645_set_addr
    parsedevicemessage.o(i.parseMQTTData) refers to dlt645.o(i.dlt645_read_data) for dlt645_read_data
    parsedevicemessage.o(i.parseMQTTData) refers to f2d.o(.text) for __aeabi_f2d
    parsedevicemessage.o(i.parseMQTTData) refers to strlen.o(.text) for strlen
    parsedevicemessage.o(i.parseMQTTData) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    parsedevicemessage.o(i.parseMQTTData) refers to ec800m.o(i.WaitResponse) for WaitResponse
    parsedevicemessage.o(i.parseMQTTData) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    parsedevicemessage.o(i.parseMQTTData) refers to mqttrecv.o(i.MQTT_BUFFER_READ) for MQTT_BUFFER_READ
    parsedevicemessage.o(i.parseMQTTData) refers to usart.o(.data) for UART0_RX_MQTT_SUB_STAT
    parsedevicemessage.o(i.parseMQTTData) refers to parsedevicemessage.o(.constdata) for __func__
    parsedevicemessage.o(i.parseMQTTData) refers to parsedevicemessage.o(.data) for protocol
    parsedevicemessage.o(i.parseMQTTData) refers to parsedevicemessage.o(.conststring) for .conststring
    parsedevicemessage.o(i.parseMQTTData) refers to dlt645_port.o(.data) for dlt645
    parsedevicemessage.o(i.processIntData) refers to cjson.o(i.cJSON_GetObjectItemCaseSensitive) for cJSON_GetObjectItemCaseSensitive
    parsedevicemessage.o(i.processIntData) refers to cjson.o(i.cJSON_IsNumber) for cJSON_IsNumber
    parsedevicemessage.o(i.processStringData) refers to cjson.o(i.cJSON_GetObjectItemCaseSensitive) for cJSON_GetObjectItemCaseSensitive
    parsedevicemessage.o(i.processStringData) refers to cjson.o(i.cJSON_IsString) for cJSON_IsString
    mmodbus.o(i.mmodbus_callback) refers to gd32f10x_usart.o(i.usart_interrupt_flag_get) for usart_interrupt_flag_get
    mmodbus.o(i.mmodbus_callback) refers to gd32f10x_usart.o(i.usart_data_receive) for usart_data_receive
    mmodbus.o(i.mmodbus_callback) refers to gd32f10x_usart.o(i.usart_interrupt_flag_clear) for usart_interrupt_flag_clear
    mmodbus.o(i.mmodbus_callback) refers to systick.o(i.gettick) for gettick
    mmodbus.o(i.mmodbus_callback) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_crc16) refers to mmodbus.o(.constdata) for wCRCTable
    mmodbus.o(i.mmodbus_init) refers to gd32f10x_gpio.o(i.gpio_bit_reset) for gpio_bit_reset
    mmodbus.o(i.mmodbus_init) refers to memseta.o(.text) for __aeabi_memclr4
    mmodbus.o(i.mmodbus_init) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_readCoil) refers to mmodbus.o(i.mmodbus_readCoils) for mmodbus_readCoils
    mmodbus.o(i.mmodbus_readCoils) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    mmodbus.o(i.mmodbus_readCoils) refers to mmodbus.o(i.mmodbus_sendRaw) for mmodbus_sendRaw
    mmodbus.o(i.mmodbus_readCoils) refers to mmodbus.o(i.mmodbus_receiveRaw) for mmodbus_receiveRaw
    mmodbus.o(i.mmodbus_readCoils) refers to memcpya.o(.text) for __aeabi_memcpy
    mmodbus.o(i.mmodbus_readCoils) refers to mmodbus.o(.data) for crc
    mmodbus.o(i.mmodbus_readCoils) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_readDiscreteInput) refers to mmodbus.o(i.mmodbus_readDiscreteInputs) for mmodbus_readDiscreteInputs
    mmodbus.o(i.mmodbus_readDiscreteInputs) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    mmodbus.o(i.mmodbus_readDiscreteInputs) refers to mmodbus.o(i.mmodbus_sendRaw) for mmodbus_sendRaw
    mmodbus.o(i.mmodbus_readDiscreteInputs) refers to mmodbus.o(i.mmodbus_receiveRaw) for mmodbus_receiveRaw
    mmodbus.o(i.mmodbus_readDiscreteInputs) refers to memcpya.o(.text) for __aeabi_memcpy
    mmodbus.o(i.mmodbus_readDiscreteInputs) refers to mmodbus.o(.data) for crc
    mmodbus.o(i.mmodbus_readDiscreteInputs) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_readHoldingRegister16i) refers to mmodbus.o(i.mmodbus_readHoldingRegisters16i) for mmodbus_readHoldingRegisters16i
    mmodbus.o(i.mmodbus_readHoldingRegister32f) refers to mmodbus.o(i.mmodbus_readHoldingRegisters32f) for mmodbus_readHoldingRegisters32f
    mmodbus.o(i.mmodbus_readHoldingRegister32i) refers to mmodbus.o(i.mmodbus_readHoldingRegisters32i) for mmodbus_readHoldingRegisters32i
    mmodbus.o(i.mmodbus_readHoldingRegisters16i) refers to mmodbus.o(i.mmodbus_readHoldingRegisters8i) for mmodbus_readHoldingRegisters8i
    mmodbus.o(i.mmodbus_readHoldingRegisters16i) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_readHoldingRegisters32f) refers to mmodbus.o(i.mmodbus_readHoldingRegisters8i) for mmodbus_readHoldingRegisters8i
    mmodbus.o(i.mmodbus_readHoldingRegisters32f) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_readHoldingRegisters32i) refers to mmodbus.o(i.mmodbus_readHoldingRegisters32f) for mmodbus_readHoldingRegisters32f
    mmodbus.o(i.mmodbus_readHoldingRegisters8i) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    mmodbus.o(i.mmodbus_readHoldingRegisters8i) refers to mmodbus.o(i.mmodbus_sendRaw) for mmodbus_sendRaw
    mmodbus.o(i.mmodbus_readHoldingRegisters8i) refers to mmodbus.o(i.mmodbus_receiveRaw) for mmodbus_receiveRaw
    mmodbus.o(i.mmodbus_readHoldingRegisters8i) refers to memcpya.o(.text) for __aeabi_memcpy
    mmodbus.o(i.mmodbus_readHoldingRegisters8i) refers to mmodbus.o(.data) for crc
    mmodbus.o(i.mmodbus_readHoldingRegisters8i) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_readInputRegister16i) refers to mmodbus.o(i.mmodbus_readInputRegisters16i) for mmodbus_readInputRegisters16i
    mmodbus.o(i.mmodbus_readInputRegister32f) refers to mmodbus.o(i.mmodbus_readInputRegisters32f) for mmodbus_readInputRegisters32f
    mmodbus.o(i.mmodbus_readInputRegister32i) refers to mmodbus.o(i.mmodbus_readInputRegisters32i) for mmodbus_readInputRegisters32i
    mmodbus.o(i.mmodbus_readInputRegisters16i) refers to mmodbus.o(i.mmodbus_readInputRegisters8i) for mmodbus_readInputRegisters8i
    mmodbus.o(i.mmodbus_readInputRegisters16i) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_readInputRegisters32f) refers to mmodbus.o(i.mmodbus_readInputRegisters8i) for mmodbus_readInputRegisters8i
    mmodbus.o(i.mmodbus_readInputRegisters32f) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_readInputRegisters32i) refers to mmodbus.o(i.mmodbus_readInputRegisters32f) for mmodbus_readInputRegisters32f
    mmodbus.o(i.mmodbus_readInputRegisters8i) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    mmodbus.o(i.mmodbus_readInputRegisters8i) refers to mmodbus.o(i.mmodbus_sendRaw) for mmodbus_sendRaw
    mmodbus.o(i.mmodbus_readInputRegisters8i) refers to mmodbus.o(i.mmodbus_receiveRaw) for mmodbus_receiveRaw
    mmodbus.o(i.mmodbus_readInputRegisters8i) refers to memcpya.o(.text) for __aeabi_memcpy
    mmodbus.o(i.mmodbus_readInputRegisters8i) refers to mmodbus.o(.data) for crc
    mmodbus.o(i.mmodbus_readInputRegisters8i) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_receiveRaw) refers to systick.o(i.gettick) for gettick
    mmodbus.o(i.mmodbus_receiveRaw) refers to gd32f10x_usart.o(i.usart_interrupt_flag_get) for usart_interrupt_flag_get
    mmodbus.o(i.mmodbus_receiveRaw) refers to gd32f10x_usart.o(i.usart_data_receive) for usart_data_receive
    mmodbus.o(i.mmodbus_receiveRaw) refers to systick.o(i.delay_1ms) for delay_1ms
    mmodbus.o(i.mmodbus_receiveRaw) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_sendRaw) refers to systick.o(i.delay_1ms) for delay_1ms
    mmodbus.o(i.mmodbus_sendRaw) refers to memseta.o(.text) for __aeabi_memclr
    mmodbus.o(i.mmodbus_sendRaw) refers to systick.o(i.gettick) for gettick
    mmodbus.o(i.mmodbus_sendRaw) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    mmodbus.o(i.mmodbus_sendRaw) refers to gd32f10x_gpio.o(i.gpio_bit_reset) for gpio_bit_reset
    mmodbus.o(i.mmodbus_sendRaw) refers to gd32f10x_usart.o(i.usart_flag_get) for usart_flag_get
    mmodbus.o(i.mmodbus_sendRaw) refers to gd32f10x_usart.o(i.usart_data_transmit) for usart_data_transmit
    mmodbus.o(i.mmodbus_sendRaw) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_set16bitOrder) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_set32bitOrder) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_writeCoil) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    mmodbus.o(i.mmodbus_writeCoil) refers to mmodbus.o(i.mmodbus_sendRaw) for mmodbus_sendRaw
    mmodbus.o(i.mmodbus_writeCoil) refers to mmodbus.o(i.mmodbus_receiveRaw) for mmodbus_receiveRaw
    mmodbus.o(i.mmodbus_writeCoil) refers to memcmp.o(.text) for memcmp
    mmodbus.o(i.mmodbus_writeCoil) refers to mmodbus.o(.data) for crc
    mmodbus.o(i.mmodbus_writeCoil) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_writeHoldingRegister16i) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    mmodbus.o(i.mmodbus_writeHoldingRegister16i) refers to mmodbus.o(i.mmodbus_sendRaw) for mmodbus_sendRaw
    mmodbus.o(i.mmodbus_writeHoldingRegister16i) refers to mmodbus.o(i.mmodbus_receiveRaw) for mmodbus_receiveRaw
    mmodbus.o(i.mmodbus_writeHoldingRegister16i) refers to memcmp.o(.text) for memcmp
    mmodbus.o(i.mmodbus_writeHoldingRegister16i) refers to mmodbus.o(.data) for crc
    mmodbus.o(i.mmodbus_writeHoldingRegister16i) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to mmodbus.o(i.mmodbus_writeHoldingRegister16i) for mmodbus_writeHoldingRegister16i
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to mallocr.o(i.__malloc$realloc) for malloc
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to mmodbus.o(i.mmodbus_sendRaw) for mmodbus_sendRaw
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to mmodbus.o(i.mmodbus_receiveRaw) for mmodbus_receiveRaw
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to mallocr.o(i.__free$realloc) for free
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to memcmp.o(.text) for memcmp
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to mmodbus.o(.bss) for mmodbus
    mmodbus.o(i.mmodbus_writeHoldingRegisters16i) refers to mmodbus.o(.data) for crc
    mqttrecv.o(i.MQTT_BUFFER_READ) refers to strcpy.o(.text) for strcpy
    mqttrecv.o(i.MQTT_BUFFER_READ) refers to memseta.o(.text) for __aeabi_memclr
    mqttrecv.o(i.MQTT_BUFFER_READ) refers to ring_buffer.o(i.ring_buffer_read) for ring_buffer_read
    mqttrecv.o(i.MQTT_BUFFER_READ) refers to mqttrecv.o(.data) for json_len
    mqttrecv.o(i.MQTT_BUFFER_READ) refers to mqttrecv.o(.bss) for json_buf
    mqttrecv.o(i.MQTT_BUFFER_READ) refers to parsedevicemessage.o(.bss) for mqttRecv
    mqttrecv.o(i.Receive_MQTT_DataPack) refers to strstr.o(.text) for strstr
    mqttrecv.o(i.Receive_MQTT_DataPack) refers to ring_buffer.o(i.ring_buffer_write) for ring_buffer_write
    mqttrecv.o(i.Receive_MQTT_DataPack) refers to strlen.o(.text) for strlen
    mqttrecv.o(i.Receive_MQTT_DataPack) refers to usart.o(i.Clear_DMA_Buffer) for Clear_DMA_Buffer
    mqttrecv.o(i.Receive_MQTT_DataPack) refers to usart.o(.bss) for UART0_RX_BUF
    mqttrecv.o(i.Receive_MQTT_DataPack) refers to usart.o(.data) for UART0_RX_MQTT_SUB_STAT
    mqttrecv.o(i.Receive_MQTT_DataPack) refers to parsedevicemessage.o(.bss) for mqttRecv
    main.o(i.MQTT_Alarm_clock) refers to parsedevicemessage.o(i.Read_Data) for Read_Data
    main.o(i.MQTT_Alarm_clock) refers to ec800m.o(i.MQTTPublish) for MQTTPublish
    main.o(i.MQTT_Alarm_clock) refers to led.o(i.gd_eval_led_toggle) for gd_eval_led_toggle
    main.o(i.MQTT_Alarm_clock) refers to parsedevicemessage.o(i.parseMQTTData) for parseMQTTData
    main.o(i.MQTT_Alarm_clock) refers to otaevent.o(i.check_ota_event) for check_ota_event
    main.o(i.MQTT_Alarm_clock) refers to systick.o(i.delay_1ms) for delay_1ms
    main.o(i.MQTT_Alarm_clock) refers to main.o(i.task_fwdgt_reload) for task_fwdgt_reload
    main.o(i.fwdgt_init) refers to gd32f10x_rcu.o(i.rcu_osci_on) for rcu_osci_on
    main.o(i.fwdgt_init) refers to gd32f10x_fwdgt.o(i.fwdgt_config) for fwdgt_config
    main.o(i.fwdgt_init) refers to gd32f10x_fwdgt.o(i.fwdgt_enable) for fwdgt_enable
    main.o(i.http_load_config) refers to mallocr.o(i.__malloc$realloc) for malloc
    main.o(i.http_load_config) refers to ec800m.o(i.EC800MGetUrl) for EC800MGetUrl
    main.o(i.http_load_config) refers to parsedevicemessage.o(i.WaitForUpData) for WaitForUpData
    main.o(i.http_load_config) refers to usart.o(i.dma_config_change) for dma_config_change
    main.o(i.http_load_config) refers to systick.o(i.delay_1ms) for delay_1ms
    main.o(i.http_load_config) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    main.o(i.http_load_config) refers to usart.o(i.dma_config) for dma_config
    main.o(i.http_load_config) refers to mallocr.o(i.__free$realloc) for free
    main.o(i.main) refers to gd32f10x_rcu.o(i.rcu_osci_on) for rcu_osci_on
    main.o(i.main) refers to systick.o(i.systick_config) for systick_config
    main.o(i.main) refers to usart.o(i.nvic_config) for nvic_config
    main.o(i.main) refers to led.o(i.gd_eval_led_init) for gd_eval_led_init
    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 key.o(i.gd_eval_key_init) for gd_eval_key_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 ec800m.o(i.EC800MSetPDP) for EC800MSetPDP
    main.o(i.main) refers to mallocr.o(i.__malloc$realloc) for malloc
    main.o(i.main) refers to main.o(i.readID) for readID
    main.o(i.main) refers to device_message.o(i.get_gateway_config_params) for get_gateway_config_params
    main.o(i.main) refers to strcpy.o(.text) for strcpy
    main.o(i.main) refers to memseta.o(.text) for __aeabi_memclr
    main.o(i.main) refers to printfa.o(i.__0sprintf) for __2sprintf
    main.o(i.main) refers to main.o(i.http_load_config) for http_load_config
    main.o(i.main) refers to mallocr.o(i.__free$realloc) for free
    main.o(i.main) refers to usart.o(i.config_485_port) for config_485_port
    main.o(i.main) refers to usart.o(i.gd_485_DE_pin_init) for gd_485_DE_pin_init
    main.o(i.main) refers to usart.o(i.gd_485_DE_tx) for gd_485_DE_tx
    main.o(i.main) refers to ec800m.o(i.ConnectMQTTSever) for ConnectMQTTSever
    main.o(i.main) refers to ec800m.o(i.MQTTSubTopic) for MQTTSubTopic
    main.o(i.main) refers to ring_buffer.o(i.ring_buffer_init) for ring_buffer_init
    main.o(i.main) refers to mmodbus.o(i.mmodbus_init) for mmodbus_init
    main.o(i.main) refers to dlt645_port.o(i.dlt645_init) for dlt645_init
    main.o(i.main) refers to otaevent.o(i.check_ota_event) for check_ota_event
    main.o(i.main) refers to main.o(i.MQTT_Alarm_clock) for MQTT_Alarm_clock
    main.o(i.main) refers to parsedevicemessage.o(.bss) for mqttRecv
    main.o(i.readID) refers to main.o(.data) for hex_table
    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
    main.o(.data) refers to main.o(.conststring) for .conststring
    pc.o(i.USART2_IRQHandler) refers to gd32f10x_usart.o(i.usart_interrupt_flag_get) for usart_interrupt_flag_get
    pc.o(i.USART2_IRQHandler) refers to gd32f10x_usart.o(i.usart_data_receive) for usart_data_receive
    pc.o(i.USART2_IRQHandler) refers to mallocr.o(i.__malloc$realloc) for malloc
    pc.o(i.USART2_IRQHandler) refers to memseta.o(.text) for __aeabi_memclr
    pc.o(i.USART2_IRQHandler) refers to gd32f10x_usart.o(i.usart_interrupt_flag_clear) for usart_interrupt_flag_clear
    pc.o(i.USART2_IRQHandler) refers to otaevent.o(.bss) for ota_data
    pc.o(i.USART2_IRQHandler) refers to pc.o(.data) for RxState
    pc.o(i.WaitField) refers to systick.o(i.delay_1ms) for delay_1ms
    pc.o(i.WaitField) refers to strstr.o(.text) for strstr
    pc.o(i.WaitField) refers to usart.o(.data) for UART0_RX_STAT
    pc.o(i.WaitField) refers to usart.o(.bss) for UART0_RX_BUF
    pc.o(i.readGatewayMessage) refers to device_message.o(i.get_gateway_config_params) for get_gateway_config_params
    pc.o(i.readGatewayMessage) refers to mallocr.o(i.__malloc$realloc) for malloc
    pc.o(i.readGatewayMessage) refers to memseta.o(.text) for __aeabi_memclr
    pc.o(i.readGatewayMessage) refers to strlen.o(.text) for strlen
    pc.o(i.readGatewayMessage) refers to memcpya.o(.text) for __aeabi_memcpy
    pc.o(i.readGatewayMessage) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    pc.o(i.readGatewayMessage) refers to usart.o(i.gd_com_232_send) for gd_com_232_send
    pc.o(i.readGatewayMessage) refers to mallocr.o(i.__free$realloc) for free
    pc.o(i.readSIMCARD) refers to _scanf_str.o(.text) for _scanf_string
    pc.o(i.readSIMCARD) refers to _scanf_int.o(.text) for _scanf_int
    pc.o(i.readSIMCARD) refers to device_message.o(i.get_gateway_config_params) for get_gateway_config_params
    pc.o(i.readSIMCARD) refers to mallocr.o(i.__malloc$realloc) for malloc
    pc.o(i.readSIMCARD) refers to memseta.o(.text) for __aeabi_memclr
    pc.o(i.readSIMCARD) refers to ec800m.o(i.EC800MSendCmd) for EC800MSendCmd
    pc.o(i.readSIMCARD) refers to pc.o(i.WaitField) for WaitField
    pc.o(i.readSIMCARD) refers to __0sscanf.o(.text) for __0sscanf
    pc.o(i.readSIMCARD) refers to usart.o(i.Clear_DMA_Buffer) for Clear_DMA_Buffer
    pc.o(i.readSIMCARD) refers to strstr.o(.text) for strstr
    pc.o(i.readSIMCARD) refers to fflti.o(.text) for __aeabi_i2f
    pc.o(i.readSIMCARD) refers to fdiv.o(.text) for __aeabi_fdiv
    pc.o(i.readSIMCARD) refers to fmul.o(.text) for __aeabi_fmul
    pc.o(i.readSIMCARD) refers to ffixi.o(.text) for __aeabi_f2iz
    pc.o(i.readSIMCARD) refers to printfa.o(i.__0sprintf) for __2sprintf
    pc.o(i.readSIMCARD) refers to strlen.o(.text) for strlen
    pc.o(i.readSIMCARD) refers to mmodbus.o(i.mmodbus_crc16) for mmodbus_crc16
    pc.o(i.readSIMCARD) refers to usart.o(i.gd_com_232_send) for gd_com_232_send
    pc.o(i.readSIMCARD) refers to mallocr.o(i.__free$realloc) for free
    pc.o(i.readSIMCARD) refers to usart.o(.bss) for UART0_RX_BUF
    pc.o(i.readSIMCARD) refers to pc.o(.conststring) for .conststring
    otaevent.o(i.check_ota_event) refers to w25q32.o(i.W25Q32_Erase64K) for W25Q32_Erase64K
    otaevent.o(i.check_ota_event) refers to otaevent.o(i.xmodem) for xmodem
    otaevent.o(i.check_ota_event) refers to otaevent.o(.bss) for ota_data
    otaevent.o(i.xmodem) refers to systick.o(i.gettick) for gettick
    otaevent.o(i.xmodem) refers to main.o(i.task_fwdgt_reload) for task_fwdgt_reload
    otaevent.o(i.xmodem) refers to gd32f10x_usart.o(i.usart_data_transmit) for usart_data_transmit
    otaevent.o(i.xmodem) refers to systick.o(i.delay_1ms) for delay_1ms
    otaevent.o(i.xmodem) refers to otaevent.o(i.Xmodem_CRC16) for Xmodem_CRC16
    otaevent.o(i.xmodem) refers to memcpya.o(.text) for __aeabi_memcpy
    otaevent.o(i.xmodem) refers to w25q32.o(i.W25Q32_PageWrite) for W25Q32_PageWrite
    otaevent.o(i.xmodem) refers to memseta.o(.text) for __aeabi_memclr
    otaevent.o(i.xmodem) refers to w25q32.o(i.W25Q32_Erase64K) for W25Q32_Erase64K
    otaevent.o(i.xmodem) refers to otaevent.o(.bss) for ota_data
    gd32f10x_adc.o(i.adc_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_adc.o(i.adc_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    gd32f10x_bkp.o(i.bkp_deinit) refers to gd32f10x_rcu.o(i.rcu_bkp_reset_enable) for rcu_bkp_reset_enable
    gd32f10x_bkp.o(i.bkp_deinit) refers to gd32f10x_rcu.o(i.rcu_bkp_reset_disable) for rcu_bkp_reset_disable
    gd32f10x_can.o(i.can_debug_freeze_disable) refers to gd32f10x_dbg.o(i.dbg_periph_enable) for dbg_periph_enable
    gd32f10x_can.o(i.can_debug_freeze_enable) refers to gd32f10x_dbg.o(i.dbg_periph_enable) for dbg_periph_enable
    gd32f10x_can.o(i.can_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_can.o(i.can_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    gd32f10x_can.o(i.can_interrupt_flag_get) refers to gd32f10x_can.o(i.can_receive_message_length_get) for can_receive_message_length_get
    gd32f10x_can.o(i.can_interrupt_flag_get) refers to gd32f10x_can.o(i.can_error_get) for can_error_get
    gd32f10x_dac.o(i.dac_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_dac.o(i.dac_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_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_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_i2c.o(i.i2c_clock_config) refers to gd32f10x_rcu.o(i.rcu_clock_freq_get) for rcu_clock_freq_get
    gd32f10x_i2c.o(i.i2c_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_i2c.o(i.i2c_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_pmu.o(i.pmu_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_pmu.o(i.pmu_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    gd32f10x_pmu.o(i.pmu_to_deepsleepmode) refers to gd32f10x_pmu.o(.bss) for reg_snap
    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_rtc.o(i.rtc_alarm_config) refers to gd32f10x_rtc.o(i.rtc_configuration_mode_enter) for rtc_configuration_mode_enter
    gd32f10x_rtc.o(i.rtc_alarm_config) refers to gd32f10x_rtc.o(i.rtc_configuration_mode_exit) for rtc_configuration_mode_exit
    gd32f10x_rtc.o(i.rtc_counter_set) refers to gd32f10x_rtc.o(i.rtc_configuration_mode_enter) for rtc_configuration_mode_enter
    gd32f10x_rtc.o(i.rtc_counter_set) refers to gd32f10x_rtc.o(i.rtc_configuration_mode_exit) for rtc_configuration_mode_exit
    gd32f10x_rtc.o(i.rtc_prescaler_set) refers to gd32f10x_rtc.o(i.rtc_configuration_mode_enter) for rtc_configuration_mode_enter
    gd32f10x_rtc.o(i.rtc_prescaler_set) refers to gd32f10x_rtc.o(i.rtc_configuration_mode_exit) for rtc_configuration_mode_exit
    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_timer.o(i.timer_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_enable) for rcu_periph_reset_enable
    gd32f10x_timer.o(i.timer_deinit) refers to gd32f10x_rcu.o(i.rcu_periph_reset_disable) for rcu_periph_reset_disable
    gd32f10x_timer.o(i.timer_external_clock_mode0_config) refers to gd32f10x_timer.o(i.timer_external_trigger_config) for timer_external_trigger_config
    gd32f10x_timer.o(i.timer_external_clock_mode1_config) refers to gd32f10x_timer.o(i.timer_external_trigger_config) for timer_external_trigger_config
    gd32f10x_timer.o(i.timer_external_trigger_as_external_clock_config) refers to gd32f10x_timer.o(i.timer_input_trigger_source_select) for timer_input_trigger_source_select
    gd32f10x_timer.o(i.timer_input_capture_config) refers to gd32f10x_timer.o(i.timer_channel_input_capture_prescaler_config) for timer_channel_input_capture_prescaler_config
    gd32f10x_timer.o(i.timer_input_pwm_capture_config) refers to gd32f10x_timer.o(i.timer_channel_input_capture_prescaler_config) for timer_channel_input_capture_prescaler_config
    gd32f10x_timer.o(i.timer_internal_trigger_as_external_clock_config) refers to gd32f10x_timer.o(i.timer_input_trigger_source_select) for timer_input_trigger_source_select
    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
    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
    led.o(i.gd_eval_led_init) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    led.o(i.gd_eval_led_init) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    led.o(i.gd_eval_led_init) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    led.o(i.gd_eval_led_init) refers to led.o(.data) for GPIO_CLK
    led.o(i.gd_eval_led_off) refers to led.o(.data) for GPIO_PIN
    led.o(i.gd_eval_led_on) refers to led.o(.data) for GPIO_PIN
    led.o(i.gd_eval_led_toggle) refers to gd32f10x_gpio.o(i.gpio_input_bit_get) for gpio_input_bit_get
    led.o(i.gd_eval_led_toggle) refers to gd32f10x_gpio.o(i.gpio_bit_write) for gpio_bit_write
    led.o(i.gd_eval_led_toggle) refers to led.o(.data) for GPIO_PIN
    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
    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.config_485_port) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    usart.o(i.config_485_port) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_baudrate_set) for usart_baudrate_set
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_word_length_set) for usart_word_length_set
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_stop_bit_set) for usart_stop_bit_set
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_parity_config) for usart_parity_config
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_hardware_flow_rts_config) for usart_hardware_flow_rts_config
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_hardware_flow_cts_config) for usart_hardware_flow_cts_config
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_receive_config) for usart_receive_config
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_transmit_config) for usart_transmit_config
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_enable) for usart_enable
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_interrupt_enable) for usart_interrupt_enable
    usart.o(i.config_485_port) refers to gd32f10x_usart.o(i.usart_flag_clear) for usart_flag_clear
    usart.o(i.config_485_port) refers to usart.o(.data) for COM_GPIO_CLK
    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_485_DE_pin_init) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    usart.o(i.gd_485_DE_pin_init) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    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_232_Receive) refers to gd32f10x_usart.o(i.usart_interrupt_flag_get) for usart_interrupt_flag_get
    usart.o(i.gd_com_232_Receive) refers to gd32f10x_usart.o(i.usart_data_receive) for usart_data_receive
    usart.o(i.gd_com_232_Receive) refers to gd32f10x_usart.o(i.usart_interrupt_flag_clear) for usart_interrupt_flag_clear
    usart.o(i.gd_com_232_send) refers to gd32f10x_usart.o(i.usart_data_transmit) for usart_data_transmit
    usart.o(i.gd_com_232_send) refers to gd32f10x_usart.o(i.usart_flag_get) for usart_flag_get
    usart.o(i.gd_com_485_send) refers to usart.o(i.gd_485_DE_tx) for gd_485_DE_tx
    usart.o(i.gd_com_485_send) refers to gd32f10x_usart.o(i.usart_data_transmit) for usart_data_transmit
    usart.o(i.gd_com_485_send) refers to gd32f10x_usart.o(i.usart_flag_get) for usart_flag_get
    usart.o(i.gd_com_485_send) refers to usart.o(i.gd_485_DE_rx) for gd_485_DE_rx
    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
    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
    key.o(i.EXTI1_IRQHandler) refers to gd32f10x_exti.o(i.exti_interrupt_flag_get) for exti_interrupt_flag_get
    key.o(i.EXTI1_IRQHandler) refers to systick.o(i.delay_1ms) for delay_1ms
    key.o(i.EXTI1_IRQHandler) refers to gd32f10x_gpio.o(i.gpio_input_bit_get) for gpio_input_bit_get
    key.o(i.EXTI1_IRQHandler) refers to gd32f10x_exti.o(i.exti_interrupt_flag_clear) for exti_interrupt_flag_clear
    key.o(i.EXTI1_IRQHandler) refers to key.o(.data) for KEY_PIN
    key.o(i.gd_eval_key_init) refers to gd32f10x_rcu.o(i.rcu_periph_clock_enable) for rcu_periph_clock_enable
    key.o(i.gd_eval_key_init) refers to gd32f10x_gpio.o(i.gpio_init) for gpio_init
    key.o(i.gd_eval_key_init) refers to gd32f10x_misc.o(i.nvic_irq_enable) for nvic_irq_enable
    key.o(i.gd_eval_key_init) refers to gd32f10x_gpio.o(i.gpio_exti_source_select) for gpio_exti_source_select
    key.o(i.gd_eval_key_init) refers to gd32f10x_exti.o(i.exti_init) for exti_init
    key.o(i.gd_eval_key_init) refers to gd32f10x_exti.o(i.exti_interrupt_flag_clear) for exti_interrupt_flag_clear
    key.o(i.gd_eval_key_init) refers to key.o(.data) for KEY_CLK
    cjson.o(i.add_item_to_array) refers to cjson.o(i.suffix_object) for suffix_object
    cjson.o(i.add_item_to_object) refers to cjson.o(i.cast_away_const) for cast_away_const
    cjson.o(i.add_item_to_object) refers to cjson.o(i.cJSON_strdup) for cJSON_strdup
    cjson.o(i.add_item_to_object) refers to cjson.o(i.add_item_to_array) for add_item_to_array
    cjson.o(i.cJSON_AddArrayToObject) refers to cjson.o(i.cJSON_CreateArray) for cJSON_CreateArray
    cjson.o(i.cJSON_AddArrayToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddArrayToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddArrayToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddBoolToObject) refers to cjson.o(i.cJSON_CreateBool) for cJSON_CreateBool
    cjson.o(i.cJSON_AddBoolToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddBoolToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddBoolToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddFalseToObject) refers to cjson.o(i.cJSON_CreateFalse) for cJSON_CreateFalse
    cjson.o(i.cJSON_AddFalseToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddFalseToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddFalseToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddItemReferenceToArray) refers to cjson.o(i.create_reference) for create_reference
    cjson.o(i.cJSON_AddItemReferenceToArray) refers to cjson.o(i.add_item_to_array) for add_item_to_array
    cjson.o(i.cJSON_AddItemReferenceToArray) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddItemReferenceToObject) refers to cjson.o(i.create_reference) for create_reference
    cjson.o(i.cJSON_AddItemReferenceToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddItemReferenceToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddItemToArray) refers to cjson.o(i.add_item_to_array) for add_item_to_array
    cjson.o(i.cJSON_AddItemToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddItemToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddItemToObjectCS) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddItemToObjectCS) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddNullToObject) refers to cjson.o(i.cJSON_CreateNull) for cJSON_CreateNull
    cjson.o(i.cJSON_AddNullToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddNullToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddNullToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddNumberToObject) refers to cjson.o(i.cJSON_CreateNumber) for cJSON_CreateNumber
    cjson.o(i.cJSON_AddNumberToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddNumberToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddNumberToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddObjectToObject) refers to cjson.o(i.cJSON_CreateObject) for cJSON_CreateObject
    cjson.o(i.cJSON_AddObjectToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddObjectToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddObjectToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddRawToObject) refers to cjson.o(i.cJSON_CreateRaw) for cJSON_CreateRaw
    cjson.o(i.cJSON_AddRawToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddRawToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddRawToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddStringToObject) refers to cjson.o(i.cJSON_CreateString) for cJSON_CreateString
    cjson.o(i.cJSON_AddStringToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddStringToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddStringToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_AddTrueToObject) refers to cjson.o(i.cJSON_CreateTrue) for cJSON_CreateTrue
    cjson.o(i.cJSON_AddTrueToObject) refers to cjson.o(i.add_item_to_object) for add_item_to_object
    cjson.o(i.cJSON_AddTrueToObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_AddTrueToObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_Compare) refers to cjson.o(i.compare_double) for compare_double
    cjson.o(i.cJSON_Compare) refers to strcmp.o(.text) for strcmp
    cjson.o(i.cJSON_Compare) refers to cjson.o(i.get_object_item) for get_object_item
    cjson.o(i.cJSON_CreateArray) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateArray) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateArrayReference) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateArrayReference) refers to cjson.o(i.cast_away_const) for cast_away_const
    cjson.o(i.cJSON_CreateArrayReference) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateBool) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateBool) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateDoubleArray) refers to cjson.o(i.cJSON_CreateArray) for cJSON_CreateArray
    cjson.o(i.cJSON_CreateDoubleArray) refers to cjson.o(i.cJSON_CreateNumber) for cJSON_CreateNumber
    cjson.o(i.cJSON_CreateDoubleArray) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_CreateDoubleArray) refers to cjson.o(i.suffix_object) for suffix_object
    cjson.o(i.cJSON_CreateFalse) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateFalse) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateFloatArray) refers to cjson.o(i.cJSON_CreateArray) for cJSON_CreateArray
    cjson.o(i.cJSON_CreateFloatArray) refers to f2d.o(.text) for __aeabi_f2d
    cjson.o(i.cJSON_CreateFloatArray) refers to cjson.o(i.cJSON_CreateNumber) for cJSON_CreateNumber
    cjson.o(i.cJSON_CreateFloatArray) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_CreateFloatArray) refers to cjson.o(i.suffix_object) for suffix_object
    cjson.o(i.cJSON_CreateIntArray) refers to cjson.o(i.cJSON_CreateArray) for cJSON_CreateArray
    cjson.o(i.cJSON_CreateIntArray) refers to dflti.o(.text) for __aeabi_i2d
    cjson.o(i.cJSON_CreateIntArray) refers to cjson.o(i.cJSON_CreateNumber) for cJSON_CreateNumber
    cjson.o(i.cJSON_CreateIntArray) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_CreateIntArray) refers to cjson.o(i.suffix_object) for suffix_object
    cjson.o(i.cJSON_CreateNull) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateNull) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateNumber) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateNumber) refers to cdrcmple.o(.text) for __aeabi_cdrcmple
    cjson.o(i.cJSON_CreateNumber) refers to cdcmple.o(.text) for __aeabi_cdcmple
    cjson.o(i.cJSON_CreateNumber) refers to dfixi.o(.text) for __aeabi_d2iz
    cjson.o(i.cJSON_CreateNumber) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateObject) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateObject) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateObjectReference) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateObjectReference) refers to cjson.o(i.cast_away_const) for cast_away_const
    cjson.o(i.cJSON_CreateObjectReference) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateRaw) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateRaw) refers to cjson.o(i.cJSON_strdup) for cJSON_strdup
    cjson.o(i.cJSON_CreateRaw) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_CreateRaw) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateString) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateString) refers to cjson.o(i.cJSON_strdup) for cJSON_strdup
    cjson.o(i.cJSON_CreateString) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_CreateString) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateStringArray) refers to cjson.o(i.cJSON_CreateArray) for cJSON_CreateArray
    cjson.o(i.cJSON_CreateStringArray) refers to cjson.o(i.cJSON_CreateString) for cJSON_CreateString
    cjson.o(i.cJSON_CreateStringArray) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_CreateStringArray) refers to cjson.o(i.suffix_object) for suffix_object
    cjson.o(i.cJSON_CreateStringReference) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateStringReference) refers to cjson.o(i.cast_away_const) for cast_away_const
    cjson.o(i.cJSON_CreateStringReference) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_CreateTrue) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_CreateTrue) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_Delete) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_DeleteItemFromArray) refers to cjson.o(i.cJSON_DetachItemFromArray) for cJSON_DetachItemFromArray
    cjson.o(i.cJSON_DeleteItemFromArray) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_DeleteItemFromObject) refers to cjson.o(i.cJSON_DetachItemFromObject) for cJSON_DetachItemFromObject
    cjson.o(i.cJSON_DeleteItemFromObject) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_DeleteItemFromObjectCaseSensitive) refers to cjson.o(i.cJSON_DetachItemFromObjectCaseSensitive) for cJSON_DetachItemFromObjectCaseSensitive
    cjson.o(i.cJSON_DeleteItemFromObjectCaseSensitive) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_DetachItemFromArray) refers to cjson.o(i.get_array_item) for get_array_item
    cjson.o(i.cJSON_DetachItemFromArray) refers to cjson.o(i.cJSON_DetachItemViaPointer) for cJSON_DetachItemViaPointer
    cjson.o(i.cJSON_DetachItemFromObject) refers to cjson.o(i.cJSON_GetObjectItem) for cJSON_GetObjectItem
    cjson.o(i.cJSON_DetachItemFromObject) refers to cjson.o(i.cJSON_DetachItemViaPointer) for cJSON_DetachItemViaPointer
    cjson.o(i.cJSON_DetachItemFromObjectCaseSensitive) refers to cjson.o(i.cJSON_GetObjectItemCaseSensitive) for cJSON_GetObjectItemCaseSensitive
    cjson.o(i.cJSON_DetachItemFromObjectCaseSensitive) refers to cjson.o(i.cJSON_DetachItemViaPointer) for cJSON_DetachItemViaPointer
    cjson.o(i.cJSON_Duplicate) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_Duplicate) refers to cjson.o(i.cJSON_strdup) for cJSON_strdup
    cjson.o(i.cJSON_Duplicate) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_Duplicate) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_GetArrayItem) refers to cjson.o(i.get_array_item) for get_array_item
    cjson.o(i.cJSON_GetErrorPtr) refers to cjson.o(.data) for global_error
    cjson.o(i.cJSON_GetNumberValue) refers to cjson.o(i.cJSON_IsNumber) for cJSON_IsNumber
    cjson.o(i.cJSON_GetObjectItem) refers to cjson.o(i.get_object_item) for get_object_item
    cjson.o(i.cJSON_GetObjectItemCaseSensitive) refers to cjson.o(i.get_object_item) for get_object_item
    cjson.o(i.cJSON_GetStringValue) refers to cjson.o(i.cJSON_IsString) for cJSON_IsString
    cjson.o(i.cJSON_HasObjectItem) refers to cjson.o(i.cJSON_GetObjectItem) for cJSON_GetObjectItem
    cjson.o(i.cJSON_InitHooks) refers to mallocr.o(i.__malloc$realloc) for malloc
    cjson.o(i.cJSON_InitHooks) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_InitHooks) refers to mallocr.o(i.__free$realloc) for free
    cjson.o(i.cJSON_InitHooks) refers to mallocr.o(i.realloc) for realloc
    cjson.o(i.cJSON_InsertItemInArray) refers to cjson.o(i.get_array_item) for get_array_item
    cjson.o(i.cJSON_InsertItemInArray) refers to cjson.o(i.add_item_to_array) for add_item_to_array
    cjson.o(i.cJSON_Minify) refers to cjson.o(i.skip_oneline_comment) for skip_oneline_comment
    cjson.o(i.cJSON_Minify) refers to cjson.o(i.skip_multiline_comment) for skip_multiline_comment
    cjson.o(i.cJSON_Minify) refers to cjson.o(i.minify_string) for minify_string
    cjson.o(i.cJSON_New_Item) refers to memseta.o(.text) for __aeabi_memclr4
    cjson.o(i.cJSON_Parse) refers to cjson.o(i.cJSON_ParseWithOpts) for cJSON_ParseWithOpts
    cjson.o(i.cJSON_ParseWithLength) refers to cjson.o(i.cJSON_ParseWithLengthOpts) for cJSON_ParseWithLengthOpts
    cjson.o(i.cJSON_ParseWithLengthOpts) refers to memseta.o(.text) for __aeabi_memclr4
    cjson.o(i.cJSON_ParseWithLengthOpts) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.cJSON_ParseWithLengthOpts) refers to cjson.o(i.skip_utf8_bom) for skip_utf8_bom
    cjson.o(i.cJSON_ParseWithLengthOpts) refers to cjson.o(i.buffer_skip_whitespace) for buffer_skip_whitespace
    cjson.o(i.cJSON_ParseWithLengthOpts) refers to cjson.o(i.parse_value) for parse_value
    cjson.o(i.cJSON_ParseWithLengthOpts) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_ParseWithLengthOpts) refers to cjson.o(.data) for global_error
    cjson.o(i.cJSON_ParseWithOpts) refers to strlen.o(.text) for strlen
    cjson.o(i.cJSON_ParseWithOpts) refers to cjson.o(i.cJSON_ParseWithLengthOpts) for cJSON_ParseWithLengthOpts
    cjson.o(i.cJSON_Print) refers to cjson.o(i.print) for print
    cjson.o(i.cJSON_Print) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_PrintBuffered) refers to memseta.o(.text) for __aeabi_memclr4
    cjson.o(i.cJSON_PrintBuffered) refers to cjson.o(i.print_value) for print_value
    cjson.o(i.cJSON_PrintBuffered) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_PrintPreallocated) refers to memseta.o(.text) for __aeabi_memclr4
    cjson.o(i.cJSON_PrintPreallocated) refers to cjson.o(i.print_value) for print_value
    cjson.o(i.cJSON_PrintPreallocated) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_PrintUnformatted) refers to cjson.o(i.print) for print
    cjson.o(i.cJSON_PrintUnformatted) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_ReplaceItemInArray) refers to cjson.o(i.get_array_item) for get_array_item
    cjson.o(i.cJSON_ReplaceItemInArray) refers to cjson.o(i.cJSON_ReplaceItemViaPointer) for cJSON_ReplaceItemViaPointer
    cjson.o(i.cJSON_ReplaceItemInObject) refers to cjson.o(i.replace_item_in_object) for replace_item_in_object
    cjson.o(i.cJSON_ReplaceItemInObjectCaseSensitive) refers to cjson.o(i.replace_item_in_object) for replace_item_in_object
    cjson.o(i.cJSON_ReplaceItemViaPointer) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.cJSON_SetNumberHelper) refers to cdrcmple.o(.text) for __aeabi_cdrcmple
    cjson.o(i.cJSON_SetNumberHelper) refers to cdcmple.o(.text) for __aeabi_cdcmple
    cjson.o(i.cJSON_SetNumberHelper) refers to dfixi.o(.text) for __aeabi_d2iz
    cjson.o(i.cJSON_SetValuestring) refers to strlen.o(.text) for strlen
    cjson.o(i.cJSON_SetValuestring) refers to strcpy.o(.text) for strcpy
    cjson.o(i.cJSON_SetValuestring) refers to cjson.o(i.cJSON_strdup) for cJSON_strdup
    cjson.o(i.cJSON_SetValuestring) refers to cjson.o(i.cJSON_free) for cJSON_free
    cjson.o(i.cJSON_SetValuestring) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_Version) refers to printfa.o(i.__0sprintf) for __2sprintf
    cjson.o(i.cJSON_Version) refers to cjson.o(.bss) for version
    cjson.o(i.cJSON_free) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_malloc) refers to cjson.o(.data) for global_hooks
    cjson.o(i.cJSON_strdup) refers to strlen.o(.text) for strlen
    cjson.o(i.cJSON_strdup) refers to memcpya.o(.text) for __aeabi_memcpy
    cjson.o(i.case_insensitive_strcmp) refers to tolower.o(.text) for tolower
    cjson.o(i.compare_double) refers to cdrcmple.o(.text) for __aeabi_cdrcmple
    cjson.o(i.compare_double) refers to dmul.o(.text) for __aeabi_dmul
    cjson.o(i.compare_double) refers to dadd.o(.text) for __aeabi_dsub
    cjson.o(i.compare_double) refers to cdcmple.o(.text) for __aeabi_cdcmple
    cjson.o(i.create_reference) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.create_reference) refers to memcpya.o(.text) for __aeabi_memcpy4
    cjson.o(i.ensure) refers to memcpya.o(.text) for __aeabi_memcpy
    cjson.o(i.get_object_item) refers to strcmp.o(.text) for strcmp
    cjson.o(i.get_object_item) refers to cjson.o(i.case_insensitive_strcmp) for case_insensitive_strcmp
    cjson.o(i.parse_array) refers to cjson.o(i.buffer_skip_whitespace) for buffer_skip_whitespace
    cjson.o(i.parse_array) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.parse_array) refers to cjson.o(i.parse_value) for parse_value
    cjson.o(i.parse_array) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.parse_number) refers to cjson.o(i.get_decimal_point) for get_decimal_point
    cjson.o(i.parse_number) refers to strtod.o(i.strtod) for strtod
    cjson.o(i.parse_number) refers to cdrcmple.o(.text) for __aeabi_cdrcmple
    cjson.o(i.parse_number) refers to cdcmple.o(.text) for __aeabi_cdcmple
    cjson.o(i.parse_number) refers to dfixi.o(.text) for __aeabi_d2iz
    cjson.o(i.parse_object) refers to cjson.o(i.buffer_skip_whitespace) for buffer_skip_whitespace
    cjson.o(i.parse_object) refers to cjson.o(i.cJSON_New_Item) for cJSON_New_Item
    cjson.o(i.parse_object) refers to cjson.o(i.parse_string) for parse_string
    cjson.o(i.parse_object) refers to cjson.o(i.parse_value) for parse_value
    cjson.o(i.parse_object) refers to cjson.o(i.cJSON_Delete) for cJSON_Delete
    cjson.o(i.parse_string) refers to cjson.o(i.utf16_literal_to_utf8) for utf16_literal_to_utf8
    cjson.o(i.parse_value) refers to strncmp.o(.text) for strncmp
    cjson.o(i.parse_value) refers to cjson.o(i.parse_string) for parse_string
    cjson.o(i.parse_value) refers to cjson.o(i.parse_number) for parse_number
    cjson.o(i.parse_value) refers to cjson.o(i.parse_array) for parse_array
    cjson.o(i.parse_value) refers to cjson.o(i.parse_object) for parse_object
    cjson.o(i.print) refers to memseta.o(.text) for __aeabi_memclr4
    cjson.o(i.print) refers to cjson.o(i.print_value) for print_value
    cjson.o(i.print) refers to cjson.o(i.update_offset) for update_offset
    cjson.o(i.print) refers to memcpya.o(.text) for __aeabi_memcpy
    cjson.o(i.print_array) refers to cjson.o(i.ensure) for ensure
    cjson.o(i.print_array) refers to cjson.o(i.print_value) for print_value
    cjson.o(i.print_array) refers to cjson.o(i.update_offset) for update_offset
    cjson.o(i.print_number) refers to scanf_fp.o(.text) for _scanf_real
    cjson.o(i.print_number) refers to memseta.o(.text) for __aeabi_memclr4
    cjson.o(i.print_number) refers to cjson.o(i.get_decimal_point) for get_decimal_point
    cjson.o(i.print_number) refers to printfa.o(i.__0sprintf) for __2sprintf
    cjson.o(i.print_number) refers to dflti.o(.text) for __aeabi_i2d
    cjson.o(i.print_number) refers to cdcmple.o(.text) for __aeabi_cdcmpeq
    cjson.o(i.print_number) refers to __0sscanf.o(.text) for __0sscanf
    cjson.o(i.print_number) refers to cjson.o(i.compare_double) for compare_double
    cjson.o(i.print_number) refers to cjson.o(i.ensure) for ensure
    cjson.o(i.print_object) refers to cjson.o(i.ensure) for ensure
    cjson.o(i.print_object) refers to cjson.o(i.print_string_ptr) for print_string_ptr
    cjson.o(i.print_object) refers to cjson.o(i.update_offset) for update_offset
    cjson.o(i.print_object) refers to cjson.o(i.print_value) for print_value
    cjson.o(i.print_string) refers to cjson.o(i.print_string_ptr) for print_string_ptr
    cjson.o(i.print_string_ptr) refers to cjson.o(i.ensure) for ensure
    cjson.o(i.print_string_ptr) refers to strcpy.o(.text) for strcpy
    cjson.o(i.print_string_ptr) refers to memcpya.o(.text) for __aeabi_memcpy
    cjson.o(i.print_string_ptr) refers to printfa.o(i.__0sprintf) for __2sprintf
    cjson.o(i.print_value) refers to cjson.o(i.ensure) for ensure
    cjson.o(i.print_value) refers to strcpy.o(.text) for strcpy
    cjson.o(i.print_value) refers to cjson.o(i.print_number) for print_number
    cjson.o(i.print_value) refers to strlen.o(.text) for strlen
    cjson.o(i.print_value) refers to memcpya.o(.text) for __aeabi_memcpy
    cjson.o(i.print_value) refers to cjson.o(i.print_string) for print_string
    cjson.o(i.print_value) refers to cjson.o(i.print_array) for print_array
    cjson.o(i.print_value) refers to cjson.o(i.print_object) for print_object
    cjson.o(i.replace_item_in_object) refers to cjson.o(i.cJSON_free) for cJSON_free
    cjson.o(i.replace_item_in_object) refers to cjson.o(i.cJSON_strdup) for cJSON_strdup
    cjson.o(i.replace_item_in_object) refers to cjson.o(i.get_object_item) for get_object_item
    cjson.o(i.replace_item_in_object) refers to cjson.o(i.cJSON_ReplaceItemViaPointer) for cJSON_ReplaceItemViaPointer
    cjson.o(i.replace_item_in_object) refers to cjson.o(.data) for global_hooks
    cjson.o(i.skip_utf8_bom) refers to strncmp.o(.text) for strncmp
    cjson.o(i.update_offset) refers to strlen.o(.text) for strlen
    cjson.o(i.utf16_literal_to_utf8) refers to cjson.o(i.parse_hex4) for parse_hex4
    cjson.o(.data) refers to mallocr.o(i.__malloc$realloc) for malloc
    cjson.o(.data) refers to mallocr.o(i.__free$realloc) for free
    cjson.o(.data) refers to mallocr.o(i.realloc) for realloc
    dlt645.o(i.dlt645_read_data) refers to dlt645_1997.o(i.dlt645_1997_read_data) for dlt645_1997_read_data
    dlt645.o(i.dlt645_read_data) refers to dlt645_2007.o(i.dlt645_2007_read_data) for dlt645_2007_read_data
    dlt645.o(i.dlt645_receive_msg) refers to dlt645_1997.o(i.dlt645_1997_recv_check) for dlt645_1997_recv_check
    dlt645.o(i.dlt645_receive_msg) refers to dlt645_2007.o(i.dlt645_2007_recv_check) for dlt645_2007_recv_check
    dlt645.o(i.dlt645_send_msg) refers to dlt645_data.o(i._crc) for _crc
    dlt645_2007.o(i.dlt645_2007_parsing_data) refers to dlt645_data.o(i.dlt645_data_parse_by_format_to_float) for dlt645_data_parse_by_format_to_float
    dlt645_2007.o(i.dlt645_2007_read_data) refers to memseta.o(.text) for __aeabi_memclr4
    dlt645_2007.o(i.dlt645_2007_read_data) refers to dlt645.o(i.dlt645_send_msg) for dlt645_send_msg
    dlt645_2007.o(i.dlt645_2007_read_data) refers to dlt645.o(i.dlt645_receive_msg) for dlt645_receive_msg
    dlt645_2007.o(i.dlt645_2007_read_data) refers to dlt645_2007.o(i.dlt645_2007_parsing_data) for dlt645_2007_parsing_data
    dlt645_2007.o(i.dlt645_2007_recv_check) refers to dlt645_data.o(i.dlt645_common_check) for dlt645_common_check
    dlt645_2007.o(i.dlt645_write_data) refers to memseta.o(.text) for __aeabi_memclr4
    dlt645_2007.o(i.dlt645_write_data) refers to memcpya.o(.text) for __aeabi_memcpy
    dlt645_2007.o(i.dlt645_write_data) refers to dlt645.o(i.dlt645_send_msg) for dlt645_send_msg
    dlt645_2007.o(i.dlt645_write_data) refers to dlt645.o(i.dlt645_receive_msg) for dlt645_receive_msg
    dlt645_data.o(i.data_package_translate_to_int) refers to dfltui.o(.text) for __aeabi_ui2d
    dlt645_data.o(i.data_package_translate_to_int) refers to pow.o(i.pow) for pow
    dlt645_data.o(i.data_package_translate_to_int) refers to dflti.o(.text) for __aeabi_i2d
    dlt645_data.o(i.data_package_translate_to_int) refers to dmul.o(.text) for __aeabi_dmul
    dlt645_data.o(i.data_package_translate_to_int) refers to dadd.o(.text) for __aeabi_dadd
    dlt645_data.o(i.data_package_translate_to_int) refers to dfixi.o(.text) for __aeabi_d2iz
    dlt645_data.o(i.dlt645_common_check) refers to dlt645_data.o(i._crc) for _crc
    dlt645_data.o(i.dlt645_common_check) refers to memcmp.o(.text) for memcmp
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float) refers to dlt645_data.o(i.data_package_translate_to_int) for data_package_translate_to_int
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float) refers to strlen.o(.text) for strlen
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float) refers to dflti.o(.text) for __aeabi_i2d
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float) refers to pow.o(i.pow) for pow
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float) refers to ddiv.o(.text) for __aeabi_ddiv
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float) refers to d2f.o(.text) for __aeabi_d2f
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float_and_DATE) refers to dlt645_data.o(i.data_package_translate_to_int) for data_package_translate_to_int
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float_and_DATE) refers to strlen.o(.text) for strlen
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float_and_DATE) refers to dflti.o(.text) for __aeabi_i2d
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float_and_DATE) refers to pow.o(i.pow) for pow
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float_and_DATE) refers to ddiv.o(.text) for __aeabi_ddiv
    dlt645_data.o(i.dlt645_data_parse_by_format_to_float_and_DATE) refers to d2f.o(.text) for __aeabi_d2f
    dlt645_data.o(i.str_to_bcd) refers to strlen.o(.text) for strlen
    dlt645_data.o(i.str_to_bcd) refers to memseta.o(.text) for __aeabi_memclr
    dlt645_port.o(i.dlt645_hw_read) refers to systick.o(i.gettick) for gettick
    dlt645_port.o(i.dlt645_hw_read) refers to memcpya.o(.text) for __aeabi_memcpy
    dlt645_port.o(i.dlt645_hw_read) refers to dlt645_port.o(.bss) for dlt645_port
    dlt645_port.o(i.dlt645_hw_write) refers to memseta.o(.text) for __aeabi_memclr4
    dlt645_port.o(i.dlt645_hw_write) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    dlt645_port.o(i.dlt645_hw_write) refers to gd32f10x_usart.o(i.usart_data_transmit) for usart_data_transmit
    dlt645_port.o(i.dlt645_hw_write) refers to gd32f10x_usart.o(i.usart_flag_get) for usart_flag_get
    dlt645_port.o(i.dlt645_hw_write) refers to gd32f10x_gpio.o(i.gpio_bit_reset) for gpio_bit_reset
    dlt645_port.o(i.dlt645_hw_write) refers to dlt645_port.o(.bss) for dlt645_port
    dlt645_port.o(i.dlt645_init) refers to gd32f10x_gpio.o(i.gpio_bit_set) for gpio_bit_set
    dlt645_port.o(i.dlt645_init) refers to dlt645_port.o(.bss) for dlt645_port
    dlt645_port.o(i.dlt_callback) refers to gd32f10x_usart.o(i.usart_interrupt_flag_get) for usart_interrupt_flag_get
    dlt645_port.o(i.dlt_callback) refers to gd32f10x_usart.o(i.usart_data_receive) for usart_data_receive
    dlt645_port.o(i.dlt_callback) refers to gd32f10x_usart.o(i.usart_interrupt_flag_clear) for usart_interrupt_flag_clear
    dlt645_port.o(i.dlt_callback) refers to dlt645_port.o(.bss) for dlt645_port
    dlt645_port.o(.data) refers to dlt645_port.o(i.dlt645_hw_write) for dlt645_hw_write
    dlt645_port.o(.data) refers to dlt645_port.o(i.dlt645_hw_read) for dlt645_hw_read
    dlt645_port.o(.data) refers to dlt645_port.o(.bss) for dlt645_port
    dlt645_1997.o(i.dlt645_1997_parsing_data) refers to dlt645_data.o(i.dlt645_data_parse_by_format_to_float) for dlt645_data_parse_by_format_to_float
    dlt645_1997.o(i.dlt645_1997_read_data) refers to memseta.o(.text) for __aeabi_memclr4
    dlt645_1997.o(i.dlt645_1997_read_data) refers to dlt645.o(i.dlt645_send_msg) for dlt645_send_msg
    dlt645_1997.o(i.dlt645_1997_read_data) refers to dlt645.o(i.dlt645_receive_msg) for dlt645_receive_msg
    dlt645_1997.o(i.dlt645_1997_read_data) refers to dlt645_1997.o(i.dlt645_1997_parsing_data) for dlt645_1997_parsing_data
    dlt645_1997.o(i.dlt645_1997_recv_check) refers to dlt645_data.o(i.dlt645_common_check) for dlt645_common_check
    pow.o(i.__softfp_pow) refers (Special) to iusefp.o(.text) for __I$use$fp
    pow.o(i.__softfp_pow) refers to pow.o(i.pow) for pow
    pow.o(i.pow) refers (Special) to iusefp.o(.text) for __I$use$fp
    pow.o(i.pow) refers to dunder.o(i.__mathlib_dbl_infnan2) for __mathlib_dbl_infnan2
    pow.o(i.pow) refers to errno.o(i.__set_errno) for __set_errno
    pow.o(i.pow) refers to dunder.o(i.__mathlib_dbl_divzero) for __mathlib_dbl_divzero
    pow.o(i.pow) refers to ddiv.o(.text) for __aeabi_ddiv
    pow.o(i.pow) refers to sqrt.o(i.sqrt) for sqrt
    pow.o(i.pow) refers to dmul.o(.text) for __aeabi_dmul
    pow.o(i.pow) refers to dflti.o(.text) for __aeabi_i2d
    pow.o(i.pow) refers to dunder.o(i.__mathlib_dbl_invalid) for __mathlib_dbl_invalid
    pow.o(i.pow) refers to dunder.o(i.__mathlib_dbl_overflow) for __mathlib_dbl_overflow
    pow.o(i.pow) refers to dunder.o(i.__mathlib_dbl_underflow) for __mathlib_dbl_underflow
    pow.o(i.pow) refers to dadd.o(.text) for __aeabi_dsub
    pow.o(i.pow) refers to dscalb.o(.text) for __ARM_scalbn
    pow.o(i.pow) refers to qnan.o(.constdata) for __mathlib_zero
    pow.o(i.pow) refers to poly.o(i.__kernel_poly) for __kernel_poly
    pow.o(i.pow) refers to cdrcmple.o(.text) for __aeabi_cdrcmple
    pow.o(i.pow) refers to pow.o(.constdata) for .constdata
    pow.o(i.pow) refers to fpclassify.o(i.__ARM_fpclassify) for __ARM_fpclassify
    pow.o(.constdata) refers (Special) to iusefp.o(.text) for __I$use$fp
    pow_x.o(i.____softfp_pow$lsc) refers (Special) to iusefp.o(.text) for __I$use$fp
    pow_x.o(i.____softfp_pow$lsc) refers to pow_x.o(i.__pow$lsc) for __pow$lsc
    pow_x.o(i.__pow$lsc) refers (Special) to iusefp.o(.text) for __I$use$fp
    pow_x.o(i.__pow$lsc) refers to dunder.o(i.__mathlib_dbl_infnan2) for __mathlib_dbl_infnan2
    pow_x.o(i.__pow$lsc) refers to errno.o(i.__set_errno) for __set_errno
    pow_x.o(i.__pow$lsc) refers to ddiv.o(.text) for __aeabi_ddiv
    pow_x.o(i.__pow$lsc) refers to sqrt.o(i.sqrt) for sqrt
    pow_x.o(i.__pow$lsc) refers to dmul.o(.text) for __aeabi_dmul
    pow_x.o(i.__pow$lsc) refers to dflti.o(.text) for __aeabi_i2d
    pow_x.o(i.__pow$lsc) refers to dadd.o(.text) for __aeabi_dsub
    pow_x.o(i.__pow$lsc) refers to dscalb.o(.text) for __ARM_scalbn
    pow_x.o(i.__pow$lsc) refers to qnan.o(.constdata) for __mathlib_zero
    pow_x.o(i.__pow$lsc) refers to poly.o(i.__kernel_poly) for __kernel_poly
    pow_x.o(i.__pow$lsc) refers to cdrcmple.o(.text) for __aeabi_cdrcmple
    pow_x.o(i.__pow$lsc) refers to pow_x.o(.constdata) for .constdata
    pow_x.o(.constdata) refers (Special) to iusefp.o(.text) for __I$use$fp
    strtod.o(i.__softfp_strtod) refers (Special) to iusefp.o(.text) for __I$use$fp
    strtod.o(i.__softfp_strtod) refers to strtod.o(.text) for __strtod_int
    strtod.o(i.strtod) refers (Special) to iusefp.o(.text) for __I$use$fp
    strtod.o(i.strtod) refers to strtod.o(.text) for __strtod_int
    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
    printfb.o(i.__0fprintf$bare) refers to printfb.o(i._printf_core) for _printf_core
    printfb.o(i.__0fprintf$bare) refers to log.o(i.fputc) for fputc
    printfb.o(i.__0printf$bare) refers to printfb.o(i._printf_core) for _printf_core
    printfb.o(i.__0printf$bare) refers to log.o(i.fputc) for fputc
    printfb.o(i.__0printf$bare) refers to stdout.o(.data) for __stdout
    printfb.o(i.__0snprintf$bare) refers to printfb.o(i._printf_core) for _printf_core
    printfb.o(i.__0snprintf$bare) refers to printfb.o(i._snputc) for _snputc
    printfb.o(i.__0sprintf$bare) refers to printfb.o(i._printf_core) for _printf_core
    printfb.o(i.__0sprintf$bare) refers to printfb.o(i._sputc) for _sputc
    printfb.o(i.__0vfprintf$bare) refers to printfb.o(i._printf_core) for _printf_core
    printfb.o(i.__0vfprintf$bare) refers to log.o(i.fputc) for fputc
    printfb.o(i.__0vprintf$bare) refers to printfb.o(i._printf_core) for _printf_core
    printfb.o(i.__0vprintf$bare) refers to log.o(i.fputc) for fputc
    printfb.o(i.__0vprintf$bare) refers to stdout.o(.data) for __stdout
    printfb.o(i.__0vsnprintf$bare) refers to printfb.o(i._printf_core) for _printf_core
    printfb.o(i.__0vsnprintf$bare) refers to printfb.o(i._snputc) for _snputc
    printfb.o(i.__0vsprintf$bare) refers to printfb.o(i._printf_core) for _printf_core
    printfb.o(i.__0vsprintf$bare) refers to printfb.o(i._sputc) for _sputc
    printf0.o(i.__0fprintf$0) refers to printf0.o(i._printf_core) for _printf_core
    printf0.o(i.__0fprintf$0) refers to log.o(i.fputc) for fputc
    printf0.o(i.__0printf$0) refers to printf0.o(i._printf_core) for _printf_core
    printf0.o(i.__0printf$0) refers to log.o(i.fputc) for fputc
    printf0.o(i.__0printf$0) refers to stdout.o(.data) for __stdout
    printf0.o(i.__0snprintf$0) refers to printf0.o(i._printf_core) for _printf_core
    printf0.o(i.__0snprintf$0) refers to printf0.o(i._snputc) for _snputc
    printf0.o(i.__0sprintf$0) refers to printf0.o(i._printf_core) for _printf_core
    printf0.o(i.__0sprintf$0) refers to printf0.o(i._sputc) for _sputc
    printf0.o(i.__0vfprintf$0) refers to printf0.o(i._printf_core) for _printf_core
    printf0.o(i.__0vfprintf$0) refers to log.o(i.fputc) for fputc
    printf0.o(i.__0vprintf$0) refers to printf0.o(i._printf_core) for _printf_core
    printf0.o(i.__0vprintf$0) refers to log.o(i.fputc) for fputc
    printf0.o(i.__0vprintf$0) refers to stdout.o(.data) for __stdout
    printf0.o(i.__0vsnprintf$0) refers to printf0.o(i._printf_core) for _printf_core
    printf0.o(i.__0vsnprintf$0) refers to printf0.o(i._snputc) for _snputc
    printf0.o(i.__0vsprintf$0) refers to printf0.o(i._printf_core) for _printf_core
    printf0.o(i.__0vsprintf$0) refers to printf0.o(i._sputc) for _sputc
    printf1.o(i.__0fprintf$1) refers to printf1.o(i._printf_core) for _printf_core
    printf1.o(i.__0fprintf$1) refers to log.o(i.fputc) for fputc
    printf1.o(i.__0printf$1) refers to printf1.o(i._printf_core) for _printf_core
    printf1.o(i.__0printf$1) refers to log.o(i.fputc) for fputc
    printf1.o(i.__0printf$1) refers to stdout.o(.data) for __stdout
    printf1.o(i.__0snprintf$1) refers to printf1.o(i._printf_core) for _printf_core
    printf1.o(i.__0snprintf$1) refers to printf1.o(i._snputc) for _snputc
    printf1.o(i.__0sprintf$1) refers to printf1.o(i._printf_core) for _printf_core
    printf1.o(i.__0sprintf$1) refers to printf1.o(i._sputc) for _sputc
    printf1.o(i.__0vfprintf$1) refers to printf1.o(i._printf_core) for _printf_core
    printf1.o(i.__0vfprintf$1) refers to log.o(i.fputc) for fputc
    printf1.o(i.__0vprintf$1) refers to printf1.o(i._printf_core) for _printf_core
    printf1.o(i.__0vprintf$1) refers to log.o(i.fputc) for fputc
    printf1.o(i.__0vprintf$1) refers to stdout.o(.data) for __stdout
    printf1.o(i.__0vsnprintf$1) refers to printf1.o(i._printf_core) for _printf_core
    printf1.o(i.__0vsnprintf$1) refers to printf1.o(i._snputc) for _snputc
    printf1.o(i.__0vsprintf$1) refers to printf1.o(i._printf_core) for _printf_core
    printf1.o(i.__0vsprintf$1) refers to printf1.o(i._sputc) for _sputc
    printf1.o(i._printf_core) refers to uidiv.o(.text) for __aeabi_uidivmod
    printf2.o(i.__0fprintf$2) refers to printf2.o(i._printf_core) for _printf_core
    printf2.o(i.__0fprintf$2) refers to log.o(i.fputc) for fputc
    printf2.o(i.__0printf$2) refers to printf2.o(i._printf_core) for _printf_core
    printf2.o(i.__0printf$2) refers to log.o(i.fputc) for fputc
    printf2.o(i.__0printf$2) refers to stdout.o(.data) for __stdout
    printf2.o(i.__0snprintf$2) refers to printf2.o(i._printf_core) for _printf_core
    printf2.o(i.__0snprintf$2) refers to printf2.o(i._snputc) for _snputc
    printf2.o(i.__0sprintf$2) refers to printf2.o(i._printf_core) for _printf_core
    printf2.o(i.__0sprintf$2) refers to printf2.o(i._sputc) for _sputc
    printf2.o(i.__0vfprintf$2) refers to printf2.o(i._printf_core) for _printf_core
    printf2.o(i.__0vfprintf$2) refers to log.o(i.fputc) for fputc
    printf2.o(i.__0vprintf$2) refers to printf2.o(i._printf_core) for _printf_core
    printf2.o(i.__0vprintf$2) refers to log.o(i.fputc) for fputc
    printf2.o(i.__0vprintf$2) refers to stdout.o(.data) for __stdout
    printf2.o(i.__0vsnprintf$2) refers to printf2.o(i._printf_core) for _printf_core
    printf2.o(i.__0vsnprintf$2) refers to printf2.o(i._snputc) for _snputc
    printf2.o(i.__0vsprintf$2) refers to printf2.o(i._printf_core) for _printf_core
    printf2.o(i.__0vsprintf$2) refers to printf2.o(i._sputc) for _sputc
    printf3.o(i.__0fprintf$3) refers to printf3.o(i._printf_core) for _printf_core
    printf3.o(i.__0fprintf$3) refers to log.o(i.fputc) for fputc
    printf3.o(i.__0printf$3) refers to printf3.o(i._printf_core) for _printf_core
    printf3.o(i.__0printf$3) refers to log.o(i.fputc) for fputc
    printf3.o(i.__0printf$3) refers to stdout.o(.data) for __stdout
    printf3.o(i.__0snprintf$3) refers to printf3.o(i._printf_core) for _printf_core
    printf3.o(i.__0snprintf$3) refers to printf3.o(i._snputc) for _snputc
    printf3.o(i.__0sprintf$3) refers to printf3.o(i._printf_core) for _printf_core
    printf3.o(i.__0sprintf$3) refers to printf3.o(i._sputc) for _sputc
    printf3.o(i.__0vfprintf$3) refers to printf3.o(i._printf_core) for _printf_core
    printf3.o(i.__0vfprintf$3) refers to log.o(i.fputc) for fputc
    printf3.o(i.__0vprintf$3) refers to printf3.o(i._printf_core) for _printf_core
    printf3.o(i.__0vprintf$3) refers to log.o(i.fputc) for fputc
    printf3.o(i.__0vprintf$3) refers to stdout.o(.data) for __stdout
    printf3.o(i.__0vsnprintf$3) refers to printf3.o(i._printf_core) for _printf_core
    printf3.o(i.__0vsnprintf$3) refers to printf3.o(i._snputc) for _snputc
    printf3.o(i.__0vsprintf$3) refers to printf3.o(i._printf_core) for _printf_core
    printf3.o(i.__0vsprintf$3) refers to printf3.o(i._sputc) for _sputc
    printf3.o(i._printf_core) refers to uidiv.o(.text) for __aeabi_uidivmod
    printf4.o(i.__0fprintf$4) refers to printf4.o(i._printf_core) for _printf_core
    printf4.o(i.__0fprintf$4) refers to log.o(i.fputc) for fputc
    printf4.o(i.__0printf$4) refers to printf4.o(i._printf_core) for _printf_core
    printf4.o(i.__0printf$4) refers to log.o(i.fputc) for fputc
    printf4.o(i.__0printf$4) refers to stdout.o(.data) for __stdout
    printf4.o(i.__0snprintf$4) refers to printf4.o(i._printf_core) for _printf_core
    printf4.o(i.__0snprintf$4) refers to printf4.o(i._snputc) for _snputc
    printf4.o(i.__0sprintf$4) refers to printf4.o(i._printf_core) for _printf_core
    printf4.o(i.__0sprintf$4) refers to printf4.o(i._sputc) for _sputc
    printf4.o(i.__0vfprintf$4) refers to printf4.o(i._printf_core) for _printf_core
    printf4.o(i.__0vfprintf$4) refers to log.o(i.fputc) for fputc
    printf4.o(i.__0vprintf$4) refers to printf4.o(i._printf_core) for _printf_core
    printf4.o(i.__0vprintf$4) refers to log.o(i.fputc) for fputc
    printf4.o(i.__0vprintf$4) refers to stdout.o(.data) for __stdout
    printf4.o(i.__0vsnprintf$4) refers to printf4.o(i._printf_core) for _printf_core
    printf4.o(i.__0vsnprintf$4) refers to printf4.o(i._snputc) for _snputc
    printf4.o(i.__0vsprintf$4) refers to printf4.o(i._printf_core) for _printf_core
    printf4.o(i.__0vsprintf$4) refers to printf4.o(i._sputc) for _sputc
    printf4.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod
    printf5.o(i.__0fprintf$5) refers to printf5.o(i._printf_core) for _printf_core
    printf5.o(i.__0fprintf$5) refers to log.o(i.fputc) for fputc
    printf5.o(i.__0printf$5) refers to printf5.o(i._printf_core) for _printf_core
    printf5.o(i.__0printf$5) refers to log.o(i.fputc) for fputc
    printf5.o(i.__0printf$5) refers to stdout.o(.data) for __stdout
    printf5.o(i.__0snprintf$5) refers to printf5.o(i._printf_core) for _printf_core
    printf5.o(i.__0snprintf$5) refers to printf5.o(i._snputc) for _snputc
    printf5.o(i.__0sprintf$5) refers to printf5.o(i._printf_core) for _printf_core
    printf5.o(i.__0sprintf$5) refers to printf5.o(i._sputc) for _sputc
    printf5.o(i.__0vfprintf$5) refers to printf5.o(i._printf_core) for _printf_core
    printf5.o(i.__0vfprintf$5) refers to log.o(i.fputc) for fputc
    printf5.o(i.__0vprintf$5) refers to printf5.o(i._printf_core) for _printf_core
    printf5.o(i.__0vprintf$5) refers to log.o(i.fputc) for fputc
    printf5.o(i.__0vprintf$5) refers to stdout.o(.data) for __stdout
    printf5.o(i.__0vsnprintf$5) refers to printf5.o(i._printf_core) for _printf_core
    printf5.o(i.__0vsnprintf$5) refers to printf5.o(i._snputc) for _snputc
    printf5.o(i.__0vsprintf$5) refers to printf5.o(i._printf_core) for _printf_core
    printf5.o(i.__0vsprintf$5) refers to printf5.o(i._sputc) for _sputc
    printf5.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod
    printf6.o(i.__0fprintf$6) refers to printf6.o(i._printf_core) for _printf_core
    printf6.o(i.__0fprintf$6) refers to log.o(i.fputc) for fputc
    printf6.o(i.__0printf$6) refers to printf6.o(i._printf_core) for _printf_core
    printf6.o(i.__0printf$6) refers to log.o(i.fputc) for fputc
    printf6.o(i.__0printf$6) refers to stdout.o(.data) for __stdout
    printf6.o(i.__0snprintf$6) refers to printf6.o(i._printf_core) for _printf_core
    printf6.o(i.__0snprintf$6) refers to printf6.o(i._snputc) for _snputc
    printf6.o(i.__0sprintf$6) refers to printf6.o(i._printf_core) for _printf_core
    printf6.o(i.__0sprintf$6) refers to printf6.o(i._sputc) for _sputc
    printf6.o(i.__0vfprintf$6) refers to printf6.o(i._printf_core) for _printf_core
    printf6.o(i.__0vfprintf$6) refers to log.o(i.fputc) for fputc
    printf6.o(i.__0vprintf$6) refers to printf6.o(i._printf_core) for _printf_core
    printf6.o(i.__0vprintf$6) refers to log.o(i.fputc) for fputc
    printf6.o(i.__0vprintf$6) refers to stdout.o(.data) for __stdout
    printf6.o(i.__0vsnprintf$6) refers to printf6.o(i._printf_core) for _printf_core
    printf6.o(i.__0vsnprintf$6) refers to printf6.o(i._snputc) for _snputc
    printf6.o(i.__0vsprintf$6) refers to printf6.o(i._printf_core) for _printf_core
    printf6.o(i.__0vsprintf$6) refers to printf6.o(i._sputc) for _sputc
    printf6.o(i._printf_core) refers to printf6.o(i._printf_pre_padding) for _printf_pre_padding
    printf6.o(i._printf_core) refers to uidiv.o(.text) for __aeabi_uidivmod
    printf6.o(i._printf_core) refers to printf6.o(i._printf_post_padding) for _printf_post_padding
    printf7.o(i.__0fprintf$7) refers to printf7.o(i._printf_core) for _printf_core
    printf7.o(i.__0fprintf$7) refers to log.o(i.fputc) for fputc
    printf7.o(i.__0printf$7) refers to printf7.o(i._printf_core) for _printf_core
    printf7.o(i.__0printf$7) refers to log.o(i.fputc) for fputc
    printf7.o(i.__0printf$7) refers to stdout.o(.data) for __stdout
    printf7.o(i.__0snprintf$7) refers to printf7.o(i._printf_core) for _printf_core
    printf7.o(i.__0snprintf$7) refers to printf7.o(i._snputc) for _snputc
    printf7.o(i.__0sprintf$7) refers to printf7.o(i._printf_core) for _printf_core
    printf7.o(i.__0sprintf$7) refers to printf7.o(i._sputc) for _sputc
    printf7.o(i.__0vfprintf$7) refers to printf7.o(i._printf_core) for _printf_core
    printf7.o(i.__0vfprintf$7) refers to log.o(i.fputc) for fputc
    printf7.o(i.__0vprintf$7) refers to printf7.o(i._printf_core) for _printf_core
    printf7.o(i.__0vprintf$7) refers to log.o(i.fputc) for fputc
    printf7.o(i.__0vprintf$7) refers to stdout.o(.data) for __stdout
    printf7.o(i.__0vsnprintf$7) refers to printf7.o(i._printf_core) for _printf_core
    printf7.o(i.__0vsnprintf$7) refers to printf7.o(i._snputc) for _snputc
    printf7.o(i.__0vsprintf$7) refers to printf7.o(i._printf_core) for _printf_core
    printf7.o(i.__0vsprintf$7) refers to printf7.o(i._sputc) for _sputc
    printf7.o(i._printf_core) refers to printf7.o(i._printf_pre_padding) for _printf_pre_padding
    printf7.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod
    printf7.o(i._printf_core) refers to printf7.o(i._printf_post_padding) for _printf_post_padding
    printf8.o(i.__0fprintf$8) refers to printf8.o(i._printf_core) for _printf_core
    printf8.o(i.__0fprintf$8) refers to log.o(i.fputc) for fputc
    printf8.o(i.__0printf$8) refers to printf8.o(i._printf_core) for _printf_core
    printf8.o(i.__0printf$8) refers to log.o(i.fputc) for fputc
    printf8.o(i.__0printf$8) refers to stdout.o(.data) for __stdout
    printf8.o(i.__0snprintf$8) refers to printf8.o(i._printf_core) for _printf_core
    printf8.o(i.__0snprintf$8) refers to printf8.o(i._snputc) for _snputc
    printf8.o(i.__0sprintf$8) refers to printf8.o(i._printf_core) for _printf_core
    printf8.o(i.__0sprintf$8) refers to printf8.o(i._sputc) for _sputc
    printf8.o(i.__0vfprintf$8) refers to printf8.o(i._printf_core) for _printf_core
    printf8.o(i.__0vfprintf$8) refers to log.o(i.fputc) for fputc
    printf8.o(i.__0vprintf$8) refers to printf8.o(i._printf_core) for _printf_core
    printf8.o(i.__0vprintf$8) refers to log.o(i.fputc) for fputc
    printf8.o(i.__0vprintf$8) refers to stdout.o(.data) for __stdout
    printf8.o(i.__0vsnprintf$8) refers to printf8.o(i._printf_core) for _printf_core
    printf8.o(i.__0vsnprintf$8) refers to printf8.o(i._snputc) for _snputc
    printf8.o(i.__0vsprintf$8) refers to printf8.o(i._printf_core) for _printf_core
    printf8.o(i.__0vsprintf$8) refers to printf8.o(i._sputc) for _sputc
    printf8.o(i._printf_core) refers to printf8.o(i._printf_pre_padding) for _printf_pre_padding
    printf8.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod
    printf8.o(i._printf_core) refers to printf8.o(i._printf_post_padding) for _printf_post_padding
    printfa.o(i.__0fprintf) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i.__0fprintf) refers to printfa.o(i._printf_core) for _printf_core
    printfa.o(i.__0fprintf) refers to log.o(i.fputc) for fputc
    printfa.o(i.__0printf) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i.__0printf) refers to printfa.o(i._printf_core) for _printf_core
    printfa.o(i.__0printf) refers to log.o(i.fputc) for fputc
    printfa.o(i.__0printf) refers to stdout.o(.data) for __stdout
    printfa.o(i.__0snprintf) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i.__0snprintf) refers to printfa.o(i._printf_core) for _printf_core
    printfa.o(i.__0snprintf) refers to printfa.o(i._snputc) for _snputc
    printfa.o(i.__0sprintf) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i.__0sprintf) refers to printfa.o(i._printf_core) for _printf_core
    printfa.o(i.__0sprintf) refers to printfa.o(i._sputc) for _sputc
    printfa.o(i.__0vfprintf) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i.__0vfprintf) refers to printfa.o(i._printf_core) for _printf_core
    printfa.o(i.__0vfprintf) refers to log.o(i.fputc) for fputc
    printfa.o(i.__0vprintf) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i.__0vprintf) refers to printfa.o(i._printf_core) for _printf_core
    printfa.o(i.__0vprintf) refers to log.o(i.fputc) for fputc
    printfa.o(i.__0vprintf) refers to stdout.o(.data) for __stdout
    printfa.o(i.__0vsnprintf) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i.__0vsnprintf) refers to printfa.o(i._printf_core) for _printf_core
    printfa.o(i.__0vsnprintf) refers to printfa.o(i._snputc) for _snputc
    printfa.o(i.__0vsprintf) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i.__0vsprintf) refers to printfa.o(i._printf_core) for _printf_core
    printfa.o(i.__0vsprintf) refers to printfa.o(i._sputc) for _sputc
    printfa.o(i._fp_digits) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i._fp_digits) refers to dmul.o(.text) for __aeabi_dmul
    printfa.o(i._fp_digits) refers to ddiv.o(.text) for __aeabi_ddiv
    printfa.o(i._fp_digits) refers to cdrcmple.o(.text) for __aeabi_cdrcmple
    printfa.o(i._fp_digits) refers to dadd.o(.text) for __aeabi_dadd
    printfa.o(i._fp_digits) refers to dfixul.o(.text) for __aeabi_d2ulz
    printfa.o(i._fp_digits) refers to uldiv.o(.text) for __aeabi_uldivmod
    printfa.o(i._printf_core) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i._printf_core) refers to printfa.o(i._printf_pre_padding) for _printf_pre_padding
    printfa.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod
    printfa.o(i._printf_core) refers to printfa.o(i._printf_post_padding) for _printf_post_padding
    printfa.o(i._printf_core) refers to printfa.o(i._fp_digits) for _fp_digits
    printfa.o(i._printf_core) refers to uidiv.o(.text) for __aeabi_uidivmod
    printfa.o(i._printf_post_padding) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i._printf_pre_padding) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i._snputc) refers (Special) to iusefp.o(.text) for __I$use$fp
    printfa.o(i._sputc) refers (Special) to iusefp.o(.text) for __I$use$fp
    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
    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
    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
    scanf_fp.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    scanf_fp.o(.text) refers to dfltul.o(.text) for __aeabi_ul2d
    scanf_fp.o(.text) refers to dmul.o(.text) for __aeabi_dmul
    scanf_fp.o(.text) refers to ddiv.o(.text) for __aeabi_ddiv
    scanf_fp.o(.text) refers to scanf_fp.o(i._is_digit) for _is_digit
    scanf_fp.o(.text) refers to d2f.o(.text) for __aeabi_d2f
    strtol.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    strtol.o(.text) refers to _strtoul.o(.text) for _strtoul
    strtol.o(.text) refers to errno.o(i.__aeabi_errno_addr) for __aeabi_errno_addr
    fmul.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    fdiv.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    fdiv.o(.text) refers to fepilogue.o(.text) for _float_round
    dadd.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    dadd.o(.text) refers to llshl.o(.text) for __aeabi_llsl
    dadd.o(.text) refers to llsshr.o(.text) for __aeabi_lasr
    dadd.o(.text) refers to depilogue.o(.text) for _double_epilogue
    dmul.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    dmul.o(.text) refers to depilogue.o(.text) for _double_epilogue
    ddiv.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    ddiv.o(.text) refers to depilogue.o(.text) for _double_round
    fflti.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    fflti.o(.text) refers to fepilogue.o(.text) for _float_epilogue
    ffltui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    ffltui.o(.text) refers to fepilogue.o(.text) for _float_epilogue
    dflti.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    dflti.o(.text) refers to depilogue.o(.text) for _double_epilogue
    dfltui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    dfltui.o(.text) refers to depilogue.o(.text) for _double_epilogue
    ffixi.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    dfixi.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    dfixi.o(.text) refers to llushr.o(.text) for __aeabi_llsr
    f2d.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    cdcmple.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    cdrcmple.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    d2f.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
    d2f.o(.text) refers to fepilogue.o(.text) for _float_round
    dunder.o(i.__mathlib_dbl_divzero) refers to ddiv.o(.text) for __aeabi_ddiv
    dunder.o(i.__mathlib_dbl_infnan) refers to dscalb.o(.text) for __ARM_scalbn
    dunder.o(i.__mathlib_dbl_infnan2) refers to dadd.o(.text) for __aeabi_dadd
    dunder.o(i.__mathlib_dbl_invalid) refers to ddiv.o(.text) for __aeabi_ddiv
    dunder.o(i.__mathlib_dbl_overflow) refers to dscalb.o(.text) for __ARM_scalbn
    dunder.o(i.__mathlib_dbl_posinfnan) refers to dmul.o(.text) for __aeabi_dmul
    dunder.o(i.__mathlib_dbl_underflow) refers to dscalb.o(.text) for __ARM_scalbn
    fpclassify.o(i.__ARM_fpclassify) refers (Special) to iusefp.o(.text) for __I$use$fp
    poly.o(i.__kernel_poly) refers (Special) to iusefp.o(.text) for __I$use$fp
    poly.o(i.__kernel_poly) refers to dmul.o(.text) for __aeabi_dmul
    poly.o(i.__kernel_poly) refers to dadd.o(.text) for __aeabi_dadd
    qnan.o(.constdata) refers (Special) to iusefp.o(.text) for __I$use$fp
    sqrt.o(i.__softfp_sqrt) refers (Special) to iusefp.o(.text) for __I$use$fp
    sqrt.o(i.__softfp_sqrt) refers to dsqrt.o(.text) for _dsqrt
    sqrt.o(i.__softfp_sqrt) refers to errno.o(i.__set_errno) for __set_errno
    sqrt.o(i.sqrt) refers (Special) to iusefp.o(.text) for __I$use$fp
    sqrt.o(i.sqrt) refers to dsqrt.o(.text) for _dsqrt
    sqrt.o(i.sqrt) refers to errno.o(i.__set_errno) for __set_errno
    sqrt_x.o(i.____softfp_sqrt$lsc) refers (Special) to iusefp.o(.text) for __I$use$fp
    sqrt_x.o(i.____softfp_sqrt$lsc) refers to cdcmple.o(.text) for __aeabi_cdcmple
    sqrt_x.o(i.____softfp_sqrt$lsc) refers to errno.o(i.__set_errno) for __set_errno
    sqrt_x.o(i.____softfp_sqrt$lsc) refers to dsqrt.o(.text) for _dsqrt
    sqrt_x.o(i.__sqrt$lsc) refers (Special) to iusefp.o(.text) for __I$use$fp
    sqrt_x.o(i.__sqrt$lsc) refers to cdcmple.o(.text) for __aeabi_cdcmple
    sqrt_x.o(i.__sqrt$lsc) refers to errno.o(i.__set_errno) for __set_errno
    sqrt_x.o(i.__sqrt$lsc) refers to dsqrt.o(.text) for _dsqrt
    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
    uldiv.o(.text) refers to llushr.o(.text) for __aeabi_llsr
    uldiv.o(.text) refers to llshl.o(.text) for __aeabi_llsl
    ctype_o.o(.text) refers to ctype_o.o(.constdata) for .constdata
    ctype_o.o(.constdata) refers to ctype_o.o(.constdata) for __ctype_table
    isalnum_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    isalpha_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    isblank_o.o(.text) refers to ctype_o.o(.constdata) for __ctype_table
    iscntrl_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    isdigit_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    isgraph_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    islower_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    isprint_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    ispunct_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    isspace_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    isupper_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    isxdigit_o.o(.text) refers to ctype_o.o(.text) for __rt_ctype_table
    errno.o(i.__aeabi_errno_addr) refers to errno.o(.data) for .data
    errno.o(i.__read_errno) refers to errno.o(.data) for .data
    errno.o(i.__set_errno) refers to errno.o(.data) for .data
    scanf_char.o(.text) refers to _scanf.o(.text) for __vfscanf
    scanf_char.o(.text) refers to isspace_o.o(.text) for isspace
    _strtoul.o(.text) refers to _chval.o(.text) for _chval
    _strtoul.o(.text) refers to errno.o(i.__aeabi_errno_addr) for __aeabi_errno_addr
    strtod.o(.text) refers to scanf_fp.o(.text) for _scanf_real
    strtod.o(.text) refers to _sgetc.o(.text) for _sgetc
    strtod.o(.text) refers to isspace_o.o(.text) for isspace
    depilogue.o(.text) refers to llshl.o(.text) for __aeabi_llsl
    depilogue.o(.text) refers to llushr.o(.text) for __aeabi_llsr
    dfltul.o(.text) refers to depilogue.o(.text) for _double_epilogue
    dfixul.o(.text) refers to llushr.o(.text) for __aeabi_llsr
    dfixul.o(.text) refers to llshl.o(.text) for __aeabi_llsl
    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_fp.o(.text) for _scanf_real
    _scanf.o(.text) refers (Weak) to _scanf_int.o(.text) for _scanf_int
    _scanf.o(.text) refers (Weak) to _scanf_str.o(.text) for _scanf_string
    dsqrt.o(.text) refers to llushr.o(.text) for __aeabi_llsr
    dsqrt.o(.text) refers to depilogue.o(.text) for _double_round
    ctype_c.o(.text) refers to ctype_c.o(.constdata) for .constdata
    scanf_fp.o(i._is_digit) refers (Special) to iusefp.o(.text) for __I$use$fp


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

Removing Unused input sections from the image.

    Removing system_gd32f10x.o(.rev16_text), (4 bytes).
    Removing system_gd32f10x.o(.revsh_text), (4 bytes).
    Removing gd32f10x_it.o(.rev16_text), (4 bytes).
    Removing gd32f10x_it.o(.revsh_text), (4 bytes).
    Removing systick.o(.rev16_text), (4 bytes).
    Removing systick.o(.revsh_text), (4 bytes).
    Removing log.o(.rev16_text), (4 bytes).
    Removing log.o(.revsh_text), (4 bytes).
    Removing ec800m.o(.rev16_text), (4 bytes).
    Removing ec800m.o(.revsh_text), (4 bytes).
    Removing device_message.o(.rev16_text), (4 bytes).
    Removing device_message.o(.revsh_text), (4 bytes).
    Removing device_message.o(i.addGatewayParamsJson), (2 bytes).
    Removing parsedevicemessage.o(.rev16_text), (4 bytes).
    Removing parsedevicemessage.o(.revsh_text), (4 bytes).
    Removing parsedevicemessage.o(i.compareWithLastData), (36 bytes).
    Removing mmodbus.o(.rev16_text), (4 bytes).
    Removing mmodbus.o(.revsh_text), (4 bytes).
    Removing mmodbus.o(i.mmodbus_readCoil), (22 bytes).
    Removing mmodbus.o(i.mmodbus_readDiscreteInput), (22 bytes).
    Removing mmodbus.o(i.mmodbus_readDiscreteInputs), (220 bytes).
    Removing mmodbus.o(i.mmodbus_readHoldingRegister16i), (22 bytes).
    Removing mmodbus.o(i.mmodbus_readHoldingRegister32f), (22 bytes).
    Removing mmodbus.o(i.mmodbus_readHoldingRegister32i), (22 bytes).
    Removing mmodbus.o(i.mmodbus_readHoldingRegisters32f), (228 bytes).
    Removing mmodbus.o(i.mmodbus_readHoldingRegisters32i), (28 bytes).
    Removing mmodbus.o(i.mmodbus_readInputRegister16i), (22 bytes).
    Removing mmodbus.o(i.mmodbus_readInputRegister32f), (22 bytes).
    Removing mmodbus.o(i.mmodbus_readInputRegister32i), (22 bytes).
    Removing mmodbus.o(i.mmodbus_readInputRegisters16i), (144 bytes).
    Removing mmodbus.o(i.mmodbus_readInputRegisters32f), (228 bytes).
    Removing mmodbus.o(i.mmodbus_readInputRegisters32i), (28 bytes).
    Removing mmodbus.o(i.mmodbus_readInputRegisters8i), (220 bytes).
    Removing mmodbus.o(i.mmodbus_set32bitOrder), (12 bytes).
    Removing mmodbus.o(i.mmodbus_writeHoldingRegisters16i), (336 bytes).
    Removing mqttrecv.o(.rev16_text), (4 bytes).
    Removing mqttrecv.o(.revsh_text), (4 bytes).
    Removing main.o(.rev16_text), (4 bytes).
    Removing main.o(.revsh_text), (4 bytes).
    Removing main.o(i.fwdgt_init), (26 bytes).
    Removing pc.o(.rev16_text), (4 bytes).
    Removing pc.o(.revsh_text), (4 bytes).
    Removing pc.o(i.WaitField), (84 bytes).
    Removing pc.o(i.readGatewayMessage), (192 bytes).
    Removing pc.o(i.readSIMCARD), (656 bytes).
    Removing pc.o(.conststring), (271 bytes).
    Removing otaevent.o(.rev16_text), (4 bytes).
    Removing otaevent.o(.revsh_text), (4 bytes).
    Removing gd32f10x_adc.o(.rev16_text), (4 bytes).
    Removing gd32f10x_adc.o(.revsh_text), (4 bytes).
    Removing gd32f10x_adc.o(i.adc_calibration_enable), (42 bytes).
    Removing gd32f10x_adc.o(i.adc_channel_length_config), (70 bytes).
    Removing gd32f10x_adc.o(i.adc_data_alignment_config), (22 bytes).
    Removing gd32f10x_adc.o(i.adc_deinit), (88 bytes).
    Removing gd32f10x_adc.o(i.adc_disable), (10 bytes).
    Removing gd32f10x_adc.o(i.adc_discontinuous_mode_config), (76 bytes).
    Removing gd32f10x_adc.o(i.adc_dma_mode_disable), (10 bytes).
    Removing gd32f10x_adc.o(i.adc_dma_mode_enable), (10 bytes).
    Removing gd32f10x_adc.o(i.adc_enable), (18 bytes).
    Removing gd32f10x_adc.o(i.adc_external_trigger_config), (62 bytes).
    Removing gd32f10x_adc.o(i.adc_external_trigger_source_config), (48 bytes).
    Removing gd32f10x_adc.o(i.adc_flag_clear), (8 bytes).
    Removing gd32f10x_adc.o(i.adc_flag_get), (14 bytes).
    Removing gd32f10x_adc.o(i.adc_inserted_channel_config), (120 bytes).
    Removing gd32f10x_adc.o(i.adc_inserted_channel_offset_config), (36 bytes).
    Removing gd32f10x_adc.o(i.adc_inserted_data_read), (46 bytes).
    Removing gd32f10x_adc.o(i.adc_inserted_software_startconv_flag_get), (16 bytes).
    Removing gd32f10x_adc.o(i.adc_interrupt_disable), (44 bytes).
    Removing gd32f10x_adc.o(i.adc_interrupt_enable), (44 bytes).
    Removing gd32f10x_adc.o(i.adc_interrupt_flag_clear), (8 bytes).
    Removing gd32f10x_adc.o(i.adc_interrupt_flag_get), (88 bytes).
    Removing gd32f10x_adc.o(i.adc_mode_config), (28 bytes).
    Removing gd32f10x_adc.o(i.adc_regular_channel_config), (172 bytes).
    Removing gd32f10x_adc.o(i.adc_regular_data_read), (8 bytes).
    Removing gd32f10x_adc.o(i.adc_regular_software_startconv_flag_get), (16 bytes).
    Removing gd32f10x_adc.o(i.adc_software_trigger_enable), (30 bytes).
    Removing gd32f10x_adc.o(i.adc_special_function_config), (90 bytes).
    Removing gd32f10x_adc.o(i.adc_sync_mode_convert_value_read), (12 bytes).
    Removing gd32f10x_adc.o(i.adc_tempsensor_vrefint_disable), (20 bytes).
    Removing gd32f10x_adc.o(i.adc_tempsensor_vrefint_enable), (20 bytes).
    Removing gd32f10x_adc.o(i.adc_watchdog_disable), (16 bytes).
    Removing gd32f10x_adc.o(i.adc_watchdog_group_channel_enable), (64 bytes).
    Removing gd32f10x_adc.o(i.adc_watchdog_single_channel_enable), (32 bytes).
    Removing gd32f10x_adc.o(i.adc_watchdog_threshold_config), (14 bytes).
    Removing gd32f10x_bkp.o(.rev16_text), (4 bytes).
    Removing gd32f10x_bkp.o(.revsh_text), (4 bytes).
    Removing gd32f10x_bkp.o(i.bkp_data_read), (56 bytes).
    Removing gd32f10x_bkp.o(i.bkp_data_write), (52 bytes).
    Removing gd32f10x_bkp.o(i.bkp_deinit), (12 bytes).
    Removing gd32f10x_bkp.o(i.bkp_flag_clear), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_flag_get), (24 bytes).
    Removing gd32f10x_bkp.o(i.bkp_interrupt_disable), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_interrupt_enable), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_interrupt_flag_clear), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_interrupt_flag_get), (24 bytes).
    Removing gd32f10x_bkp.o(i.bkp_rtc_calibration_output_disable), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_rtc_calibration_output_enable), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_rtc_calibration_value_set), (28 bytes).
    Removing gd32f10x_bkp.o(i.bkp_rtc_output_select), (28 bytes).
    Removing gd32f10x_bkp.o(i.bkp_rtc_signal_output_disable), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_rtc_signal_output_enable), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_tamper_active_level_set), (28 bytes).
    Removing gd32f10x_bkp.o(i.bkp_tamper_detection_disable), (20 bytes).
    Removing gd32f10x_bkp.o(i.bkp_tamper_detection_enable), (20 bytes).
    Removing gd32f10x_can.o(.rev16_text), (4 bytes).
    Removing gd32f10x_can.o(.revsh_text), (4 bytes).
    Removing gd32f10x_can.o(i.can1_filter_start_bank), (56 bytes).
    Removing gd32f10x_can.o(i.can_debug_freeze_disable), (32 bytes).
    Removing gd32f10x_can.o(i.can_debug_freeze_enable), (32 bytes).
    Removing gd32f10x_can.o(i.can_deinit), (32 bytes).
    Removing gd32f10x_can.o(i.can_error_get), (12 bytes).
    Removing gd32f10x_can.o(i.can_fifo_release), (32 bytes).
    Removing gd32f10x_can.o(i.can_filter_init), (272 bytes).
    Removing gd32f10x_can.o(i.can_flag_clear), (52 bytes).
    Removing gd32f10x_can.o(i.can_flag_get), (30 bytes).
    Removing gd32f10x_can.o(i.can_init), (290 bytes).
    Removing gd32f10x_can.o(i.can_interrupt_disable), (8 bytes).
    Removing gd32f10x_can.o(i.can_interrupt_enable), (8 bytes).
    Removing gd32f10x_can.o(i.can_interrupt_flag_clear), (56 bytes).
    Removing gd32f10x_can.o(i.can_interrupt_flag_get), (116 bytes).
    Removing gd32f10x_can.o(i.can_message_receive), (228 bytes).
    Removing gd32f10x_can.o(i.can_message_transmit), (336 bytes).
    Removing gd32f10x_can.o(i.can_receive_error_number_get), (8 bytes).
    Removing gd32f10x_can.o(i.can_receive_message_length_get), (26 bytes).
    Removing gd32f10x_can.o(i.can_struct_para_init), (158 bytes).
    Removing gd32f10x_can.o(i.can_time_trigger_mode_disable), (48 bytes).
    Removing gd32f10x_can.o(i.can_time_trigger_mode_enable), (48 bytes).
    Removing gd32f10x_can.o(i.can_transmission_stop), (80 bytes).
    Removing gd32f10x_can.o(i.can_transmit_error_number_get), (10 bytes).
    Removing gd32f10x_can.o(i.can_transmit_states), (124 bytes).
    Removing gd32f10x_can.o(i.can_wakeup), (48 bytes).
    Removing gd32f10x_can.o(i.can_working_mode_set), (168 bytes).
    Removing gd32f10x_crc.o(.rev16_text), (4 bytes).
    Removing gd32f10x_crc.o(.revsh_text), (4 bytes).
    Removing gd32f10x_crc.o(i.crc_block_data_calculate), (36 bytes).
    Removing gd32f10x_crc.o(i.crc_data_register_read), (12 bytes).
    Removing gd32f10x_crc.o(i.crc_data_register_reset), (20 bytes).
    Removing gd32f10x_crc.o(i.crc_deinit), (24 bytes).
    Removing gd32f10x_crc.o(i.crc_free_data_register_read), (12 bytes).
    Removing gd32f10x_crc.o(i.crc_free_data_register_write), (12 bytes).
    Removing gd32f10x_crc.o(i.crc_single_data_calculate), (16 bytes).
    Removing gd32f10x_dac.o(.rev16_text), (4 bytes).
    Removing gd32f10x_dac.o(.revsh_text), (4 bytes).
    Removing gd32f10x_dac.o(i.dac_concurrent_data_set), (64 bytes).
    Removing gd32f10x_dac.o(i.dac_concurrent_disable), (24 bytes).
    Removing gd32f10x_dac.o(i.dac_concurrent_enable), (24 bytes).
    Removing gd32f10x_dac.o(i.dac_concurrent_output_buffer_disable), (24 bytes).
    Removing gd32f10x_dac.o(i.dac_concurrent_output_buffer_enable), (24 bytes).
    Removing gd32f10x_dac.o(i.dac_concurrent_software_trigger_disable), (20 bytes).
    Removing gd32f10x_dac.o(i.dac_concurrent_software_trigger_enable), (20 bytes).
    Removing gd32f10x_dac.o(i.dac_data_set), (88 bytes).
    Removing gd32f10x_dac.o(i.dac_deinit), (20 bytes).
    Removing gd32f10x_dac.o(i.dac_disable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_dma_disable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_dma_enable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_enable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_lfsr_noise_config), (52 bytes).
    Removing gd32f10x_dac.o(i.dac_output_buffer_disable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_output_buffer_enable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_output_value_get), (28 bytes).
    Removing gd32f10x_dac.o(i.dac_software_trigger_disable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_software_trigger_enable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_triangle_noise_config), (52 bytes).
    Removing gd32f10x_dac.o(i.dac_trigger_disable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_trigger_enable), (36 bytes).
    Removing gd32f10x_dac.o(i.dac_trigger_source_config), (52 bytes).
    Removing gd32f10x_dac.o(i.dac_wave_bit_width_config), (52 bytes).
    Removing gd32f10x_dac.o(i.dac_wave_mode_config), (52 bytes).
    Removing gd32f10x_dbg.o(.rev16_text), (4 bytes).
    Removing gd32f10x_dbg.o(.revsh_text), (4 bytes).
    Removing gd32f10x_dbg.o(i.dbg_id_get), (12 bytes).
    Removing gd32f10x_dbg.o(i.dbg_low_power_disable), (16 bytes).
    Removing gd32f10x_dbg.o(i.dbg_low_power_enable), (16 bytes).
    Removing gd32f10x_dbg.o(i.dbg_periph_disable), (16 bytes).
    Removing gd32f10x_dbg.o(i.dbg_periph_enable), (16 bytes).
    Removing gd32f10x_dbg.o(i.dbg_trace_pin_disable), (20 bytes).
    Removing gd32f10x_dbg.o(i.dbg_trace_pin_enable), (20 bytes).
    Removing gd32f10x_dbg.o(i.dbg_trace_pin_mode_set), (28 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_enet.o(.rev16_text), (4 bytes).
    Removing gd32f10x_enet.o(.revsh_text), (4 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_interrupt_disable), (16 bytes).
    Removing gd32f10x_exti.o(i.exti_interrupt_enable), (16 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_exmc.o(.rev16_text), (4 bytes).
    Removing gd32f10x_exmc.o(.revsh_text), (4 bytes).
    Removing gd32f10x_exmc.o(i.exmc_ecc_get), (12 bytes).
    Removing gd32f10x_exmc.o(i.exmc_flag_clear), (20 bytes).
    Removing gd32f10x_exmc.o(i.exmc_flag_get), (28 bytes).
    Removing gd32f10x_exmc.o(i.exmc_interrupt_disable), (20 bytes).
    Removing gd32f10x_exmc.o(i.exmc_interrupt_enable), (20 bytes).
    Removing gd32f10x_exmc.o(i.exmc_interrupt_flag_clear), (22 bytes).
    Removing gd32f10x_exmc.o(i.exmc_interrupt_flag_get), (38 bytes).
    Removing gd32f10x_exmc.o(i.exmc_nand_deinit), (42 bytes).
    Removing gd32f10x_exmc.o(i.exmc_nand_disable), (22 bytes).
    Removing gd32f10x_exmc.o(i.exmc_nand_ecc_config), (48 bytes).
    Removing gd32f10x_exmc.o(i.exmc_nand_enable), (22 bytes).
    Removing gd32f10x_exmc.o(i.exmc_nand_init), (174 bytes).
    Removing gd32f10x_exmc.o(i.exmc_nand_struct_para_init), (54 bytes).
    Removing gd32f10x_exmc.o(i.exmc_norsram_deinit), (52 bytes).
    Removing gd32f10x_exmc.o(i.exmc_norsram_disable), (22 bytes).
    Removing gd32f10x_exmc.o(i.exmc_norsram_enable), (22 bytes).
    Removing gd32f10x_exmc.o(i.exmc_norsram_init), (268 bytes).
    Removing gd32f10x_exmc.o(i.exmc_norsram_struct_para_init), (106 bytes).
    Removing gd32f10x_exmc.o(i.exmc_pccard_deinit), (40 bytes).
    Removing gd32f10x_exmc.o(i.exmc_pccard_disable), (24 bytes).
    Removing gd32f10x_exmc.o(i.exmc_pccard_enable), (24 bytes).
    Removing gd32f10x_exmc.o(i.exmc_pccard_init), (192 bytes).
    Removing gd32f10x_exmc.o(i.exmc_pccard_struct_para_init), (60 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_ready_wait), (34 bytes).
    Removing gd32f10x_fmc.o(i.fmc_bank0_state_get), (48 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_ready_wait), (34 bytes).
    Removing gd32f10x_fmc.o(i.fmc_bank1_state_get), (48 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_lock), (44 bytes).
    Removing gd32f10x_fmc.o(i.fmc_mass_erase), (196 bytes).
    Removing gd32f10x_fmc.o(i.fmc_page_erase), (236 bytes).
    Removing gd32f10x_fmc.o(i.fmc_unlock), (68 bytes).
    Removing gd32f10x_fmc.o(i.fmc_word_program), (192 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_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_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_deinit), (196 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_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_i2c.o(.rev16_text), (4 bytes).
    Removing gd32f10x_i2c.o(.revsh_text), (4 bytes).
    Removing gd32f10x_i2c.o(i.i2c_ack_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_ackpos_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_clock_config), (228 bytes).
    Removing gd32f10x_i2c.o(i.i2c_data_receive), (8 bytes).
    Removing gd32f10x_i2c.o(i.i2c_data_transmit), (6 bytes).
    Removing gd32f10x_i2c.o(i.i2c_deinit), (64 bytes).
    Removing gd32f10x_i2c.o(i.i2c_disable), (10 bytes).
    Removing gd32f10x_i2c.o(i.i2c_dma_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_dma_last_transfer_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_dualaddr_disable), (10 bytes).
    Removing gd32f10x_i2c.o(i.i2c_dualaddr_enable), (12 bytes).
    Removing gd32f10x_i2c.o(i.i2c_enable), (10 bytes).
    Removing gd32f10x_i2c.o(i.i2c_flag_clear), (40 bytes).
    Removing gd32f10x_i2c.o(i.i2c_flag_get), (30 bytes).
    Removing gd32f10x_i2c.o(i.i2c_interrupt_disable), (26 bytes).
    Removing gd32f10x_i2c.o(i.i2c_interrupt_enable), (26 bytes).
    Removing gd32f10x_i2c.o(i.i2c_interrupt_flag_clear), (44 bytes).
    Removing gd32f10x_i2c.o(i.i2c_interrupt_flag_get), (92 bytes).
    Removing gd32f10x_i2c.o(i.i2c_master_addressing), (20 bytes).
    Removing gd32f10x_i2c.o(i.i2c_mode_addr_config), (28 bytes).
    Removing gd32f10x_i2c.o(i.i2c_pec_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_pec_transfer_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_pec_value_get), (10 bytes).
    Removing gd32f10x_i2c.o(i.i2c_slave_response_to_gcall_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_smbus_alert_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_smbus_arp_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_smbus_type_config), (24 bytes).
    Removing gd32f10x_i2c.o(i.i2c_software_reset_config), (16 bytes).
    Removing gd32f10x_i2c.o(i.i2c_start_on_bus), (10 bytes).
    Removing gd32f10x_i2c.o(i.i2c_stop_on_bus), (10 bytes).
    Removing gd32f10x_i2c.o(i.i2c_stretch_scl_low_config), (16 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_misc.o(i.systick_clksource_set), (40 bytes).
    Removing gd32f10x_pmu.o(.rev16_text), (4 bytes).
    Removing gd32f10x_pmu.o(.revsh_text), (4 bytes).
    Removing gd32f10x_pmu.o(i.pmu_backup_write_disable), (20 bytes).
    Removing gd32f10x_pmu.o(i.pmu_backup_write_enable), (20 bytes).
    Removing gd32f10x_pmu.o(i.pmu_deinit), (20 bytes).
    Removing gd32f10x_pmu.o(i.pmu_flag_clear), (48 bytes).
    Removing gd32f10x_pmu.o(i.pmu_flag_get), (24 bytes).
    Removing gd32f10x_pmu.o(i.pmu_lvd_disable), (20 bytes).
    Removing gd32f10x_pmu.o(i.pmu_lvd_select), (48 bytes).
    Removing gd32f10x_pmu.o(i.pmu_to_deepsleepmode), (196 bytes).
    Removing gd32f10x_pmu.o(i.pmu_to_sleepmode), (28 bytes).
    Removing gd32f10x_pmu.o(i.pmu_to_standbymode), (100 bytes).
    Removing gd32f10x_pmu.o(i.pmu_wakeup_pin_disable), (20 bytes).
    Removing gd32f10x_pmu.o(i.pmu_wakeup_pin_enable), (20 bytes).
    Removing gd32f10x_pmu.o(.bss), (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_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_rtc.o(.rev16_text), (4 bytes).
    Removing gd32f10x_rtc.o(.revsh_text), (4 bytes).
    Removing gd32f10x_rtc.o(i.rtc_alarm_config), (32 bytes).
    Removing gd32f10x_rtc.o(i.rtc_configuration_mode_enter), (20 bytes).
    Removing gd32f10x_rtc.o(i.rtc_configuration_mode_exit), (20 bytes).
    Removing gd32f10x_rtc.o(i.rtc_counter_get), (20 bytes).
    Removing gd32f10x_rtc.o(i.rtc_counter_set), (32 bytes).
    Removing gd32f10x_rtc.o(i.rtc_divider_get), (24 bytes).
    Removing gd32f10x_rtc.o(i.rtc_flag_clear), (16 bytes).
    Removing gd32f10x_rtc.o(i.rtc_flag_get), (24 bytes).
    Removing gd32f10x_rtc.o(i.rtc_interrupt_disable), (16 bytes).
    Removing gd32f10x_rtc.o(i.rtc_interrupt_enable), (16 bytes).
    Removing gd32f10x_rtc.o(i.rtc_interrupt_flag_clear), (16 bytes).
    Removing gd32f10x_rtc.o(i.rtc_interrupt_flag_get), (24 bytes).
    Removing gd32f10x_rtc.o(i.rtc_lwoff_wait), (20 bytes).
    Removing gd32f10x_rtc.o(i.rtc_prescaler_set), (32 bytes).
    Removing gd32f10x_rtc.o(i.rtc_register_sync_wait), (32 bytes).
    Removing gd32f10x_sdio.o(.rev16_text), (4 bytes).
    Removing gd32f10x_sdio.o(.revsh_text), (4 bytes).
    Removing gd32f10x_sdio.o(i.sdio_bus_mode_set), (28 bytes).
    Removing gd32f10x_sdio.o(i.sdio_ceata_command_completion_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_ceata_command_completion_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_ceata_command_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_ceata_command_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_ceata_interrupt_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_ceata_interrupt_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_clock_config), (36 bytes).
    Removing gd32f10x_sdio.o(i.sdio_clock_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_clock_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_command_index_get), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_command_response_config), (44 bytes).
    Removing gd32f10x_sdio.o(i.sdio_csm_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_csm_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_data_config), (52 bytes).
    Removing gd32f10x_sdio.o(i.sdio_data_counter_get), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_data_read), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_data_transfer_config), (28 bytes).
    Removing gd32f10x_sdio.o(i.sdio_data_write), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_deinit), (28 bytes).
    Removing gd32f10x_sdio.o(i.sdio_dma_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_dma_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_dsm_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_dsm_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_fifo_counter_get), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_flag_clear), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_flag_get), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_hardware_clock_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_hardware_clock_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_interrupt_disable), (16 bytes).
    Removing gd32f10x_sdio.o(i.sdio_interrupt_enable), (16 bytes).
    Removing gd32f10x_sdio.o(i.sdio_interrupt_flag_clear), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_interrupt_flag_get), (24 bytes).
    Removing gd32f10x_sdio.o(i.sdio_operation_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_operation_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_power_state_get), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_power_state_set), (12 bytes).
    Removing gd32f10x_sdio.o(i.sdio_readwait_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_readwait_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_readwait_type_set), (40 bytes).
    Removing gd32f10x_sdio.o(i.sdio_response_get), (56 bytes).
    Removing gd32f10x_sdio.o(i.sdio_stop_readwait_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_stop_readwait_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_suspend_disable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_suspend_enable), (20 bytes).
    Removing gd32f10x_sdio.o(i.sdio_wait_type_set), (28 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_timer.o(.rev16_text), (4 bytes).
    Removing gd32f10x_timer.o(.revsh_text), (4 bytes).
    Removing gd32f10x_timer.o(i.timer_auto_reload_shadow_disable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_auto_reload_shadow_enable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_automatic_output_disable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_automatic_output_enable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_autoreload_value_config), (4 bytes).
    Removing gd32f10x_timer.o(i.timer_break_config), (30 bytes).
    Removing gd32f10x_timer.o(i.timer_break_disable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_break_enable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_break_struct_para_init), (18 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_capture_value_register_read), (42 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_complementary_output_polarity_config), (70 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_complementary_output_state_config), (70 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_control_shadow_config), (24 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_control_shadow_update_config), (26 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_dma_request_source_select), (26 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_input_capture_prescaler_config), (90 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_input_struct_para_init), (16 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_clear_config), (90 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_config), (492 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_fast_config), (90 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_mode_config), (90 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_polarity_config), (92 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_pulse_value_config), (38 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_shadow_config), (90 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_state_config), (92 bytes).
    Removing gd32f10x_timer.o(i.timer_channel_output_struct_para_init), (16 bytes).
    Removing gd32f10x_timer.o(i.timer_counter_alignment), (16 bytes).
    Removing gd32f10x_timer.o(i.timer_counter_down_direction), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_counter_read), (8 bytes).
    Removing gd32f10x_timer.o(i.timer_counter_up_direction), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_counter_value_config), (4 bytes).
    Removing gd32f10x_timer.o(i.timer_deinit), (388 bytes).
    Removing gd32f10x_timer.o(i.timer_disable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_dma_disable), (8 bytes).
    Removing gd32f10x_timer.o(i.timer_dma_enable), (8 bytes).
    Removing gd32f10x_timer.o(i.timer_dma_transfer_config), (24 bytes).
    Removing gd32f10x_timer.o(i.timer_enable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_event_software_generate), (8 bytes).
    Removing gd32f10x_timer.o(i.timer_external_clock_mode0_config), (40 bytes).
    Removing gd32f10x_timer.o(i.timer_external_clock_mode1_config), (32 bytes).
    Removing gd32f10x_timer.o(i.timer_external_clock_mode1_disable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_external_trigger_as_external_clock_config), (166 bytes).
    Removing gd32f10x_timer.o(i.timer_external_trigger_config), (30 bytes).
    Removing gd32f10x_timer.o(i.timer_flag_clear), (6 bytes).
    Removing gd32f10x_timer.o(i.timer_flag_get), (16 bytes).
    Removing gd32f10x_timer.o(i.timer_hall_mode_config), (26 bytes).
    Removing gd32f10x_timer.o(i.timer_init), (224 bytes).
    Removing gd32f10x_timer.o(i.timer_input_capture_config), (326 bytes).
    Removing gd32f10x_timer.o(i.timer_input_pwm_capture_config), (356 bytes).
    Removing gd32f10x_timer.o(i.timer_input_trigger_source_select), (16 bytes).
    Removing gd32f10x_timer.o(i.timer_internal_clock_config), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_internal_trigger_as_external_clock_config), (32 bytes).
    Removing gd32f10x_timer.o(i.timer_interrupt_disable), (8 bytes).
    Removing gd32f10x_timer.o(i.timer_interrupt_enable), (8 bytes).
    Removing gd32f10x_timer.o(i.timer_interrupt_flag_clear), (6 bytes).
    Removing gd32f10x_timer.o(i.timer_interrupt_flag_get), (24 bytes).
    Removing gd32f10x_timer.o(i.timer_master_output_trigger_source_select), (16 bytes).
    Removing gd32f10x_timer.o(i.timer_master_slave_mode_config), (26 bytes).
    Removing gd32f10x_timer.o(i.timer_prescaler_config), (16 bytes).
    Removing gd32f10x_timer.o(i.timer_prescaler_read), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_primary_output_config), (24 bytes).
    Removing gd32f10x_timer.o(i.timer_quadrature_decoder_mode_config), (64 bytes).
    Removing gd32f10x_timer.o(i.timer_repetition_value_config), (4 bytes).
    Removing gd32f10x_timer.o(i.timer_single_pulse_mode_config), (26 bytes).
    Removing gd32f10x_timer.o(i.timer_slave_mode_select), (16 bytes).
    Removing gd32f10x_timer.o(i.timer_struct_para_init), (22 bytes).
    Removing gd32f10x_timer.o(i.timer_update_event_disable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_update_event_enable), (10 bytes).
    Removing gd32f10x_timer.o(i.timer_update_source_config), (26 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_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 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 led.o(.rev16_text), (4 bytes).
    Removing led.o(.revsh_text), (4 bytes).
    Removing led.o(i.gd_eval_led_off), (24 bytes).
    Removing led.o(i.gd_eval_led_on), (24 bytes).
    Removing spi.o(.rev16_text), (4 bytes).
    Removing spi.o(.revsh_text), (4 bytes).
    Removing spi.o(i.SPI0_Init), (104 bytes).
    Removing spi.o(i.SPI0_Read), (28 bytes).
    Removing usart.o(.rev16_text), (4 bytes).
    Removing usart.o(.revsh_text), (4 bytes).
    Removing usart.o(i.gd_485_DE_rx), (16 bytes).
    Removing usart.o(i.gd_com_232_Receive), (44 bytes).
    Removing usart.o(i.gd_com_232_send), (48 bytes).
    Removing usart.o(i.gd_com_485_send), (64 bytes).
    Removing ring_buffer.o(.rev16_text), (4 bytes).
    Removing ring_buffer.o(.revsh_text), (4 bytes).
    Removing w25q32.o(.rev16_text), (4 bytes).
    Removing w25q32.o(.revsh_text), (4 bytes).
    Removing w25q32.o(i.W25Q32_Init), (40 bytes).
    Removing w25q32.o(i.W25Q32_Read), (76 bytes).
    Removing key.o(.rev16_text), (4 bytes).
    Removing key.o(.revsh_text), (4 bytes).
    Removing cjson.o(i.add_item_to_array), (54 bytes).
    Removing cjson.o(i.add_item_to_object), (122 bytes).
    Removing cjson.o(i.cJSON_AddArrayToObject), (48 bytes).
    Removing cjson.o(i.cJSON_AddBoolToObject), (52 bytes).
    Removing cjson.o(i.cJSON_AddFalseToObject), (48 bytes).
    Removing cjson.o(i.cJSON_AddItemReferenceToArray), (36 bytes).
    Removing cjson.o(i.cJSON_AddItemReferenceToObject), (48 bytes).
    Removing cjson.o(i.cJSON_AddItemToArray), (16 bytes).
    Removing cjson.o(i.cJSON_AddItemToObject), (32 bytes).
    Removing cjson.o(i.cJSON_AddItemToObjectCS), (32 bytes).
    Removing cjson.o(i.cJSON_AddNullToObject), (48 bytes).
    Removing cjson.o(i.cJSON_AddNumberToObject), (60 bytes).
    Removing cjson.o(i.cJSON_AddObjectToObject), (48 bytes).
    Removing cjson.o(i.cJSON_AddRawToObject), (52 bytes).
    Removing cjson.o(i.cJSON_AddStringToObject), (52 bytes).
    Removing cjson.o(i.cJSON_AddTrueToObject), (48 bytes).
    Removing cjson.o(i.cJSON_Compare), (384 bytes).
    Removing cjson.o(i.cJSON_CreateArray), (24 bytes).
    Removing cjson.o(i.cJSON_CreateArrayReference), (36 bytes).
    Removing cjson.o(i.cJSON_CreateBool), (32 bytes).
    Removing cjson.o(i.cJSON_CreateDoubleArray), (106 bytes).
    Removing cjson.o(i.cJSON_CreateFalse), (24 bytes).
    Removing cjson.o(i.cJSON_CreateFloatArray), (110 bytes).
    Removing cjson.o(i.cJSON_CreateIntArray), (110 bytes).
    Removing cjson.o(i.cJSON_CreateNull), (24 bytes).
    Removing cjson.o(i.cJSON_CreateNumber), (100 bytes).
    Removing cjson.o(i.cJSON_CreateObject), (24 bytes).
    Removing cjson.o(i.cJSON_CreateObjectReference), (36 bytes).
    Removing cjson.o(i.cJSON_CreateRaw), (52 bytes).
    Removing cjson.o(i.cJSON_CreateString), (52 bytes).
    Removing cjson.o(i.cJSON_CreateStringArray), (100 bytes).
    Removing cjson.o(i.cJSON_CreateStringReference), (36 bytes).
    Removing cjson.o(i.cJSON_CreateTrue), (24 bytes).
    Removing cjson.o(i.cJSON_DeleteItemFromArray), (22 bytes).
    Removing cjson.o(i.cJSON_DeleteItemFromObject), (22 bytes).
    Removing cjson.o(i.cJSON_DeleteItemFromObjectCaseSensitive), (22 bytes).
    Removing cjson.o(i.cJSON_DetachItemFromArray), (34 bytes).
    Removing cjson.o(i.cJSON_DetachItemFromObject), (26 bytes).
    Removing cjson.o(i.cJSON_DetachItemFromObjectCaseSensitive), (26 bytes).
    Removing cjson.o(i.cJSON_DetachItemViaPointer), (64 bytes).
    Removing cjson.o(i.cJSON_Duplicate), (192 bytes).
    Removing cjson.o(i.cJSON_GetArrayItem), (24 bytes).
    Removing cjson.o(i.cJSON_GetArraySize), (28 bytes).
    Removing cjson.o(i.cJSON_GetErrorPtr), (16 bytes).
    Removing cjson.o(i.cJSON_GetNumberValue), (28 bytes).
    Removing cjson.o(i.cJSON_GetObjectItem), (18 bytes).
    Removing cjson.o(i.cJSON_GetStringValue), (20 bytes).
    Removing cjson.o(i.cJSON_HasObjectItem), (24 bytes).
    Removing cjson.o(i.cJSON_InitHooks), (100 bytes).
    Removing cjson.o(i.cJSON_InsertItemInArray), (70 bytes).
    Removing cjson.o(i.cJSON_IsArray), (22 bytes).
    Removing cjson.o(i.cJSON_IsBool), (24 bytes).
    Removing cjson.o(i.cJSON_IsFalse), (20 bytes).
    Removing cjson.o(i.cJSON_IsInvalid), (20 bytes).
    Removing cjson.o(i.cJSON_IsNull), (22 bytes).
    Removing cjson.o(i.cJSON_IsObject), (22 bytes).
    Removing cjson.o(i.cJSON_IsRaw), (22 bytes).
    Removing cjson.o(i.cJSON_IsTrue), (22 bytes).
    Removing cjson.o(i.cJSON_Minify), (154 bytes).
    Removing cjson.o(i.cJSON_ParseWithLength), (20 bytes).
    Removing cjson.o(i.cJSON_Print), (20 bytes).
    Removing cjson.o(i.cJSON_PrintBuffered), (96 bytes).
    Removing cjson.o(i.cJSON_PrintPreallocated), (68 bytes).
    Removing cjson.o(i.cJSON_PrintUnformatted), (20 bytes).
    Removing cjson.o(i.cJSON_ReplaceItemInArray), (42 bytes).
    Removing cjson.o(i.cJSON_ReplaceItemInObject), (22 bytes).
    Removing cjson.o(i.cJSON_ReplaceItemInObjectCaseSensitive), (22 bytes).
    Removing cjson.o(i.cJSON_ReplaceItemViaPointer), (96 bytes).
    Removing cjson.o(i.cJSON_SetNumberHelper), (84 bytes).
    Removing cjson.o(i.cJSON_SetValuestring), (100 bytes).
    Removing cjson.o(i.cJSON_Version), (40 bytes).
    Removing cjson.o(i.cJSON_free), (20 bytes).
    Removing cjson.o(i.cJSON_malloc), (20 bytes).
    Removing cjson.o(i.cJSON_strdup), (56 bytes).
    Removing cjson.o(i.cast_away_const), (2 bytes).
    Removing cjson.o(i.compare_double), (116 bytes).
    Removing cjson.o(i.create_reference), (60 bytes).
    Removing cjson.o(i.ensure), (184 bytes).
    Removing cjson.o(i.get_array_item), (30 bytes).
    Removing cjson.o(i.minify_string), (116 bytes).
    Removing cjson.o(i.print), (178 bytes).
    Removing cjson.o(i.print_array), (178 bytes).
    Removing cjson.o(i.print_number), (340 bytes).
    Removing cjson.o(i.print_object), (372 bytes).
    Removing cjson.o(i.print_string), (16 bytes).
    Removing cjson.o(i.print_string_ptr), (372 bytes).
    Removing cjson.o(i.print_value), (260 bytes).
    Removing cjson.o(i.replace_item_in_object), (96 bytes).
    Removing cjson.o(i.skip_multiline_comment), (50 bytes).
    Removing cjson.o(i.skip_oneline_comment), (42 bytes).
    Removing cjson.o(i.suffix_object), (6 bytes).
    Removing cjson.o(i.update_offset), (36 bytes).
    Removing cjson.o(.bss), (15 bytes).
    Removing dlt645.o(i.dlt645_set_debug), (8 bytes).
    Removing dlt645_2007.o(i.dlt645_write_data), (198 bytes).
    Removing dlt645_data.o(i.dec_to_bcd), (420 bytes).
    Removing dlt645_data.o(i.dlt645_data_parse_by_format_to_float_and_DATE), (140 bytes).
    Removing dlt645_data.o(i.str_to_bcd), (128 bytes).
    Removing dlt645_port.o(.rev16_text), (4 bytes).
    Removing dlt645_port.o(.revsh_text), (4 bytes).
    Removing fmul.o(.text), (100 bytes).
    Removing fdiv.o(.text), (124 bytes).
    Removing fflti.o(.text), (18 bytes).
    Removing ffixi.o(.text), (50 bytes).

707 unused section(s) (total 31070 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  isgraph_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  ispunct_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isspace_c.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isblank_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isalpha_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  ctype_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isalnum_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  ctype_c.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isdigit_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isxdigit_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isupper_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  iscntrl_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isspace_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  isprint_o.o ABSOLUTE
    ../clib/microlib/ctype/ctype.c           0x00000000   Number         0  islower_o.o ABSOLUTE
    ../clib/microlib/ctype/tolower.c         0x00000000   Number         0  tolower.o ABSOLUTE
    ../clib/microlib/division.c              0x00000000   Number         0  uldiv.o ABSOLUTE
    ../clib/microlib/division.c              0x00000000   Number         0  uidiv.o ABSOLUTE
    ../clib/microlib/errno.c                 0x00000000   Number         0  errno.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry11b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry12a.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  entry7b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry10a.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/init/entry.s            0x00000000   Number         0  entry9a.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry2.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry5.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry8b.o ABSOLUTE
    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry12b.o ABSOLUTE
    ../clib/microlib/longlong.c              0x00000000   Number         0  llsshr.o ABSOLUTE
    ../clib/microlib/longlong.c              0x00000000   Number         0  llshl.o ABSOLUTE
    ../clib/microlib/longlong.c              0x00000000   Number         0  llushr.o ABSOLUTE
    ../clib/microlib/malloc/malloc.c         0x00000000   Number         0  mallocra.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  malloc.o ABSOLUTE
    ../clib/microlib/malloc/mvars.c          0x00000000   Number         0  mvars.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printfb.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf0.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf1.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf2.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf4.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf5.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf6.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf8.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printfa.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf3.o ABSOLUTE
    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf7.o ABSOLUTE
    ../clib/microlib/printf/stubs.s          0x00000000   Number         0  stubs.o ABSOLUTE
    ../clib/microlib/stdio/streams.c         0x00000000   Number         0  stdout.o ABSOLUTE
    ../clib/microlib/string/memcmp.c         0x00000000   Number         0  memcmp.o ABSOLUTE
    ../clib/microlib/string/memcpy.c         0x00000000   Number         0  memcpyb.o ABSOLUTE
    ../clib/microlib/string/memcpy.c         0x00000000   Number         0  memcpya.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/strcmp.c         0x00000000   Number         0  strcmp.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/strncmp.c        0x00000000   Number         0  strncmp.o ABSOLUTE
    ../clib/microlib/string/strstr.c         0x00000000   Number         0  strstr.o ABSOLUTE
    ../clib/microlib/stubs.s                 0x00000000   Number         0  iusefp.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _sgetc.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  scanf_char.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _scanf.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _strtoul.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  strtol.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _scanf_int.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  __0sscanf.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  scanf_fp.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _chval.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  strtod.o ABSOLUTE
    ../clib/scanf.c                          0x00000000   Number         0  _scanf_str.o ABSOLUTE
    ../fplib/microlib/d2f.c                  0x00000000   Number         0  d2f.o ABSOLUTE
    ../fplib/microlib/f2d.c                  0x00000000   Number         0  f2d.o ABSOLUTE
    ../fplib/microlib/fpadd.c                0x00000000   Number         0  dadd.o ABSOLUTE
    ../fplib/microlib/fpdiv.c                0x00000000   Number         0  ddiv.o ABSOLUTE
    ../fplib/microlib/fpdiv.c                0x00000000   Number         0  fdiv.o ABSOLUTE
    ../fplib/microlib/fpepilogue.c           0x00000000   Number         0  fepilogue.o ABSOLUTE
    ../fplib/microlib/fpepilogue.c           0x00000000   Number         0  depilogue.o ABSOLUTE
    ../fplib/microlib/fpfix.c                0x00000000   Number         0  ffixi.o ABSOLUTE
    ../fplib/microlib/fpfix.c                0x00000000   Number         0  dfixi.o ABSOLUTE
    ../fplib/microlib/fpfix.c                0x00000000   Number         0  dfixul.o ABSOLUTE
    ../fplib/microlib/fpflt.c                0x00000000   Number         0  dfltui.o ABSOLUTE
    ../fplib/microlib/fpflt.c                0x00000000   Number         0  dfltul.o ABSOLUTE
    ../fplib/microlib/fpflt.c                0x00000000   Number         0  ffltui.o ABSOLUTE
    ../fplib/microlib/fpflt.c                0x00000000   Number         0  dflti.o ABSOLUTE
    ../fplib/microlib/fpflt.c                0x00000000   Number         0  fflti.o ABSOLUTE
    ../fplib/microlib/fpmul.c                0x00000000   Number         0  fmul.o ABSOLUTE
    ../fplib/microlib/fpmul.c                0x00000000   Number         0  dmul.o ABSOLUTE
    ../fplib/microlib/fpscalb.c              0x00000000   Number         0  dscalb.o ABSOLUTE
    ../fplib/microlib/fpsqrt.c               0x00000000   Number         0  dsqrt.o ABSOLUTE
    ../mathlib/dunder.c                      0x00000000   Number         0  dunder.o ABSOLUTE
    ../mathlib/fpclassify.c                  0x00000000   Number         0  fpclassify.o ABSOLUTE
    ../mathlib/poly.c                        0x00000000   Number         0  poly.o ABSOLUTE
    ../mathlib/pow.c                         0x00000000   Number         0  pow.o ABSOLUTE
    ../mathlib/pow.c                         0x00000000   Number         0  pow_x.o ABSOLUTE
    ../mathlib/qnan.c                        0x00000000   Number         0  qnan.o ABSOLUTE
    ../mathlib/sqrt.c                        0x00000000   Number         0  sqrt_x.o ABSOLUTE
    ../mathlib/sqrt.c                        0x00000000   Number         0  sqrt.o ABSOLUTE
    ../mathlib/strtod.c                      0x00000000   Number         0  strtod.o ABSOLUTE
    ..\App\PC.c                              0x00000000   Number         0  pc.o ABSOLUTE
    ..\App\device_message.c                  0x00000000   Number         0  device_message.o ABSOLUTE
    ..\App\ec800m.c                          0x00000000   Number         0  ec800m.o ABSOLUTE
    ..\App\gd32f10x_it.c                     0x00000000   Number         0  gd32f10x_it.o ABSOLUTE
    ..\App\log.c                             0x00000000   Number         0  log.o ABSOLUTE
    ..\App\main.c                            0x00000000   Number         0  main.o ABSOLUTE
    ..\App\mmodbus.c                         0x00000000   Number         0  mmodbus.o ABSOLUTE
    ..\App\mqttRecv.c                        0x00000000   Number         0  mqttrecv.o ABSOLUTE
    ..\App\otaEvent.c                        0x00000000   Number         0  otaevent.o ABSOLUTE
    ..\App\parseDeviceMessage.c              0x00000000   Number         0  parsedevicemessage.o ABSOLUTE
    ..\App\systick.c                         0x00000000   Number         0  systick.o ABSOLUTE
    ..\CMSIS\system_gd32f10x.c               0x00000000   Number         0  system_gd32f10x.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_adc.c        0x00000000   Number         0  gd32f10x_adc.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_bkp.c        0x00000000   Number         0  gd32f10x_bkp.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_can.c        0x00000000   Number         0  gd32f10x_can.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_crc.c        0x00000000   Number         0  gd32f10x_crc.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_dac.c        0x00000000   Number         0  gd32f10x_dac.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_dbg.c        0x00000000   Number         0  gd32f10x_dbg.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_dma.c        0x00000000   Number         0  gd32f10x_dma.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_enet.c       0x00000000   Number         0  gd32f10x_enet.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_exmc.c       0x00000000   Number         0  gd32f10x_exmc.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_exti.c       0x00000000   Number         0  gd32f10x_exti.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_fmc.c        0x00000000   Number         0  gd32f10x_fmc.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_fwdgt.c      0x00000000   Number         0  gd32f10x_fwdgt.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_gpio.c       0x00000000   Number         0  gd32f10x_gpio.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_i2c.c        0x00000000   Number         0  gd32f10x_i2c.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_misc.c       0x00000000   Number         0  gd32f10x_misc.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_pmu.c        0x00000000   Number         0  gd32f10x_pmu.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_rcu.c        0x00000000   Number         0  gd32f10x_rcu.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_rtc.c        0x00000000   Number         0  gd32f10x_rtc.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_sdio.c       0x00000000   Number         0  gd32f10x_sdio.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_spi.c        0x00000000   Number         0  gd32f10x_spi.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_timer.c      0x00000000   Number         0  gd32f10x_timer.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_usart.c      0x00000000   Number         0  gd32f10x_usart.o ABSOLUTE
    ..\Firmware\Source\gd32f10x_wwdgt.c      0x00000000   Number         0  gd32f10x_wwdgt.o ABSOLUTE
    ..\Startup\startup_gd32f10x_xd.s         0x00000000   Number         0  startup_gd32f10x_xd.o ABSOLUTE
    ..\\App\\PC.c                            0x00000000   Number         0  pc.o ABSOLUTE
    ..\\App\\device_message.c                0x00000000   Number         0  device_message.o ABSOLUTE
    ..\\App\\ec800m.c                        0x00000000   Number         0  ec800m.o ABSOLUTE
    ..\\App\\gd32f10x_it.c                   0x00000000   Number         0  gd32f10x_it.o ABSOLUTE
    ..\\App\\log.c                           0x00000000   Number         0  log.o ABSOLUTE
    ..\\App\\main.c                          0x00000000   Number         0  main.o ABSOLUTE
    ..\\App\\mmodbus.c                       0x00000000   Number         0  mmodbus.o ABSOLUTE
    ..\\App\\mqttRecv.c                      0x00000000   Number         0  mqttrecv.o ABSOLUTE
    ..\\App\\otaEvent.c                      0x00000000   Number         0  otaevent.o ABSOLUTE
    ..\\App\\parseDeviceMessage.c            0x00000000   Number         0  parsedevicemessage.o ABSOLUTE
    ..\\App\\systick.c                       0x00000000   Number         0  systick.o ABSOLUTE
    ..\\CMSIS\\system_gd32f10x.c             0x00000000   Number         0  system_gd32f10x.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_adc.c     0x00000000   Number         0  gd32f10x_adc.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_bkp.c     0x00000000   Number         0  gd32f10x_bkp.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_can.c     0x00000000   Number         0  gd32f10x_can.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_crc.c     0x00000000   Number         0  gd32f10x_crc.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_dac.c     0x00000000   Number         0  gd32f10x_dac.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_dbg.c     0x00000000   Number         0  gd32f10x_dbg.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_dma.c     0x00000000   Number         0  gd32f10x_dma.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_enet.c    0x00000000   Number         0  gd32f10x_enet.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_exmc.c    0x00000000   Number         0  gd32f10x_exmc.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_exti.c    0x00000000   Number         0  gd32f10x_exti.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_fmc.c     0x00000000   Number         0  gd32f10x_fmc.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_fwdgt.c   0x00000000   Number         0  gd32f10x_fwdgt.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_gpio.c    0x00000000   Number         0  gd32f10x_gpio.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_i2c.c     0x00000000   Number         0  gd32f10x_i2c.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_misc.c    0x00000000   Number         0  gd32f10x_misc.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_pmu.c     0x00000000   Number         0  gd32f10x_pmu.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_rcu.c     0x00000000   Number         0  gd32f10x_rcu.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_rtc.c     0x00000000   Number         0  gd32f10x_rtc.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_sdio.c    0x00000000   Number         0  gd32f10x_sdio.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_spi.c     0x00000000   Number         0  gd32f10x_spi.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_timer.c   0x00000000   Number         0  gd32f10x_timer.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_usart.c   0x00000000   Number         0  gd32f10x_usart.o ABSOLUTE
    ..\\Firmware\\Source\\gd32f10x_wwdgt.c   0x00000000   Number         0  gd32f10x_wwdgt.o ABSOLUTE
    ..\\bsp\\key.c                           0x00000000   Number         0  key.o ABSOLUTE
    ..\\bsp\\led.c                           0x00000000   Number         0  led.o ABSOLUTE
    ..\\bsp\\ring_buffer.c                   0x00000000   Number         0  ring_buffer.o ABSOLUTE
    ..\\bsp\\spi.c                           0x00000000   Number         0  spi.o ABSOLUTE
    ..\\bsp\\usart.c                         0x00000000   Number         0  usart.o ABSOLUTE
    ..\\bsp\\w25q32.c                        0x00000000   Number         0  w25q32.o ABSOLUTE
    ..\\dlt\\port\\dlt645_port.c             0x00000000   Number         0  dlt645_port.o ABSOLUTE
    ..\bsp\key.c                             0x00000000   Number         0  key.o ABSOLUTE
    ..\bsp\led.c                             0x00000000   Number         0  led.o ABSOLUTE
    ..\bsp\ring_buffer.c                     0x00000000   Number         0  ring_buffer.o ABSOLUTE
    ..\bsp\spi.c                             0x00000000   Number         0  spi.o ABSOLUTE
    ..\bsp\usart.c                           0x00000000   Number         0  usart.o ABSOLUTE
    ..\bsp\w25q32.c                          0x00000000   Number         0  w25q32.o ABSOLUTE
    ..\cjson\cJSON.c                         0x00000000   Number         0  cjson.o ABSOLUTE
    ..\dlt\port\dlt645_port.c                0x00000000   Number         0  dlt645_port.o ABSOLUTE
    ..\dlt\src\dlt645.c                      0x00000000   Number         0  dlt645.o ABSOLUTE
    ..\dlt\src\dlt645_1997.c                 0x00000000   Number         0  dlt645_1997.o ABSOLUTE
    ..\dlt\src\dlt645_2007.c                 0x00000000   Number         0  dlt645_2007.o ABSOLUTE
    ..\dlt\src\dlt645_data.c                 0x00000000   Number         0  dlt645_data.o ABSOLUTE
    cdcmple.s                                0x00000000   Number         0  cdcmple.o ABSOLUTE
    cdrcmple.s                               0x00000000   Number         0  cdrcmple.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
    RESET                                    0x08037000   Section      304  startup_gd32f10x_xd.o(RESET)
    .ARM.Collect$$$$00000000                 0x08037130   Section        0  entry.o(.ARM.Collect$$$$00000000)
    .ARM.Collect$$$$00000001                 0x08037130   Section        4  entry2.o(.ARM.Collect$$$$00000001)
    .ARM.Collect$$$$00000004                 0x08037134   Section        4  entry5.o(.ARM.Collect$$$$00000004)
    .ARM.Collect$$$$00000008                 0x08037138   Section        0  entry7b.o(.ARM.Collect$$$$00000008)
    .ARM.Collect$$$$0000000A                 0x08037138   Section        0  entry8b.o(.ARM.Collect$$$$0000000A)
    .ARM.Collect$$$$0000000B                 0x08037138   Section        8  entry9a.o(.ARM.Collect$$$$0000000B)
    .ARM.Collect$$$$0000000E                 0x08037140   Section        4  entry12b.o(.ARM.Collect$$$$0000000E)
    .ARM.Collect$$$$0000000F                 0x08037144   Section        0  entry10a.o(.ARM.Collect$$$$0000000F)
    .ARM.Collect$$$$00000011                 0x08037144   Section        0  entry11a.o(.ARM.Collect$$$$00000011)
    .ARM.Collect$$$$00002712                 0x08037144   Section        4  entry2.o(.ARM.Collect$$$$00002712)
    __lit__00000000                          0x08037144   Data           4  entry2.o(.ARM.Collect$$$$00002712)
    .text                                    0x08037148   Section       36  startup_gd32f10x_xd.o(.text)
    .text                                    0x0803716c   Section        0  tolower.o(.text)
    .text                                    0x08037178   Section        0  memcpya.o(.text)
    .text                                    0x0803719c   Section        0  memseta.o(.text)
    .text                                    0x080371c0   Section        0  strstr.o(.text)
    .text                                    0x080371e4   Section        0  strchr.o(.text)
    .text                                    0x080371f8   Section        0  strlen.o(.text)
    .text                                    0x08037206   Section        0  strcmp.o(.text)
    .text                                    0x08037222   Section        0  memcmp.o(.text)
    .text                                    0x0803723c   Section        0  strcpy.o(.text)
    .text                                    0x0803724e   Section        0  strncmp.o(.text)
    .text                                    0x0803726c   Section        0  __0sscanf.o(.text)
    .text                                    0x080372a4   Section        0  _scanf_int.o(.text)
    .text                                    0x080373f0   Section        0  _scanf_str.o(.text)
    .text                                    0x080374d0   Section        0  scanf_fp.o(.text)
    _fp_value                                0x080374d1   Thumb Code   296  scanf_fp.o(.text)
    .text                                    0x08037830   Section        0  strtol.o(.text)
    .text                                    0x080378a0   Section        0  dadd.o(.text)
    .text                                    0x080379ee   Section        0  dmul.o(.text)
    .text                                    0x08037ad2   Section        0  ddiv.o(.text)
    .text                                    0x08037bb0   Section        0  ffltui.o(.text)
    .text                                    0x08037bba   Section        0  dflti.o(.text)
    .text                                    0x08037bdc   Section        0  dfltui.o(.text)
    .text                                    0x08037bf6   Section        0  dfixi.o(.text)
    .text                                    0x08037c34   Section        0  f2d.o(.text)
    .text                                    0x08037c5c   Section       48  cdcmple.o(.text)
    .text                                    0x08037c8c   Section       48  cdrcmple.o(.text)
    .text                                    0x08037cbc   Section        0  d2f.o(.text)
    .text                                    0x08037cf4   Section        0  uidiv.o(.text)
    .text                                    0x08037d20   Section        0  uldiv.o(.text)
    .text                                    0x08037d82   Section        0  llshl.o(.text)
    .text                                    0x08037da0   Section        0  llushr.o(.text)
    .text                                    0x08037dc0   Section        0  llsshr.o(.text)
    .text                                    0x08037de4   Section        0  ctype_o.o(.text)
    .text                                    0x08037dec   Section        0  isspace_o.o(.text)
    .text                                    0x08037dfe   Section        0  _chval.o(.text)
    .text                                    0x08037e1c   Section        0  scanf_char.o(.text)
    _scanf_char_input                        0x08037e1d   Thumb Code    12  scanf_char.o(.text)
    .text                                    0x08037e44   Section        0  _sgetc.o(.text)
    .text                                    0x08037e84   Section        0  _strtoul.o(.text)
    .text                                    0x08037f24   Section        0  strtod.o(.text)
    _local_sscanf                            0x08037f25   Thumb Code    54  strtod.o(.text)
    .text                                    0x08037fc0   Section        0  fepilogue.o(.text)
    .text                                    0x08037fc0   Section        0  iusefp.o(.text)
    .text                                    0x0803802e   Section        0  depilogue.o(.text)
    .text                                    0x080380e8   Section        0  dscalb.o(.text)
    .text                                    0x08038116   Section        0  dfltul.o(.text)
    .text                                    0x0803812e   Section        0  dfixul.o(.text)
    .text                                    0x08038160   Section       36  init.o(.text)
    .text                                    0x08038184   Section        0  _scanf.o(.text)
    .text                                    0x080384b4   Section        0  dsqrt.o(.text)
    i.BusFault_Handler                       0x08038556   Section        0  gd32f10x_it.o(i.BusFault_Handler)
    i.Clear_DMA_Buffer                       0x0803855c   Section        0  usart.o(i.Clear_DMA_Buffer)
    i.ConnectMQTTSever                       0x08038578   Section        0  ec800m.o(i.ConnectMQTTSever)
    i.DMA0_Channel4_IRQHandler               0x080386e0   Section        0  gd32f10x_it.o(i.DMA0_Channel4_IRQHandler)
    i.DebugMon_Handler                       0x080386f4   Section        0  gd32f10x_it.o(i.DebugMon_Handler)
    i.EC800MGetUrl                           0x080386f8   Section        0  ec800m.o(i.EC800MGetUrl)
    i.EC800MPwoerOn                          0x08038848   Section        0  ec800m.o(i.EC800MPwoerOn)
    i.EC800MSendCmd                          0x080388a0   Section        0  ec800m.o(i.EC800MSendCmd)
    i.EC800MSetPDP                           0x080388d4   Section        0  ec800m.o(i.EC800MSetPDP)
    i.EC800MWaitReady                        0x08038944   Section        0  ec800m.o(i.EC800MWaitReady)
    i.EXTI1_IRQHandler                       0x08038954   Section        0  key.o(i.EXTI1_IRQHandler)
    i.HardFault_Handler                      0x080389ac   Section        0  gd32f10x_it.o(i.HardFault_Handler)
    i.LogPrint                               0x080389b0   Section        0  log.o(i.LogPrint)
    i.MQTTPublish                            0x08038a74   Section        0  ec800m.o(i.MQTTPublish)
    i.MQTTSubTopic                           0x08038dc0   Section        0  ec800m.o(i.MQTTSubTopic)
    i.MQTT_Alarm_clock                       0x08038e1c   Section        0  main.o(i.MQTT_Alarm_clock)
    i.MQTT_BUFFER_READ                       0x08038e58   Section        0  mqttrecv.o(i.MQTT_BUFFER_READ)
    i.MemManage_Handler                      0x08038ed8   Section        0  gd32f10x_it.o(i.MemManage_Handler)
    i.NMI_Handler                            0x08038edc   Section        0  gd32f10x_it.o(i.NMI_Handler)
    i.NVIC_SetPriority                       0x08038ee0   Section        0  systick.o(i.NVIC_SetPriority)
    NVIC_SetPriority                         0x08038ee1   Thumb Code    32  systick.o(i.NVIC_SetPriority)
    i.PendSV_Handler                         0x08038f08   Section        0  gd32f10x_it.o(i.PendSV_Handler)
    i.Read_Data                              0x08038f0c   Section        0  parsedevicemessage.o(i.Read_Data)
    i.Receive_MQTT_DataPack                  0x08039164   Section        0  mqttrecv.o(i.Receive_MQTT_DataPack)
    i.SPI0_ReadWriteByte                     0x08039204   Section        0  spi.o(i.SPI0_ReadWriteByte)
    i.SPI0_Write                             0x0803923c   Section        0  spi.o(i.SPI0_Write)
    i.SVC_Handler                            0x08039256   Section        0  gd32f10x_it.o(i.SVC_Handler)
    i.SysTick_Handler                        0x08039258   Section        0  gd32f10x_it.o(i.SysTick_Handler)
    i.SystemInit                             0x08039264   Section        0  system_gd32f10x.o(i.SystemInit)
    i.USART0_IRQHandler                      0x0803933c   Section        0  gd32f10x_it.o(i.USART0_IRQHandler)
    i.USART1_IRQHandler                      0x08039384   Section        0  gd32f10x_it.o(i.USART1_IRQHandler)
    i.USART2_IRQHandler                      0x080393a8   Section        0  pc.o(i.USART2_IRQHandler)
    i.UsageFault_Handler                     0x0803953c   Section        0  gd32f10x_it.o(i.UsageFault_Handler)
    i.W25Q32_Enable                          0x08039540   Section        0  w25q32.o(i.W25Q32_Enable)
    i.W25Q32_Erase64K                        0x08039564   Section        0  w25q32.o(i.W25Q32_Erase64K)
    i.W25Q32_PageWrite                       0x080395b0   Section        0  w25q32.o(i.W25Q32_PageWrite)
    i.W25Q32_WaitBusy                        0x08039604   Section        0  w25q32.o(i.W25Q32_WaitBusy)
    i.WaitForUpData                          0x08039634   Section        0  parsedevicemessage.o(i.WaitForUpData)
    i.WaitResponse                           0x0803967c   Section        0  ec800m.o(i.WaitResponse)
    i.Xmodem_CRC16                           0x080396d8   Section        0  otaevent.o(i.Xmodem_CRC16)
    i.__0printf                              0x0803971c   Section        0  printfa.o(i.__0printf)
    i.__0sprintf                             0x0803973c   Section        0  printfa.o(i.__0sprintf)
    i.__0vsnprintf                           0x08039764   Section        0  printfa.o(i.__0vsnprintf)
    i.__ARM_fpclassify                       0x08039798   Section        0  fpclassify.o(i.__ARM_fpclassify)
    i.__aeabi_errno_addr                     0x080397c0   Section        0  errno.o(i.__aeabi_errno_addr)
    i.__free$realloc                         0x080397c8   Section        0  mallocr.o(i.__free$realloc)
    i.__kernel_poly                          0x08039824   Section        0  poly.o(i.__kernel_poly)
    i.__malloc$realloc                       0x080398d0   Section        0  mallocr.o(i.__malloc$realloc)
    i.__mathlib_dbl_divzero                  0x08039920   Section        0  dunder.o(i.__mathlib_dbl_divzero)
    i.__mathlib_dbl_infnan2                  0x08039930   Section        0  dunder.o(i.__mathlib_dbl_infnan2)
    i.__mathlib_dbl_invalid                  0x08039934   Section        0  dunder.o(i.__mathlib_dbl_invalid)
    i.__mathlib_dbl_overflow                 0x08039940   Section        0  dunder.o(i.__mathlib_dbl_overflow)
    i.__mathlib_dbl_underflow                0x08039950   Section        0  dunder.o(i.__mathlib_dbl_underflow)
    i.__scatterload_copy                     0x08039960   Section       14  handlers.o(i.__scatterload_copy)
    i.__scatterload_null                     0x0803996e   Section        2  handlers.o(i.__scatterload_null)
    i.__scatterload_zeroinit                 0x08039970   Section       14  handlers.o(i.__scatterload_zeroinit)
    i.__set_errno                            0x08039980   Section        0  errno.o(i.__set_errno)
    i._crc                                   0x0803998c   Section        0  dlt645_data.o(i._crc)
    i._fp_digits                             0x080399a8   Section        0  printfa.o(i._fp_digits)
    _fp_digits                               0x080399a9   Thumb Code   366  printfa.o(i._fp_digits)
    i._is_digit                              0x08039b2c   Section        0  scanf_fp.o(i._is_digit)
    i._printf_core                           0x08039b3c   Section        0  printfa.o(i._printf_core)
    _printf_core                             0x08039b3d   Thumb Code  1704  printfa.o(i._printf_core)
    i._printf_post_padding                   0x0803a1f0   Section        0  printfa.o(i._printf_post_padding)
    _printf_post_padding                     0x0803a1f1   Thumb Code    36  printfa.o(i._printf_post_padding)
    i._printf_pre_padding                    0x0803a214   Section        0  printfa.o(i._printf_pre_padding)
    _printf_pre_padding                      0x0803a215   Thumb Code    46  printfa.o(i._printf_pre_padding)
    i._snputc                                0x0803a242   Section        0  printfa.o(i._snputc)
    _snputc                                  0x0803a243   Thumb Code    22  printfa.o(i._snputc)
    i._sputc                                 0x0803a258   Section        0  printfa.o(i._sputc)
    _sputc                                   0x0803a259   Thumb Code    10  printfa.o(i._sputc)
    i.addCommandListParams                   0x0803a264   Section        0  device_message.o(i.addCommandListParams)
    i.addDevice                              0x0803a320   Section        0  device_message.o(i.addDevice)
    i.addGatewayParams                       0x0803a45c   Section        0  device_message.o(i.addGatewayParams)
    i.addSensorListParams                    0x0803a5dc   Section        0  device_message.o(i.addSensorListParams)
    i.buffer_skip_whitespace                 0x0803a770   Section        0  cjson.o(i.buffer_skip_whitespace)
    buffer_skip_whitespace                   0x0803a771   Thumb Code    72  cjson.o(i.buffer_skip_whitespace)
    i.cJSON_Delete                           0x0803a7b8   Section        0  cjson.o(i.cJSON_Delete)
    i.cJSON_GetObjectItemCaseSensitive       0x0803a810   Section        0  cjson.o(i.cJSON_GetObjectItemCaseSensitive)
    i.cJSON_IsNumber                         0x0803a822   Section        0  cjson.o(i.cJSON_IsNumber)
    i.cJSON_IsString                         0x0803a838   Section        0  cjson.o(i.cJSON_IsString)
    i.cJSON_New_Item                         0x0803a84e   Section        0  cjson.o(i.cJSON_New_Item)
    cJSON_New_Item                           0x0803a84f   Thumb Code    26  cjson.o(i.cJSON_New_Item)
    i.cJSON_Parse                            0x0803a868   Section        0  cjson.o(i.cJSON_Parse)
    i.cJSON_ParseWithLengthOpts              0x0803a878   Section        0  cjson.o(i.cJSON_ParseWithLengthOpts)
    i.cJSON_ParseWithOpts                    0x0803a94c   Section        0  cjson.o(i.cJSON_ParseWithOpts)
    i.case_insensitive_strcmp                0x0803a974   Section        0  cjson.o(i.case_insensitive_strcmp)
    case_insensitive_strcmp                  0x0803a975   Thumb Code    72  cjson.o(i.case_insensitive_strcmp)
    i.check_ota_event                        0x0803a9bc   Section        0  otaevent.o(i.check_ota_event)
    i.checksum                               0x0803aa10   Section        0  parsedevicemessage.o(i.checksum)
    checksum                                 0x0803aa11   Thumb Code    66  parsedevicemessage.o(i.checksum)
    i.config_485_port                        0x0803aa54   Section        0  usart.o(i.config_485_port)
    i.data_package_translate_to_int          0x0803ab5c   Section        0  dlt645_data.o(i.data_package_translate_to_int)
    i.delay_1ms                              0x0803ac60   Section        0  systick.o(i.delay_1ms)
    i.delay_decrement                        0x0803ac74   Section        0  systick.o(i.delay_decrement)
    i.dlt645_1997_parsing_data               0x0803ac8c   Section        0  dlt645_1997.o(i.dlt645_1997_parsing_data)
    dlt645_1997_parsing_data                 0x0803ac8d   Thumb Code   206  dlt645_1997.o(i.dlt645_1997_parsing_data)
    i.dlt645_1997_read_data                  0x0803ad70   Section        0  dlt645_1997.o(i.dlt645_1997_read_data)
    i.dlt645_1997_recv_check                 0x0803ae08   Section        0  dlt645_1997.o(i.dlt645_1997_recv_check)
    i.dlt645_2007_parsing_data               0x0803ae5c   Section        0  dlt645_2007.o(i.dlt645_2007_parsing_data)
    i.dlt645_2007_read_data                  0x0803b23c   Section        0  dlt645_2007.o(i.dlt645_2007_read_data)
    i.dlt645_2007_recv_check                 0x0803b2ea   Section        0  dlt645_2007.o(i.dlt645_2007_recv_check)
    i.dlt645_common_check                    0x0803b33e   Section        0  dlt645_data.o(i.dlt645_common_check)
    i.dlt645_data_parse_by_format_to_float   0x0803b3bc   Section        0  dlt645_data.o(i.dlt645_data_parse_by_format_to_float)
    i.dlt645_hw_read                         0x0803b448   Section        0  dlt645_port.o(i.dlt645_hw_read)
    dlt645_hw_read                           0x0803b449   Thumb Code    92  dlt645_port.o(i.dlt645_hw_read)
    i.dlt645_hw_write                        0x0803b4a8   Section        0  dlt645_port.o(i.dlt645_hw_write)
    dlt645_hw_write                          0x0803b4a9   Thumb Code    92  dlt645_port.o(i.dlt645_hw_write)
    i.dlt645_init                            0x0803b510   Section        0  dlt645_port.o(i.dlt645_init)
    i.dlt645_read_data                       0x0803b538   Section        0  dlt645.o(i.dlt645_read_data)
    i.dlt645_receive_msg                     0x0803b576   Section        0  dlt645.o(i.dlt645_receive_msg)
    i.dlt645_send_msg                        0x0803b5bc   Section        0  dlt645.o(i.dlt645_send_msg)
    i.dlt645_set_addr                        0x0803b5ea   Section        0  dlt645.o(i.dlt645_set_addr)
    i.dlt_callback                           0x0803b614   Section        0  dlt645_port.o(i.dlt_callback)
    i.dma_channel_disable                    0x0803b69c   Section        0  gd32f10x_dma.o(i.dma_channel_disable)
    i.dma_channel_enable                     0x0803b6ce   Section        0  gd32f10x_dma.o(i.dma_channel_enable)
    i.dma_circulation_disable                0x0803b700   Section        0  gd32f10x_dma.o(i.dma_circulation_disable)
    i.dma_config                             0x0803b734   Section        0  usart.o(i.dma_config)
    i.dma_config_change                      0x0803b7bc   Section        0  usart.o(i.dma_config_change)
    i.dma_deinit                             0x0803b83c   Section        0  gd32f10x_dma.o(i.dma_deinit)
    i.dma_init                               0x0803b8ac   Section        0  gd32f10x_dma.o(i.dma_init)
    i.dma_interrupt_enable                   0x0803b9da   Section        0  gd32f10x_dma.o(i.dma_interrupt_enable)
    i.dma_interrupt_flag_clear               0x0803ba0c   Section        0  gd32f10x_dma.o(i.dma_interrupt_flag_clear)
    i.dma_memory_to_memory_disable           0x0803ba1c   Section        0  gd32f10x_dma.o(i.dma_memory_to_memory_disable)
    i.dma_periph_and_channel_check           0x0803ba50   Section        0  gd32f10x_dma.o(i.dma_periph_and_channel_check)
    dma_periph_and_channel_check             0x0803ba51   Thumb Code    18  gd32f10x_dma.o(i.dma_periph_and_channel_check)
    i.exti_init                              0x0803ba68   Section        0  gd32f10x_exti.o(i.exti_init)
    i.exti_interrupt_flag_clear              0x0803bb24   Section        0  gd32f10x_exti.o(i.exti_interrupt_flag_clear)
    i.exti_interrupt_flag_get                0x0803bb30   Section        0  gd32f10x_exti.o(i.exti_interrupt_flag_get)
    i.extract_data_from_buffer               0x0803bb48   Section        0  parsedevicemessage.o(i.extract_data_from_buffer)
    extract_data_from_buffer                 0x0803bb49   Thumb Code    78  parsedevicemessage.o(i.extract_data_from_buffer)
    i.fputc                                  0x0803bba8   Section        0  log.o(i.fputc)
    i.fwdgt_counter_reload                   0x0803bbcc   Section        0  gd32f10x_fwdgt.o(i.fwdgt_counter_reload)
    i.fwdgt_write_enable                     0x0803bbdc   Section        0  gd32f10x_fwdgt.o(i.fwdgt_write_enable)
    i.gd_485_DE_pin_init                     0x0803bbec   Section        0  usart.o(i.gd_485_DE_pin_init)
    i.gd_485_DE_tx                           0x0803bc14   Section        0  usart.o(i.gd_485_DE_tx)
    i.gd_EC800M_pin_init                     0x0803bc24   Section        0  usart.o(i.gd_EC800M_pin_init)
    i.gd_com_init                            0x0803bc6c   Section        0  usart.o(i.gd_com_init)
    i.gd_eval_key_init                       0x0803bd68   Section        0  key.o(i.gd_eval_key_init)
    i.gd_eval_led_init                       0x0803bde8   Section        0  led.o(i.gd_eval_led_init)
    i.gd_eval_led_toggle                     0x0803be34   Section        0  led.o(i.gd_eval_led_toggle)
    i.gd_pull_EC800M_pwr_down                0x0803be6c   Section        0  usart.o(i.gd_pull_EC800M_pwr_down)
    i.gd_pull_EC800M_pwr_up                  0x0803be78   Section        0  usart.o(i.gd_pull_EC800M_pwr_up)
    i.gd_pull_EC800M_rst_down                0x0803be84   Section        0  usart.o(i.gd_pull_EC800M_rst_down)
    i.gd_pull_EC800M_rst_up                  0x0803be94   Section        0  usart.o(i.gd_pull_EC800M_rst_up)
    i.get_decimal_point                      0x0803bea4   Section        0  cjson.o(i.get_decimal_point)
    get_decimal_point                        0x0803bea5   Thumb Code     4  cjson.o(i.get_decimal_point)
    i.get_gateway_config_params              0x0803bea8   Section        0  device_message.o(i.get_gateway_config_params)
    i.get_object_item                        0x0803beb0   Section        0  cjson.o(i.get_object_item)
    get_object_item                          0x0803beb1   Thumb Code    82  cjson.o(i.get_object_item)
    i.gettick                                0x0803bf04   Section        0  systick.o(i.gettick)
    i.gpio_bit_reset                         0x0803bf10   Section        0  gd32f10x_gpio.o(i.gpio_bit_reset)
    i.gpio_bit_set                           0x0803bf14   Section        0  gd32f10x_gpio.o(i.gpio_bit_set)
    i.gpio_bit_write                         0x0803bf18   Section        0  gd32f10x_gpio.o(i.gpio_bit_write)
    i.gpio_exti_source_select                0x0803bf24   Section        0  gd32f10x_gpio.o(i.gpio_exti_source_select)
    i.gpio_init                              0x0803bfbc   Section        0  gd32f10x_gpio.o(i.gpio_init)
    i.gpio_input_bit_get                     0x0803c068   Section        0  gd32f10x_gpio.o(i.gpio_input_bit_get)
    i.gpio_pin_remap_config                  0x0803c078   Section        0  gd32f10x_gpio.o(i.gpio_pin_remap_config)
    i.http_load_config                       0x0803c108   Section        0  main.o(i.http_load_config)
    i.internal_alloc                         0x0803c178   Section        0  mallocr.o(i.internal_alloc)
    internal_alloc                           0x0803c179   Thumb Code    76  mallocr.o(i.internal_alloc)
    i.main                                   0x0803c1c8   Section        0  main.o(i.main)
    i.mmodbus_callback                       0x0803c33c   Section        0  mmodbus.o(i.mmodbus_callback)
    i.mmodbus_crc16                          0x0803c3b8   Section        0  mmodbus.o(i.mmodbus_crc16)
    i.mmodbus_init                           0x0803c3e8   Section        0  mmodbus.o(i.mmodbus_init)
    i.mmodbus_readCoils                      0x0803c410   Section        0  mmodbus.o(i.mmodbus_readCoils)
    i.mmodbus_readHoldingRegisters16i        0x0803c4ec   Section        0  mmodbus.o(i.mmodbus_readHoldingRegisters16i)
    i.mmodbus_readHoldingRegisters8i         0x0803c57c   Section        0  mmodbus.o(i.mmodbus_readHoldingRegisters8i)
    i.mmodbus_receiveRaw                     0x0803c684   Section        0  mmodbus.o(i.mmodbus_receiveRaw)
    i.mmodbus_sendRaw                        0x0803c6ec   Section        0  mmodbus.o(i.mmodbus_sendRaw)
    i.mmodbus_set16bitOrder                  0x0803c7e4   Section        0  mmodbus.o(i.mmodbus_set16bitOrder)
    i.mmodbus_writeCoil                      0x0803c7f0   Section        0  mmodbus.o(i.mmodbus_writeCoil)
    i.mmodbus_writeHoldingRegister16i        0x0803c880   Section        0  mmodbus.o(i.mmodbus_writeHoldingRegister16i)
    i.nvic_config                            0x0803c904   Section        0  usart.o(i.nvic_config)
    i.nvic_irq_enable                        0x0803c938   Section        0  gd32f10x_misc.o(i.nvic_irq_enable)
    i.nvic_priority_group_set                0x0803c9e4   Section        0  gd32f10x_misc.o(i.nvic_priority_group_set)
    i.nvic_vector_table_set                  0x0803c9f8   Section        0  gd32f10x_misc.o(i.nvic_vector_table_set)
    i.parseIntField                          0x0803ca10   Section        0  device_message.o(i.parseIntField)
    i.parseMQTTData                          0x0803ca3c   Section        0  parsedevicemessage.o(i.parseMQTTData)
    i.parseStringField                       0x0803cecc   Section        0  device_message.o(i.parseStringField)
    i.parse_array                            0x0803cf00   Section        0  cjson.o(i.parse_array)
    parse_array                              0x0803cf01   Thumb Code   248  cjson.o(i.parse_array)
    i.parse_hex4                             0x0803cff8   Section        0  cjson.o(i.parse_hex4)
    parse_hex4                               0x0803cff9   Thumb Code    90  cjson.o(i.parse_hex4)
    i.parse_number                           0x0803d054   Section        0  cjson.o(i.parse_number)
    parse_number                             0x0803d055   Thumb Code   298  cjson.o(i.parse_number)
    i.parse_object                           0x0803d18c   Section        0  cjson.o(i.parse_object)
    parse_object                             0x0803d18d   Thumb Code   318  cjson.o(i.parse_object)
    i.parse_string                           0x0803d2ca   Section        0  cjson.o(i.parse_string)
    parse_string                             0x0803d2cb   Thumb Code   396  cjson.o(i.parse_string)
    i.parse_value                            0x0803d458   Section        0  cjson.o(i.parse_value)
    parse_value                              0x0803d459   Thumb Code   290  cjson.o(i.parse_value)
    i.pow                                    0x0803d594   Section        0  pow.o(i.pow)
    i.processIntData                         0x0803df6c   Section        0  parsedevicemessage.o(i.processIntData)
    i.processStringData                      0x0803df8e   Section        0  parsedevicemessage.o(i.processStringData)
    i.rcu_clock_freq_get                     0x0803dfb4   Section        0  gd32f10x_rcu.o(i.rcu_clock_freq_get)
    i.rcu_osci_on                            0x0803e0d8   Section        0  gd32f10x_rcu.o(i.rcu_osci_on)
    i.rcu_periph_clock_enable                0x0803e0f8   Section        0  gd32f10x_rcu.o(i.rcu_periph_clock_enable)
    i.rcu_periph_reset_disable               0x0803e118   Section        0  gd32f10x_rcu.o(i.rcu_periph_reset_disable)
    i.rcu_periph_reset_enable                0x0803e138   Section        0  gd32f10x_rcu.o(i.rcu_periph_reset_enable)
    i.readID                                 0x0803e158   Section        0  main.o(i.readID)
    i.realloc                                0x0803e248   Section        0  mallocr.o(i.realloc)
    i.ring_buffer_init                       0x0803e2b4   Section        0  ring_buffer.o(i.ring_buffer_init)
    i.ring_buffer_read                       0x0803e2bc   Section        0  ring_buffer.o(i.ring_buffer_read)
    i.ring_buffer_write                      0x0803e2e4   Section        0  ring_buffer.o(i.ring_buffer_write)
    i.runtime_increment                      0x0803e300   Section        0  systick.o(i.runtime_increment)
    i.skip_utf8_bom                          0x0803e324   Section        0  cjson.o(i.skip_utf8_bom)
    skip_utf8_bom                            0x0803e325   Thumb Code    56  cjson.o(i.skip_utf8_bom)
    i.spi_i2s_data_receive                   0x0803e360   Section        0  gd32f10x_spi.o(i.spi_i2s_data_receive)
    i.spi_i2s_data_transmit                  0x0803e368   Section        0  gd32f10x_spi.o(i.spi_i2s_data_transmit)
    i.spi_i2s_flag_get                       0x0803e36c   Section        0  gd32f10x_spi.o(i.spi_i2s_flag_get)
    i.sqrt                                   0x0803e37c   Section        0  sqrt.o(i.sqrt)
    i.strtod                                 0x0803e3c8   Section        0  strtod.o(i.strtod)
    i.system_clock_108m_hxtal                0x0803e3e4   Section        0  system_gd32f10x.o(i.system_clock_108m_hxtal)
    system_clock_108m_hxtal                  0x0803e3e5   Thumb Code   182  system_gd32f10x.o(i.system_clock_108m_hxtal)
    i.system_clock_config                    0x0803e4a8   Section        0  system_gd32f10x.o(i.system_clock_config)
    system_clock_config                      0x0803e4a9   Thumb Code     8  system_gd32f10x.o(i.system_clock_config)
    i.systick_config                         0x0803e4b0   Section        0  systick.o(i.systick_config)
    i.task_fwdgt_reload                      0x0803e500   Section        0  main.o(i.task_fwdgt_reload)
    i.usart_baudrate_set                     0x0803e50c   Section        0  gd32f10x_usart.o(i.usart_baudrate_set)
    i.usart_data_receive                     0x0803e59c   Section        0  gd32f10x_usart.o(i.usart_data_receive)
    i.usart_data_transmit                    0x0803e5a6   Section        0  gd32f10x_usart.o(i.usart_data_transmit)
    i.usart_deinit                           0x0803e5b0   Section        0  gd32f10x_usart.o(i.usart_deinit)
    i.usart_dma_transmit_config              0x0803e640   Section        0  gd32f10x_usart.o(i.usart_dma_transmit_config)
    i.usart_enable                           0x0803e650   Section        0  gd32f10x_usart.o(i.usart_enable)
    i.usart_flag_clear                       0x0803e65a   Section        0  gd32f10x_usart.o(i.usart_flag_clear)
    i.usart_flag_get                         0x0803e674   Section        0  gd32f10x_usart.o(i.usart_flag_get)
    i.usart_hardware_flow_cts_config         0x0803e692   Section        0  gd32f10x_usart.o(i.usart_hardware_flow_cts_config)
    i.usart_hardware_flow_rts_config         0x0803e6a2   Section        0  gd32f10x_usart.o(i.usart_hardware_flow_rts_config)
    i.usart_interrupt_enable                 0x0803e6b2   Section        0  gd32f10x_usart.o(i.usart_interrupt_enable)
    i.usart_interrupt_flag_clear             0x0803e6cc   Section        0  gd32f10x_usart.o(i.usart_interrupt_flag_clear)
    i.usart_interrupt_flag_get               0x0803e6e6   Section        0  gd32f10x_usart.o(i.usart_interrupt_flag_get)
    i.usart_parity_config                    0x0803e71e   Section        0  gd32f10x_usart.o(i.usart_parity_config)
    i.usart_receive_config                   0x0803e72e   Section        0  gd32f10x_usart.o(i.usart_receive_config)
    i.usart_stop_bit_set                     0x0803e73e   Section        0  gd32f10x_usart.o(i.usart_stop_bit_set)
    i.usart_transmit_config                  0x0803e74e   Section        0  gd32f10x_usart.o(i.usart_transmit_config)
    i.usart_word_length_set                  0x0803e75e   Section        0  gd32f10x_usart.o(i.usart_word_length_set)
    i.utf16_literal_to_utf8                  0x0803e76e   Section        0  cjson.o(i.utf16_literal_to_utf8)
    utf16_literal_to_utf8                    0x0803e76f   Thumb Code   300  cjson.o(i.utf16_literal_to_utf8)
    i.xmodem                                 0x0803e89c   Section        0  otaevent.o(i.xmodem)
    .constdata                               0x0803ea74   Section       14  parsedevicemessage.o(.constdata)
    __func__                                 0x0803ea74   Data          14  parsedevicemessage.o(.constdata)
    .constdata                               0x0803ea82   Section      512  mmodbus.o(.constdata)
    wCRCTable                                0x0803ea82   Data         512  mmodbus.o(.constdata)
    .constdata                               0x0803ec88   Section      136  pow.o(.constdata)
    bp                                       0x0803ec88   Data          16  pow.o(.constdata)
    dp_h                                     0x0803ec98   Data          16  pow.o(.constdata)
    dp_l                                     0x0803eca8   Data          16  pow.o(.constdata)
    L                                        0x0803ecb8   Data          48  pow.o(.constdata)
    P                                        0x0803ece8   Data          40  pow.o(.constdata)
    .constdata                               0x0803ed10   Section        8  qnan.o(.constdata)
    .constdata                               0x0803ed18   Section      129  ctype_o.o(.constdata)
    .constdata                               0x0803ed9c   Section        4  ctype_o.o(.constdata)
    table                                    0x0803ed9c   Data           4  ctype_o.o(.constdata)
    .conststring                             0x0803eda0   Section      495  parsedevicemessage.o(.conststring)
    .conststring                             0x0803ef90   Section       51  main.o(.conststring)
    .data                                    0x20000000   Section        4  system_gd32f10x.o(.data)
    .data                                    0x20000004   Section        8  systick.o(.data)
    delay                                    0x20000004   Data           4  systick.o(.data)
    runtime                                  0x20000008   Data           4  systick.o(.data)
    .data                                    0x2000000c   Section        1  parsedevicemessage.o(.data)
    .data                                    0x2000000e   Section       14  mmodbus.o(.data)
    crc                                      0x2000000e   Data           2  mmodbus.o(.data)
    crc                                      0x20000010   Data           2  mmodbus.o(.data)
    crc                                      0x20000012   Data           2  mmodbus.o(.data)
    crc                                      0x20000014   Data           2  mmodbus.o(.data)
    crc                                      0x20000016   Data           2  mmodbus.o(.data)
    crc                                      0x20000018   Data           2  mmodbus.o(.data)
    crc                                      0x2000001a   Data           2  mmodbus.o(.data)
    .data                                    0x2000001c   Section        1  mqttrecv.o(.data)
    json_len                                 0x2000001c   Data           1  mqttrecv.o(.data)
    .data                                    0x20000020   Section        4  main.o(.data)
    hex_table                                0x20000020   Data           4  main.o(.data)
    .data                                    0x20000024   Section       16  pc.o(.data)
    .data                                    0x20000034   Section       10  led.o(.data)
    GPIO_PORT                                0x20000034   Data           4  led.o(.data)
    GPIO_PIN                                 0x20000038   Data           4  led.o(.data)
    GPIO_CLK                                 0x2000003c   Data           2  led.o(.data)
    .data                                    0x20000040   Section       84  usart.o(.data)
    COM_CLK                                  0x20000040   Data           6  usart.o(.data)
    COM_TX_PIN                               0x20000048   Data          12  usart.o(.data)
    COM_RX_PIN                               0x20000054   Data          12  usart.o(.data)
    COM_GPIO_PORT                            0x20000060   Data          12  usart.o(.data)
    COM_GPIO_CLK                             0x2000006c   Data           6  usart.o(.data)
    COM_IT_HANDLER                           0x20000074   Data          12  usart.o(.data)
    COM_BAUDTATE                             0x20000080   Data          12  usart.o(.data)
    .data                                    0x20000094   Section       19  key.o(.data)
    KEY_PORT                                 0x20000094   Data           4  key.o(.data)
    KEY_PIN                                  0x20000098   Data           4  key.o(.data)
    KEY_CLK                                  0x2000009c   Data           2  key.o(.data)
    KEY_EXTI_LINE                            0x200000a0   Data           4  key.o(.data)
    KEY_PORT_SOURCE                          0x200000a4   Data           1  key.o(.data)
    KEY_PIN_SOURCE                           0x200000a5   Data           1  key.o(.data)
    KEY_IRQn                                 0x200000a6   Data           1  key.o(.data)
    .data                                    0x200000a8   Section       20  cjson.o(.data)
    global_error                             0x200000a8   Data           8  cjson.o(.data)
    global_hooks                             0x200000b0   Data          12  cjson.o(.data)
    .data                                    0x200000bc   Section       20  dlt645_port.o(.data)
    .data                                    0x200000d0   Section        4  stdout.o(.data)
    .data                                    0x200000d4   Section        4  mvars.o(.data)
    .data                                    0x200000d8   Section        4  mvars.o(.data)
    .data                                    0x200000dc   Section        4  errno.o(.data)
    _errno                                   0x200000dc   Data           4  errno.o(.data)
    .bss                                     0x200000e0   Section      216  device_message.o(.bss)
    .bss                                     0x200001b8   Section     4104  parsedevicemessage.o(.bss)
    .bss                                     0x200011c0   Section       84  mmodbus.o(.bss)
    .bss                                     0x20001214   Section      128  mqttrecv.o(.bss)
    json_buf                                 0x20001214   Data         128  mqttrecv.o(.bss)
    .bss                                     0x20001294   Section      394  otaevent.o(.bss)
    .bss                                     0x2000141e   Section     4354  usart.o(.bss)
    .bss                                     0x20002520   Section      212  dlt645_port.o(.bss)
    dlt645_port                              0x20002520   Data         212  dlt645_port.o(.bss)
    HEAP                                     0x200025f8   Section    65536  startup_gd32f10x_xd.o(HEAP)
    STACK                                    0x200125f8   Section     8192  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$OTIME$ROPI$IEEEX$EBA8$MICROLIB$REQ8$PRES8$EABIv2 0x00000000   Number         0  anon$$obj.o ABSOLUTE
    __ARM_use_no_argv                        0x00000000   Number         0  main.o ABSOLUTE
    _printf_a                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_c                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_charcount                        0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_d                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_e                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_f                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_flags                            0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_fp_dec                           0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_fp_hex                           0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_g                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_i                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_int_dec                          0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_l                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_lc                               0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_ll                               0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_lld                              0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_lli                              0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_llo                              0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_llu                              0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_llx                              0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_longlong_dec                     0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_longlong_hex                     0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_longlong_oct                     0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_ls                               0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_mbtowc                           0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_n                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_o                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_p                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_percent                          0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_pre_padding                      0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_return_value                     0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_s                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_sizespec                         0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_str                              0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_truncate_signed                  0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_truncate_unsigned                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_u                                0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_wc                               0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_wctomb                           0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_widthprec                        0x00000000   Number         0  stubs.o ABSOLUTE
    _printf_x                                0x00000000   Number         0  stubs.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
    __Vectors_Size                           0x00000130   Number         0  startup_gd32f10x_xd.o ABSOLUTE
    __Vectors                                0x08037000   Data           4  startup_gd32f10x_xd.o(RESET)
    __Vectors_End                            0x08037130   Data           0  startup_gd32f10x_xd.o(RESET)
    __main                                   0x08037131   Thumb Code     0  entry.o(.ARM.Collect$$$$00000000)
    _main_stk                                0x08037131   Thumb Code     0  entry2.o(.ARM.Collect$$$$00000001)
    _main_scatterload                        0x08037135   Thumb Code     0  entry5.o(.ARM.Collect$$$$00000004)
    __main_after_scatterload                 0x08037139   Thumb Code     0  entry5.o(.ARM.Collect$$$$00000004)
    _main_clock                              0x08037139   Thumb Code     0  entry7b.o(.ARM.Collect$$$$00000008)
    _main_cpp_init                           0x08037139   Thumb Code     0  entry8b.o(.ARM.Collect$$$$0000000A)
    _main_init                               0x08037139   Thumb Code     0  entry9a.o(.ARM.Collect$$$$0000000B)
    __rt_lib_shutdown_fini                   0x08037141   Thumb Code     0  entry12b.o(.ARM.Collect$$$$0000000E)
    __rt_final_cpp                           0x08037145   Thumb Code     0  entry10a.o(.ARM.Collect$$$$0000000F)
    __rt_final_exit                          0x08037145   Thumb Code     0  entry11a.o(.ARM.Collect$$$$00000011)
    Reset_Handler                            0x08037149   Thumb Code     8  startup_gd32f10x_xd.o(.text)
    ADC0_1_IRQHandler                        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    ADC2_IRQHandler                          0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    CAN0_EWMC_IRQHandler                     0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    CAN0_RX1_IRQHandler                      0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel0_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel1_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel2_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel3_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel5_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA0_Channel6_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA1_Channel0_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA1_Channel1_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA1_Channel2_IRQHandler                 0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    DMA1_Channel3_4_IRQHandler               0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXMC_IRQHandler                          0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI0_IRQHandler                         0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI10_15_IRQHandler                     0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI2_IRQHandler                         0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI3_IRQHandler                         0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI4_IRQHandler                         0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    EXTI5_9_IRQHandler                       0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    FMC_IRQHandler                           0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    I2C0_ER_IRQHandler                       0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    I2C0_EV_IRQHandler                       0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    I2C1_ER_IRQHandler                       0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    I2C1_EV_IRQHandler                       0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    LVD_IRQHandler                           0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    RCU_IRQHandler                           0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    RTC_Alarm_IRQHandler                     0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    RTC_IRQHandler                           0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    SDIO_IRQHandler                          0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    SPI0_IRQHandler                          0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    SPI1_IRQHandler                          0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    SPI2_IRQHandler                          0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TAMPER_IRQHandler                        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER0_BRK_TIMER8_IRQHandler             0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER0_Channel_IRQHandler                0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER0_TRG_CMT_TIMER10_IRQHandler        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER0_UP_TIMER9_IRQHandler              0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER1_IRQHandler                        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER2_IRQHandler                        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER3_IRQHandler                        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER4_IRQHandler                        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER5_IRQHandler                        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER6_IRQHandler                        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER7_BRK_TIMER11_IRQHandler            0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER7_Channel_IRQHandler                0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER7_TRG_CMT_TIMER13_IRQHandler        0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    TIMER7_UP_TIMER12_IRQHandler             0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    UART3_IRQHandler                         0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    UART4_IRQHandler                         0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    USBD_HP_CAN0_TX_IRQHandler               0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    USBD_LP_CAN0_RX0_IRQHandler              0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    USBD_WKUP_IRQHandler                     0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    WWDGT_IRQHandler                         0x08037163   Thumb Code     0  startup_gd32f10x_xd.o(.text)
    tolower                                  0x0803716d   Thumb Code    12  tolower.o(.text)
    __aeabi_memcpy                           0x08037179   Thumb Code    36  memcpya.o(.text)
    __aeabi_memcpy4                          0x08037179   Thumb Code     0  memcpya.o(.text)
    __aeabi_memcpy8                          0x08037179   Thumb Code     0  memcpya.o(.text)
    __aeabi_memset                           0x0803719d   Thumb Code    14  memseta.o(.text)
    __aeabi_memset4                          0x0803719d   Thumb Code     0  memseta.o(.text)
    __aeabi_memset8                          0x0803719d   Thumb Code     0  memseta.o(.text)
    __aeabi_memclr                           0x080371ab   Thumb Code     4  memseta.o(.text)
    __aeabi_memclr4                          0x080371ab   Thumb Code     0  memseta.o(.text)
    __aeabi_memclr8                          0x080371ab   Thumb Code     0  memseta.o(.text)
    _memset$wrapper                          0x080371af   Thumb Code    18  memseta.o(.text)
    strstr                                   0x080371c1   Thumb Code    36  strstr.o(.text)
    strchr                                   0x080371e5   Thumb Code    20  strchr.o(.text)
    strlen                                   0x080371f9   Thumb Code    14  strlen.o(.text)
    strcmp                                   0x08037207   Thumb Code    28  strcmp.o(.text)
    memcmp                                   0x08037223   Thumb Code    26  memcmp.o(.text)
    strcpy                                   0x0803723d   Thumb Code    18  strcpy.o(.text)
    strncmp                                  0x0803724f   Thumb Code    30  strncmp.o(.text)
    __0sscanf                                0x0803726d   Thumb Code    48  __0sscanf.o(.text)
    _scanf_int                               0x080372a5   Thumb Code   332  _scanf_int.o(.text)
    _scanf_string                            0x080373f1   Thumb Code   224  _scanf_str.o(.text)
    _scanf_real                              0x080375f9   Thumb Code     0  scanf_fp.o(.text)
    _scanf_really_real                       0x080375f9   Thumb Code   556  scanf_fp.o(.text)
    strtol                                   0x08037831   Thumb Code   112  strtol.o(.text)
    __aeabi_dadd                             0x080378a1   Thumb Code   322  dadd.o(.text)
    __aeabi_dsub                             0x080379e3   Thumb Code     6  dadd.o(.text)
    __aeabi_drsub                            0x080379e9   Thumb Code     6  dadd.o(.text)
    __aeabi_dmul                             0x080379ef   Thumb Code   228  dmul.o(.text)
    __aeabi_ddiv                             0x08037ad3   Thumb Code   222  ddiv.o(.text)
    __aeabi_ui2f                             0x08037bb1   Thumb Code    10  ffltui.o(.text)
    __aeabi_i2d                              0x08037bbb   Thumb Code    34  dflti.o(.text)
    __aeabi_ui2d                             0x08037bdd   Thumb Code    26  dfltui.o(.text)
    __aeabi_d2iz                             0x08037bf7   Thumb Code    62  dfixi.o(.text)
    __aeabi_f2d                              0x08037c35   Thumb Code    38  f2d.o(.text)
    __aeabi_cdcmpeq                          0x08037c5d   Thumb Code     0  cdcmple.o(.text)
    __aeabi_cdcmple                          0x08037c5d   Thumb Code    48  cdcmple.o(.text)
    __aeabi_cdrcmple                         0x08037c8d   Thumb Code    48  cdrcmple.o(.text)
    __aeabi_d2f                              0x08037cbd   Thumb Code    56  d2f.o(.text)
    __aeabi_uidiv                            0x08037cf5   Thumb Code     0  uidiv.o(.text)
    __aeabi_uidivmod                         0x08037cf5   Thumb Code    44  uidiv.o(.text)
    __aeabi_uldivmod                         0x08037d21   Thumb Code    98  uldiv.o(.text)
    __aeabi_llsl                             0x08037d83   Thumb Code    30  llshl.o(.text)
    _ll_shift_l                              0x08037d83   Thumb Code     0  llshl.o(.text)
    __aeabi_llsr                             0x08037da1   Thumb Code    32  llushr.o(.text)
    _ll_ushift_r                             0x08037da1   Thumb Code     0  llushr.o(.text)
    __aeabi_lasr                             0x08037dc1   Thumb Code    36  llsshr.o(.text)
    _ll_sshift_r                             0x08037dc1   Thumb Code     0  llsshr.o(.text)
    __rt_ctype_table                         0x08037de5   Thumb Code     4  ctype_o.o(.text)
    isspace                                  0x08037ded   Thumb Code    18  isspace_o.o(.text)
    _chval                                   0x08037dff   Thumb Code    28  _chval.o(.text)
    __vfscanf_char                           0x08037e29   Thumb Code    20  scanf_char.o(.text)
    _sgetc                                   0x08037e45   Thumb Code    30  _sgetc.o(.text)
    _sbackspace                              0x08037e63   Thumb Code    34  _sgetc.o(.text)
    _strtoul                                 0x08037e85   Thumb Code   158  _strtoul.o(.text)
    __strtod_int                             0x08037f5b   Thumb Code    90  strtod.o(.text)
    __I$use$fp                               0x08037fc1   Thumb Code     0  iusefp.o(.text)
    _float_round                             0x08037fc1   Thumb Code    18  fepilogue.o(.text)
    _float_epilogue                          0x08037fd3   Thumb Code    92  fepilogue.o(.text)
    _double_round                            0x0803802f   Thumb Code    30  depilogue.o(.text)
    _double_epilogue                         0x0803804d   Thumb Code   156  depilogue.o(.text)
    __ARM_scalbn                             0x080380e9   Thumb Code    46  dscalb.o(.text)
    scalbn                                   0x080380e9   Thumb Code     0  dscalb.o(.text)
    __aeabi_ul2d                             0x08038117   Thumb Code    24  dfltul.o(.text)
    __aeabi_d2ulz                            0x0803812f   Thumb Code    48  dfixul.o(.text)
    __scatterload                            0x08038161   Thumb Code    28  init.o(.text)
    __scatterload_rt2                        0x08038161   Thumb Code     0  init.o(.text)
    __vfscanf                                0x08038185   Thumb Code   810  _scanf.o(.text)
    _dsqrt                                   0x080384b5   Thumb Code   162  dsqrt.o(.text)
    BusFault_Handler                         0x08038557   Thumb Code     4  gd32f10x_it.o(i.BusFault_Handler)
    Clear_DMA_Buffer                         0x0803855d   Thumb Code    20  usart.o(i.Clear_DMA_Buffer)
    ConnectMQTTSever                         0x08038579   Thumb Code   196  ec800m.o(i.ConnectMQTTSever)
    DMA0_Channel4_IRQHandler                 0x080386e1   Thumb Code    14  gd32f10x_it.o(i.DMA0_Channel4_IRQHandler)
    DebugMon_Handler                         0x080386f5   Thumb Code     2  gd32f10x_it.o(i.DebugMon_Handler)
    EC800MGetUrl                             0x080386f9   Thumb Code   196  ec800m.o(i.EC800MGetUrl)
    EC800MPwoerOn                            0x08038849   Thumb Code    82  ec800m.o(i.EC800MPwoerOn)
    EC800MSendCmd                            0x080388a1   Thumb Code    48  ec800m.o(i.EC800MSendCmd)
    EC800MSetPDP                             0x080388d5   Thumb Code    58  ec800m.o(i.EC800MSetPDP)
    EC800MWaitReady                          0x08038945   Thumb Code    12  ec800m.o(i.EC800MWaitReady)
    EXTI1_IRQHandler                         0x08038955   Thumb Code    72  key.o(i.EXTI1_IRQHandler)
    HardFault_Handler                        0x080389ad   Thumb Code     4  gd32f10x_it.o(i.HardFault_Handler)
    LogPrint                                 0x080389b1   Thumb Code   136  log.o(i.LogPrint)
    MQTTPublish                              0x08038a75   Thumb Code   606  ec800m.o(i.MQTTPublish)
    MQTTSubTopic                             0x08038dc1   Thumb Code    64  ec800m.o(i.MQTTSubTopic)
    MQTT_Alarm_clock                         0x08038e1d   Thumb Code    58  main.o(i.MQTT_Alarm_clock)
    MQTT_BUFFER_READ                         0x08038e59   Thumb Code   114  mqttrecv.o(i.MQTT_BUFFER_READ)
    MemManage_Handler                        0x08038ed9   Thumb Code     4  gd32f10x_it.o(i.MemManage_Handler)
    NMI_Handler                              0x08038edd   Thumb Code     2  gd32f10x_it.o(i.NMI_Handler)
    PendSV_Handler                           0x08038f09   Thumb Code     2  gd32f10x_it.o(i.PendSV_Handler)
    Read_Data                                0x08038f0d   Thumb Code   588  parsedevicemessage.o(i.Read_Data)
    Receive_MQTT_DataPack                    0x08039165   Thumb Code   120  mqttrecv.o(i.Receive_MQTT_DataPack)
    SPI0_ReadWriteByte                       0x08039205   Thumb Code    50  spi.o(i.SPI0_ReadWriteByte)
    SPI0_Write                               0x0803923d   Thumb Code    26  spi.o(i.SPI0_Write)
    SVC_Handler                              0x08039257   Thumb Code     2  gd32f10x_it.o(i.SVC_Handler)
    SysTick_Handler                          0x08039259   Thumb Code    12  gd32f10x_it.o(i.SysTick_Handler)
    SystemInit                               0x08039265   Thumb Code   198  system_gd32f10x.o(i.SystemInit)
    USART0_IRQHandler                        0x0803933d   Thumb Code    54  gd32f10x_it.o(i.USART0_IRQHandler)
    USART1_IRQHandler                        0x08039385   Thumb Code    30  gd32f10x_it.o(i.USART1_IRQHandler)
    USART2_IRQHandler                        0x080393a9   Thumb Code   374  pc.o(i.USART2_IRQHandler)
    UsageFault_Handler                       0x0803953d   Thumb Code     4  gd32f10x_it.o(i.UsageFault_Handler)
    W25Q32_Enable                            0x08039541   Thumb Code    30  w25q32.o(i.W25Q32_Enable)
    W25Q32_Erase64K                          0x08039565   Thumb Code    70  w25q32.o(i.W25Q32_Erase64K)
    W25Q32_PageWrite                         0x080395b1   Thumb Code    80  w25q32.o(i.W25Q32_PageWrite)
    W25Q32_WaitBusy                          0x08039605   Thumb Code    44  w25q32.o(i.W25Q32_WaitBusy)
    WaitForUpData                            0x08039635   Thumb Code    66  parsedevicemessage.o(i.WaitForUpData)
    WaitResponse                             0x0803967d   Thumb Code    82  ec800m.o(i.WaitResponse)
    Xmodem_CRC16                             0x080396d9   Thumb Code    68  otaevent.o(i.Xmodem_CRC16)
    __0printf                                0x0803971d   Thumb Code    22  printfa.o(i.__0printf)
    __1printf                                0x0803971d   Thumb Code     0  printfa.o(i.__0printf)
    __2printf                                0x0803971d   Thumb Code     0  printfa.o(i.__0printf)
    __c89printf                              0x0803971d   Thumb Code     0  printfa.o(i.__0printf)
    printf                                   0x0803971d   Thumb Code     0  printfa.o(i.__0printf)
    __0sprintf                               0x0803973d   Thumb Code    34  printfa.o(i.__0sprintf)
    __1sprintf                               0x0803973d   Thumb Code     0  printfa.o(i.__0sprintf)
    __2sprintf                               0x0803973d   Thumb Code     0  printfa.o(i.__0sprintf)
    __c89sprintf                             0x0803973d   Thumb Code     0  printfa.o(i.__0sprintf)
    sprintf                                  0x0803973d   Thumb Code     0  printfa.o(i.__0sprintf)
    __0vsnprintf                             0x08039765   Thumb Code    46  printfa.o(i.__0vsnprintf)
    __1vsnprintf                             0x08039765   Thumb Code     0  printfa.o(i.__0vsnprintf)
    __2vsnprintf                             0x08039765   Thumb Code     0  printfa.o(i.__0vsnprintf)
    __c89vsnprintf                           0x08039765   Thumb Code     0  printfa.o(i.__0vsnprintf)
    vsnprintf                                0x08039765   Thumb Code     0  printfa.o(i.__0vsnprintf)
    __ARM_fpclassify                         0x08039799   Thumb Code    40  fpclassify.o(i.__ARM_fpclassify)
    __aeabi_errno_addr                       0x080397c1   Thumb Code     4  errno.o(i.__aeabi_errno_addr)
    __rt_errno_addr                          0x080397c1   Thumb Code     0  errno.o(i.__aeabi_errno_addr)
    free                                     0x080397c9   Thumb Code    88  mallocr.o(i.__free$realloc)
    __kernel_poly                            0x08039825   Thumb Code   170  poly.o(i.__kernel_poly)
    malloc                                   0x080398d1   Thumb Code    64  mallocr.o(i.__malloc$realloc)
    __mathlib_dbl_divzero                    0x08039921   Thumb Code    12  dunder.o(i.__mathlib_dbl_divzero)
    __mathlib_dbl_infnan2                    0x08039931   Thumb Code     4  dunder.o(i.__mathlib_dbl_infnan2)
    __mathlib_dbl_invalid                    0x08039935   Thumb Code    12  dunder.o(i.__mathlib_dbl_invalid)
    __mathlib_dbl_overflow                   0x08039941   Thumb Code    14  dunder.o(i.__mathlib_dbl_overflow)
    __mathlib_dbl_underflow                  0x08039951   Thumb Code    10  dunder.o(i.__mathlib_dbl_underflow)
    __scatterload_copy                       0x08039961   Thumb Code    14  handlers.o(i.__scatterload_copy)
    __scatterload_null                       0x0803996f   Thumb Code     2  handlers.o(i.__scatterload_null)
    __scatterload_zeroinit                   0x08039971   Thumb Code    14  handlers.o(i.__scatterload_zeroinit)
    __set_errno                              0x08039981   Thumb Code     6  errno.o(i.__set_errno)
    _crc                                     0x0803998d   Thumb Code    26  dlt645_data.o(i._crc)
    _is_digit                                0x08039b2d   Thumb Code    14  scanf_fp.o(i._is_digit)
    addCommandListParams                     0x0803a265   Thumb Code    96  device_message.o(i.addCommandListParams)
    addDevice                                0x0803a321   Thumb Code   216  device_message.o(i.addDevice)
    addGatewayParams                         0x0803a45d   Thumb Code   210  device_message.o(i.addGatewayParams)
    addSensorListParams                      0x0803a5dd   Thumb Code   256  device_message.o(i.addSensorListParams)
    cJSON_Delete                             0x0803a7b9   Thumb Code    84  cjson.o(i.cJSON_Delete)
    cJSON_GetObjectItemCaseSensitive         0x0803a811   Thumb Code    18  cjson.o(i.cJSON_GetObjectItemCaseSensitive)
    cJSON_IsNumber                           0x0803a823   Thumb Code    22  cjson.o(i.cJSON_IsNumber)
    cJSON_IsString                           0x0803a839   Thumb Code    22  cjson.o(i.cJSON_IsString)
    cJSON_Parse                              0x0803a869   Thumb Code    16  cjson.o(i.cJSON_Parse)
    cJSON_ParseWithLengthOpts                0x0803a879   Thumb Code   204  cjson.o(i.cJSON_ParseWithLengthOpts)
    cJSON_ParseWithOpts                      0x0803a94d   Thumb Code    40  cjson.o(i.cJSON_ParseWithOpts)
    check_ota_event                          0x0803a9bd   Thumb Code    72  otaevent.o(i.check_ota_event)
    config_485_port                          0x0803aa55   Thumb Code   240  usart.o(i.config_485_port)
    data_package_translate_to_int            0x0803ab5d   Thumb Code   254  dlt645_data.o(i.data_package_translate_to_int)
    delay_1ms                                0x0803ac61   Thumb Code    16  systick.o(i.delay_1ms)
    delay_decrement                          0x0803ac75   Thumb Code    18  systick.o(i.delay_decrement)
    dlt645_1997_read_data                    0x0803ad71   Thumb Code   152  dlt645_1997.o(i.dlt645_1997_read_data)
    dlt645_1997_recv_check                   0x0803ae09   Thumb Code    82  dlt645_1997.o(i.dlt645_1997_recv_check)
    dlt645_2007_parsing_data                 0x0803ae5d   Thumb Code   888  dlt645_2007.o(i.dlt645_2007_parsing_data)
    dlt645_2007_read_data                    0x0803b23d   Thumb Code   174  dlt645_2007.o(i.dlt645_2007_read_data)
    dlt645_2007_recv_check                   0x0803b2eb   Thumb Code    84  dlt645_2007.o(i.dlt645_2007_recv_check)
    dlt645_common_check                      0x0803b33f   Thumb Code   124  dlt645_data.o(i.dlt645_common_check)
    dlt645_data_parse_by_format_to_float     0x0803b3bd   Thumb Code   136  dlt645_data.o(i.dlt645_data_parse_by_format_to_float)
    dlt645_init                              0x0803b511   Thumb Code    30  dlt645_port.o(i.dlt645_init)
    dlt645_read_data                         0x0803b539   Thumb Code    62  dlt645.o(i.dlt645_read_data)
    dlt645_receive_msg                       0x0803b577   Thumb Code    70  dlt645.o(i.dlt645_receive_msg)
    dlt645_send_msg                          0x0803b5bd   Thumb Code    46  dlt645.o(i.dlt645_send_msg)
    dlt645_set_addr                          0x0803b5eb   Thumb Code    42  dlt645.o(i.dlt645_set_addr)
    dlt_callback                             0x0803b615   Thumb Code   118  dlt645_port.o(i.dlt_callback)
    dma_channel_disable                      0x0803b69d   Thumb Code    50  gd32f10x_dma.o(i.dma_channel_disable)
    dma_channel_enable                       0x0803b6cf   Thumb Code    50  gd32f10x_dma.o(i.dma_channel_enable)
    dma_circulation_disable                  0x0803b701   Thumb Code    50  gd32f10x_dma.o(i.dma_circulation_disable)
    dma_config                               0x0803b735   Thumb Code   122  usart.o(i.dma_config)
    dma_config_change                        0x0803b7bd   Thumb Code   120  usart.o(i.dma_config_change)
    dma_deinit                               0x0803b83d   Thumb Code   112  gd32f10x_dma.o(i.dma_deinit)
    dma_init                                 0x0803b8ad   Thumb Code   302  gd32f10x_dma.o(i.dma_init)
    dma_interrupt_enable                     0x0803b9db   Thumb Code    50  gd32f10x_dma.o(i.dma_interrupt_enable)
    dma_interrupt_flag_clear                 0x0803ba0d   Thumb Code    16  gd32f10x_dma.o(i.dma_interrupt_flag_clear)
    dma_memory_to_memory_disable             0x0803ba1d   Thumb Code    50  gd32f10x_dma.o(i.dma_memory_to_memory_disable)
    exti_init                                0x0803ba69   Thumb Code   184  gd32f10x_exti.o(i.exti_init)
    exti_interrupt_flag_clear                0x0803bb25   Thumb Code     6  gd32f10x_exti.o(i.exti_interrupt_flag_clear)
    exti_interrupt_flag_get                  0x0803bb31   Thumb Code    18  gd32f10x_exti.o(i.exti_interrupt_flag_get)
    fputc                                    0x0803bba9   Thumb Code    32  log.o(i.fputc)
    fwdgt_counter_reload                     0x0803bbcd   Thumb Code    10  gd32f10x_fwdgt.o(i.fwdgt_counter_reload)
    fwdgt_write_enable                       0x0803bbdd   Thumb Code    10  gd32f10x_fwdgt.o(i.fwdgt_write_enable)
    gd_485_DE_pin_init                       0x0803bbed   Thumb Code    36  usart.o(i.gd_485_DE_pin_init)
    gd_485_DE_tx                             0x0803bc15   Thumb Code    10  usart.o(i.gd_485_DE_tx)
    gd_EC800M_pin_init                       0x0803bc25   Thumb Code    62  usart.o(i.gd_EC800M_pin_init)
    gd_com_init                              0x0803bc6d   Thumb Code   210  usart.o(i.gd_com_init)
    gd_eval_key_init                         0x0803bd69   Thumb Code    98  key.o(i.gd_eval_key_init)
    gd_eval_led_init                         0x0803bde9   Thumb Code    60  led.o(i.gd_eval_led_init)
    gd_eval_led_toggle                       0x0803be35   Thumb Code    46  led.o(i.gd_eval_led_toggle)
    gd_pull_EC800M_pwr_down                  0x0803be6d   Thumb Code     8  usart.o(i.gd_pull_EC800M_pwr_down)
    gd_pull_EC800M_pwr_up                    0x0803be79   Thumb Code     8  usart.o(i.gd_pull_EC800M_pwr_up)
    gd_pull_EC800M_rst_down                  0x0803be85   Thumb Code    10  usart.o(i.gd_pull_EC800M_rst_down)
    gd_pull_EC800M_rst_up                    0x0803be95   Thumb Code    10  usart.o(i.gd_pull_EC800M_rst_up)
    get_gateway_config_params                0x0803bea9   Thumb Code     4  device_message.o(i.get_gateway_config_params)
    gettick                                  0x0803bf05   Thumb Code     6  systick.o(i.gettick)
    gpio_bit_reset                           0x0803bf11   Thumb Code     4  gd32f10x_gpio.o(i.gpio_bit_reset)
    gpio_bit_set                             0x0803bf15   Thumb Code     4  gd32f10x_gpio.o(i.gpio_bit_set)
    gpio_bit_write                           0x0803bf19   Thumb Code    10  gd32f10x_gpio.o(i.gpio_bit_write)
    gpio_exti_source_select                  0x0803bf25   Thumb Code   146  gd32f10x_gpio.o(i.gpio_exti_source_select)
    gpio_init                                0x0803bfbd   Thumb Code   172  gd32f10x_gpio.o(i.gpio_init)
    gpio_input_bit_get                       0x0803c069   Thumb Code    16  gd32f10x_gpio.o(i.gpio_input_bit_get)
    gpio_pin_remap_config                    0x0803c079   Thumb Code   138  gd32f10x_gpio.o(i.gpio_pin_remap_config)
    http_load_config                         0x0803c109   Thumb Code    92  main.o(i.http_load_config)
    main                                     0x0803c1c9   Thumb Code   282  main.o(i.main)
    mmodbus_callback                         0x0803c33d   Thumb Code   108  mmodbus.o(i.mmodbus_callback)
    mmodbus_crc16                            0x0803c3b9   Thumb Code    42  mmodbus.o(i.mmodbus_crc16)
    mmodbus_init                             0x0803c3e9   Thumb Code    30  mmodbus.o(i.mmodbus_init)
    mmodbus_readCoils                        0x0803c411   Thumb Code   210  mmodbus.o(i.mmodbus_readCoils)
    mmodbus_readHoldingRegisters16i          0x0803c4ed   Thumb Code   138  mmodbus.o(i.mmodbus_readHoldingRegisters16i)
    mmodbus_readHoldingRegisters8i           0x0803c57d   Thumb Code   256  mmodbus.o(i.mmodbus_readHoldingRegisters8i)
    mmodbus_receiveRaw                       0x0803c685   Thumb Code    90  mmodbus.o(i.mmodbus_receiveRaw)
    mmodbus_sendRaw                          0x0803c6ed   Thumb Code   236  mmodbus.o(i.mmodbus_sendRaw)
    mmodbus_set16bitOrder                    0x0803c7e5   Thumb Code     8  mmodbus.o(i.mmodbus_set16bitOrder)
    mmodbus_writeCoil                        0x0803c7f1   Thumb Code   134  mmodbus.o(i.mmodbus_writeCoil)
    mmodbus_writeHoldingRegister16i          0x0803c881   Thumb Code   124  mmodbus.o(i.mmodbus_writeHoldingRegister16i)
    nvic_config                              0x0803c905   Thumb Code    52  usart.o(i.nvic_config)
    nvic_irq_enable                          0x0803c939   Thumb Code   162  gd32f10x_misc.o(i.nvic_irq_enable)
    nvic_priority_group_set                  0x0803c9e5   Thumb Code    10  gd32f10x_misc.o(i.nvic_priority_group_set)
    nvic_vector_table_set                    0x0803c9f9   Thumb Code    16  gd32f10x_misc.o(i.nvic_vector_table_set)
    parseIntField                            0x0803ca11   Thumb Code    42  device_message.o(i.parseIntField)
    parseMQTTData                            0x0803ca3d   Thumb Code  1168  parsedevicemessage.o(i.parseMQTTData)
    parseStringField                         0x0803cecd   Thumb Code    44  device_message.o(i.parseStringField)
    pow                                      0x0803d595   Thumb Code  2512  pow.o(i.pow)
    processIntData                           0x0803df6d   Thumb Code    34  parsedevicemessage.o(i.processIntData)
    processStringData                        0x0803df8f   Thumb Code    36  parsedevicemessage.o(i.processStringData)
    rcu_clock_freq_get                       0x0803dfb5   Thumb Code   264  gd32f10x_rcu.o(i.rcu_clock_freq_get)
    rcu_osci_on                              0x0803e0d9   Thumb Code    28  gd32f10x_rcu.o(i.rcu_osci_on)
    rcu_periph_clock_enable                  0x0803e0f9   Thumb Code    28  gd32f10x_rcu.o(i.rcu_periph_clock_enable)
    rcu_periph_reset_disable                 0x0803e119   Thumb Code    28  gd32f10x_rcu.o(i.rcu_periph_reset_disable)
    rcu_periph_reset_enable                  0x0803e139   Thumb Code    28  gd32f10x_rcu.o(i.rcu_periph_reset_enable)
    readID                                   0x0803e159   Thumb Code   232  main.o(i.readID)
    realloc                                  0x0803e249   Thumb Code   102  mallocr.o(i.realloc)
    ring_buffer_init                         0x0803e2b5   Thumb Code     8  ring_buffer.o(i.ring_buffer_init)
    ring_buffer_read                         0x0803e2bd   Thumb Code    40  ring_buffer.o(i.ring_buffer_read)
    ring_buffer_write                        0x0803e2e5   Thumb Code    28  ring_buffer.o(i.ring_buffer_write)
    runtime_increment                        0x0803e301   Thumb Code    30  systick.o(i.runtime_increment)
    spi_i2s_data_receive                     0x0803e361   Thumb Code     8  gd32f10x_spi.o(i.spi_i2s_data_receive)
    spi_i2s_data_transmit                    0x0803e369   Thumb Code     4  gd32f10x_spi.o(i.spi_i2s_data_transmit)
    spi_i2s_flag_get                         0x0803e36d   Thumb Code    16  gd32f10x_spi.o(i.spi_i2s_flag_get)
    sqrt                                     0x0803e37d   Thumb Code    76  sqrt.o(i.sqrt)
    strtod                                   0x0803e3c9   Thumb Code    28  strtod.o(i.strtod)
    systick_config                           0x0803e4b1   Thumb Code    74  systick.o(i.systick_config)
    task_fwdgt_reload                        0x0803e501   Thumb Code    12  main.o(i.task_fwdgt_reload)
    usart_baudrate_set                       0x0803e50d   Thumb Code   136  gd32f10x_usart.o(i.usart_baudrate_set)
    usart_data_receive                       0x0803e59d   Thumb Code    10  gd32f10x_usart.o(i.usart_data_receive)
    usart_data_transmit                      0x0803e5a7   Thumb Code     8  gd32f10x_usart.o(i.usart_data_transmit)
    usart_deinit                             0x0803e5b1   Thumb Code   136  gd32f10x_usart.o(i.usart_deinit)
    usart_dma_transmit_config                0x0803e641   Thumb Code    16  gd32f10x_usart.o(i.usart_dma_transmit_config)
    usart_enable                             0x0803e651   Thumb Code    10  gd32f10x_usart.o(i.usart_enable)
    usart_flag_clear                         0x0803e65b   Thumb Code    26  gd32f10x_usart.o(i.usart_flag_clear)
    usart_flag_get                           0x0803e675   Thumb Code    30  gd32f10x_usart.o(i.usart_flag_get)
    usart_hardware_flow_cts_config           0x0803e693   Thumb Code    16  gd32f10x_usart.o(i.usart_hardware_flow_cts_config)
    usart_hardware_flow_rts_config           0x0803e6a3   Thumb Code    16  gd32f10x_usart.o(i.usart_hardware_flow_rts_config)
    usart_interrupt_enable                   0x0803e6b3   Thumb Code    26  gd32f10x_usart.o(i.usart_interrupt_enable)
    usart_interrupt_flag_clear               0x0803e6cd   Thumb Code    26  gd32f10x_usart.o(i.usart_interrupt_flag_clear)
    usart_interrupt_flag_get                 0x0803e6e7   Thumb Code    56  gd32f10x_usart.o(i.usart_interrupt_flag_get)
    usart_parity_config                      0x0803e71f   Thumb Code    16  gd32f10x_usart.o(i.usart_parity_config)
    usart_receive_config                     0x0803e72f   Thumb Code    16  gd32f10x_usart.o(i.usart_receive_config)
    usart_stop_bit_set                       0x0803e73f   Thumb Code    16  gd32f10x_usart.o(i.usart_stop_bit_set)
    usart_transmit_config                    0x0803e74f   Thumb Code    16  gd32f10x_usart.o(i.usart_transmit_config)
    usart_word_length_set                    0x0803e75f   Thumb Code    16  gd32f10x_usart.o(i.usart_word_length_set)
    xmodem                                   0x0803e89d   Thumb Code   460  otaevent.o(i.xmodem)
    __mathlib_zero                           0x0803ed10   Data           8  qnan.o(.constdata)
    __ctype_table                            0x0803ed18   Data         129  ctype_o.o(.constdata)
    Region$$Table$$Base                      0x0803efc4   Number         0  anon$$obj.o(Region$$Table)
    Region$$Table$$Limit                     0x0803efe4   Number         0  anon$$obj.o(Region$$Table)
    SystemCoreClock                          0x20000000   Data           4  system_gd32f10x.o(.data)
    protocol                                 0x2000000c   Data           1  parsedevicemessage.o(.data)
    RxState                                  0x20000024   Data           4  pc.o(.data)
    RxPacket                                 0x20000028   Data           8  pc.o(.data)
    json_buf_num                             0x20000030   Data           4  pc.o(.data)
    UART0_RX_STAT                            0x2000008c   Data           1  usart.o(.data)
    UART0_RX_MQTT_SUB_STAT                   0x2000008d   Data           1  usart.o(.data)
    UART0_RX_NUM                             0x20000090   Data           4  usart.o(.data)
    dlt645                                   0x200000bc   Data          20  dlt645_port.o(.data)
    __stdout                                 0x200000d0   Data           4  stdout.o(.data)
    __microlib_freelist                      0x200000d4   Data           4  mvars.o(.data)
    __microlib_freelist_initialised          0x200000d8   Data           4  mvars.o(.data)
    gateway_config_params                    0x200000e0   Data         216  device_message.o(.bss)
    mqttRecv                                 0x200001b8   Data        4104  parsedevicemessage.o(.bss)
    mmodbus                                  0x200011c0   Data          84  mmodbus.o(.bss)
    ota_data                                 0x20001294   Data         138  otaevent.o(.bss)
    w25q32_data                              0x2000131e   Data         256  otaevent.o(.bss)
    UART0_RX_BUF                             0x2000141e   Data        4096  usart.o(.bss)
    usart1_rx_buf                            0x2000241e   Data         258  usart.o(.bss)
    __heap_base                              0x200025f8   Data           0  startup_gd32f10x_xd.o(HEAP)
    __heap_limit                             0x200125f8   Data           0  startup_gd32f10x_xd.o(HEAP)
    __initial_sp                             0x200145f8   Data           0  startup_gd32f10x_xd.o(STACK)



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

Memory Map of the image

  Image Entry point : 0x08037131

  Load Region LR_IROM1 (Base: 0x08037000, Size: 0x000080c4, Max: 0x00100000, ABSOLUTE)

    Execution Region ER_IROM1 (Exec base: 0x08037000, Load base: 0x08037000, Size: 0x00007fe4, Max: 0x00100000, ABSOLUTE)

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

    0x08037000   0x08037000   0x00000130   Data   RO          133    RESET               startup_gd32f10x_xd.o
    0x08037130   0x08037130   0x00000000   Code   RO         5701  * .ARM.Collect$$$$00000000  mc_w.l(entry.o)
    0x08037130   0x08037130   0x00000004   Code   RO         6084    .ARM.Collect$$$$00000001  mc_w.l(entry2.o)
    0x08037134   0x08037134   0x00000004   Code   RO         6087    .ARM.Collect$$$$00000004  mc_w.l(entry5.o)
    0x08037138   0x08037138   0x00000000   Code   RO         6089    .ARM.Collect$$$$00000008  mc_w.l(entry7b.o)
    0x08037138   0x08037138   0x00000000   Code   RO         6091    .ARM.Collect$$$$0000000A  mc_w.l(entry8b.o)
    0x08037138   0x08037138   0x00000008   Code   RO         6092    .ARM.Collect$$$$0000000B  mc_w.l(entry9a.o)
    0x08037140   0x08037140   0x00000004   Code   RO         6099    .ARM.Collect$$$$0000000E  mc_w.l(entry12b.o)
    0x08037144   0x08037144   0x00000000   Code   RO         6094    .ARM.Collect$$$$0000000F  mc_w.l(entry10a.o)
    0x08037144   0x08037144   0x00000000   Code   RO         6096    .ARM.Collect$$$$00000011  mc_w.l(entry11a.o)
    0x08037144   0x08037144   0x00000004   Code   RO         6085    .ARM.Collect$$$$00002712  mc_w.l(entry2.o)
    0x08037148   0x08037148   0x00000024   Code   RO          134    .text               startup_gd32f10x_xd.o
    0x0803716c   0x0803716c   0x0000000c   Code   RO         5704    .text               mc_w.l(tolower.o)
    0x08037178   0x08037178   0x00000024   Code   RO         5706    .text               mc_w.l(memcpya.o)
    0x0803719c   0x0803719c   0x00000024   Code   RO         5708    .text               mc_w.l(memseta.o)
    0x080371c0   0x080371c0   0x00000024   Code   RO         5710    .text               mc_w.l(strstr.o)
    0x080371e4   0x080371e4   0x00000014   Code   RO         5712    .text               mc_w.l(strchr.o)
    0x080371f8   0x080371f8   0x0000000e   Code   RO         5714    .text               mc_w.l(strlen.o)
    0x08037206   0x08037206   0x0000001c   Code   RO         5716    .text               mc_w.l(strcmp.o)
    0x08037222   0x08037222   0x0000001a   Code   RO         5718    .text               mc_w.l(memcmp.o)
    0x0803723c   0x0803723c   0x00000012   Code   RO         5720    .text               mc_w.l(strcpy.o)
    0x0803724e   0x0803724e   0x0000001e   Code   RO         5722    .text               mc_w.l(strncmp.o)
    0x0803726c   0x0803726c   0x00000038   Code   RO         6015    .text               mc_w.l(__0sscanf.o)
    0x080372a4   0x080372a4   0x0000014c   Code   RO         6017    .text               mc_w.l(_scanf_int.o)
    0x080373f0   0x080373f0   0x000000e0   Code   RO         6019    .text               mc_w.l(_scanf_str.o)
    0x080374d0   0x080374d0   0x00000360   Code   RO         6021    .text               mc_w.l(scanf_fp.o)
    0x08037830   0x08037830   0x00000070   Code   RO         6025    .text               mc_w.l(strtol.o)
    0x080378a0   0x080378a0   0x0000014e   Code   RO         6031    .text               mf_w.l(dadd.o)
    0x080379ee   0x080379ee   0x000000e4   Code   RO         6033    .text               mf_w.l(dmul.o)
    0x08037ad2   0x08037ad2   0x000000de   Code   RO         6035    .text               mf_w.l(ddiv.o)
    0x08037bb0   0x08037bb0   0x0000000a   Code   RO         6039    .text               mf_w.l(ffltui.o)
    0x08037bba   0x08037bba   0x00000022   Code   RO         6041    .text               mf_w.l(dflti.o)
    0x08037bdc   0x08037bdc   0x0000001a   Code   RO         6043    .text               mf_w.l(dfltui.o)
    0x08037bf6   0x08037bf6   0x0000003e   Code   RO         6047    .text               mf_w.l(dfixi.o)
    0x08037c34   0x08037c34   0x00000026   Code   RO         6049    .text               mf_w.l(f2d.o)
    0x08037c5a   0x08037c5a   0x00000002   PAD
    0x08037c5c   0x08037c5c   0x00000030   Code   RO         6051    .text               mf_w.l(cdcmple.o)
    0x08037c8c   0x08037c8c   0x00000030   Code   RO         6053    .text               mf_w.l(cdrcmple.o)
    0x08037cbc   0x08037cbc   0x00000038   Code   RO         6055    .text               mf_w.l(d2f.o)
    0x08037cf4   0x08037cf4   0x0000002c   Code   RO         6101    .text               mc_w.l(uidiv.o)
    0x08037d20   0x08037d20   0x00000062   Code   RO         6103    .text               mc_w.l(uldiv.o)
    0x08037d82   0x08037d82   0x0000001e   Code   RO         6105    .text               mc_w.l(llshl.o)
    0x08037da0   0x08037da0   0x00000020   Code   RO         6107    .text               mc_w.l(llushr.o)
    0x08037dc0   0x08037dc0   0x00000024   Code   RO         6109    .text               mc_w.l(llsshr.o)
    0x08037de4   0x08037de4   0x00000008   Code   RO         6111    .text               mc_w.l(ctype_o.o)
    0x08037dec   0x08037dec   0x00000012   Code   RO         6133    .text               mc_w.l(isspace_o.o)
    0x08037dfe   0x08037dfe   0x0000001c   Code   RO         6148    .text               mc_w.l(_chval.o)
    0x08037e1a   0x08037e1a   0x00000002   PAD
    0x08037e1c   0x08037e1c   0x00000028   Code   RO         6150    .text               mc_w.l(scanf_char.o)
    0x08037e44   0x08037e44   0x00000040   Code   RO         6152    .text               mc_w.l(_sgetc.o)
    0x08037e84   0x08037e84   0x0000009e   Code   RO         6154    .text               mc_w.l(_strtoul.o)
    0x08037f22   0x08037f22   0x00000002   PAD
    0x08037f24   0x08037f24   0x0000009c   Code   RO         6156    .text               mc_w.l(strtod.o)
    0x08037fc0   0x08037fc0   0x00000000   Code   RO         6158    .text               mc_w.l(iusefp.o)
    0x08037fc0   0x08037fc0   0x0000006e   Code   RO         6159    .text               mf_w.l(fepilogue.o)
    0x0803802e   0x0803802e   0x000000ba   Code   RO         6161    .text               mf_w.l(depilogue.o)
    0x080380e8   0x080380e8   0x0000002e   Code   RO         6163    .text               mf_w.l(dscalb.o)
    0x08038116   0x08038116   0x00000018   Code   RO         6165    .text               mf_w.l(dfltul.o)
    0x0803812e   0x0803812e   0x00000030   Code   RO         6167    .text               mf_w.l(dfixul.o)
    0x0803815e   0x0803815e   0x00000002   PAD
    0x08038160   0x08038160   0x00000024   Code   RO         6169    .text               mc_w.l(init.o)
    0x08038184   0x08038184   0x00000330   Code   RO         6173    .text               mc_w.l(_scanf.o)
    0x080384b4   0x080384b4   0x000000a2   Code   RO         6175    .text               mf_w.l(dsqrt.o)
    0x08038556   0x08038556   0x00000004   Code   RO          140    i.BusFault_Handler  gd32f10x_it.o
    0x0803855a   0x0803855a   0x00000002   PAD
    0x0803855c   0x0803855c   0x0000001c   Code   RO         4588    i.Clear_DMA_Buffer  usart.o
    0x08038578   0x08038578   0x00000168   Code   RO          376    i.ConnectMQTTSever  ec800m.o
    0x080386e0   0x080386e0   0x00000014   Code   RO          141    i.DMA0_Channel4_IRQHandler  gd32f10x_it.o
    0x080386f4   0x080386f4   0x00000002   Code   RO          142    i.DebugMon_Handler  gd32f10x_it.o
    0x080386f6   0x080386f6   0x00000002   PAD
    0x080386f8   0x080386f8   0x00000150   Code   RO          377    i.EC800MGetUrl      ec800m.o
    0x08038848   0x08038848   0x00000058   Code   RO          378    i.EC800MPwoerOn     ec800m.o
    0x080388a0   0x080388a0   0x00000034   Code   RO          379    i.EC800MSendCmd     ec800m.o
    0x080388d4   0x080388d4   0x00000070   Code   RO          380    i.EC800MSetPDP      ec800m.o
    0x08038944   0x08038944   0x00000010   Code   RO          381    i.EC800MWaitReady   ec800m.o
    0x08038954   0x08038954   0x00000058   Code   RO         4793    i.EXTI1_IRQHandler  key.o
    0x080389ac   0x080389ac   0x00000004   Code   RO          143    i.HardFault_Handler  gd32f10x_it.o
    0x080389b0   0x080389b0   0x000000c4   Code   RO          340    i.LogPrint          log.o
    0x08038a74   0x08038a74   0x0000034c   Code   RO          382    i.MQTTPublish       ec800m.o
    0x08038dc0   0x08038dc0   0x0000005c   Code   RO          383    i.MQTTSubTopic      ec800m.o
    0x08038e1c   0x08038e1c   0x0000003a   Code   RO          817    i.MQTT_Alarm_clock  main.o
    0x08038e56   0x08038e56   0x00000002   PAD
    0x08038e58   0x08038e58   0x00000080   Code   RO          785    i.MQTT_BUFFER_READ  mqttrecv.o
    0x08038ed8   0x08038ed8   0x00000004   Code   RO          144    i.MemManage_Handler  gd32f10x_it.o
    0x08038edc   0x08038edc   0x00000002   Code   RO          145    i.NMI_Handler       gd32f10x_it.o
    0x08038ede   0x08038ede   0x00000002   PAD
    0x08038ee0   0x08038ee0   0x00000028   Code   RO          285    i.NVIC_SetPriority  systick.o
    0x08038f08   0x08038f08   0x00000002   Code   RO          146    i.PendSV_Handler    gd32f10x_it.o
    0x08038f0a   0x08038f0a   0x00000002   PAD
    0x08038f0c   0x08038f0c   0x00000258   Code   RO          518    i.Read_Data         parsedevicemessage.o
    0x08039164   0x08039164   0x000000a0   Code   RO          786    i.Receive_MQTT_DataPack  mqttrecv.o
    0x08039204   0x08039204   0x00000038   Code   RO         4549    i.SPI0_ReadWriteByte  spi.o
    0x0803923c   0x0803923c   0x0000001a   Code   RO         4550    i.SPI0_Write        spi.o
    0x08039256   0x08039256   0x00000002   Code   RO          147    i.SVC_Handler       gd32f10x_it.o
    0x08039258   0x08039258   0x0000000c   Code   RO          148    i.SysTick_Handler   gd32f10x_it.o
    0x08039264   0x08039264   0x000000d8   Code   RO            3    i.SystemInit        system_gd32f10x.o
    0x0803933c   0x0803933c   0x00000048   Code   RO          149    i.USART0_IRQHandler  gd32f10x_it.o
    0x08039384   0x08039384   0x00000024   Code   RO          150    i.USART1_IRQHandler  gd32f10x_it.o
    0x080393a8   0x080393a8   0x00000194   Code   RO          882    i.USART2_IRQHandler  pc.o
    0x0803953c   0x0803953c   0x00000004   Code   RO          151    i.UsageFault_Handler  gd32f10x_it.o
    0x08039540   0x08039540   0x00000024   Code   RO         4743    i.W25Q32_Enable     w25q32.o
    0x08039564   0x08039564   0x0000004c   Code   RO         4744    i.W25Q32_Erase64K   w25q32.o
    0x080395b0   0x080395b0   0x00000054   Code   RO         4746    i.W25Q32_PageWrite  w25q32.o
    0x08039604   0x08039604   0x00000030   Code   RO         4748    i.W25Q32_WaitBusy   w25q32.o
    0x08039634   0x08039634   0x00000048   Code   RO          519    i.WaitForUpData     parsedevicemessage.o
    0x0803967c   0x0803967c   0x0000005c   Code   RO          384    i.WaitResponse      ec800m.o
    0x080396d8   0x080396d8   0x00000044   Code   RO          931    i.Xmodem_CRC16      otaevent.o
    0x0803971c   0x0803971c   0x00000020   Code   RO         5959    i.__0printf         mc_w.l(printfa.o)
    0x0803973c   0x0803973c   0x00000028   Code   RO         5961    i.__0sprintf        mc_w.l(printfa.o)
    0x08039764   0x08039764   0x00000034   Code   RO         5964    i.__0vsnprintf      mc_w.l(printfa.o)
    0x08039798   0x08039798   0x00000028   Code   RO         6071    i.__ARM_fpclassify  m_ws.l(fpclassify.o)
    0x080397c0   0x080397c0   0x00000008   Code   RO         6141    i.__aeabi_errno_addr  mc_w.l(errno.o)
    0x080397c8   0x080397c8   0x0000005c   Code   RO         5991    i.__free$realloc    mc_w.l(mallocr.o)
    0x08039824   0x08039824   0x000000aa   Code   RO         6073    i.__kernel_poly     m_ws.l(poly.o)
    0x080398ce   0x080398ce   0x00000002   PAD
    0x080398d0   0x080398d0   0x00000050   Code   RO         5992    i.__malloc$realloc  mc_w.l(mallocr.o)
    0x08039920   0x08039920   0x00000010   Code   RO         6057    i.__mathlib_dbl_divzero  m_ws.l(dunder.o)
    0x08039930   0x08039930   0x00000004   Code   RO         6059    i.__mathlib_dbl_infnan2  m_ws.l(dunder.o)
    0x08039934   0x08039934   0x0000000c   Code   RO         6060    i.__mathlib_dbl_invalid  m_ws.l(dunder.o)
    0x08039940   0x08039940   0x0000000e   Code   RO         6061    i.__mathlib_dbl_overflow  m_ws.l(dunder.o)
    0x0803994e   0x0803994e   0x00000002   PAD
    0x08039950   0x08039950   0x00000010   Code   RO         6063    i.__mathlib_dbl_underflow  m_ws.l(dunder.o)
    0x08039960   0x08039960   0x0000000e   Code   RO         6182    i.__scatterload_copy  mc_w.l(handlers.o)
    0x0803996e   0x0803996e   0x00000002   Code   RO         6183    i.__scatterload_null  mc_w.l(handlers.o)
    0x08039970   0x08039970   0x0000000e   Code   RO         6184    i.__scatterload_zeroinit  mc_w.l(handlers.o)
    0x0803997e   0x0803997e   0x00000002   PAD
    0x08039980   0x08039980   0x0000000c   Code   RO         6143    i.__set_errno       mc_w.l(errno.o)
    0x0803998c   0x0803998c   0x0000001a   Code   RO         5573    i._crc              dlt645_data.o
    0x080399a6   0x080399a6   0x00000002   PAD
    0x080399a8   0x080399a8   0x00000184   Code   RO         5966    i._fp_digits        mc_w.l(printfa.o)
    0x08039b2c   0x08039b2c   0x0000000e   Code   RO         6023    i._is_digit         mc_w.l(scanf_fp.o)
    0x08039b3a   0x08039b3a   0x00000002   PAD
    0x08039b3c   0x08039b3c   0x000006b4   Code   RO         5967    i._printf_core      mc_w.l(printfa.o)
    0x0803a1f0   0x0803a1f0   0x00000024   Code   RO         5968    i._printf_post_padding  mc_w.l(printfa.o)
    0x0803a214   0x0803a214   0x0000002e   Code   RO         5969    i._printf_pre_padding  mc_w.l(printfa.o)
    0x0803a242   0x0803a242   0x00000016   Code   RO         5970    i._snputc           mc_w.l(printfa.o)
    0x0803a258   0x0803a258   0x0000000a   Code   RO         5971    i._sputc            mc_w.l(printfa.o)
    0x0803a262   0x0803a262   0x00000002   PAD
    0x0803a264   0x0803a264   0x000000bc   Code   RO          453    i.addCommandListParams  device_message.o
    0x0803a320   0x0803a320   0x0000013c   Code   RO          454    i.addDevice         device_message.o
    0x0803a45c   0x0803a45c   0x00000180   Code   RO          455    i.addGatewayParams  device_message.o
    0x0803a5dc   0x0803a5dc   0x00000194   Code   RO          457    i.addSensorListParams  device_message.o
    0x0803a770   0x0803a770   0x00000048   Code   RO         4821    i.buffer_skip_whitespace  cjson.o
    0x0803a7b8   0x0803a7b8   0x00000058   Code   RO         4853    i.cJSON_Delete      cjson.o
    0x0803a810   0x0803a810   0x00000012   Code   RO         4867    i.cJSON_GetObjectItemCaseSensitive  cjson.o
    0x0803a822   0x0803a822   0x00000016   Code   RO         4877    i.cJSON_IsNumber    cjson.o
    0x0803a838   0x0803a838   0x00000016   Code   RO         4880    i.cJSON_IsString    cjson.o
    0x0803a84e   0x0803a84e   0x0000001a   Code   RO         4883    i.cJSON_New_Item    cjson.o
    0x0803a868   0x0803a868   0x00000010   Code   RO         4884    i.cJSON_Parse       cjson.o
    0x0803a878   0x0803a878   0x000000d4   Code   RO         4886    i.cJSON_ParseWithLengthOpts  cjson.o
    0x0803a94c   0x0803a94c   0x00000028   Code   RO         4887    i.cJSON_ParseWithOpts  cjson.o
    0x0803a974   0x0803a974   0x00000048   Code   RO         4902    i.case_insensitive_strcmp  cjson.o
    0x0803a9bc   0x0803a9bc   0x00000054   Code   RO          932    i.check_ota_event   otaevent.o
    0x0803aa10   0x0803aa10   0x00000042   Code   RO          520    i.checksum          parsedevicemessage.o
    0x0803aa52   0x0803aa52   0x00000002   PAD
    0x0803aa54   0x0803aa54   0x00000108   Code   RO         4589    i.config_485_port   usart.o
    0x0803ab5c   0x0803ab5c   0x00000104   Code   RO         5574    i.data_package_translate_to_int  dlt645_data.o
    0x0803ac60   0x0803ac60   0x00000014   Code   RO          286    i.delay_1ms         systick.o
    0x0803ac74   0x0803ac74   0x00000018   Code   RO          287    i.delay_decrement   systick.o
    0x0803ac8c   0x0803ac8c   0x000000e4   Code   RO         5661    i.dlt645_1997_parsing_data  dlt645_1997.o
    0x0803ad70   0x0803ad70   0x00000098   Code   RO         5662    i.dlt645_1997_read_data  dlt645_1997.o
    0x0803ae08   0x0803ae08   0x00000052   Code   RO         5663    i.dlt645_1997_recv_check  dlt645_1997.o
    0x0803ae5a   0x0803ae5a   0x00000002   PAD
    0x0803ae5c   0x0803ae5c   0x000003e0   Code   RO         5540    i.dlt645_2007_parsing_data  dlt645_2007.o
    0x0803b23c   0x0803b23c   0x000000ae   Code   RO         5541    i.dlt645_2007_read_data  dlt645_2007.o
    0x0803b2ea   0x0803b2ea   0x00000054   Code   RO         5542    i.dlt645_2007_recv_check  dlt645_2007.o
    0x0803b33e   0x0803b33e   0x0000007c   Code   RO         5576    i.dlt645_common_check  dlt645_data.o
    0x0803b3ba   0x0803b3ba   0x00000002   PAD
    0x0803b3bc   0x0803b3bc   0x0000008c   Code   RO         5577    i.dlt645_data_parse_by_format_to_float  dlt645_data.o
    0x0803b448   0x0803b448   0x00000060   Code   RO         5623    i.dlt645_hw_read    dlt645_port.o
    0x0803b4a8   0x0803b4a8   0x00000068   Code   RO         5624    i.dlt645_hw_write   dlt645_port.o
    0x0803b510   0x0803b510   0x00000028   Code   RO         5625    i.dlt645_init       dlt645_port.o
    0x0803b538   0x0803b538   0x0000003e   Code   RO         5495    i.dlt645_read_data  dlt645.o
    0x0803b576   0x0803b576   0x00000046   Code   RO         5496    i.dlt645_receive_msg  dlt645.o
    0x0803b5bc   0x0803b5bc   0x0000002e   Code   RO         5497    i.dlt645_send_msg   dlt645.o
    0x0803b5ea   0x0803b5ea   0x0000002a   Code   RO         5498    i.dlt645_set_addr   dlt645.o
    0x0803b614   0x0803b614   0x00000088   Code   RO         5626    i.dlt_callback      dlt645_port.o
    0x0803b69c   0x0803b69c   0x00000032   Code   RO         1761    i.dma_channel_disable  gd32f10x_dma.o
    0x0803b6ce   0x0803b6ce   0x00000032   Code   RO         1762    i.dma_channel_enable  gd32f10x_dma.o
    0x0803b700   0x0803b700   0x00000032   Code   RO         1763    i.dma_circulation_disable  gd32f10x_dma.o
    0x0803b732   0x0803b732   0x00000002   PAD
    0x0803b734   0x0803b734   0x00000088   Code   RO         4590    i.dma_config        usart.o
    0x0803b7bc   0x0803b7bc   0x00000080   Code   RO         4591    i.dma_config_change  usart.o
    0x0803b83c   0x0803b83c   0x00000070   Code   RO         1765    i.dma_deinit        gd32f10x_dma.o
    0x0803b8ac   0x0803b8ac   0x0000012e   Code   RO         1768    i.dma_init          gd32f10x_dma.o
    0x0803b9da   0x0803b9da   0x00000032   Code   RO         1770    i.dma_interrupt_enable  gd32f10x_dma.o
    0x0803ba0c   0x0803ba0c   0x00000010   Code   RO         1771    i.dma_interrupt_flag_clear  gd32f10x_dma.o
    0x0803ba1c   0x0803ba1c   0x00000032   Code   RO         1776    i.dma_memory_to_memory_disable  gd32f10x_dma.o
    0x0803ba4e   0x0803ba4e   0x00000002   PAD
    0x0803ba50   0x0803ba50   0x00000018   Code   RO         1780    i.dma_periph_and_channel_check  gd32f10x_dma.o
    0x0803ba68   0x0803ba68   0x000000bc   Code   RO         1961    i.exti_init         gd32f10x_exti.o
    0x0803bb24   0x0803bb24   0x0000000c   Code   RO         1964    i.exti_interrupt_flag_clear  gd32f10x_exti.o
    0x0803bb30   0x0803bb30   0x00000018   Code   RO         1965    i.exti_interrupt_flag_get  gd32f10x_exti.o
    0x0803bb48   0x0803bb48   0x00000060   Code   RO          522    i.extract_data_from_buffer  parsedevicemessage.o
    0x0803bba8   0x0803bba8   0x00000024   Code   RO          341    i.fputc             log.o
    0x0803bbcc   0x0803bbcc   0x00000010   Code   RO         2413    i.fwdgt_counter_reload  gd32f10x_fwdgt.o
    0x0803bbdc   0x0803bbdc   0x00000010   Code   RO         2419    i.fwdgt_write_enable  gd32f10x_fwdgt.o
    0x0803bbec   0x0803bbec   0x00000028   Code   RO         4592    i.gd_485_DE_pin_init  usart.o
    0x0803bc14   0x0803bc14   0x00000010   Code   RO         4594    i.gd_485_DE_tx      usart.o
    0x0803bc24   0x0803bc24   0x00000048   Code   RO         4595    i.gd_EC800M_pin_init  usart.o
    0x0803bc6c   0x0803bc6c   0x000000fc   Code   RO         4599    i.gd_com_init       usart.o
    0x0803bd68   0x0803bd68   0x00000080   Code   RO         4794    i.gd_eval_key_init  key.o
    0x0803bde8   0x0803bde8   0x0000004c   Code   RO         4507    i.gd_eval_led_init  led.o
    0x0803be34   0x0803be34   0x00000038   Code   RO         4510    i.gd_eval_led_toggle  led.o
    0x0803be6c   0x0803be6c   0x0000000c   Code   RO         4600    i.gd_pull_EC800M_pwr_down  usart.o
    0x0803be78   0x0803be78   0x0000000c   Code   RO         4601    i.gd_pull_EC800M_pwr_up  usart.o
    0x0803be84   0x0803be84   0x00000010   Code   RO         4602    i.gd_pull_EC800M_rst_down  usart.o
    0x0803be94   0x0803be94   0x00000010   Code   RO         4603    i.gd_pull_EC800M_rst_up  usart.o
    0x0803bea4   0x0803bea4   0x00000004   Code   RO         4908    i.get_decimal_point  cjson.o
    0x0803bea8   0x0803bea8   0x00000008   Code   RO          458    i.get_gateway_config_params  device_message.o
    0x0803beb0   0x0803beb0   0x00000052   Code   RO         4909    i.get_object_item   cjson.o
    0x0803bf02   0x0803bf02   0x00000002   PAD
    0x0803bf04   0x0803bf04   0x0000000c   Code   RO          288    i.gettick           systick.o
    0x0803bf10   0x0803bf10   0x00000004   Code   RO         2475    i.gpio_bit_reset    gd32f10x_gpio.o
    0x0803bf14   0x0803bf14   0x00000004   Code   RO         2476    i.gpio_bit_set      gd32f10x_gpio.o
    0x0803bf18   0x0803bf18   0x0000000a   Code   RO         2477    i.gpio_bit_write    gd32f10x_gpio.o
    0x0803bf22   0x0803bf22   0x00000002   PAD
    0x0803bf24   0x0803bf24   0x00000098   Code   RO         2482    i.gpio_exti_source_select  gd32f10x_gpio.o
    0x0803bfbc   0x0803bfbc   0x000000ac   Code   RO         2483    i.gpio_init         gd32f10x_gpio.o
    0x0803c068   0x0803c068   0x00000010   Code   RO         2484    i.gpio_input_bit_get  gd32f10x_gpio.o
    0x0803c078   0x0803c078   0x00000090   Code   RO         2489    i.gpio_pin_remap_config  gd32f10x_gpio.o
    0x0803c108   0x0803c108   0x00000070   Code   RO          819    i.http_load_config  main.o
    0x0803c178   0x0803c178   0x00000050   Code   RO         5993    i.internal_alloc    mc_w.l(mallocr.o)
    0x0803c1c8   0x0803c1c8   0x00000174   Code   RO          820    i.main              main.o
    0x0803c33c   0x0803c33c   0x0000007c   Code   RO          591    i.mmodbus_callback  mmodbus.o
    0x0803c3b8   0x0803c3b8   0x00000030   Code   RO          592    i.mmodbus_crc16     mmodbus.o
    0x0803c3e8   0x0803c3e8   0x00000028   Code   RO          593    i.mmodbus_init      mmodbus.o
    0x0803c410   0x0803c410   0x000000dc   Code   RO          595    i.mmodbus_readCoils  mmodbus.o
    0x0803c4ec   0x0803c4ec   0x00000090   Code   RO          601    i.mmodbus_readHoldingRegisters16i  mmodbus.o
    0x0803c57c   0x0803c57c   0x00000108   Code   RO          604    i.mmodbus_readHoldingRegisters8i  mmodbus.o
    0x0803c684   0x0803c684   0x00000068   Code   RO          612    i.mmodbus_receiveRaw  mmodbus.o
    0x0803c6ec   0x0803c6ec   0x000000f8   Code   RO          613    i.mmodbus_sendRaw   mmodbus.o
    0x0803c7e4   0x0803c7e4   0x0000000c   Code   RO          614    i.mmodbus_set16bitOrder  mmodbus.o
    0x0803c7f0   0x0803c7f0   0x00000090   Code   RO          616    i.mmodbus_writeCoil  mmodbus.o
    0x0803c880   0x0803c880   0x00000084   Code   RO          617    i.mmodbus_writeHoldingRegister16i  mmodbus.o
    0x0803c904   0x0803c904   0x00000034   Code   RO         4604    i.nvic_config       usart.o
    0x0803c938   0x0803c938   0x000000ac   Code   RO         2791    i.nvic_irq_enable   gd32f10x_misc.o
    0x0803c9e4   0x0803c9e4   0x00000014   Code   RO         2792    i.nvic_priority_group_set  gd32f10x_misc.o
    0x0803c9f8   0x0803c9f8   0x00000018   Code   RO         2793    i.nvic_vector_table_set  gd32f10x_misc.o
    0x0803ca10   0x0803ca10   0x0000002a   Code   RO          459    i.parseIntField     device_message.o
    0x0803ca3a   0x0803ca3a   0x00000002   PAD
    0x0803ca3c   0x0803ca3c   0x00000490   Code   RO          523    i.parseMQTTData     parsedevicemessage.o
    0x0803cecc   0x0803cecc   0x00000034   Code   RO          460    i.parseStringField  device_message.o
    0x0803cf00   0x0803cf00   0x000000f8   Code   RO         4911    i.parse_array       cjson.o
    0x0803cff8   0x0803cff8   0x0000005a   Code   RO         4912    i.parse_hex4        cjson.o
    0x0803d052   0x0803d052   0x00000002   PAD
    0x0803d054   0x0803d054   0x00000138   Code   RO         4913    i.parse_number      cjson.o
    0x0803d18c   0x0803d18c   0x0000013e   Code   RO         4914    i.parse_object      cjson.o
    0x0803d2ca   0x0803d2ca   0x0000018c   Code   RO         4915    i.parse_string      cjson.o
    0x0803d456   0x0803d456   0x00000002   PAD
    0x0803d458   0x0803d458   0x0000013c   Code   RO         4916    i.parse_value       cjson.o
    0x0803d594   0x0803d594   0x000009d8   Code   RO         5688    i.pow               m_ws.l(pow.o)
    0x0803df6c   0x0803df6c   0x00000022   Code   RO          524    i.processIntData    parsedevicemessage.o
    0x0803df8e   0x0803df8e   0x00000024   Code   RO          525    i.processStringData  parsedevicemessage.o
    0x0803dfb2   0x0803dfb2   0x00000002   PAD
    0x0803dfb4   0x0803dfb4   0x00000124   Code   RO         2941    i.rcu_clock_freq_get  gd32f10x_rcu.o
    0x0803e0d8   0x0803e0d8   0x00000020   Code   RO         2955    i.rcu_osci_on       gd32f10x_rcu.o
    0x0803e0f8   0x0803e0f8   0x00000020   Code   RO         2958    i.rcu_periph_clock_enable  gd32f10x_rcu.o
    0x0803e118   0x0803e118   0x00000020   Code   RO         2961    i.rcu_periph_reset_disable  gd32f10x_rcu.o
    0x0803e138   0x0803e138   0x00000020   Code   RO         2962    i.rcu_periph_reset_enable  gd32f10x_rcu.o
    0x0803e158   0x0803e158   0x000000f0   Code   RO          821    i.readID            main.o
    0x0803e248   0x0803e248   0x0000006c   Code   RO         5994    i.realloc           mc_w.l(mallocr.o)
    0x0803e2b4   0x0803e2b4   0x00000008   Code   RO         4711    i.ring_buffer_init  ring_buffer.o
    0x0803e2bc   0x0803e2bc   0x00000028   Code   RO         4712    i.ring_buffer_read  ring_buffer.o
    0x0803e2e4   0x0803e2e4   0x0000001c   Code   RO         4713    i.ring_buffer_write  ring_buffer.o
    0x0803e300   0x0803e300   0x00000024   Code   RO          289    i.runtime_increment  systick.o
    0x0803e324   0x0803e324   0x0000003c   Code   RO         4927    i.skip_utf8_bom     cjson.o
    0x0803e360   0x0803e360   0x00000008   Code   RO         3574    i.spi_i2s_data_receive  gd32f10x_spi.o
    0x0803e368   0x0803e368   0x00000004   Code   RO         3575    i.spi_i2s_data_transmit  gd32f10x_spi.o
    0x0803e36c   0x0803e36c   0x00000010   Code   RO         3577    i.spi_i2s_flag_get  gd32f10x_spi.o
    0x0803e37c   0x0803e37c   0x0000004c   Code   RO         6077    i.sqrt              m_ws.l(sqrt.o)
    0x0803e3c8   0x0803e3c8   0x0000001c   Code   RO         5698    i.strtod            m_ws.l(strtod.o)
    0x0803e3e4   0x0803e3e4   0x000000c4   Code   RO            4    i.system_clock_108m_hxtal  system_gd32f10x.o
    0x0803e4a8   0x0803e4a8   0x00000008   Code   RO            5    i.system_clock_config  system_gd32f10x.o
    0x0803e4b0   0x0803e4b0   0x00000050   Code   RO          290    i.systick_config    systick.o
    0x0803e500   0x0803e500   0x0000000c   Code   RO          822    i.task_fwdgt_reload  main.o
    0x0803e50c   0x0803e50c   0x00000090   Code   RO         4180    i.usart_baudrate_set  gd32f10x_usart.o
    0x0803e59c   0x0803e59c   0x0000000a   Code   RO         4181    i.usart_data_receive  gd32f10x_usart.o
    0x0803e5a6   0x0803e5a6   0x00000008   Code   RO         4182    i.usart_data_transmit  gd32f10x_usart.o
    0x0803e5ae   0x0803e5ae   0x00000002   PAD
    0x0803e5b0   0x0803e5b0   0x00000090   Code   RO         4183    i.usart_deinit      gd32f10x_usart.o
    0x0803e640   0x0803e640   0x00000010   Code   RO         4186    i.usart_dma_transmit_config  gd32f10x_usart.o
    0x0803e650   0x0803e650   0x0000000a   Code   RO         4187    i.usart_enable      gd32f10x_usart.o
    0x0803e65a   0x0803e65a   0x0000001a   Code   RO         4188    i.usart_flag_clear  gd32f10x_usart.o
    0x0803e674   0x0803e674   0x0000001e   Code   RO         4189    i.usart_flag_get    gd32f10x_usart.o
    0x0803e692   0x0803e692   0x00000010   Code   RO         4193    i.usart_hardware_flow_cts_config  gd32f10x_usart.o
    0x0803e6a2   0x0803e6a2   0x00000010   Code   RO         4194    i.usart_hardware_flow_rts_config  gd32f10x_usart.o
    0x0803e6b2   0x0803e6b2   0x0000001a   Code   RO         4196    i.usart_interrupt_enable  gd32f10x_usart.o
    0x0803e6cc   0x0803e6cc   0x0000001a   Code   RO         4197    i.usart_interrupt_flag_clear  gd32f10x_usart.o
    0x0803e6e6   0x0803e6e6   0x00000038   Code   RO         4198    i.usart_interrupt_flag_get  gd32f10x_usart.o
    0x0803e71e   0x0803e71e   0x00000010   Code   RO         4208    i.usart_parity_config  gd32f10x_usart.o
    0x0803e72e   0x0803e72e   0x00000010   Code   RO         4210    i.usart_receive_config  gd32f10x_usart.o
    0x0803e73e   0x0803e73e   0x00000010   Code   RO         4216    i.usart_stop_bit_set  gd32f10x_usart.o
    0x0803e74e   0x0803e74e   0x00000010   Code   RO         4220    i.usart_transmit_config  gd32f10x_usart.o
    0x0803e75e   0x0803e75e   0x00000010   Code   RO         4221    i.usart_word_length_set  gd32f10x_usart.o
    0x0803e76e   0x0803e76e   0x0000012c   Code   RO         4930    i.utf16_literal_to_utf8  cjson.o
    0x0803e89a   0x0803e89a   0x00000002   PAD
    0x0803e89c   0x0803e89c   0x000001d8   Code   RO          933    i.xmodem            otaevent.o
    0x0803ea74   0x0803ea74   0x0000000e   Data   RO          527    .constdata          parsedevicemessage.o
    0x0803ea82   0x0803ea82   0x00000200   Data   RO          620    .constdata          mmodbus.o
    0x0803ec82   0x0803ec82   0x00000006   PAD
    0x0803ec88   0x0803ec88   0x00000088   Data   RO         5689    .constdata          m_ws.l(pow.o)
    0x0803ed10   0x0803ed10   0x00000008   Data   RO         6075    .constdata          m_ws.l(qnan.o)
    0x0803ed18   0x0803ed18   0x00000081   Data   RO         6112    .constdata          mc_w.l(ctype_o.o)
    0x0803ed99   0x0803ed99   0x00000003   PAD
    0x0803ed9c   0x0803ed9c   0x00000004   Data   RO         6113    .constdata          mc_w.l(ctype_o.o)
    0x0803eda0   0x0803eda0   0x000001ef   Data   RO          528    .conststring        parsedevicemessage.o
    0x0803ef8f   0x0803ef8f   0x00000001   PAD
    0x0803ef90   0x0803ef90   0x00000033   Data   RO          823    .conststring        main.o
    0x0803efc3   0x0803efc3   0x00000001   PAD
    0x0803efc4   0x0803efc4   0x00000020   Data   RO         6180    Region$$Table       anon$$obj.o


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

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

    0x20000000   0x0803efe4   0x00000004   Data   RW            6    .data               system_gd32f10x.o
    0x20000004   0x0803efe8   0x00000008   Data   RW          291    .data               systick.o
    0x2000000c   0x0803eff0   0x00000001   Data   RW          529    .data               parsedevicemessage.o
    0x2000000d   0x0803eff1   0x00000001   PAD
    0x2000000e   0x0803eff2   0x0000000e   Data   RW          621    .data               mmodbus.o
    0x2000001c   0x0803f000   0x00000001   Data   RW          788    .data               mqttrecv.o
    0x2000001d   0x0803f001   0x00000003   PAD
    0x20000020   0x0803f004   0x00000004   Data   RW          824    .data               main.o
    0x20000024   0x0803f008   0x00000010   Data   RW          887    .data               pc.o
    0x20000034   0x0803f018   0x0000000a   Data   RW         4511    .data               led.o
    0x2000003e   0x0803f022   0x00000002   PAD
    0x20000040   0x0803f024   0x00000054   Data   RW         4606    .data               usart.o
    0x20000094   0x0803f078   0x00000013   Data   RW         4795    .data               key.o
    0x200000a7   0x0803f08b   0x00000001   PAD
    0x200000a8   0x0803f08c   0x00000014   Data   RW         4932    .data               cjson.o
    0x200000bc   0x0803f0a0   0x00000014   Data   RW         5628    .data               dlt645_port.o
    0x200000d0   0x0803f0b4   0x00000004   Data   RW         6100    .data               mc_w.l(stdout.o)
    0x200000d4   0x0803f0b8   0x00000004   Data   RW         6139    .data               mc_w.l(mvars.o)
    0x200000d8   0x0803f0bc   0x00000004   Data   RW         6140    .data               mc_w.l(mvars.o)
    0x200000dc   0x0803f0c0   0x00000004   Data   RW         6144    .data               mc_w.l(errno.o)
    0x200000e0        -       0x000000d8   Zero   RW          461    .bss                device_message.o
    0x200001b8        -       0x00001008   Zero   RW          526    .bss                parsedevicemessage.o
    0x200011c0        -       0x00000054   Zero   RW          619    .bss                mmodbus.o
    0x20001214        -       0x00000080   Zero   RW          787    .bss                mqttrecv.o
    0x20001294        -       0x0000018a   Zero   RW          934    .bss                otaevent.o
    0x2000141e        -       0x00001102   Zero   RW         4605    .bss                usart.o
    0x20002520        -       0x000000d4   Zero   RW         5627    .bss                dlt645_port.o
    0x200025f4   0x0803f0c4   0x00000004   PAD
    0x200025f8        -       0x00010000   Zero   RW          132    HEAP                startup_gd32f10x_xd.o
    0x200125f8        -       0x00002000   Zero   RW          131    STACK               startup_gd32f10x_xd.o


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

Image component sizes


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

      2714         66          0         20          0      17840   cjson.o
      1394        526          0          0        216       5527   device_message.o
       220          0          0          0          0       3020   dlt645.o
       462         22          0          0          0       2761   dlt645_1997.o
      1250        104          0          0          0       3116   dlt645_2007.o
       550         10          0          0          0       3556   dlt645_data.o
       376         44          0         20        212       3066   dlt645_port.o
      1992        648          0          0          0       7923   ec800m.o
       704          6          0          0          0       5634   gd32f10x_dma.o
       224         16          0          0          0       1650   gd32f10x_exti.o
        32         12          0          0          0        868   gd32f10x_fwdgt.o
       502         12          0          0          0       4332   gd32f10x_gpio.o
       164         30          0          0          0       9429   gd32f10x_it.o
       216         28          0          0          0       1760   gd32f10x_misc.o
       420         44          0          0          0       2986   gd32f10x_rcu.o
        28          0          0          0          0       1578   gd32f10x_spi.o
       608         16          0          0          0      10035   gd32f10x_usart.o
       216         46          0         19          0       1706   key.o
       132         26          0         10          0       1388   led.o
       232         64          0          0          0       3043   log.o
       794        118         51          4          0       4934   main.o
      1480        104        512         14         84      10923   mmodbus.o
       288         54          0          1        128      23642   mqttrecv.o
       624         24          0          0        394       3349   otaevent.o
      2072        188        509          1       4104       7885   parsedevicemessage.o
       404         38          0         16          0       1996   pc.o
        76          0          0          0          0       1838   ring_buffer.o
        82          6          0          0          0       1282   spi.o
        36          8        304          0      73728        764   startup_gd32f10x_xd.o
       420         32          0          4          0      50083   system_gd32f10x.o
       212         36          0          8          0      24956   systick.o
      1044        136          0         84       4354       8430   usart.o
       244         20          0          0          0       2231   w25q32.o

    ----------------------------------------------------------------------
     20250       2484       1416        208      83224     233531   Object Totals
         0          0         32          0          0          0   (incl. Generated)
        38          0          8          7          4          0   (incl. Padding)

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

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

        62         10          0          0          0        340   dunder.o
        40          0          0          0          0         68   fpclassify.o
       170          0          0          0          0         96   poly.o
      2520        190        136          0          0        324   pow.o
         0          0          8          0          0          0   qnan.o
        76          0          0          0          0         84   sqrt.o
        28          0          0          0          0         80   strtod.o
        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
       224          0          0          0          0         96   _scanf_str.o
        64          0          0          0          0         84   _sgetc.o
       158          0          0          0          0         92   _strtoul.o
         8          4        133          0          0         68   ctype_o.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
        20         10          0          4          0        136   errno.o
        30          0          0          0          0          0   handlers.o
        36          8          0          0          0         68   init.o
        18          0          0          0          0         76   isspace_o.o
         0          0          0          0          0          0   iusefp.o
        30          0          0          0          0         68   llshl.o
        36          0          0          0          0         68   llsshr.o
        32          0          0          0          0         68   llushr.o
       360         30          0          0          0        356   mallocr.o
        26          0          0          0          0         80   memcmp.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
      2342        102          0          0          0        764   printfa.o
        40          8          0          0          0         84   scanf_char.o
       878         12          0          0          0        216   scanf_fp.o
         0          0          0          4          0          0   stdout.o
        20          0          0          0          0         68   strchr.o
        28          0          0          0          0         76   strcmp.o
        18          0          0          0          0         68   strcpy.o
        14          0          0          0          0         68   strlen.o
        30          0          0          0          0         80   strncmp.o
        36          0          0          0          0         80   strstr.o
       156         12          0          0          0        120   strtod.o
       112          0          0          0          0         88   strtol.o
        12          0          0          0          0         68   tolower.o
        44          0          0          0          0         80   uidiv.o
        98          0          0          0          0         92   uldiv.o
        48          0          0          0          0         68   cdcmple.o
        48          0          0          0          0         68   cdrcmple.o
        56          0          0          0          0         88   d2f.o
       334          0          0          0          0        148   dadd.o
       222          0          0          0          0        100   ddiv.o
       186          0          0          0          0        176   depilogue.o
        62          0          0          0          0         80   dfixi.o
        48          0          0          0          0         68   dfixul.o
        34          0          0          0          0         76   dflti.o
        26          0          0          0          0         76   dfltui.o
        24          0          0          0          0         76   dfltul.o
       228          0          0          0          0         96   dmul.o
        46          0          0          0          0         80   dscalb.o
       162          0          0          0          0        100   dsqrt.o
        38          0          0          0          0         68   f2d.o
       110          0          0          0          0        168   fepilogue.o
        10          0          0          0          0         68   ffltui.o

    ----------------------------------------------------------------------
     10794        408        280         16          0       6344   Library Totals
        18          0          3          0          0          0   (incl. Padding)

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

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

      2896        200        144          0          0        992   m_ws.l
      6198        208        133         16          0       3748   mc_w.l
      1682          0          0          0          0       1604   mf_w.l

    ----------------------------------------------------------------------
     10794        408        280         16          0       6344   Library Totals

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

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


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

     31044       2892       1696        224      83224     227235   Grand Totals
     31044       2892       1696        224      83224     227235   ELF Image Totals
     31044       2892       1696        224          0          0   ROM Totals

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

    Total RO  Size (Code + RO Data)                32740 (  31.97kB)
    Total RW  Size (RW Data + ZI Data)             83448 (  81.49kB)
    Total ROM Size (Code + RO Data + RW Data)      32964 (  32.19kB)

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

