📄 http_demo.htm
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\Obj\Http_demo.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\Obj\Http_demo.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.1 [Build 914]: Last Updated: Wed Feb 06 16:26:14 2008
<BR><P>
<H3>Maximum Stack Usage = 388 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
http_listener ⇒ cgi_process_var ⇒ __0sscanf ⇒ __vfscanf_char ⇒ __vfscanf ⇒ _scanf_longlong ⇒ __aeabi_lmul ⇒ __aeabi_llsl
<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[c7c9f8]">Reset_Handler</a>
<LI><a href="#[c7ccc8]">Undef_Handler</a>
<LI><a href="#[c7cc80]">SWI_Handler</a>
<LI><a href="#[c7cc38]">PAbt_Handler</a>
<LI><a href="#[c7cbf0]">DAbt_Handler</a>
<LI><a href="#[c7cba8]">IRQ_Handler</a>
<LI><a href="#[c7cb60]">FIQ_Handler</a>
</UL>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3> <LI><a href="#[c7e148]">sys_error</a> ⇒ <a href="#[c7e148]">sys_error</a><BR>
<LI><a href="#[1078eb8]">mem_test</a> ⇒ <a href="#[1078eb8]">mem_test</a><BR>
<LI><a href="#[c7ccc8]">Undef_Handler</a> ⇒ <a href="#[c7ccc8]">Undef_Handler</a><BR>
<LI><a href="#[c7cc80]">SWI_Handler</a> ⇒ <a href="#[c7cc80]">SWI_Handler</a><BR>
<LI><a href="#[c7cc38]">PAbt_Handler</a> ⇒ <a href="#[c7cc38]">PAbt_Handler</a><BR>
<LI><a href="#[c7cbf0]">DAbt_Handler</a> ⇒ <a href="#[c7cbf0]">DAbt_Handler</a><BR>
<LI><a href="#[c7cba8]">IRQ_Handler</a> ⇒ <a href="#[c7cba8]">IRQ_Handler</a><BR>
<LI><a href="#[c7cb60]">FIQ_Handler</a> ⇒ <a href="#[c7cb60]">FIQ_Handler</a><BR>
<LI><a href="#[1078d50]">str_up_case</a> ⇒ <a href="#[1078d50]">str_up_case</a><BR>
</UL>
<P>
<H3>
Function Pointers
</H3><UL>
<LI><a href="#[c7c9f8]">Reset_Handler</a>
<LI><a href="#[c7ccc8]">Undef_Handler</a>
<LI><a href="#[c7cc80]">SWI_Handler</a>
<LI><a href="#[c7cc38]">PAbt_Handler</a>
<LI><a href="#[c7cbf0]">DAbt_Handler</a>
<LI><a href="#[c7cba8]">IRQ_Handler</a>
<LI><a href="#[c7cb60]">FIQ_Handler</a>
<LI><a href="#[10f6d20]">__main</a>
<LI><a href="#[c7bd70]">interrupt_ethernet</a>
<LI><a href="#[127d2f8]">_sgetc</a>
<LI><a href="#[127d2b0]">_sbackspace</a>
<LI><a href="#[c829c8]">main</a>
<LI><a href="#[127d0f8]">_scanf_char_input</a>
<LI><a href="#[127bf00]">isspace</a>
<LI><a href="#[127ffd8]">_sputc</a>
<LI><a href="#[107ed00]">dhcp_listener</a>
<LI><a href="#[1083430]">http_listener</a>
<LI><a href="#[10806e0]">nbns_listener</a>
</UL>
<P>
<H3>
Global Symbols
</H3>
<P><STRONG><a name="[c7c9f8]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, lpc2300.o(RESET))
<BR>[Address Reference Count : 1]<UL><LI> lpc2300.o(RESET)
</UL>
<P><STRONG><a name="[10f6d20]"></a>__main</STRONG> (ARM, 8 bytes, Stack size 0 bytes, entry.o($$startup$$))
<BR><BR>[Calls]<UL><LI><a href="#[127dbb0]">>></a> __init (via Veneer)
</UL>
<P><STRONG><a name="[127dbf8]"></a>__call_main</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, init.o(.emb_text))
<BR><BR>[Called By]<UL><LI><a href="#[127dbb0]">>></a> __init
</UL>
<P><STRONG><a name="[c82aa0]"></a>sendchar</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, http_demo.o(.text), UNUSED)
<P><STRONG><a name="[c82a58]"></a>LED_out</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, http_demo.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c817d0]">>></a> cgi_process_data
<LI><a href="#[c82fb0]">>></a> blink_led
</UL>
<P><STRONG><a name="[c82a10]"></a>AD_in</STRONG> (Thumb, 46 bytes, Stack size 0 bytes, http_demo.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c81788]">>></a> cgi_func
</UL>
<P><STRONG><a name="[c829c8]"></a>main</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, http_demo.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 320 + Unknown Stack Size
<LI>Call Chain = main ⇒ main_TcpNet ⇒ run_system ⇒ run_eth_link ⇒ process_hl_tcp ⇒ process_tcp ⇒ tcp_send_reset ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[c82fb0]">>></a> blink_led
<LI><a href="#[c82ff8]">>></a> init
<LI><a href="#[c83040]">>></a> dhcp_check
<LI><a href="#[10ff390]">>></a> timer_tick
<LI><a href="#[10ff3d8]">>></a> main_TcpNet
</UL>
<BR>[Address Reference Count : 1]<UL><LI> init.o(.text)
</UL>
<P><STRONG><a name="[c81818]"></a>cgi_process_var</STRONG> (Thumb, 312 bytes, Stack size 56 bytes, http_cgi.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 348 + Unknown Stack Size
<LI>Call Chain = cgi_process_var ⇒ __0sscanf ⇒ __vfscanf_char ⇒ __vfscanf ⇒ _scanf_longlong ⇒ __aeabi_lmul ⇒ __aeabi_llsl
</UL>
<BR>[Calls]<UL><LI><a href="#[1077088]">>></a> free_mem
<LI><a href="#[10770d0]">>></a> alloc_mem
<LI><a href="#[1078d98]">>></a> str_scomp
<LI><a href="#[1082e00]">>></a> http_get_var
<LI><a href="#[127ed58]">>></a> __0sscanf
</UL>
<BR>[Called By]<UL><LI><a href="#[1083430]">>></a> http_listener
</UL>
<P><STRONG><a name="[c817d0]"></a>cgi_process_data</STRONG> (Thumb, 374 bytes, Stack size 56 bytes, http_cgi.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = cgi_process_data ⇒ alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[c82a58]">>></a> LED_out
<LI><a href="#[1077088]">>></a> free_mem
<LI><a href="#[10770d0]">>></a> alloc_mem
<LI><a href="#[1078d98]">>></a> str_scomp
<LI><a href="#[1078e28]">>></a> str_copy
<LI><a href="#[1078fd8]">>></a> mem_comp
<LI><a href="#[1082e00]">>></a> http_get_var
<LI><a href="#[10f6790]">>></a> strlen
</UL>
<BR>[Called By]<UL><LI><a href="#[1083430]">>></a> http_listener
</UL>
<P><STRONG><a name="[c81788]"></a>cgi_func</STRONG> (Thumb, 890 bytes, Stack size 64 bytes, http_cgi.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = cgi_func ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[c82a10]">>></a> AD_in
<LI><a href="#[1082e90]">>></a> http_get_lang
<LI><a href="#[10f6670]">>></a> strcmp
<LI><a href="#[10f7458]">>></a> __ARM_switch8 (via Veneer)
<LI><a href="#[127deb8]">>></a> __aeabi_ui2f
<LI><a href="#[127e070]">>></a> __ARM_scalbn
<LI><a href="#[127e190]">>></a> __aeabi_f2d
<LI><a href="#[127e360]">>></a> __aeabi_dmul
<LI><a href="#[127fd08]">>></a> __1sprintf
</UL>
<BR>[Called By]<UL><LI><a href="#[1082d70]">>></a> run_http_server
</UL>
<P><STRONG><a name="[c7e148]"></a>sys_error</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, net_config.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[c7e148]">>></a> sys_error
</UL>
<BR>[Called By]<UL><LI><a href="#[c73e80]">>></a> udp_get_socket
<LI><a href="#[c778c0]">>></a> tcp_get_socket
<LI><a href="#[c77ab8]">>></a> process_tcp
<LI><a href="#[c7e148]">>></a> sys_error
<LI><a href="#[1077088]">>></a> free_mem
<LI><a href="#[10770d0]">>></a> alloc_mem
</UL>
<P><STRONG><a name="[c7e100]"></a>init_system</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = init_system ⇒ init_http ⇒ tcp_get_socket
</UL>
<BR>[Calls]<UL><LI><a href="#[c73fa0]">>></a> init_udp
<LI><a href="#[c77b00]">>></a> init_tcp
<LI><a href="#[107ca00]">>></a> init_eth_link
<LI><a href="#[107e910]">>></a> init_dhcp
<LI><a href="#[10802f0]">>></a> init_nbns
<LI><a href="#[1082db8]">>></a> init_http
</UL>
<BR>[Called By]<UL><LI><a href="#[10ff420]">>></a> init_TcpNet
</UL>
<P><STRONG><a name="[c7e0b8]"></a>run_system</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 296 + Unknown Stack Size
<LI>Call Chain = run_system ⇒ run_eth_link ⇒ process_hl_tcp ⇒ process_tcp ⇒ tcp_send_reset ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[c777a0]">>></a> tcp_poll_sockets
<LI><a href="#[107c970]">>></a> run_eth_link
<LI><a href="#[107e8c8]">>></a> run_dhcp_client
<LI><a href="#[1082d70]">>></a> run_http_server
</UL>
<BR>[Called By]<UL><LI><a href="#[10ff3d8]">>></a> main_TcpNet
</UL>
<P><STRONG><a name="[c7e070]"></a>process_hl_udp</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 44 + Unknown Stack Size
<LI>Call Chain = process_hl_udp ⇒ process_udp ⇒ CalcChksumBuf
</UL>
<BR>[Calls]<UL><LI><a href="#[c73f58]">>></a> process_udp
</UL>
<BR>[Called By]<UL><LI><a href="#[107c970]">>></a> run_eth_link
</UL>
<P><STRONG><a name="[c7e028]"></a>process_hl_tcp</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 272 + Unknown Stack Size
<LI>Call Chain = process_hl_tcp ⇒ process_tcp ⇒ tcp_send_reset ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[c77ab8]">>></a> process_tcp
</UL>
<BR>[Called By]<UL><LI><a href="#[107c970]">>></a> run_eth_link
</UL>
<P><STRONG><a name="[c7dfe0]"></a>dispatch_frame</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, net_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
</UL>
<BR>[Calls]<UL><LI><a href="#[107ca48]">>></a> eth_send_frame
</UL>
<BR>[Called By]<UL><LI><a href="#[10faa70]">>></a> ip_send_frame
</UL>
<P><STRONG><a name="[c7b980]"></a>init_ethernet</STRONG> (Thumb, 440 bytes, Stack size 24 bytes, lpc23_emac.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = init_ethernet
</UL>
<BR>[Calls]<UL><LI><a href="#[c7bce0]">>></a> write_PHY
<LI><a href="#[c7bd28]">>></a> read_PHY
</UL>
<BR>[Called By]<UL><LI><a href="#[107ca00]">>></a> init_eth_link
</UL>
<P><STRONG><a name="[c7b938]"></a>int_enable_eth</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, lpc23_emac.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[1076ff8]">>></a> resize_mem
<LI><a href="#[1077088]">>></a> free_mem
<LI><a href="#[10770d0]">>></a> alloc_mem
<LI><a href="#[107ca00]">>></a> init_eth_link
</UL>
<P><STRONG><a name="[c7b8f0]"></a>int_disable_eth</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, lpc23_emac.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[1076ff8]">>></a> resize_mem
<LI><a href="#[1077088]">>></a> free_mem
<LI><a href="#[10770d0]">>></a> alloc_mem
<LI><a href="#[107ca00]">>></a> init_eth_link
<LI><a href="#[10ff420]">>></a> init_TcpNet
</UL>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -