📄 usb_test.htm
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\obj\usb_test.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\obj\usb_test.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.1 [Build 903]: Last Updated: Sat Nov 08 17:35:33 2008
<BR><P>
<H3>Maximum Stack Usage = 984 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main ⇒ usb_test ⇒ WaitDownload ⇒ Menu ⇒ Menu (Cycle)
<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[c83350]">Reset_Handler</a>
<LI><a href="#[c83398]">__user_initial_stackheap</a>
<LI><a href="#[c83620]">Undef_Handler</a>
<LI><a href="#[c835d8]">SWI_Handler</a>
<LI><a href="#[c83590]">PAbt_Handler</a>
<LI><a href="#[c83548]">DAbt_Handler</a>
<LI><a href="#[c83500]">IRQ_Handler</a>
<LI><a href="#[c834b8]">FIQ_Handler</a>
</UL>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3> <LI><a href="#[c7dfc8]">Menu</a> ⇒ <a href="#[c7dfc8]">Menu</a><BR>
<LI><a href="#[c83620]">Undef_Handler</a> ⇒ <a href="#[c83620]">Undef_Handler</a><BR>
<LI><a href="#[c835d8]">SWI_Handler</a> ⇒ <a href="#[c835d8]">SWI_Handler</a><BR>
<LI><a href="#[c83590]">PAbt_Handler</a> ⇒ <a href="#[c83590]">PAbt_Handler</a><BR>
<LI><a href="#[c83548]">DAbt_Handler</a> ⇒ <a href="#[c83548]">DAbt_Handler</a><BR>
<LI><a href="#[c834b8]">FIQ_Handler</a> ⇒ <a href="#[c834b8]">FIQ_Handler</a><BR>
</UL>
<P>
<H3>
Function Pointers
</H3><UL>
<LI><a href="#[c83350]">Reset_Handler</a>
<LI><a href="#[c83620]">Undef_Handler</a>
<LI><a href="#[c835d8]">SWI_Handler</a>
<LI><a href="#[c83590]">PAbt_Handler</a>
<LI><a href="#[c83548]">DAbt_Handler</a>
<LI><a href="#[c83500]">IRQ_Handler</a>
<LI><a href="#[c834b8]">FIQ_Handler</a>
<LI><a href="#[108da38]">__main</a>
<LI><a href="#[1081858]">__ARM_get_argv</a>
<LI><a href="#[c7dbd8]">debug_undef</a>
<LI><a href="#[c7dc20]">debug_swi</a>
<LI><a href="#[c7dc68]">debug_abort_d</a>
<LI><a href="#[c7ddd0]">IsrUsbd</a>
<LI><a href="#[c7de18]">IsrDma2</a>
<LI><a href="#[1087d90]">_get_lc_ctype</a>
<LI><a href="#[1088208]">_sputc</a>
<LI><a href="#[c81908]">main</a>
<LI><a href="#[1085b88]">_printf_outstr_char</a>
<LI><a href="#[1085a10]">_printf_input_char</a>
<LI><a href="#[10838b0]">__I_use_semihosting</a>
</UL>
<P>
<H3>
Global Symbols
</H3>
<P><STRONG><a name="[c83350]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, s3c2410a.o(RESET))
<BR>[Address Reference Count : 1]<UL><LI> s3c2410a.o(RESET)
</UL>
<P><STRONG><a name="[108da38]"></a>__main</STRONG> (ARM, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
<BR><BR>[Stack]<UL><LI>Max Depth = 68 + Unknown Stack Size
<LI>Call Chain = __main ⇒ __rt_entry ⇒ __rt_lib_init ⇒ _get_lc_numeric ⇒ strcmp
</UL>
<BR>[Calls]<UL><LI><a href="#[108b768]">>></a> __rt_entry
<LI><a href="#[11a3958]">>></a> __scatterload
</UL>
<P><STRONG><a name="[11a3958]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[108da38]">>></a> __main
</UL>
<P><STRONG><a name="[11a3910]"></a>__scatterload_rt2</STRONG> (ARM, 52 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[108b768]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[11a38c8]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[11a3688]"></a>__scatterload_copy</STRONG> (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[11a3688]">>></a> __scatterload_copy
</UL>
<BR>[Called By]<UL><LI><a href="#[11a3688]">>></a> __scatterload_copy
</UL>
<P><STRONG><a name="[11a3520]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[1084e80]"></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="#[1084df0]">>></a> __rt_lib_init (via Veneer)
</UL>
<P><STRONG><a name="[c83398]"></a>__user_initial_stackheap</STRONG> (ARM, 0 bytes, Stack size unknown bytes, s3c2410a.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[108b140]">>></a> __user_setup_stackheap
</UL>
<P><STRONG><a name="[c81908]"></a>main</STRONG> (ARM, 32 bytes, Stack size 16 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 984 + Unknown Stack Size
<LI>Call Chain = main ⇒ usb_test ⇒ WaitDownload ⇒ Menu ⇒ Menu (Cycle)
</UL>
<BR>[Calls]<UL><LI><a href="#[c81878]">>></a> usb_test
<LI><a href="#[c818c0]">>></a> sys_init
</UL>
<BR>[Address Reference Count : 1]<UL><LI> kernel.o(.text)
</UL>
<P><STRONG><a name="[c801b0]"></a>wdt_int</STRONG> (ARM, 56 bytes, Stack size 8 bytes, profile.o(.text), UNUSED)
<P><STRONG><a name="[c80168]"></a>timer_initex</STRONG> (ARM, 68 bytes, Stack size 0 bytes, profile.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7df80]">>></a> WaitDownload
</UL>
<P><STRONG><a name="[c80120]"></a>timer_startex</STRONG> (ARM, 36 bytes, Stack size 0 bytes, profile.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7df80]">>></a> WaitDownload
</UL>
<P><STRONG><a name="[c800d8]"></a>timer_stopex</STRONG> (ARM, 128 bytes, Stack size 32 bytes, profile.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = timer_stopex ⇒ __aeabi_dmul
</UL>
<BR>[Calls]<UL><LI><a href="#[108bb68]">>></a> __aeabi_i2f
<LI><a href="#[108c2b0]">>></a> __aeabi_f2d
<LI><a href="#[108c460]">>></a> __aeabi_dmul
<LI><a href="#[108d7d0]">>></a> __aeabi_d2f
</UL>
<BR>[Called By]<UL><LI><a href="#[c7df80]">>></a> WaitDownload
</UL>
<P><STRONG><a name="[c7e010]"></a>MemoryTest</STRONG> (ARM, 212 bytes, Stack size 24 bytes, usb_test.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 856 + Unknown Stack Size
<LI>Call Chain = MemoryTest ⇒ uart_getintnum ⇒ uart_getstring ⇒ uart_printf ⇒ __c89vsprintf ⇒ _printf_char_common ⇒ __printf ⇒ _printf_fp_dec ⇒ _printf_fp_dec_real ⇒ _fp_digits ⇒ _btod_etento ⇒ _btod_emul ⇒ _e2e
</UL>
<BR>[Calls]<UL><LI><a href="#[c7da28]">>></a> uart_printf
<LI><a href="#[c7db00]">>></a> uart_getintnum
</UL>
<BR>[Called By]<UL><LI><a href="#[c7dfc8]">>></a> Menu
</UL>
<P><STRONG><a name="[c7dfc8]"></a>Menu</STRONG> (ARM, 944 bytes, Stack size 8 bytes, usb_test.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 864 + Unknown Stack Size
+ In Cycle
<LI>Call Chain = Menu ⇒ Menu (Cycle)
</UL>
<BR>[Calls]<UL><LI><a href="#[c7da28]">>></a> uart_printf
<LI><a href="#[c7dab8]">>></a> uart_getkey
<LI><a href="#[c7db00]">>></a> uart_getintnum
<LI><a href="#[c7db48]">>></a> uart_getch
<LI><a href="#[c7dfc8]">>></a> Menu
<LI><a href="#[c7e010]">>></a> MemoryTest
</UL>
<BR>[Called By]<UL><LI><a href="#[c7df80]">>></a> WaitDownload
<LI><a href="#[c7dfc8]">>></a> Menu
<LI><a href="#[c81878]">>></a> usb_test
</UL>
<P><STRONG><a name="[c7df80]"></a>WaitDownload</STRONG> (ARM, 1908 bytes, Stack size 96 bytes, usb_test.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 960 + Unknown Stack Size
<LI>Call Chain = WaitDownload ⇒ Menu ⇒ Menu (Cycle)
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d998]">>></a> uart_txempty
<LI><a href="#[c7da28]">>></a> uart_printf
<LI><a href="#[c7dab8]">>></a> uart_getkey
<LI><a href="#[c7dea8]">>></a> ConfigEp3DmaMode
<LI><a href="#[c7def0]">>></a> ClearEp3OutPktReady
<LI><a href="#[c7dfc8]">>></a> Menu
<LI><a href="#[c800d8]">>></a> timer_stopex
<LI><a href="#[c80120]">>></a> timer_startex
<LI><a href="#[c80168]">>></a> timer_initex
<LI><a href="#[108ba90]">>></a> __aeabi_ui2f
<LI><a href="#[108bec8]">>></a> __aeabi_fdiv
<LI><a href="#[108c2b0]">>></a> __aeabi_f2d
<LI><a href="#[108ce60]">>></a> __aeabi_ddiv
<LI><a href="#[108d7d0]">>></a> __aeabi_d2f
</UL>
<BR>[Called By]<UL><LI><a href="#[c81878]">>></a> usb_test
</UL>
<P><STRONG><a name="[c7df38]"></a>Isr_Init</STRONG> (ARM, 152 bytes, Stack size 0 bytes, usb_test.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c81878]">>></a> usb_test
</UL>
<P><STRONG><a name="[c81878]"></a>usb_test</STRONG> (ARM, 744 bytes, Stack size 8 bytes, usb_test.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 968 + Unknown Stack Size
<LI>Call Chain = usb_test ⇒ WaitDownload ⇒ Menu ⇒ Menu (Cycle)
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d9e0]">>></a> uart_select
<LI><a href="#[c7da28]">>></a> uart_printf
<LI><a href="#[c7da70]">>></a> uart_init
<LI><a href="#[c7db90]">>></a> delay
<LI><a href="#[c7dd88]">>></a> UsbdMain
<LI><a href="#[c7df38]">>></a> Isr_Init
<LI><a href="#[c7df80]">>></a> WaitDownload
<LI><a href="#[c7dfc8]">>></a> Menu
</UL>
<BR>[Called By]<UL><LI><a href="#[c81908]">>></a> main
</UL>
<P><STRONG><a name="[c7c2e0]"></a>PrepareEp1Fifo</STRONG> (ARM, 100 bytes, Stack size 16 bytes, usbin.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = PrepareEp1Fifo
</UL>
<BR>[Calls]<UL><LI><a href="#[c7c250]">>></a> WrPktEp1
</UL>
<BR>[Called By]<UL><LI><a href="#[c7c298]">>></a> Ep1Handler
<LI><a href="#[c7ddd0]">>></a> IsrUsbd
</UL>
<P><STRONG><a name="[c7c298]"></a>Ep1Handler</STRONG> (ARM, 112 bytes, Stack size 8 bytes, usbin.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 776 + Unknown Stack Size
<LI>Call Chain = Ep1Handler ⇒ PrintEpiPkt ⇒ uart_printf ⇒ __c89vsprintf ⇒ _printf_char_common ⇒ __printf ⇒ _printf_fp_dec ⇒ _printf_fp_dec_real ⇒ _fp_digits ⇒ _btod_etento ⇒ _btod_emul ⇒ _e2e
</UL>
<BR>[Calls]<UL><LI><a href="#[c7c2e0]">>></a> PrepareEp1Fifo
<LI><a href="#[c7cbe0]">>></a> PrintEpiPkt
<LI><a href="#[c7da28]">>></a> uart_printf
</UL>
<BR>[Called By]<UL><LI><a href="#[c7ddd0]">>></a> IsrUsbd
</UL>
<P><STRONG><a name="[c7af80]"></a>ReconfigUsbd</STRONG> (ARM, 272 bytes, Stack size 0 bytes, usblib.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7af38]">>></a> ConfigUsbd
<LI><a href="#[c7ddd0]">>></a> IsrUsbd
</UL>
<P><STRONG><a name="[c7af38]"></a>ConfigUsbd</STRONG> (ARM, 36 bytes, Stack size 4 bytes, usblib.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = ConfigUsbd
</UL>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -