project.htm
来自「这个软件主要争对EasyARM2200开发板的ucOS的移植,这个框架成功用在一」· HTM 代码 · 共 978 行 · 第 1/4 页
HTM
978 行
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\Debug_in_ExtRAM\Project.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\Debug_in_ExtRAM\Project.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.0 [Build 942]: Last Updated: Mon Jan 28 11:15:43 2008
<BR><P>
<H3>Maximum Stack Usage = 160 bytes + Unknown(Functions without stacksize,Cycles,Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
__main -> __rt_entry -> main -> OSInit -> OS_InitTaskIdle -> OSTaskCreateExt -> OS_TCBInit<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[bd7b50]">Reset</a>
<LI><a href="#[bd7ac8]">__user_initial_stackheap</a>
<LI><a href="#[fff5c0]">__scatterload</a>
<LI><a href="#[fff4f0]">__scatterload_rt2</a>
<LI><a href="#[fff540]">__scatterload_null</a>
<LI><a href="#[ffee98]">__scatterload_copy</a>
<LI><a href="#[ffe8d4]">__scatterload_zeroinit</a>
<LI><a href="#[fe16ac]">_memcpy_lastbytes</a>
<LI><a href="#[1010cbc]">_memcpy_lastbytes_aligned</a>
<LI><a href="#[1010570]">_memset_w</a>
<LI><a href="#[100944c]">_memset</a>
<LI><a href="#[b24958]">IRQ_Handler</a>
<LI><a href="#[b24864]">Timer0_Handler</a>
<LI><a href="#[bd7d38]">SoftwareInterrupt</a>
<LI><a href="#[bd9110]">OSIntCtxSw</a>
<LI><a href="#[bf6a54]">__OSStartHighRdy</a>
<LI><a href="#[101ddd0]">__fplib_config_pureend_doubles</a>
<LI><a href="#[bd853c]">Undefined</a>
<LI><a href="#[bd84c0]">PrefetchAbort</a>
<LI><a href="#[bd8448]">DataAbort</a>
<LI><a href="#[bd801c]">FIQ_Handler</a>
<LI><a href="#[bd8094]">ResetInit</a>
<LI><a href="#[100fd68]">__arm_div8</a>
<LI><a href="#[100fde0]">__arm_div4</a>
<LI><a href="#[100fcec]">__arm_div_large</a>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3><UL>
<LI><a href="#[b253b8]">IRQ_Exception</a> -> <a href="#[b253b8]">IRQ_Exception</a><BR>
<LI><a href="#[bd853c]">Undefined</a> -> <a href="#[bd853c]">Undefined</a><BR>
<LI><a href="#[bd84c0]">PrefetchAbort</a> -> <a href="#[bd84c0]">PrefetchAbort</a><BR>
<LI><a href="#[bd8448]">DataAbort</a> -> <a href="#[bd8448]">DataAbort</a><BR>
<LI><a href="#[b2533c]">FIQ_Exception</a> -> <a href="#[b2533c]">FIQ_Exception</a><BR>
</UL>
<BR>
<P><STRONG><a name="[bd7b50]"></a>Reset</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(vectors))
<P><STRONG><a name="[bd7ac8]"></a>__user_initial_stackheap</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(vectors))
<BR><BR>[Called By]<UL><LI><a href="#[100bf08]"><<</a> __user_setup_stackheap
</UL>
<P><STRONG><a name="[100d420]"></a>__main</STRONG> (ARM, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
<BR><BR>[Stack]<UL><LI>Max Depth = 160 + Unknown Stack Size
<LI>Call Chain = __main -> __rt_entry -> main -> OSInit -> OS_InitTaskIdle -> OSTaskCreateExt -> OS_TCBInit</UL>
<BR>[Calls]<UL><LI><a href="#[fff5c0]">>></a> __scatterload
<LI><a href="#[100c944]">>></a> __rt_entry
</UL>
<BR>[Called By]<UL><LI><a href="#[bd8094]"><<</a> ResetInit
</UL>
<P><STRONG><a name="[fff5c0]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[100d420]"><<</a> __main
</UL>
<P><STRONG><a name="[fff4f0]"></a>__scatterload_rt2</STRONG> (ARM, 48 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[100c944]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[fff540]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[ffee98]"></a>__scatterload_copy</STRONG> (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[ffee98]">>></a> __scatterload_copy
</UL>
<BR>[Called By]<UL><LI><a href="#[ffee98]"><<</a> __scatterload_copy
</UL>
<P><STRONG><a name="[ffe8d4]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[1004c0c]"></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="#[1004b40]"><<</a> __rt_lib_init
</UL>
<P><STRONG><a name="[b253b8]"></a>IRQ_Exception</STRONG> (ARM, 4 bytes, Stack size 0 bytes, target.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[b253b8]">>></a> IRQ_Exception
</UL>
<BR>[Called By]<UL><LI><a href="#[b24958]"><<</a> IRQ_Handler
<LI><a href="#[b253b8]"><<</a> IRQ_Exception
</UL>
<P><STRONG><a name="[b2533c]"></a>FIQ_Exception</STRONG> (ARM, 4 bytes, Stack size 0 bytes, target.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[b2533c]">>></a> FIQ_Exception
</UL>
<BR>[Called By]<UL><LI><a href="#[b2533c]"><<</a> FIQ_Exception
<LI><a href="#[bd801c]"><<</a> FIQ_Handler
</UL>
<P><STRONG><a name="[b252bc]"></a>Timer0_Exception</STRONG> (ARM, 24 bytes, Stack size 0 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="#[b248e0]">>></a> OSTimeTick
</UL>
<BR>[Called By]<UL><LI><a href="#[b24864]"><<</a> Timer0_Handler
</UL>
<P><STRONG><a name="[b25244]"></a>Timer0Init</STRONG> (ARM, 48 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[b25158]"><<</a> TargetInit
</UL>
<P><STRONG><a name="[b251d0]"></a>VICInit</STRONG> (ARM, 48 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[b25158]"><<</a> TargetInit
</UL>
<P><STRONG><a name="[b25158]"></a>TargetInit</STRONG> (ARM, 32 bytes, Stack size 8 bytes, target.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[b251d0]">>></a> VICInit
<LI><a href="#[b25244]">>></a> Timer0Init
<LI><a href="#[fe2640]">>></a> srand
</UL>
<BR>[Called By]<UL><LI><a href="#[bd4718]"><<</a> Task0
</UL>
<P><STRONG><a name="[b250dc]"></a>InitialiseUART0</STRONG> (ARM, 84 bytes, Stack size 8 bytes, target.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = InitialiseUART0</UL>
<BR>[Calls]<UL><LI><a href="#[100f804]">>></a> __aeabi_uidivmod
</UL>
<BR>[Called By]<UL><LI><a href="#[b25060]"><<</a> TargetResetInit
</UL>
<P><STRONG><a name="[b25060]"></a>TargetResetInit</STRONG> (ARM, 204 bytes, Stack size 16 bytes, target.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24 + Unknown Stack Size
<LI>Call Chain = TargetResetInit -> InitialiseUART0</UL>
<BR>[Calls]<UL><LI><a href="#[b250dc]">>></a> InitialiseUART0
</UL>
<BR>[Called By]<UL><LI><a href="#[bd8094]"><<</a> ResetInit
</UL>
<P><STRONG><a name="[b24fe8]"></a>__rt_div0</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24f74]"></a>fputc</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24f00]"></a>fgetc</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24e88]"></a>_sys_close</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24e10]"></a>_sys_write</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24d98]"></a>_sys_read</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24d20]"></a>_ttywrch</STRONG> (ARM, 4 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24ca8]"></a>_sys_istty</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24c30]"></a>_sys_seek</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24bb8]"></a>_sys_ensure</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24b40]"></a>_sys_flen</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24ac8]"></a>_sys_tmpnam</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[b24a50]"></a>_sys_exit</STRONG> (ARM, 4 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[100c784]"><<</a> __rt_abort
</UL>
<P><STRONG><a name="[b249d0]"></a>_sys_command_string</STRONG> (ARM, 8 bytes, Stack size 0 bytes, target.o(.text), UNUSED)
<P><STRONG><a name="[bd4718]"></a>Task0</STRONG> (ARM, 320 bytes, Stack size 16 bytes, main.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[b25158]">>></a> TargetInit
<LI><a href="#[bd44d0]">>></a> OSQPost
<LI><a href="#[bd4544]">>></a> OSQPend
<LI><a href="#[bd45b8]">>></a> OSQCreate
<LI><a href="#[fe165c]">>></a> __aeabi_memcpy
<LI><a href="#[fe1c20]">>></a> __aeabi_memset
</UL>
<P><STRONG><a name="[bd46a4]"></a>main</STRONG> (ARM, 40 bytes, Stack size 8 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = main -> OSInit -> OS_InitTaskIdle -> OSTaskCreateExt -> OS_TCBInit</UL>
<BR>[Calls]<UL><LI><a href="#[bd43e0]">>></a> OSTaskCreate
<LI><a href="#[bd445c]">>></a> OSStart
<LI><a href="#[bd4630]">>></a> OSInit
</UL>
<BR>[Called By]<UL><LI><a href="#[100c944]"><<</a> __rt_entry
</UL>
<P><STRONG><a name="[be4d28]"></a>OSTaskStkInit</STRONG> (ARM, 88 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bd36bc]"><<</a> OSTaskCreateExt
<LI><a href="#[bd43e0]"><<</a> OSTaskCreate
</UL>
<P><STRONG><a name="[be4cac]"></a>SWI_Exception</STRONG> (ARM, 244 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bd7d38]"><<</a> SoftwareInterrupt
</UL>
<P><STRONG><a name="[be4c30]"></a>OSStartHighRdy</STRONG> (ARM, 12 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="#[bd445c]"><<</a> OSStart
</UL>
<P><STRONG><a name="[be4bb4]"></a>OSInitHookBegin</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bd4630]"><<</a> OSInit
</UL>
<P><STRONG><a name="[be4b38]"></a>OSInitHookEnd</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bd4630]"><<</a> OSInit
</UL>
<P><STRONG><a name="[be4ab8]"></a>OSTaskCreateHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bd3738]"><<</a> OS_TCBInit
</UL>
<P><STRONG><a name="[be4a3c]"></a>OSTaskDelHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[c04e84]"><<</a> OSTaskDel
</UL>
<P><STRONG><a name="[be49c0]"></a>OSTaskSwHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bd9110]"><<</a> OSIntCtxSw
<LI><a href="#[bf6a54]"><<</a> __OSStartHighRdy
</UL>
<P><STRONG><a name="[be4944]"></a>OSTaskStatHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[bd3d6c]"><<</a> OS_TaskStat
</UL>
<P><STRONG><a name="[be48c8]"></a>OSTCBInitHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bd3738]"><<</a> OS_TCBInit
</UL>
<P><STRONG><a name="[be484c]"></a>OSTimeTickHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b248e0]"><<</a> OSTimeTick
</UL>
<P><STRONG><a name="[be47d0]"></a>OSTaskIdleHook</STRONG> (ARM, 4 bytes, Stack size 0 bytes, os_cpu_c.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[bd3cf4]"><<</a> OS_TaskIdle
</UL>
<P><STRONG><a name="[bd3d6c]"></a>OS_TaskStat</STRONG> (ARM, 168 bytes, Stack size 24 bytes, os_core.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[bd3644]">>></a> OSTimeDly
<LI><a href="#[be4944]">>></a> OSTaskStatHook
<LI><a href="#[100f804]">>></a> __aeabi_uidivmod
</UL>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?