📄 mmclpc2138.htm
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [C:\Documents and Settings\ERDAL\Desktop\LPC2138MMCLCD\MMCLPC2138.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image C:\Documents and Settings\ERDAL\Desktop\LPC2138MMCLCD\MMCLPC2138.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.0 [Build 942]: Last Updated: Sun Sep 10 23:48:53 2006
<BR><P>
<H3>Maximum Stack Usage = 136 bytes + Unknown(Functions without stacksize,Cycles,Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main -> deg_yaz -> gclcd_putc -> glcdNewLine -> gclcd_gotoxy -> glcdSetAddr1<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[ed547c]">Reset_Handler</a>
<LI><a href="#[f18fc0]">__scatterload</a>
<LI><a href="#[f18ef0]">__scatterload_rt2</a>
<LI><a href="#[f18f40]">__scatterload_null</a>
<LI><a href="#[f19888]">__decompress</a>
<LI><a href="#[f19838]">__decompress2</a>
<LI><a href="#[f188a8]">__scatterload_zeroinit</a>
<LI><a href="#[ed52fc]">__user_initial_stackheap</a>
<LI><a href="#[ef8698]">__fplib_config_pureend_doubles</a>
<LI><a href="#[ed5a48]">Undef_Handler</a>
<LI><a href="#[ed59d0]">SWI_Handler</a>
<LI><a href="#[ed5954]">PAbt_Handler</a>
<LI><a href="#[ed58d8]">DAbt_Handler</a>
<LI><a href="#[ed5860]">IRQ_Handler</a>
<LI><a href="#[ed57e8]">FIQ_Handler</a>
<LI><a href="#[f19bb4]">_decompress_loop</a>
<LI><a href="#[f19a64]">_decompress_lits</a>
<LI><a href="#[f19cb4]">_decompress_lit</a>
<LI><a href="#[f199e0]">_decompress_setupcopy</a>
<LI><a href="#[f198d8]">_decompress_setupcopy_shortx</a>
<LI><a href="#[f19c34]">_decompress_copy</a>
<LI><a href="#[f19964]">_decompress_end</a>
<LI><a href="#[b0f47c]">__arm_div8</a>
<LI><a href="#[b0f4f4]">__arm_div4</a>
<LI><a href="#[b0f400]">__arm_div_large</a>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3><UL>
<LI><a href="#[ed59d0]">SWI_Handler</a> -> <a href="#[ed59d0]">SWI_Handler</a><BR>
<LI><a href="#[ed5954]">PAbt_Handler</a> -> <a href="#[ed5954]">PAbt_Handler</a><BR>
<LI><a href="#[ed5860]">IRQ_Handler</a> -> <a href="#[ed5860]">IRQ_Handler</a><BR>
<LI><a href="#[ed57e8]">FIQ_Handler</a> -> <a href="#[ed57e8]">FIQ_Handler</a><BR>
</UL>
<BR>
<P><STRONG><a name="[ed547c]"></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="[b0cb94]"></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="#[b0c084]">>></a> __rt_entry
<LI><a href="#[f18fc0]">>></a> __scatterload
</UL>
<P><STRONG><a name="[f18fc0]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[b0cb94]"><<</a> __main
</UL>
<P><STRONG><a name="[f18ef0]"></a>__scatterload_rt2</STRONG> (ARM, 48 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[b0c084]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[f18f40]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[f19888]"></a>__decompress</STRONG> (ARM, 96 bytes, Stack size unknown bytes, __dclz77c.o(!!dclz77c), UNUSED)
<P><STRONG><a name="[f19838]"></a>__decompress2</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __dclz77c.o(!!dclz77c), UNUSED)
<P><STRONG><a name="[f188a8]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[f007d0]"></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="#[f00704]"><<</a> __rt_lib_init (via Veneer)
</UL>
<P><STRONG><a name="[a26cd8]"></a>InitStorage</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, storage.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 84<LI>Call Chain = InitStorage -> InitMMC -> SeekSector -> RebootMMC -> MmcCommand -> SPI8Clocks</UL>
<BR>[Calls]<UL><LI><a href="#[a26ae8]">>></a> InitMMC
</UL>
<BR>[Called By]<UL><LI><a href="#[ad9df8]"><<</a> InitFileSystem
<LI><a href="#[aeecc4]"><<</a> main
</UL>
<P><STRONG><a name="[a26b5c]"></a>ReadDiskSector</STRONG> (Thumb, 60 bytes, Stack size 8 bytes, storage.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 68<LI>Call Chain = ReadDiskSector -> SeekSector -> RebootMMC -> MmcCommand -> SPI8Clocks</UL>
<BR>[Calls]<UL><LI><a href="#[a269f0]">>></a> SeekSector
<LI><a href="#[a26a68]">>></a> ReadPhysicalSector
</UL>
<BR>[Called By]<UL><LI><a href="#[ad9df8]"><<</a> InitFileSystem
<LI><a href="#[ad9ef0]"><<</a> OpenFile
<LI><a href="#[ad9f68]"><<</a> LoadNextSector
<LI><a href="#[ad9fe4]"><<</a> FGetChar
<LI><a href="#[aeecc4]"><<</a> main
</UL>
<P><STRONG><a name="[ad1c34]"></a>SPIWait</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[a26970]"><<</a> WritePhysicalSector
<LI><a href="#[a26ae8]"><<</a> InitMMC
<LI><a href="#[ad1a44]"><<</a> SPI8Clocks
<LI><a href="#[ed881c]"><<</a> PerformBlockRead
<LI><a href="#[ed8990]"><<</a> MmcCommand
</UL>
<P><STRONG><a name="[ad1bbc]"></a>SPIGetChar</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[a26970]"><<</a> WritePhysicalSector
<LI><a href="#[ed8914]"><<</a> MmcWaitForData
<LI><a href="#[ed8990]"><<</a> MmcCommand
</UL>
<P><STRONG><a name="[ad1b44]"></a>SPIPutChar</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[a26ae8]"><<</a> InitMMC
<LI><a href="#[ed8990]"><<</a> MmcCommand
</UL>
<P><STRONG><a name="[ad1abc]"></a>SPIPutCharWithoutWaiting</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[a26970]"><<</a> WritePhysicalSector
<LI><a href="#[a26ae8]"><<</a> InitMMC
<LI><a href="#[ed881c]"><<</a> PerformBlockRead
<LI><a href="#[ed8990]"><<</a> MmcCommand
</UL>
<P><STRONG><a name="[ad1a44]"></a>SPI8Clocks</STRONG> (Thumb, 32 bytes, Stack size 4 bytes, board.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = SPI8Clocks</UL>
<BR>[Calls]<UL><LI><a href="#[ad1c34]">>></a> SPIWait
</UL>
<BR>[Called By]<UL><LI><a href="#[a26970]"><<</a> WritePhysicalSector
<LI><a href="#[ed8914]"><<</a> MmcWaitForData
<LI><a href="#[ed8990]"><<</a> MmcCommand
</UL>
<P><STRONG><a name="[ad19cc]"></a>delay_ms</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[a26ae8]"><<</a> InitMMC
<LI><a href="#[ac6bbc]"><<</a> glcdDisplayInit
<LI><a href="#[aeecc4]"><<</a> main
<LI><a href="#[ed889c]"><<</a> RebootMMC
</UL>
<P><STRONG><a name="[ad1954]"></a>spi_init</STRONG> (Thumb, 114 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ac6bbc]"><<</a> glcdDisplayInit
</UL>
<P><STRONG><a name="[ad18dc]"></a>spi_command</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ac6bbc]"><<</a> glcdDisplayInit
<LI><a href="#[ac6c38]"><<</a> glcdContrast
<LI><a href="#[ac6cb4]"><<</a> glcdDisplayOFF
<LI><a href="#[ac6d30]"><<</a> glcdDisplayON
<LI><a href="#[ac6e24]"><<</a> gclcd_putc
<LI><a href="#[ac7084]"><<</a> glcdSetAddr
<LI><a href="#[ac7178]"><<</a> glcdSetAddr1
<LI><a href="#[ac71f4]"><<</a> glcdSetOrientation
</UL>
<P><STRONG><a name="[ad1864]"></a>spi_data</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ac6bbc]"><<</a> glcdDisplayInit
<LI><a href="#[ac6c38]"><<</a> glcdContrast
<LI><a href="#[ac6e24]"><<</a> gclcd_putc
<LI><a href="#[ac7084]"><<</a> glcdSetAddr
<LI><a href="#[ac7178]"><<</a> glcdSetAddr1
<LI><a href="#[ac71f4]"><<</a> glcdSetOrientation
<LI><a href="#[ac7274]"><<</a> glcdPutPixel
<LI><a href="#[aeecc4]"><<</a> main
<LI><a href="#[aeee24]"><<</a> Open_BMP
</UL>
<P><STRONG><a name="[ad17f0]"></a>feed</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, board.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ad1778]"><<</a> InitBoard
</UL>
<P><STRONG><a name="[ad1778]"></a>InitBoard</STRONG> (Thumb, 78 bytes, Stack size 4 bytes, board.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = InitBoard</UL>
<BR>[Calls]<UL><LI><a href="#[ad17f0]">>></a> feed
</UL>
<BR>[Called By]<UL><LI><a href="#[aeecc4]"><<</a> main
</UL>
<P><STRONG><a name="[ac7274]"></a>glcdPutPixel</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, epson.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = glcdPutPixel</UL>
<BR>[Calls]<UL><LI><a href="#[ad1864]">>></a> spi_data
</UL>
<BR>[Called By]<UL><LI><a href="#[ac6e24]"><<</a> gclcd_putc
<LI><a href="#[ac7008]"><<</a> glcdDoFillRect
</UL>
<P><STRONG><a name="[ac7178]"></a>glcdSetAddr1</STRONG> (Thumb, 60 bytes, Stack size 24 bytes, epson.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = glcdSetAddr1</UL>
<BR>[Calls]<UL><LI><a href="#[ad1864]">>></a> spi_data
<LI><a href="#[ad18dc]">>></a> spi_command
</UL>
<BR>[Called By]<UL><LI><a href="#[ac70fc]"><<</a> gclcd_gotoxy
</UL>
<P><STRONG><a name="[ac70fc]"></a>gclcd_gotoxy</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, epson.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = gclcd_gotoxy -> glcdSetAddr1</UL>
<BR>[Calls]<UL><LI><a href="#[ac7178]">>></a> glcdSetAddr1
</UL>
<BR>[Called By]<UL><LI><a href="#[ac6e24]"><<</a> gclcd_putc
<LI><a href="#[ac6f14]"><<</a> glcdNewLine
<LI><a href="#[aeecc4]"><<</a> main
</UL>
<P><STRONG><a name="[ac7084]"></a>glcdSetAddr</STRONG> (Thumb, 58 bytes, Stack size 24 bytes, epson.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = glcdSetAddr</UL>
<BR>[Calls]<UL><LI><a href="#[ad1864]">>></a> spi_data
<LI><a href="#[ad18dc]">>></a> spi_command
</UL>
<BR>[Called By]<UL><LI><a href="#[ac7008]"><<</a> glcdDoFillRect
<LI><a href="#[aeecc4]"><<</a> main
<LI><a href="#[aeee24]"><<</a> Open_BMP
</UL>
<P><STRONG><a name="[ac7008]"></a>glcdDoFillRect</STRONG> (Thumb, 218 bytes, Stack size 40 bytes, epson.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = glcdDoFillRect -> glcdSetAddr</UL>
<BR>[Calls]<UL><LI><a href="#[ac7084]">>></a> glcdSetAddr
<LI><a href="#[ac7274]">>></a> glcdPutPixel
</UL>
<BR>[Called By]<UL><LI><a href="#[ac6f8c]"><<</a> glcdFillRect
</UL>
<P><STRONG><a name="[ac6f8c]"></a>glcdFillRect</STRONG> (Thumb, 56 bytes, Stack size 24 bytes, epson.o(.text))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -