📄 lpc2368_port.htm
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\obj\lpc2368_port.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\obj\lpc2368_port.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.1 [Build 934]: Last Updated: Thu Nov 27 13:34:42 2008
<BR><P>
<H3>Maximum Stack Usage = 136 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main ⇒ OSInit ⇒ OS_InitTaskIdle ⇒ OSTaskCreateExt ⇒ OS_TCBInit
<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[ba1058]">Reset_Handler</a>
<LI><a href="#[ba10a0]">__user_initial_stackheap</a>
<LI><a href="#[ba1f78]">IRQ_Handler</a>
<LI><a href="#[ba18b0]">UART1_Handler</a>
<LI><a href="#[ba1ea0]">Timer0_Handler</a>
<LI><a href="#[ba1010]">SoftwareInterrupt</a>
<LI><a href="#[ba1868]">OSIntCtxSw</a>
<LI><a href="#[b9f0e8]">__OSStartHighRdy</a>
<LI><a href="#[ba1298]">Undef_Handler</a>
<LI><a href="#[ba1250]">PAbt_Handler</a>
<LI><a href="#[ba1208]">DAbt_Handler</a>
<LI><a href="#[ba11c0]">FIQ_Handler</a>
</UL>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3> <LI><a href="#[ba1298]">Undef_Handler</a> ⇒ <a href="#[ba1298]">Undef_Handler</a><BR>
<LI><a href="#[ba1250]">PAbt_Handler</a> ⇒ <a href="#[ba1250]">PAbt_Handler</a><BR>
<LI><a href="#[ba1208]">DAbt_Handler</a> ⇒ <a href="#[ba1208]">DAbt_Handler</a><BR>
</UL>
<P>
<H3>
Function Pointers
</H3><UL>
<LI><a href="#[ba1058]">Reset_Handler</a>
<LI><a href="#[ba1298]">Undef_Handler</a>
<LI><a href="#[ba1010]">SoftwareInterrupt</a>
<LI><a href="#[ba1250]">PAbt_Handler</a>
<LI><a href="#[ba1208]">DAbt_Handler</a>
<LI><a href="#[ba11c0]">FIQ_Handler</a>
<LI><a href="#[f744f0]">__main</a>
<LI><a href="#[f70bc0]">__ARM_get_argv</a>
<LI><a href="#[ba1ea0]">Timer0_Handler</a>
<LI><a href="#[ba1f78]">IRQ_Handler</a>
<LI><a href="#[ba18b0]">UART1_Handler</a>
<LI><a href="#[b94c18]">main</a>
<LI><a href="#[f71928]">__I_use_semihosting</a>
<LI><a href="#[ba1868]">OSIntCtxSw</a>
<LI><a href="#[ba1868]">OSIntCtxSw</a>
<LI><a href="#[b9f0e8]">__OSStartHighRdy</a>
</UL>
<P>
<H3>
Global Symbols
</H3>
<P><STRONG><a name="[ba1058]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))
<BR><BR>[Stack]<UL><LI>Max Depth = 4 + Unknown Stack Size
<LI>Call Chain = Reset_Handler ⇒ TargetResetInit
</UL>
<BR>[Calls]<UL><LI><a href="#[ba2200]">>></a> TargetResetInit
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup.o(RESET)
</UL>
<P><STRONG><a name="[f744f0]"></a>__main</STRONG> (ARM, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
<BR><BR>[Stack]<UL><LI>Max Depth = 64 + Unknown Stack Size
<LI>Call Chain = __main ⇒ __rt_entry ⇒ __rt_lib_init ⇒ _fp_init
</UL>
<BR>[Calls]<UL><LI><a href="#[f6e458]">>></a> __scatterload
<LI><a href="#[f74230]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[f6e458]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[f744f0]">>></a> __main
</UL>
<P><STRONG><a name="[f6e410]"></a>__scatterload_rt2</STRONG> (ARM, 52 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[f74230]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[f6e3c8]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[f6e188]"></a>__scatterload_copy</STRONG> (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[f6e188]">>></a> __scatterload_copy
</UL>
<BR>[Called By]<UL><LI><a href="#[f6e188]">>></a> __scatterload_copy
</UL>
<P><STRONG><a name="[f6e020]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[f72878]"></a>__ARM_argv_veneer</STRONG> (ARM, 16 bytes, Stack size 0 bytes, lib_init.o(.emb_text))
<BR><BR>[Called By]<UL><LI><a href="#[f727e8]">>></a> __rt_lib_init (via Veneer)
</UL>
<P><STRONG><a name="[ba22d8]"></a>ConfigurePLL</STRONG> (ARM, 308 bytes, Stack size 0 bytes, target.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ba2200]">>></a> TargetResetInit
</UL>
<P><STRONG><a name="[ba2290]"></a>GPIOResetInit</STRONG> (ARM, 128 bytes, Stack size 0 bytes, target.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ba2200]">>></a> TargetResetInit
</UL>
<P><STRONG><a name="[ba2248]"></a>init_VIC</STRONG> (ARM, 88 bytes, Stack size 0 bytes, target.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ba2200]">>></a> TargetResetInit
</UL>
<P><STRONG><a name="[ba2200]"></a>TargetResetInit</STRONG> (ARM, 84 bytes, Stack size 4 bytes, target.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = TargetResetInit
</UL>
<BR>[Calls]<UL><LI><a href="#[ba2248]">>></a> init_VIC
<LI><a href="#[ba2290]">>></a> GPIOResetInit
<LI><a href="#[ba22d8]">>></a> ConfigurePLL
</UL>
<BR>[Called By]<UL><LI><a href="#[ba1058]">>></a> Reset_Handler
</UL>
<P><STRONG><a name="[ba21b8]"></a>Install_IRQ</STRONG> (ARM, 92 bytes, Stack size 8 bytes, target.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[b94c60]">>></a> Task0
<LI><a href="#[ba2008]">>></a> VIC_Setup
</UL>
<P><STRONG><a name="[ba2170]"></a>init_port</STRONG> (ARM, 72 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[ba1fc0]">>></a> TargetInit
</UL>
<P><STRONG><a name="[ba2128]"></a>IRQ_Exception</STRONG> (ARM, 44 bytes, Stack size 8 bytes, target.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = IRQ_Exception ⇒ OSSemPost ⇒ OS_EventTaskRdy
</UL>
<BR>[Calls]<UL><LI><a href="#[ba1f30]">>></a> OSSemPost
</UL>
<BR>[Called By]<UL><LI><a href="#[ba1f78]">>></a> IRQ_Handler
</UL>
<P><STRONG><a name="[ba20e0]"></a>FIQ_Exception</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ba11c0]">>></a> FIQ_Handler
</UL>
<P><STRONG><a name="[ba2098]"></a>Timer0_Exception</STRONG> (ARM, 36 bytes, Stack size 8 bytes, target.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = Timer0_Exception ⇒ OSTimeTick
</UL>
<BR>[Calls]<UL><LI><a href="#[ba1ee8]">>></a> OSTimeTick
</UL>
<BR>[Called By]<UL><LI><a href="#[ba1ea0]">>></a> Timer0_Handler
</UL>
<P><STRONG><a name="[ba2050]"></a>Timer0Init</STRONG> (ARM, 48 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[ba1fc0]">>></a> TargetInit
</UL>
<P><STRONG><a name="[ba2008]"></a>VIC_Setup</STRONG> (ARM, 44 bytes, Stack size 4 bytes, target.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[ba21b8]">>></a> Install_IRQ
</UL>
<BR>[Called By]<UL><LI><a href="#[ba1fc0]">>></a> TargetInit
</UL>
<P><STRONG><a name="[ba1fc0]"></a>TargetInit</STRONG> (ARM, 40 bytes, Stack size 8 bytes, target.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[ba2008]">>></a> VIC_Setup
<LI><a href="#[ba2050]">>></a> Timer0Init
<LI><a href="#[ba2170]">>></a> init_port
<LI><a href="#[f75e70]">>></a> srand (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[b94c60]">>></a> Task0
</UL>
<P><STRONG><a name="[ba10a0]"></a>__user_initial_stackheap</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[f73c08]">>></a> __user_setup_stackheap
</UL>
<P><STRONG><a name="[b9f768]"></a>OSTaskStkInit</STRONG> (ARM, 232 bytes, Stack size 8 bytes, os_cpu_c.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = OSTaskStkInit
</UL>
<BR>[Called By]<UL><LI><a href="#[b97820]">>></a> OSTaskCreate
<LI><a href="#[b9d5c0]">>></a> OSTaskCreateExt
</UL>
<P><STRONG><a name="[b9f720]"></a>SWI_Exception</STRONG> (ARM, 336 bytes, Stack size 4 bytes, os_cpu_c.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = SWI_Exception
</UL>
<BR>[Called By]<UL><LI><a href="#[ba1010]">>></a> SoftwareInterrupt
</UL>
<P><STRONG><a name="[b9f6d8]"></a>OSStartHighRdy</STRONG> (ARM, 16 bytes, Stack size 8 bytes, os_cpu_c.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = OSStartHighRdy
</UL>
<BR>[Called By]<UL><LI><a href="#[b9d848]">>></a> OSStart
</UL>
<P><STRONG><a name="[b9f690]"></a>OSInitHookBegin</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b9d9b0]">>></a> OSInit
</UL>
<P><STRONG><a name="[b9f648]"></a>OSInitHookEnd</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b9d9b0]">>></a> OSInit
</UL>
<P><STRONG><a name="[b9f600]"></a>OSTaskCreateHook</STRONG> (ARM, 8 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b9d608]">>></a> OS_TCBInit
</UL>
<P><STRONG><a name="[b9f5b8]"></a>OSTaskDelHook</STRONG> (ARM, 8 bytes, Stack size 0 bytes, os_cpu_c.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[b977d8]">>></a> OSTaskDel
</UL>
<P><STRONG><a name="[b9f570]"></a>OSTaskSwHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b9f0e8]">>></a> __OSStartHighRdy
<LI><a href="#[ba1868]">>></a> OSIntCtxSw
</UL>
<P><STRONG><a name="[b9f528]"></a>OSTaskStatHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[b9da40]">>></a> OS_TaskStat
</UL>
<P><STRONG><a name="[b9f4e0]"></a>OSTCBInitHook</STRONG> (ARM, 8 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b9d608]">>></a> OS_TCBInit
</UL>
<P><STRONG><a name="[b9f498]"></a>OSTimeTickHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ba1ee8]">>></a> OSTimeTick
</UL>
<P><STRONG><a name="[b9f450]"></a>OSTaskIdleHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[b9d9f8]">>></a> OS_TaskIdle
</UL>
<P><STRONG><a name="[b9da40]"></a>OS_TaskStat</STRONG> (ARM, 220 bytes, Stack size 24 bytes, os_core.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[b9d578]">>></a> OSTimeDly
<LI><a href="#[b9f528]">>></a> OSTaskStatHook
<LI><a href="#[f753d8]">>></a> __aeabi_uidivmod
</UL>
<P><STRONG><a name="[b9d9f8]"></a>OS_TaskIdle</STRONG> (ARM, 48 bytes, Stack size 8 bytes, os_core.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[b9f450]">>></a> OSTaskIdleHook
</UL>
<P><STRONG><a name="[b9d9b0]"></a>OSInit</STRONG> (ARM, 56 bytes, Stack size 8 bytes, os_core.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = OSInit ⇒ OS_InitTaskIdle ⇒ OSTaskCreateExt ⇒ OS_TCBInit
</UL>
<BR>[Calls]<UL><LI><a href="#[b9d4a0]">>></a> OS_QInit
<LI><a href="#[b9d4e8]">>></a> OS_MemInit
<LI><a href="#[b9d530]">>></a> OS_FlagInit
<LI><a href="#[b9e5c8]">>></a> OS_InitMisc
<LI><a href="#[b9e610]">>></a> OS_InitRdyList
<LI><a href="#[b9e658]">>></a> OS_InitTCBList
<LI><a href="#[b9e6a0]">>></a> OS_InitEventList
<LI><a href="#[b9e6e8]">>></a> OS_InitTaskIdle
<LI><a href="#[b9e730]">>></a> OS_InitTaskStat
<LI><a href="#[b9f648]">>></a> OSInitHookEnd
<LI><a href="#[b9f690]">>></a> OSInitHookBegin
</UL>
<BR>[Called By]<UL><LI><a href="#[b94c18]">>></a> main
</UL>
<P><STRONG><a name="[b9d968]"></a>OSIntEnter</STRONG> (ARM, 56 bytes, Stack size 0 bytes, os_core.o(.text), UNUSED)
<P><STRONG><a name="[ba1820]"></a>OSIntExit</STRONG> (ARM, 240 bytes, Stack size 8 bytes, os_core.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = OSIntExit
</UL>
<BR>[Called By]<UL><LI><a href="#[ba18b0]">>></a> UART1_Handler
<LI><a href="#[ba1ea0]">>></a> Timer0_Handler
<LI><a href="#[ba1f78]">>></a> IRQ_Handler
</UL>
<P><STRONG><a name="[b9d920]"></a>OSSchedLock</STRONG> (ARM, 72 bytes, Stack size 8 bytes, os_core.o(.text), UNUSED)
<P><STRONG><a name="[b9d8d8]"></a>OS_Sched</STRONG> (ARM, 168 bytes, Stack size 8 bytes, os_core.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = OS_Sched
</UL>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -