Static Call Graph for image .\Flash\Blinky.axf



#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Thu Sep 12 13:01:30 2019

Maximum Stack Usage = 120 bytes + Unknown(Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

svcRtxKernelStart ⇒ osRtxThreadStartup ⇒ svcRtxThreadNew ⇒ osRtxThreadDispatch ⇒ osRtxThreadSwitch ⇒ osRtxThreadStackCheck ⇒ osRtxErrorNotify ⇒ __ARM_common_switch8

Function Pointers

Global Symbols

__main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))

[Called By]

_main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry4.o(.ARM.Collect$$$$00000003))

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

[Calls]

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

[Called By]

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

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

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

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

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

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

PendSV_Handler (Thumb, 12 bytes, Stack size 0 bytes, irq_cm0.o(.text))

[Stack]


[Calls]
[Address Reference Count : 1]

SysTick_Handler (Thumb, 12 bytes, Stack size 0 bytes, irq_cm0.o(.text))

[Stack]


[Calls]
[Address Reference Count : 2]

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

[Stack]


[Called By]

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

__aeabi_memcpy (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))

[Called By]

__aeabi_memcpy4 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)

__aeabi_memcpy8 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)

__aeabi_memset (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text))

[Called By]

__aeabi_memset4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

__aeabi_memset8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

__aeabi_memclr (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text))

[Calls]


[Called By]

__aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))

[Called By]

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

_memset$wrapper (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)

[Calls]

__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)

__decompress (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl.o(.text), UNUSED)

__decompress0 (Thumb, 58 bytes, Stack size unknown bytes, __dczerorl.o(.text), UNUSED)

OS_Tick_AcknowledgeIRQ (Thumb, 12 bytes, Stack size 0 bytes, os_systick.o(.text.OS_Tick_AcknowledgeIRQ))

[Called By]

OS_Tick_Enable (Thumb, 44 bytes, Stack size 0 bytes, os_systick.o(.text.OS_Tick_Enable))

[Called By]

OS_Tick_GetIRQn (Thumb, 6 bytes, Stack size 0 bytes, os_systick.o(.text.OS_Tick_GetIRQn))

[Called By]

OS_Tick_Setup (Thumb, 76 bytes, Stack size 16 bytes, os_systick.o(.text.OS_Tick_Setup))

[Stack]


[Calls]
[Called By]

osDelay (Thumb, 40 bytes, Stack size 8 bytes, rtx_delay.o(.text.osDelay))

[Stack]


[Called By]

osKernelGetState (Thumb, 48 bytes, Stack size 8 bytes, rtx_kernel.o(.text.osKernelGetState))

[Stack]


[Called By]

osKernelInitialize (Thumb, 40 bytes, Stack size 8 bytes, rtx_kernel.o(.text.osKernelInitialize))

[Stack]


[Calls]
[Called By]

osKernelStart (Thumb, 36 bytes, Stack size 8 bytes, rtx_kernel.o(.text.osKernelStart))

[Stack]


[Called By]

osMessageQueueGet (Thumb, 116 bytes, Stack size 24 bytes, rtx_msgqueue.o(.text.osMessageQueueGet))

[Stack]


[Calls]
[Called By]

osMessageQueueNew (Thumb, 36 bytes, Stack size 16 bytes, rtx_msgqueue.o(.text.osMessageQueueNew))

[Stack]


[Called By]

osMessageQueuePut (Thumb, 120 bytes, Stack size 24 bytes, rtx_msgqueue.o(.text.osMessageQueuePut))

[Stack]


[Calls]
[Called By]

osRtxKernelPreInit (Thumb, 2 bytes, Stack size 0 bytes, rtx_kernel.o(.text.osRtxKernelPreInit))

[Called By]

osRtxMemoryAlloc (Thumb, 124 bytes, Stack size 28 bytes, rtx_memory.o(.text.osRtxMemoryAlloc))

[Stack]


[Called By]

osRtxMemoryFree (Thumb, 78 bytes, Stack size 16 bytes, rtx_memory.o(.text.osRtxMemoryFree))

[Stack]


[Called By]

osRtxMemoryInit (Thumb, 50 bytes, Stack size 0 bytes, rtx_memory.o(.text.osRtxMemoryInit))

[Called By]


[Address Reference Count : 1]

osRtxMemoryPoolAlloc (Thumb, 46 bytes, Stack size 0 bytes, rtx_mempool.o(.text.osRtxMemoryPoolAlloc))

[Called By]

osRtxMemoryPoolFree (Thumb, 58 bytes, Stack size 8 bytes, rtx_mempool.o(.text.osRtxMemoryPoolFree))

[Stack]


[Called By]

osRtxMemoryPoolInit (Thumb, 62 bytes, Stack size 16 bytes, rtx_mempool.o(.text.osRtxMemoryPoolInit))

[Stack]


[Called By]

osRtxMutexOwnerRelease (Thumb, 68 bytes, Stack size 24 bytes, rtx_mutex.o(.text.osRtxMutexOwnerRelease))

[Stack]


[Calls]
[Called By]

osRtxPendSV_Handler (Thumb, 128 bytes, Stack size 16 bytes, rtx_system.o(.text.osRtxPendSV_Handler))

[Stack]


[Calls]
[Called By]

osRtxPostProcess (Thumb, 108 bytes, Stack size 24 bytes, rtx_system.o(.text.osRtxPostProcess))

[Stack]


[Calls]
[Called By]

osRtxThreadDelayTick (Thumb, 56 bytes, Stack size 16 bytes, rtx_thread.o(.text.osRtxThreadDelayTick))

[Stack]


[Calls]
[Called By]

osRtxThreadDispatch (Thumb, 80 bytes, Stack size 16 bytes, rtx_thread.o(.text.osRtxThreadDispatch))

[Stack]


[Calls]
[Called By]

osRtxThreadListGet (Thumb, 20 bytes, Stack size 0 bytes, rtx_thread.o(.text.osRtxThreadListGet))

[Called By]

osRtxThreadListPut (Thumb, 44 bytes, Stack size 16 bytes, rtx_thread.o(.text.osRtxThreadListPut))

[Stack]


[Called By]

osRtxThreadListRemove (Thumb, 24 bytes, Stack size 0 bytes, rtx_thread.o(.text.osRtxThreadListRemove))

[Called By]

osRtxThreadReadyPut (Thumb, 24 bytes, Stack size 8 bytes, rtx_thread.o(.text.osRtxThreadReadyPut))

[Stack]


[Calls]
[Called By]

osRtxThreadRegPtr (Thumb, 6 bytes, Stack size 0 bytes, rtx_thread.o(.text.osRtxThreadRegPtr))

[Called By]

osRtxThreadStackCheck (Thumb, 44 bytes, Stack size 8 bytes, rtx_thread.o(.text.osRtxThreadStackCheck))

[Stack]


[Calls]
[Called By]

osRtxThreadStartup (Thumb, 64 bytes, Stack size 16 bytes, rtx_thread.o(.text.osRtxThreadStartup))

[Stack]


[Calls]
[Called By]

osRtxThreadSwitch (Thumb, 20 bytes, Stack size 8 bytes, rtx_thread.o(.text.osRtxThreadSwitch))

[Stack]


[Calls]
[Called By]

osRtxThreadWaitEnter (Thumb, 60 bytes, Stack size 8 bytes, rtx_thread.o(.text.osRtxThreadWaitEnter))

[Stack]


[Calls]
[Called By]

osRtxThreadWaitExit (Thumb, 34 bytes, Stack size 16 bytes, rtx_thread.o(.text.osRtxThreadWaitExit))

[Stack]


[Calls]
[Called By]

osRtxTick_Handler (Thumb, 116 bytes, Stack size 16 bytes, rtx_system.o(.text.osRtxTick_Handler))

[Stack]


[Calls]
[Called By]

osRtxTimerThread (Thumb, 60 bytes, Stack size 8 bytes, rtx_timer.o(.text.osRtxTimerThread))

[Stack]


[Calls]
[Address Reference Count : 1]

osThreadExit (Thumb, 12 bytes, Stack size 0 bytes, rtx_thread.o(.text.osThreadExit))
[Address Reference Count : 1]

osThreadFlagsSet (Thumb, 88 bytes, Stack size 16 bytes, rtx_thread.o(.text.osThreadFlagsSet))

[Stack]


[Calls]
[Called By]

osThreadFlagsWait (Thumb, 40 bytes, Stack size 16 bytes, rtx_thread.o(.text.osThreadFlagsWait))

[Stack]


[Called By]

osThreadNew (Thumb, 36 bytes, Stack size 16 bytes, rtx_thread.o(.text.osThreadNew))

[Stack]


[Called By]

Default_Handler (Thumb, 4 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler), UNUSED)

HardFault_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt0_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt1_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt2_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt3_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt4_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt5_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt6_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt7_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt8_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Interrupt9_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

NMI_Handler (Thumb, 0 bytes, Stack size 0 bytes, startup_armcm0.o(i.Default_Handler))
[Address Reference Count : 1]

Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, startup_armcm0.o(i.Reset_Handler))

[Calls]


[Address Reference Count : 1]

SystemCoreClockUpdate (Thumb, 8 bytes, Stack size 0 bytes, system_armcm0.o(i.SystemCoreClockUpdate))

[Called By]

SystemInit (Thumb, 8 bytes, Stack size 0 bytes, system_armcm0.o(i.SystemInit))

[Called By]

__ARM_common_switch8 (Thumb, 28 bytes, Stack size 8 bytes, rtx_config.o(i.__ARM_common_switch8))

[Stack]


[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)

app_main (Thumb, 92 bytes, Stack size 0 bytes, blinky.o(i.app_main))

[Stack]


[Calls]
[Address Reference Count : 1]

clock (Thumb, 24 bytes, Stack size 0 bytes, blinky.o(i.clock))

[Stack]


[Calls]
[Address Reference Count : 1]

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

[Stack]


[Calls]
[Address Reference Count : 1]

osRtxErrorNotify (Thumb, 32 bytes, Stack size 0 bytes, rtx_config.o(i.osRtxErrorNotify))

[Stack]


[Calls]
[Called By]

osRtxIdleThread (Thumb, 4 bytes, Stack size 0 bytes, rtx_config.o(i.osRtxIdleThread))
[Address Reference Count : 1]

phaseA (Thumb, 36 bytes, Stack size 0 bytes, blinky.o(i.phaseA))

[Stack]


[Calls]
[Address Reference Count : 1]

phaseB (Thumb, 36 bytes, Stack size 0 bytes, blinky.o(i.phaseB))

[Stack]


[Calls]
[Address Reference Count : 1]

phaseC (Thumb, 36 bytes, Stack size 0 bytes, blinky.o(i.phaseC))

[Stack]


[Calls]
[Address Reference Count : 1]

phaseD (Thumb, 36 bytes, Stack size 0 bytes, blinky.o(i.phaseD))

[Stack]


[Calls]
[Address Reference Count : 1]

signal_func (Thumb, 62 bytes, Stack size 8 bytes, blinky.o(i.signal_func))

[Stack]


[Calls]
[Called By]

Local Symbols

svcRtxKernelGetState (Thumb, 12 bytes, Stack size 0 bytes, rtx_kernel.o(.text.svcRtxKernelGetState))
[Address Reference Count : 1]

svcRtxKernelInitialize (Thumb, 328 bytes, Stack size 32 bytes, rtx_kernel.o(.text.svcRtxKernelInitialize))

[Stack]


[Calls]
[Address Reference Count : 1]

svcRtxKernelStart (Thumb, 132 bytes, Stack size 24 bytes, rtx_kernel.o(.text.svcRtxKernelStart))

[Stack]


[Calls]
[Address Reference Count : 1]

ThreadFlagsCheck (Thumb, 78 bytes, Stack size 16 bytes, rtx_thread.o(.text.ThreadFlagsCheck))

[Stack]


[Called By]

osRtxThreadBlock (Thumb, 56 bytes, Stack size 16 bytes, rtx_thread.o(.text.osRtxThreadBlock))

[Stack]


[Called By]

osRtxThreadDelayInsert (Thumb, 128 bytes, Stack size 16 bytes, rtx_thread.o(.text.osRtxThreadDelayInsert))

[Stack]


[Called By]

osRtxThreadDelayRemove (Thumb, 68 bytes, Stack size 0 bytes, rtx_thread.o(.text.osRtxThreadDelayRemove))

[Called By]

osRtxThreadFree (Thumb, 84 bytes, Stack size 8 bytes, rtx_thread.o(.text.osRtxThreadFree))

[Stack]


[Calls]
[Called By]

osRtxThreadPostProcess (Thumb, 38 bytes, Stack size 8 bytes, rtx_thread.o(.text.osRtxThreadPostProcess))

[Stack]


[Calls]
[Address Reference Count : 1]

svcRtxThreadExit (Thumb, 108 bytes, Stack size 16 bytes, rtx_thread.o(.text.svcRtxThreadExit))

[Stack]


[Calls]
[Address Reference Count : 1]

svcRtxThreadFlagsSet (Thumb, 108 bytes, Stack size 16 bytes, rtx_thread.o(.text.svcRtxThreadFlagsSet))

[Stack]


[Calls]
[Address Reference Count : 1]

svcRtxThreadFlagsWait (Thumb, 80 bytes, Stack size 24 bytes, rtx_thread.o(.text.svcRtxThreadFlagsWait))

[Stack]


[Calls]
[Address Reference Count : 1]

svcRtxThreadNew (Thumb, 492 bytes, Stack size 40 bytes, rtx_thread.o(.text.svcRtxThreadNew))

[Stack]


[Calls]
[Called By]
[Address Reference Count : 1]

svcRtxDelay (Thumb, 18 bytes, Stack size 8 bytes, rtx_delay.o(.text.svcRtxDelay))

[Stack]


[Calls]
[Address Reference Count : 1]

TimerInsert (Thumb, 76 bytes, Stack size 16 bytes, rtx_timer.o(.text.TimerInsert))

[Stack]


[Called By]

osRtxTimerTick (Thumb, 96 bytes, Stack size 16 bytes, rtx_timer.o(.text.osRtxTimerTick))

[Stack]


[Calls]
[Address Reference Count : 1]

MessageQueueGet (Thumb, 76 bytes, Stack size 8 bytes, rtx_msgqueue.o(.text.MessageQueueGet))

[Stack]


[Called By]

MessageQueuePut (Thumb, 98 bytes, Stack size 20 bytes, rtx_msgqueue.o(.text.MessageQueuePut))

[Stack]


[Called By]

MessageQueueRemove (Thumb, 30 bytes, Stack size 0 bytes, rtx_msgqueue.o(.text.MessageQueueRemove))

[Called By]

osRtxMessageQueuePostProcess (Thumb, 188 bytes, Stack size 24 bytes, rtx_msgqueue.o(.text.osRtxMessageQueuePostProcess))

[Stack]


[Calls]
[Address Reference Count : 1]

svcRtxMessageQueueGet (Thumb, 232 bytes, Stack size 32 bytes, rtx_msgqueue.o(.text.svcRtxMessageQueueGet))

[Stack]


[Calls]
[Address Reference Count : 1]

svcRtxMessageQueueNew (Thumb, 484 bytes, Stack size 40 bytes, rtx_msgqueue.o(.text.svcRtxMessageQueueNew))

[Stack]


[Calls]
[Address Reference Count : 1]

svcRtxMessageQueuePut (Thumb, 188 bytes, Stack size 32 bytes, rtx_msgqueue.o(.text.svcRtxMessageQueuePut))

[Stack]


[Calls]
[Address Reference Count : 1]

Undefined Global Symbols