Static Call Graph for image .\Objects\Boot_openblt.axf



#<CALLGRAPH># ARM Linker, 5060960: Last Updated: Fri Jul 26 16:00:55 2024

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

Call chain for Maximum Stack Depth:

main ⇒ BootTask ⇒ ComTask ⇒ XcpPacketReceived ⇒ NvmDone ⇒ FlashWriteChecksum ⇒ FlashWrite ⇒ FlashAddToBlock ⇒ FlashSwitchBlock ⇒ FlashWriteBlock ⇒ FlashGetSector ⇒ CopService ⇒ CopServiceHook

Mutually Recursive functions

  • NMI_Handler   ⇒   NMI_Handler
  • HardFault_Handler   ⇒   HardFault_Handler
  • SVC_Handler   ⇒   SVC_Handler
  • PendSV_Handler   ⇒   PendSV_Handler
  • ADC1_COMP_IRQHandler   ⇒   ADC1_COMP_IRQHandler
  • AssertFailure   ⇒   AssertFailure

    Function Pointers

    Global Symbols

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

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

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

    [Calls]

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

    [Called By]

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

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

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

    __rt_lib_shutdown_fini (Thumb, 0 bytes, Stack size unknown bytes, entry12b.o(.ARM.Collect$$$$0000000E))

    [Calls]

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

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

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

    NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_mm32f0140_keil.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    HardFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_mm32f0140_keil.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_mm32f0140_keil.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_mm32f0140_keil.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    ADC1_COMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_mm32f0140_keil.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    [Stack]


    [Called By]

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

    [Calls]


    [Called By]

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

    AssertFailure (Thumb, 6 bytes, Stack size 0 bytes, asserts.o(i.AssertFailure))

    [Stack]


    [Calls]
    [Called By]

    BackDoorCheck (Thumb, 46 bytes, Stack size 8 bytes, backdoor.o(i.BackDoorCheck))

    [Stack]


    [Calls]
    [Called By]

    BackDoorInit (Thumb, 56 bytes, Stack size 8 bytes, backdoor.o(i.BackDoorInit))

    [Stack]


    [Calls]
    [Called By]

    BootInit (Thumb, 28 bytes, Stack size 8 bytes, boot.o(i.BootInit))

    [Stack]


    [Calls]
    [Called By]

    BootTask (Thumb, 20 bytes, Stack size 8 bytes, boot.o(i.BootTask))

    [Stack]


    [Calls]
    [Called By]

    ComFree (Thumb, 2 bytes, Stack size 0 bytes, com.o(i.ComFree))

    [Called By]

    ComGetActiveInterfaceMaxRxLen (Thumb, 32 bytes, Stack size 0 bytes, com.o(i.ComGetActiveInterfaceMaxRxLen))

    [Called By]

    ComGetActiveInterfaceMaxTxLen (Thumb, 32 bytes, Stack size 0 bytes, com.o(i.ComGetActiveInterfaceMaxTxLen))

    [Called By]

    ComInit (Thumb, 18 bytes, Stack size 8 bytes, com.o(i.ComInit))

    [Stack]


    [Calls]
    [Called By]

    ComIsConnected (Thumb, 18 bytes, Stack size 8 bytes, com.o(i.ComIsConnected))

    [Stack]


    [Calls]
    [Called By]

    ComTask (Thumb, 32 bytes, Stack size 8 bytes, com.o(i.ComTask))

    [Stack]


    [Calls]
    [Called By]

    ComTransmitPacket (Thumb, 22 bytes, Stack size 8 bytes, com.o(i.ComTransmitPacket))

    [Stack]


    [Calls]
    [Called By]

    CopInit (Thumb, 8 bytes, Stack size 8 bytes, cop.o(i.CopInit))

    [Stack]


    [Calls]
    [Called By]

    CopInitHook (Thumb, 10 bytes, Stack size 8 bytes, hooks.o(i.CopInitHook))

    [Stack]


    [Calls]
    [Called By]

    CopService (Thumb, 8 bytes, Stack size 8 bytes, cop.o(i.CopService))

    [Stack]


    [Calls]
    [Called By]

    CopServiceHook (Thumb, 8 bytes, Stack size 8 bytes, hooks.o(i.CopServiceHook))

    [Stack]


    [Calls]
    [Called By]

    CpuInit (Thumb, 8 bytes, Stack size 8 bytes, cpu.o(i.CpuInit))

    [Stack]


    [Calls]
    [Called By]

    CpuIrqDisable (Thumb, 4 bytes, Stack size 0 bytes, cpu_comp.o(i.CpuIrqDisable))

    [Called By]

    CpuIrqEnable (Thumb, 4 bytes, Stack size 0 bytes, cpu_comp.o(i.CpuIrqEnable))

    [Called By]

    CpuMemCopy (Thumb, 38 bytes, Stack size 16 bytes, cpu.o(i.CpuMemCopy))

    [Stack]


    [Calls]
    [Called By]

    CpuStartUserProgram (Thumb, 100 bytes, Stack size 16 bytes, cpu.o(i.CpuStartUserProgram))

    [Stack]


    [Calls]
    [Called By]

    EXTI_MemoryRemapConfig (Thumb, 14 bytes, Stack size 0 bytes, hal_exti.o(i.EXTI_MemoryRemapConfig))

    [Called By]

    FLASH_ErasePage (Thumb, 30 bytes, Stack size 4 bytes, hal_flash.o(i.FLASH_ErasePage))

    [Stack]


    [Calls]
    [Called By]

    FLASH_Lock (Thumb, 12 bytes, Stack size 0 bytes, hal_flash.o(i.FLASH_Lock))

    [Called By]

    FLASH_ProgramWord (Thumb, 46 bytes, Stack size 20 bytes, hal_flash.o(i.FLASH_ProgramWord))

    [Stack]


    [Calls]
    [Called By]

    FLASH_Unlock (Thumb, 12 bytes, Stack size 0 bytes, hal_flash.o(i.FLASH_Unlock))

    [Called By]

    FLASH_WaitForLastOperation (Thumb, 76 bytes, Stack size 4 bytes, hal_flash.o(i.FLASH_WaitForLastOperation))

    [Stack]


    [Called By]

    FlashDone (Thumb, 42 bytes, Stack size 8 bytes, flash.o(i.FlashDone))

    [Stack]


    [Calls]
    [Called By]

    FlashErase (Thumb, 274 bytes, Stack size 24 bytes, flash.o(i.FlashErase))

    [Stack]


    [Calls]
    [Called By]

    FlashGetUserProgBaseAddress (Thumb, 4 bytes, Stack size 0 bytes, flash.o(i.FlashGetUserProgBaseAddress))

    [Called By]

    FlashInit (Thumb, 14 bytes, Stack size 0 bytes, flash.o(i.FlashInit))

    [Called By]

    FlashVerifyChecksum (Thumb, 48 bytes, Stack size 0 bytes, flash.o(i.FlashVerifyChecksum))

    [Called By]

    FlashWrite (Thumb, 72 bytes, Stack size 16 bytes, flash.o(i.FlashWrite))

    [Stack]


    [Calls]
    [Called By]

    FlashWriteChecksum (Thumb, 62 bytes, Stack size 8 bytes, flash.o(i.FlashWriteChecksum))

    [Stack]


    [Calls]
    [Called By]

    GPIO_PinAFConfig (Thumb, 34 bytes, Stack size 4 bytes, hal_gpio.o(i.GPIO_PinAFConfig))

    [Stack]


    [Called By]

    InitSystem (Thumb, 88 bytes, Stack size 8 bytes, main.o(i.InitSystem))

    [Stack]


    [Calls]
    [Called By]

    LedBlinkInit (Thumb, 6 bytes, Stack size 0 bytes, led.o(i.LedBlinkInit))

    [Called By]

    LedBlinkTask (Thumb, 2 bytes, Stack size 0 bytes, led.o(i.LedBlinkTask))

    [Called By]

    NvmDone (Thumb, 16 bytes, Stack size 8 bytes, nvm.o(i.NvmDone))

    [Stack]


    [Calls]
    [Called By]

    NvmErase (Thumb, 8 bytes, Stack size 8 bytes, nvm.o(i.NvmErase))

    [Stack]


    [Calls]
    [Called By]

    NvmGetUserProgBaseAddress (Thumb, 8 bytes, Stack size 8 bytes, nvm.o(i.NvmGetUserProgBaseAddress))

    [Stack]


    [Calls]
    [Called By]

    NvmInit (Thumb, 8 bytes, Stack size 8 bytes, nvm.o(i.NvmInit))

    [Stack]


    [Calls]
    [Called By]

    NvmVerifyChecksum (Thumb, 8 bytes, Stack size 8 bytes, nvm.o(i.NvmVerifyChecksum))

    [Stack]


    [Calls]
    [Called By]

    NvmWrite (Thumb, 8 bytes, Stack size 8 bytes, nvm.o(i.NvmWrite))

    [Stack]


    [Calls]
    [Called By]

    RCC_AHBPeriphClockCmd (Thumb, 18 bytes, Stack size 0 bytes, hal_rcc.o(i.RCC_AHBPeriphClockCmd))

    [Called By]

    RCC_APB2PeriphClockCmd (Thumb, 18 bytes, Stack size 0 bytes, hal_rcc.o(i.RCC_APB2PeriphClockCmd))

    [Called By]

    Rs232Init (Thumb, 94 bytes, Stack size 16 bytes, rs232.o(i.Rs232Init))

    [Stack]


    [Calls]
    [Called By]

    Rs232ReceivePacket (Thumb, 130 bytes, Stack size 32 bytes, rs232.o(i.Rs232ReceivePacket))

    [Stack]


    [Calls]
    [Called By]

    Rs232TransmitPacket (Thumb, 114 bytes, Stack size 32 bytes, rs232.o(i.Rs232TransmitPacket))

    [Stack]


    [Calls]
    [Called By]

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

    SystemInit (Thumb, 398 bytes, Stack size 48 bytes, system_mm32f0140.o(i.SystemInit))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    TimerGet (Thumb, 20 bytes, Stack size 0 bytes, timer.o(i.TimerGet))

    [Called By]

    TimerInit (Thumb, 26 bytes, Stack size 0 bytes, timer.o(i.TimerInit))

    [Called By]

    TimerReset (Thumb, 12 bytes, Stack size 0 bytes, timer.o(i.TimerReset))

    [Called By]

    TimerUpdate (Thumb, 18 bytes, Stack size 0 bytes, timer.o(i.TimerUpdate))

    [Called By]

    XcpInit (Thumb, 20 bytes, Stack size 0 bytes, xcp.o(i.XcpInit))

    [Called By]

    XcpIsConnected (Thumb, 12 bytes, Stack size 0 bytes, xcp.o(i.XcpIsConnected))

    [Called By]

    XcpPacketReceived (Thumb, 596 bytes, Stack size 24 bytes, xcp.o(i.XcpPacketReceived))

    [Stack]


    [Calls]
    [Called By]

    XcpPacketTransmitted (Thumb, 8 bytes, Stack size 0 bytes, xcp.o(i.XcpPacketTransmitted))

    [Called By]

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

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

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

    main (Thumb, 14 bytes, Stack size 0 bytes, main.o(i.main))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    Local Symbols

    DELAY_xUs (Thumb, 38 bytes, Stack size 0 bytes, system_mm32f0140.o(i.DELAY_xUs))

    [Called By]

    FlashAddToBlock (Thumb, 190 bytes, Stack size 24 bytes, flash.o(i.FlashAddToBlock))

    [Stack]


    [Calls]
    [Called By]

    FlashGetSector (Thumb, 56 bytes, Stack size 16 bytes, flash.o(i.FlashGetSector))

    [Stack]


    [Calls]
    [Called By]

    FlashSwitchBlock (Thumb, 72 bytes, Stack size 16 bytes, flash.o(i.FlashSwitchBlock))

    [Stack]


    [Calls]
    [Called By]

    FlashWriteBlock (Thumb, 82 bytes, Stack size 24 bytes, flash.o(i.FlashWriteBlock))

    [Stack]


    [Calls]
    [Called By]

    Undefined Global Symbols

    __arm_fini_ (Unknown, 0 bytes, Stack size 0 bytes, UNDEFINED)

    [Called By]