📄 artxdemo.htm
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [D:\LPCARMDEMO\ArtxDemo2\ArtxDemo.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image D:\LPCARMDEMO\ArtxDemo2\ArtxDemo.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.0 [Build 934]: Last Updated: Sat May 06 14:21:28 2006
<BR><P>
<H3>Maximum Stack Usage = 104 bytes + Unknown(Functions without stacksize,Cycles,Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main -> os_sys_init_user -> os_tsk_create_user -> os_init_context<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[b20144]">Reset_Handler</a>
<LI><a href="#[1091728]">__scatterload</a>
<LI><a href="#[1091658]">__scatterload_rt2</a>
<LI><a href="#[10916a8]">__scatterload_null</a>
<LI><a href="#[1031504]">__scatterload_copy</a>
<LI><a href="#[1030f4c]">__scatterload_zeroinit</a>
<LI><a href="#[be4884]">__user_initial_stackheap</a>
<LI><a href="#[be480c]">iap_execute</a>
<LI><a href="#[bc498c]">os_clock_interrupt</a>
<LI><a href="#[b212c0]">os_set_env</a>
<LI><a href="#[b201c0]">SWI_Handler</a>
<LI><a href="#[1000dd0]">__fplib_config_pureend_doubles</a>
<LI><a href="#[b20678]">Undef_Handler</a>
<LI><a href="#[b205fc]">PAbt_Handler</a>
<LI><a href="#[b20580]">DAbt_Handler</a>
<LI><a href="#[b20508]">FIQ_Handler</a>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3><UL>
<LI><a href="#[b20678]">Undef_Handler</a> -> <a href="#[b20678]">Undef_Handler</a><BR>
<LI><a href="#[b20580]">DAbt_Handler</a> -> <a href="#[b20580]">DAbt_Handler</a><BR>
<LI><a href="#[b20508]">FIQ_Handler</a> -> <a href="#[b20508]">FIQ_Handler</a><BR>
</UL>
<BR>
<P><STRONG><a name="[b20144]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))
<BR>[Address Reference Count : 1]<UL><LI> startup.o(RESET)
</UL>
<P><STRONG><a name="[100fed4]"></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="#[100f3cc]">>></a> __rt_entry
<LI><a href="#[1091728]">>></a> __scatterload
</UL>
<P><STRONG><a name="[1091728]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[100fed4]"><<</a> __main
</UL>
<P><STRONG><a name="[1091658]"></a>__scatterload_rt2</STRONG> (ARM, 48 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[100f3cc]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[10916a8]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[1031504]"></a>__scatterload_copy</STRONG> (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[1031504]">>></a> __scatterload_copy
</UL>
<BR>[Called By]<UL><LI><a href="#[1031504]"><<</a> __scatterload_copy
</UL>
<P><STRONG><a name="[1030f4c]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[10081a4]"></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="#[10080d8]"><<</a> __rt_lib_init (via Veneer)
</UL>
<P><STRONG><a name="[b27694]"></a>__SWI_8</STRONG> (ARM, 16 bytes, Stack size 0 bytes, artxdemo.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> swi_table.o(SWI_TABLE)
</UL>
<P><STRONG><a name="[b27620]"></a>__SWI_9</STRONG> (ARM, 16 bytes, Stack size 0 bytes, artxdemo.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> swi_table.o(SWI_TABLE)
</UL>
<P><STRONG><a name="[b275a4]"></a>SystemInit()</STRONG> (ARM, 32 bytes, Stack size 0 bytes, artxdemo.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[b26fe0]"><<</a> MainTask()
</UL>
<P><STRONG><a name="[b2752c]"></a>KeyInit()</STRONG> (ARM, 4 bytes, Stack size 0 bytes, artxdemo.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[b2705c]"><<</a> KeyTask()
</UL>
<P><STRONG><a name="[b274b4]"></a>LedInit()</STRONG> (ARM, 32 bytes, Stack size 0 bytes, artxdemo.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b270d4]"><<</a> LedTask()
</UL>
<P><STRONG><a name="[b27438]"></a>MSPI_Init()</STRONG> (ARM, 72 bytes, Stack size 0 bytes, artxdemo.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b273bc]"><<</a> LednumInit()
</UL>
<P><STRONG><a name="[b273bc]"></a>LednumInit()</STRONG> (ARM, 16 bytes, Stack size 4 bytes, artxdemo.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = LednumInit()</UL>
<BR>[Calls]<UL><LI><a href="#[b27438]">>></a> MSPI_Init()
</UL>
<BR>[Called By]<UL><LI><a href="#[b2714c]"><<</a> LednumTask()
</UL>
<P><STRONG><a name="[b2733c]"></a>MSPI_SendData(unsigned char)</STRONG> (ARM, 48 bytes, Stack size 0 bytes, artxdemo.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b272c0]"><<</a> LedDisplay(unsigned char)
</UL>
<P><STRONG><a name="[b272c0]"></a>LedDisplay(unsigned char)</STRONG> (ARM, 48 bytes, Stack size 4 bytes, artxdemo.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = LedDisplay(unsigned char)</UL>
<BR>[Calls]<UL><LI><a href="#[b2733c]">>></a> MSPI_SendData(unsigned char)
</UL>
<BR>[Called By]<UL><LI><a href="#[b2714c]"><<</a> LednumTask()
</UL>
<P><STRONG><a name="[b27244]"></a>BeepInit()</STRONG> (ARM, 32 bytes, Stack size 0 bytes, artxdemo.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b271c8]"><<</a> BeepTask()
</UL>
<P><STRONG><a name="[b271c8]"></a>BeepTask()</STRONG> (ARM, 244 bytes, Stack size 16 bytes, artxdemo.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 68<LI>Call Chain = BeepTask() -> os_evt_wait -> os_block -> os_put_dly</UL>
<BR>[Calls]<UL><LI><a href="#[b27244]">>></a> BeepInit()
<LI><a href="#[bdfc58]">>></a> os_evt_wait (via Veneer)
<LI><a href="#[bdfd70]">>></a> os_evt_get (via Veneer)
<LI><a href="#[bf86ac]">>></a> os_dly_wait (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> artxdemo.o(.text)
</UL>
<P><STRONG><a name="[b2714c]"></a>LednumTask()</STRONG> (ARM, 200 bytes, Stack size 16 bytes, artxdemo.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 68<LI>Call Chain = LednumTask() -> os_evt_wait -> os_block -> os_put_dly</UL>
<BR>[Calls]<UL><LI><a href="#[b272c0]">>></a> LedDisplay(unsigned char)
<LI><a href="#[b273bc]">>></a> LednumInit()
<LI><a href="#[bdfc58]">>></a> os_evt_wait (via Veneer)
<LI><a href="#[bdfd70]">>></a> os_evt_get (via Veneer)
<LI><a href="#[bf86ac]">>></a> os_dly_wait (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> artxdemo.o(.text)
</UL>
<P><STRONG><a name="[b270d4]"></a>LedTask()</STRONG> (ARM, 444 bytes, Stack size 16 bytes, artxdemo.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 68<LI>Call Chain = LedTask() -> os_evt_wait -> os_block -> os_put_dly</UL>
<BR>[Calls]<UL><LI><a href="#[b274b4]">>></a> LedInit()
<LI><a href="#[bdfc58]">>></a> os_evt_wait (via Veneer)
<LI><a href="#[bdfca8]">>></a> os_evt_set (via Veneer)
<LI><a href="#[bdfd70]">>></a> os_evt_get (via Veneer)
<LI><a href="#[bf86ac]">>></a> os_dly_wait (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> artxdemo.o(.text)
</UL>
<P><STRONG><a name="[b2705c]"></a>KeyTask()</STRONG> (ARM, 624 bytes, Stack size 8 bytes, artxdemo.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[b2752c]">>></a> KeyInit()
<LI><a href="#[bdfca8]">>></a> os_evt_set (via Veneer)
<LI><a href="#[bf86ac]">>></a> os_dly_wait (via Veneer)
</UL>
<P><STRONG><a name="[b26fe0]"></a>MainTask()</STRONG> (ARM, 136 bytes, Stack size 8 bytes, artxdemo.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[b275a4]">>></a> SystemInit()
<LI><a href="#[c0080c]">>></a> os_tsk_delete (via Veneer)
<LI><a href="#[c008e0]">>></a> os_tsk_create_user (via Veneer)
</UL>
<P><STRONG><a name="[b26f6c]"></a>main</STRONG> (ARM, 72 bytes, Stack size 8 bytes, artxdemo.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 104 + Unknown Stack Size
<LI>Call Chain = main -> os_sys_init_user -> os_tsk_create_user -> os_init_context</UL>
<BR>[Calls]<UL><LI><a href="#[c00930]">>></a> os_sys_init_user (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> kernel.o(.text)
</UL>
<P><STRONG><a name="[bcedd0]"></a>os_idle_demon</STRONG> (ARM, 8 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c00930]"><<</a> os_sys_init_user (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> rt_task.o(i.os_sys_init_user)
</UL>
<P><STRONG><a name="[bcec58]"></a>os_tmr_call</STRONG> (ARM, 4 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[fdefd4]"><<</a> os_tmr_tick (via Veneer)
</UL>
<P><STRONG><a name="[bcebe0]"></a>tsk_lock</STRONG> (ARM, 16 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bceb60]"><<</a> os_clock_interrupt0
<LI><a href="#[bdfc58]"><<</a> os_evt_wait (via Veneer)
<LI><a href="#[bdfca8]"><<</a> os_evt_set (via Veneer)
<LI><a href="#[bf85bc]"><<</a> os_itv_wait
<LI><a href="#[bf86ac]"><<</a> os_dly_wait (via Veneer)
<LI><a href="#[c0071c]"><<</a> os_tsk_prio
<LI><a href="#[c00794]"><<</a> os_tsk_pass
<LI><a href="#[c0080c]"><<</a> os_tsk_delete (via Veneer)
<LI><a href="#[c0085c]"><<</a> os_tsk_create_user_ex
<LI><a href="#[c008e0]"><<</a> os_tsk_create_user (via Veneer)
<LI><a href="#[c00930]"><<</a> os_sys_init_user (via Veneer)
<LI><a href="#[c089f8]"><<</a> os_sem_wait
<LI><a href="#[c08a70]"><<</a> os_sem_send
<LI><a href="#[c08b38]"><<</a> os_sem_init
<LI><a href="#[c0ef6c]"><<</a> os_mbx_wait
<LI><a href="#[c0efe4]"><<</a> os_mbx_send
<LI><a href="#[c0f0ac]"><<</a> os_mbx_init
<LI><a href="#[fdf024]"><<</a> os_tmr_kill
<LI><a href="#[fdf09c]"><<</a> os_tmr_create
</UL>
<P><STRONG><a name="[bceb60]"></a>os_clock_interrupt0</STRONG> (ARM, 140 bytes, Stack size 8 bytes, rtx_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = os_clock_interrupt0</UL>
<BR>[Calls]<UL><LI><a href="#[bcebe0]">>></a> tsk_lock
<LI><a href="#[bf1240]">>></a> os_put_rdy_first (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> irq_rtx.o(IRQ_Area)
</UL>
<P><STRONG><a name="[bceae0]"></a>os_def_interrupt</STRONG> (ARM, 20 bytes, Stack size 8 bytes, rtx_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = os_def_interrupt</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup.o(RESET)
</UL>
<P><STRONG><a name="[bcea68]"></a>os_tmr_init</STRONG> (ARM, 80 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c00930]"><<</a> os_sys_init_user (via Veneer)
</UL>
<P><STRONG><a name="[bce9ec]"></a>os_tmr_reload</STRONG> (ARM, 4 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c14374]"><<</a> os_clock_demon (via Veneer)
</UL>
<P><STRONG><a name="[bce96c]"></a>os_tmr_inspect_cnt</STRONG> (ARM, 12 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c14324]"><<</a> os_psh_req
<LI><a href="#[c14374]"><<</a> os_clock_demon (via Veneer)
</UL>
<P><STRONG><a name="[bce8f4]"></a>tsk_unlock</STRONG> (ARM, 24 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bdfc58]"><<</a> os_evt_wait (via Veneer)
<LI><a href="#[bdfca8]"><<</a> os_evt_set (via Veneer)
<LI><a href="#[bf85bc]"><<</a> os_itv_wait
<LI><a href="#[bf86ac]"><<</a> os_dly_wait (via Veneer)
<LI><a href="#[c0071c]"><<</a> os_tsk_prio
<LI><a href="#[c00794]"><<</a> os_tsk_pass
<LI><a href="#[c0080c]"><<</a> os_tsk_delete (via Veneer)
<LI><a href="#[c0085c]"><<</a> os_tsk_create_user_ex
<LI><a href="#[c008e0]"><<</a> os_tsk_create_user (via Veneer)
<LI><a href="#[c00930]"><<</a> os_sys_init_user (via Veneer)
<LI><a href="#[c089f8]"><<</a> os_sem_wait
<LI><a href="#[c08a70]"><<</a> os_sem_send
<LI><a href="#[c08b38]"><<</a> os_sem_init
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -