📄 easyweb.htm
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\Objects\easyweb.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\Objects\easyweb.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.0 [Build 942]: Last Updated: Thu Oct 19 23:11:00 2006
<BR><P>
<H3>Maximum Stack Usage = 336 bytes + Unknown(Functions without stacksize,Cycles,Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main -> HTTPServer -> InsertDynamicValues -> __0sprintf -> _printf_char_common -> __printf -> _printf_int_dec -> _printf_int_common -> _printf_post_padding<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[101f6a8]">Reset_Handler</a>
<LI><a href="#[1039e10]">__scatterload</a>
<LI><a href="#[1039d40]">__scatterload_rt2</a>
<LI><a href="#[1039d90]">__scatterload_null</a>
<LI><a href="#[10396f4]">__scatterload_copy</a>
<LI><a href="#[103913c]">__scatterload_zeroinit</a>
<LI><a href="#[101f528]">__user_initial_stackheap</a>
<LI><a href="#[fdd5c0]">_memcpy_lastbytes</a>
<LI><a href="#[fdce24]">_memset</a>
<LI><a href="#[fd438c]">_memcpy_lastbytes_aligned</a>
<LI><a href="#[fd3c80]">_memset_w</a>
<LI><a href="#[fd2fa8]">__ARM_call_via_r0</a>
<LI><a href="#[fd3028]">__call_via_r0</a>
<LI><a href="#[fd2eac]">__ARM_call_via_r1</a>
<LI><a href="#[fd2f2c]">__call_via_r1</a>
<LI><a href="#[fd2de0]">__ARM_call_via_r2</a>
<LI><a href="#[fd2e30]">__call_via_r2</a>
<LI><a href="#[fd2ce4]">__ARM_call_via_r3</a>
<LI><a href="#[fd2d64]">__call_via_r3</a>
<LI><a href="#[fd2be8]">__ARM_call_via_r4</a>
<LI><a href="#[fd2c68]">__call_via_r4</a>
<LI><a href="#[fd2aec]">__ARM_call_via_r5</a>
<LI><a href="#[fd2b6c]">__call_via_r5</a>
<LI><a href="#[fd29f0]">__ARM_call_via_r6</a>
<LI><a href="#[fd2a70]">__call_via_r6</a>
<LI><a href="#[fd28f4]">__ARM_call_via_r7</a>
<LI><a href="#[fd2974]">__call_via_r7</a>
<LI><a href="#[1027528]">__fplib_config_pureend_doubles</a>
<LI><a href="#[101fc74]">Undef_Handler</a>
<LI><a href="#[101fbfc]">SWI_Handler</a>
<LI><a href="#[101fb80]">PAbt_Handler</a>
<LI><a href="#[101fb04]">DAbt_Handler</a>
<LI><a href="#[101fa8c]">IRQ_Handler</a>
<LI><a href="#[101fa14]">FIQ_Handler</a>
<LI><a href="#[fdc6c8]">__arm_div8</a>
<LI><a href="#[fdc740]">__arm_div4</a>
<LI><a href="#[fdc64c]">__arm_div_large</a>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3><UL>
<LI><a href="#[101fc74]">Undef_Handler</a> -> <a href="#[101fc74]">Undef_Handler</a><BR>
<LI><a href="#[101fbfc]">SWI_Handler</a> -> <a href="#[101fbfc]">SWI_Handler</a><BR>
<LI><a href="#[101fb80]">PAbt_Handler</a> -> <a href="#[101fb80]">PAbt_Handler</a><BR>
<LI><a href="#[101fb04]">DAbt_Handler</a> -> <a href="#[101fb04]">DAbt_Handler</a><BR>
<LI><a href="#[101fa8c]">IRQ_Handler</a> -> <a href="#[101fa8c]">IRQ_Handler</a><BR>
<LI><a href="#[101fa14]">FIQ_Handler</a> -> <a href="#[101fa14]">FIQ_Handler</a><BR>
</UL>
<BR>
<P><STRONG><a name="[101f6a8]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, sam7.o(RESET))
<BR>[Address Reference Count : 1]<UL><LI> sam7.o(RESET)
</UL>
<P><STRONG><a name="[fd9db4]"></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="#[fd8cd8]">>></a> __rt_entry
<LI><a href="#[1039e10]">>></a> __scatterload
</UL>
<P><STRONG><a name="[1039e10]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[fd9db4]"><<</a> __main
</UL>
<P><STRONG><a name="[1039d40]"></a>__scatterload_rt2</STRONG> (ARM, 48 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[fd8cd8]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[1039d90]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[10396f4]"></a>__scatterload_copy</STRONG> (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[10396f4]">>></a> __scatterload_copy
</UL>
<BR>[Called By]<UL><LI><a href="#[10396f4]"><<</a> __scatterload_copy
</UL>
<P><STRONG><a name="[103913c]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[102f060]"></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="#[102ef94]"><<</a> __rt_lib_init (via Veneer)
</UL>
<P><STRONG><a name="[b259a8]"></a>GetTempVal</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, easyweb.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = GetTempVal</UL>
<BR>[Calls]<UL><LI><a href="#[fdc164]">>></a> __aeabi_uidivmod (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[b258b0]"><<</a> InsertDynamicValues
</UL>
<P><STRONG><a name="[b25930]"></a>GetAD7Val</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, easyweb.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = GetAD7Val</UL>
<BR>[Calls]<UL><LI><a href="#[fdc164]">>></a> __aeabi_uidivmod (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[b258b0]"><<</a> InsertDynamicValues
</UL>
<P><STRONG><a name="[b258b0]"></a>InsertDynamicValues</STRONG> (Thumb, 126 bytes, Stack size 24 bytes, easyweb.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 320 + Unknown Stack Size
<LI>Call Chain = InsertDynamicValues -> __0sprintf -> _printf_char_common -> __printf -> _printf_int_dec -> _printf_int_common -> _printf_post_padding</UL>
<BR>[Calls]<UL><LI><a href="#[b25930]">>></a> GetAD7Val
<LI><a href="#[b259a8]">>></a> GetTempVal
<LI><a href="#[fdd570]">>></a> __aeabi_memcpy (via Veneer)
<LI><a href="#[fde934]">>></a> __0sprintf
</UL>
<BR>[Called By]<UL><LI><a href="#[b25838]"><<</a> HTTPServer
</UL>
<P><STRONG><a name="[b25838]"></a>HTTPServer</STRONG> (Thumb, 274 bytes, Stack size 8 bytes, easyweb.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 328 + Unknown Stack Size
<LI>Call Chain = HTTPServer -> InsertDynamicValues -> __0sprintf -> _printf_char_common -> __printf -> _printf_int_dec -> _printf_int_common -> _printf_post_padding</UL>
<BR>[Calls]<UL><LI><a href="#[b254d8]">>></a> TCPTransmitTxBuffer
<LI><a href="#[b25558]">>></a> TCPReleaseRxBuffer
<LI><a href="#[b256d0]">>></a> TCPClose
<LI><a href="#[b258b0]">>></a> InsertDynamicValues
<LI><a href="#[fdd570]">>></a> __aeabi_memcpy (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[b257c4]"><<</a> main
</UL>
<P><STRONG><a name="[b257c4]"></a>main</STRONG> (Thumb, 44 bytes, Stack size 8 bytes, easyweb.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 336 + Unknown Stack Size
<LI>Call Chain = main -> HTTPServer -> InsertDynamicValues -> __0sprintf -> _printf_char_common -> __printf -> _printf_int_dec -> _printf_int_common -> _printf_post_padding</UL>
<BR>[Calls]<UL><LI><a href="#[b255d8]">>></a> TCPPassiveOpen
<LI><a href="#[b25654]">>></a> TCPLowLevelInit
<LI><a href="#[b25748]">>></a> DoNetworkStuff
<LI><a href="#[b25838]">>></a> HTTPServer
</UL>
<BR>[Address Reference Count : 1]<UL><LI> kernel.o(.text)
</UL>
<P><STRONG><a name="[b25654]"></a>TCPLowLevelInit</STRONG> (Thumb, 70 bytes, Stack size 8 bytes, tcpip.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = TCPLowLevelInit -> Init_EMAC</UL>
<BR>[Calls]<UL><LI><a href="#[bf755c]">>></a> Init_EMAC
</UL>
<BR>[Called By]<UL><LI><a href="#[b257c4]"><<</a> main
</UL>
<P><STRONG><a name="[b255d8]"></a>TCPPassiveOpen</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, tcpip.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b257c4]"><<</a> main
</UL>
<P><STRONG><a name="[bf8324]"></a>TCPStartRetryTimer</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, tcpip.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b254d8]"><<</a> TCPTransmitTxBuffer
<LI><a href="#[b25748]"><<</a> DoNetworkStuff
<LI><a href="#[bf7adc]"><<</a> ProcessTCPFrame
<LI><a href="#[bf8228]"><<</a> TCPActiveOpen
</UL>
<P><STRONG><a name="[bf82a4]"></a>PrepareARP_REQUEST</STRONG> (Thumb, 170 bytes, Stack size 8 bytes, tcpip.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = PrepareARP_REQUEST</UL>
<BR>[Calls]<UL><LI><a href="#[fdcdd4]">>></a> __aeabi_memclr (via Veneer)
<LI><a href="#[fdd570]">>></a> __aeabi_memcpy (via Veneer)
<LI><a href="#[fddbb0]">>></a> __aeabi_memset (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[bf7c58]"><<</a> TCPHandleRetransmission
<LI><a href="#[bf8228]"><<</a> TCPActiveOpen
</UL>
<P><STRONG><a name="[bf8228]"></a>TCPActiveOpen</STRONG> (Thumb, 68 bytes, Stack size 8 bytes, tcpip.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[bf82a4]">>></a> PrepareARP_REQUEST
<LI><a href="#[bf8324]">>></a> TCPStartRetryTimer
</UL>
<P><STRONG><a name="[b256d0]"></a>TCPClose</STRONG> (Thumb, 58 bytes, Stack size 0 bytes, tcpip.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b25838]"><<</a> HTTPServer
</UL>
<P><STRONG><a name="[b25558]"></a>TCPReleaseRxBuffer</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, tcpip.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b25838]"><<</a> HTTPServer
</UL>
<P><STRONG><a name="[b254d8]"></a>TCPTransmitTxBuffer</STRONG> (Thumb, 88 bytes, Stack size 4 bytes, tcpip.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = TCPTransmitTxBuffer</UL>
<BR>[Calls]<UL><LI><a href="#[bf8324]">>></a> TCPStartRetryTimer
</UL>
<BR>[Called By]<UL><LI><a href="#[b25838]"><<</a> HTTPServer
</UL>
<P><STRONG><a name="[bf81b0]"></a>IsBroadcast</STRONG> (Thumb, 60 bytes, Stack size 16 bytes, tcpip.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = IsBroadcast -> CopyFromFrame_EMAC</UL>
<BR>[Calls]<UL><LI><a href="#[bf7374]">>></a> StartReadFrame
<LI><a href="#[bf7750]">>></a> CopyFromFrame_EMAC
</UL>
<BR>[Called By]<UL><LI><a href="#[b25748]"><<</a> DoNetworkStuff
</UL>
<P><STRONG><a name="[bf8138]"></a>SendFrame1</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, tcpip.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = SendFrame1 -> CopyToFrame_EMAC</UL>
<BR>[Calls]<UL><LI><a href="#[bf76d0]">>></a> CopyToFrame_EMAC
</UL>
<BR>[Called By]<UL><LI><a href="#[b25748]"><<</a> DoNetworkStuff
</UL>
<P><STRONG><a name="[bf80c0]"></a>SwapBytes</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, tcpip.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[bf7468]"><<</a> ReadFrameBE_EMAC
<LI><a href="#[bf8044]"><<</a> CalcChecksum
</UL>
<P><STRONG><a name="[bf8044]"></a>CalcChecksum</STRONG> (Thumb, 106 bytes, Stack size 20 bytes, tcpip.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = CalcChecksum</UL>
<BR>[Calls]<UL><LI><a href="#[bf80c0]">>></a> SwapBytes
</UL>
<BR>[Called By]<UL><LI><a href="#[bf7a58]"><<</a> PrepareICMP_ECHO_REPLY
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -