#<CALLGRAPH># ARM Linker, 4.1 [Build 713]: Last Updated: Sat Sep 24 23:21:40 2011
FIQ_Handler ⇒ FIQ_Handler
Function Pointers
- DAbt_Handler from startup.o(RESET) referenced from startup.o(RESET)
- FIQ_Handler from startup.o(RESET) referenced from startup.o(RESET)
- IRQ_Handler from startup.o(RESET) referenced from startup.o(RESET)
- PAbt_Handler from startup.o(RESET) referenced from startup.o(RESET)
- Reset_Handler from startup.o(RESET) referenced from startup.o(RESET)
- SWI_Handler from startup.o(RESET) referenced from startup.o(RESET)
- Undef_Handler from startup.o(RESET) referenced from startup.o(RESET)
- __main from __main.o(!!!main) referenced from startup.o(RESET)
- _get_lc_ctype from lc_ctype_c.o(locale$$code) referenced from rt_ctype_table.o(.text)
- _printf_input_char from _printf_char_common.o(.text) referenced from _printf_char_common.o(.text)
- _sbackspace from _sgetc.o(.text) referenced from __0sscanf.o(.text)
- _scanf_char_input from scanf_char.o(.text) referenced from scanf_char.o(.text)
- _sgetc from _sgetc.o(.text) referenced from __0sscanf.o(.text)
- _sputc from _sputc.o(.text) referenced from __2sprintf.o(.text)
- cmd_capture from sd_file.o(.text) referenced from sd_file.o(.constdata)
- cmd_copy from sd_file.o(.text) referenced from sd_file.o(.constdata)
- cmd_delete from sd_file.o(.text) referenced from sd_file.o(.constdata)
- cmd_dir from sd_file.o(.text) referenced from sd_file.o(.constdata)
- cmd_fill from sd_file.o(.text) referenced from sd_file.o(.constdata)
- cmd_format from sd_file.o(.text) referenced from sd_file.o(.constdata)
- cmd_help from sd_file.o(.text) referenced 2 times from sd_file.o(.constdata)
- cmd_rename from sd_file.o(.text) referenced from sd_file.o(.constdata)
- cmd_type from sd_file.o(.text) referenced from sd_file.o(.constdata)
- fputc from fputc.o(i.fputc) referenced from _printf_char_file.o(.text)
- fputs from fputs.o(.text) referenced from lludiv.o(.text)
- isspace from isspace.o(.text) referenced from scanf_char.o(.text)
- main from sd_file.o(.text) referenced from rtentry2.o(.ARM.Collect$$rtentry$$0000000D)
Global Symbols
Reset_Handler (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))
[Address Reference Count : 1]
__main (ARM, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
[Calls]
- >> __rt_entry
- >> __scatterload
__scatterload (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
[Called By]
__scatterload_rt2 (ARM, 52 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
[Calls]
__scatterload_null (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
__scatterload_copy (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
[Calls]
[Called By]
__scatterload_zeroinit (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
_printf_n (ARM, 0 bytes, Stack size unknown bytes, _printf_n.o(.ARM.Collect$$_printf_percent$$00000001))
[Calls]
- >> _printf_charcount (via Veneer)
_printf_percent (ARM, 0 bytes, Stack size unknown bytes, _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000))
[Called By]
_printf_p (ARM, 0 bytes, Stack size unknown bytes, _printf_p.o(.ARM.Collect$$_printf_percent$$00000002))
[Stack]
- Max Depth = 72 + Unknown Stack Size
- Call Chain = _printf_p ⇒ _printf_hex_ptr ⇒ _printf_int_common ⇒ _printf_post_padding
[Calls]- >> _printf_hex_ptr (via Veneer)
_printf_d (ARM, 0 bytes, Stack size unknown bytes, _printf_d.o(.ARM.Collect$$_printf_percent$$00000009))
[Stack]
- Max Depth = 88 + Unknown Stack Size
- Call Chain = _printf_d ⇒ _printf_int_dec ⇒ _printf_int_common ⇒ _printf_post_padding
[Calls]- >> _printf_int_dec (via Veneer)
_printf_s (ARM, 0 bytes, Stack size unknown bytes, _printf_s.o(.ARM.Collect$$_printf_percent$$00000014))
[Stack]
- Max Depth = 40 + Unknown Stack Size
- Call Chain = _printf_s ⇒ _printf_string ⇒ _printf_cs_common ⇒ _printf_str ⇒ _printf_post_padding
[Calls]- >> _printf_string (via Veneer)
_printf_percent_end (ARM, 0 bytes, Stack size unknown bytes, _printf_percent_end.o(.ARM.Collect$$_printf_percent$$00000017))
__rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_lib_init ⇒ _fp_init
[Calls]
[Called By]- >> __rt_entry_li (via Veneer)
__rt_lib_init_heap_2 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000001))
[Stack]
- Max Depth = 64 + Unknown Stack Size
- Call Chain = __rt_lib_init_heap_2 ⇒ _init_alloc ⇒ __rt_SIGRTMEM ⇒ __rt_SIGRTMEM_inner ⇒ __default_signal_display ⇒ _ttywrch
[Calls]
__rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006))
__rt_lib_init_lc_common (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000B))
[Calls]
- >> __rt_locale (via Veneer)
__rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000A))
__rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000008))
__rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000D))
__rt_lib_init_lc_ctype_2 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))
[Stack]
- Max Depth = 12 + Unknown Stack Size
- Call Chain = __rt_lib_init_lc_ctype_2 ⇒ _get_lc_ctype ⇒ strcmp
[Calls]- >> _get_lc_ctype (via Veneer)
__rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))
__rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))
__rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))
__rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))
__rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000F))
__rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000011))
__rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))
__rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))
__rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))
__rt_lib_init_stdio_2 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000020))
[Stack]
- Max Depth = 472 + Unknown Stack Size
- Call Chain = __rt_lib_init_stdio_2 ⇒ _initio ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
__rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002A))
__rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000028))
__rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))
__rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002C))
__rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002F))
__rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))
__rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
[Called By]
- >> __rt_exit_ls (via Veneer)
__rt_lib_shutdown_stdio_2 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002))
[Stack]
- Max Depth = 344 + Unknown Stack Size
- Call Chain = __rt_lib_shutdown_stdio_2 ⇒ _terminateio ⇒ _fclose_internal ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
__rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000006))
__rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E))
__rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))
__rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000009))
__rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000003))
__rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B))
__rt_entry (ARM, 0 bytes, Stack size unknown bytes, rtentry.o(.ARM.Collect$$rtentry$$00000000))
[Called By]
- >> __main
- >> __scatterload_rt2
__rt_entry_presh_1 (ARM, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000002))
__rt_entry_sh (ARM, 0 bytes, Stack size unknown bytes, rtentry4.o(.ARM.Collect$$rtentry$$00000004))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_entry_sh ⇒ __user_setup_stackheap
[Calls]- >> __user_setup_stackheap
__rt_entry_li (ARM, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_entry_li ⇒ __rt_lib_init ⇒ _fp_init
[Calls]- >> __rt_lib_init (via Veneer)
__rt_entry_postsh_1 (ARM, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000009))
__rt_entry_main (ARM, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
[Calls]
__rt_entry_postli_1 (ARM, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000C))
__rt_exit (ARM, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
[Called By]
__rt_exit_ls (ARM, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
[Calls]
- >> __rt_lib_shutdown (via Veneer)
__rt_exit_prels_1 (ARM, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))
__rt_exit_exit (ARM, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
[Calls]
- >> _sys_exit (via Veneer)
_maybe_terminate_alloc (Thumb, 0 bytes, Stack size 8 bytes, maybetermalloc1.o(.emb_text), UNUSED)
main (Thumb, 946 bytes, Stack size 8 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 360 + Unknown Stack Size
- Call Chain = main ⇒ getline ⇒ fflush ⇒ _do_fflush ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> init_serial
- >> getline
- >> __ARM_common_call_via_r1
- >> init_card
- >> get_entry
- >> strcmp (via Veneer)
- >> fflush
- >> __2printf
- >> toupper
[Address Reference Count : 1]- rtentry2.o(.ARM.Collect$$rtentry$$0000000D)
getline (Thumb, 158 bytes, Stack size 24 bytes, getline.o(.text))
[Stack]
- Max Depth = 352 + Unknown Stack Size
- Call Chain = getline ⇒ fflush ⇒ _do_fflush ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
__user_initial_stackheap (ARM, 0 bytes, Stack size unknown bytes, startup.o(.text))
[Called By]
- >> __user_setup_stackheap
spi_init (Thumb, 48 bytes, Stack size 0 bytes, spi_lpc214x.o(.text))
[Called By]
spi_hi_speed (Thumb, 20 bytes, Stack size 0 bytes, spi_lpc214x.o(.text))
[Called By]
spi_ss (Thumb, 20 bytes, Stack size 0 bytes, spi_lpc214x.o(.text))
[Called By]
- >> mmc_write_sect
- >> mmc_read_sect
- >> mmc_read_config
- >> mmc_init
spi_send (Thumb, 40 bytes, Stack size 0 bytes, spi_lpc214x.o(.text))
[Called By]
- >> mmc_write_sect
- >> mmc_read_sect
- >> mmc_init
- >> mmc_write_block
- >> mmc_read_bytes
- >> mmc_read_block
- >> mmc_command
init_serial (Thumb, 54 bytes, Stack size 0 bytes, serial.o(.text))
[Called By]
sendchar (Thumb, 46 bytes, Stack size 0 bytes, serial.o(.text))
[Called By]
- >> _sys_write
- >> _ttywrch
getkey (Thumb, 18 bytes, Stack size 0 bytes, serial.o(.text))
[Called By]
- >> _sys_read
- >> getline
- >> init_card
- >> cmd_format
_ttywrch (Thumb, 16 bytes, Stack size 8 bytes, retarget.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = _ttywrch
[Calls]
[Called By]- >> __default_signal_display
_sys_open (Thumb, 72 bytes, Stack size 16 bytes, retarget.o(.text))
[Stack]
- Max Depth = 432 + Unknown Stack Size
- Call Chain = _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> __fopen
- >> strcmp (via Veneer)
[Called By]
_sys_close (Thumb, 28 bytes, Stack size 8 bytes, retarget.o(.text))
[Stack]
- Max Depth = 232
- Call Chain = _sys_close ⇒ __fclose ⇒ fat_close_write ⇒ write_fsinfo ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_write (Thumb, 68 bytes, Stack size 24 bytes, retarget.o(.text))
[Stack]
- Max Depth = 248
- Call Chain = _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_read (Thumb, 66 bytes, Stack size 24 bytes, retarget.o(.text))
[Stack]
- Max Depth = 240
- Call Chain = _sys_read ⇒ __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_istty (Thumb, 18 bytes, Stack size 0 bytes, retarget.o(.text))
[Called By]
_sys_seek (Thumb, 34 bytes, Stack size 16 bytes, retarget.o(.text))
[Stack]
- Max Depth = 224 + Unknown Stack Size
- Call Chain = _sys_seek ⇒ __setfpos ⇒ fat_set_fpos ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_ensure (Thumb, 30 bytes, Stack size 8 bytes, retarget.o(.text), UNUSED)
[Calls]
_sys_flen (Thumb, 36 bytes, Stack size 8 bytes, retarget.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = _sys_flen ⇒ __getfsize ⇒ fs_rd_sig
[Calls]
[Called By]
_sys_tmpnam (Thumb, 6 bytes, Stack size 0 bytes, retarget.o(.text), UNUSED)
_sys_command_string (Thumb, 2 bytes, Stack size 0 bytes, retarget.o(.text), UNUSED)
_sys_exit (Thumb, 4 bytes, Stack size 0 bytes, retarget.o(.text))
[Called By]
- >> __rt_exit_exit (via Veneer)
- >> __sig_exit
__semihosting$guard (ARM, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
__use_no_semihosting_swi (ARM, 4 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
__aeabi_uldivmod (ARM, 0 bytes, Stack size 24 bytes, lludiv.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = __aeabi_uldivmod
[Called By]- >> dot_format (via Veneer)
_ll_udiv (ARM, 720 bytes, Stack size 24 bytes, lludiv.o(.text), UNUSED)
_ll_udiv_donemoving (ARM, 0 bytes, Stack size unknown bytes, lludiv.o(.text), UNUSED)
toupper (Thumb, 34 bytes, Stack size 8 bytes, toupper.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = toupper ⇒ __rt_ctype_table
[Calls]- >> __rt_ctype_table (via Veneer)
[Called By]
__2printf (Thumb, 22 bytes, Stack size 24 bytes, __2printf.o(.text))
[Stack]
- Max Depth = 136 + Unknown Stack Size
- Call Chain = __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf
[Calls]
[Called By]- >> main
- >> init_card
- >> cmd_help
- >> cmd_format
- >> cmd_dir
- >> cmd_delete
- >> cmd_copy
- >> cmd_rename
- >> cmd_type
- >> cmd_fill
- >> cmd_capture
__2fprintf (Thumb, 22 bytes, Stack size 24 bytes, __2fprintf.o(.text))
[Stack]
- Max Depth = 136 + Unknown Stack Size
- Call Chain = __2fprintf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf
[Calls]
[Called By]
__2sprintf (Thumb, 40 bytes, Stack size 32 bytes, __2sprintf.o(.text))
[Stack]
- Max Depth = 128 + Unknown Stack Size
- Call Chain = __2sprintf ⇒ _printf_char_common ⇒ __printf
[Calls]- >> _sputc
- >> _printf_char_common
[Called By]
_printf_pre_padding (Thumb, 48 bytes, Stack size 16 bytes, _printf_pad.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = _printf_pre_padding
[Calls]- >> __ARM_common_call_via_r2
[Called By]- >> _printf_int_common
- >> _printf_str
_printf_post_padding (Thumb, 36 bytes, Stack size 16 bytes, _printf_pad.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = _printf_post_padding
[Calls]- >> __ARM_common_call_via_r2
[Called By]- >> _printf_int_common
- >> _printf_str
_printf_str (Thumb, 88 bytes, Stack size 16 bytes, _printf_str.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = _printf_str ⇒ _printf_post_padding
[Calls]- >> _printf_post_padding
- >> _printf_pre_padding
- >> __ARM_common_call_via_r2
[Called By]
_printf_int_dec (Thumb, 94 bytes, Stack size 32 bytes, _printf_dec.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = _printf_int_dec ⇒ _printf_int_common ⇒ _printf_post_padding
[Calls]- >> _printf_int_common
- >> _printf_truncate_unsigned (Weak Reference)
- >> _printf_truncate_signed (Weak Reference)
- >> __rt_udiv10 (via Veneer)
[Called By]- >> _printf_d (via Veneer)
_printf_charcount (Thumb, 40 bytes, Stack size 0 bytes, _printf_charcount.o(.text))
[Called By]
- >> _printf_n (via Veneer)
_printf_hex_ptr (Thumb, 82 bytes, Stack size 16 bytes, _printf_hex_ptr.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = _printf_hex_ptr ⇒ _printf_int_common ⇒ _printf_post_padding
[Calls]
[Called By]- >> _printf_p (via Veneer)
_printf_longlong_hex (Thumb, 0 bytes, Stack size 16 bytes, _printf_hex_ptr.o(.text), UNUSED)
__printf (Thumb, 412 bytes, Stack size 32 bytes, __printf_flags_ss_wp.o(.text))
[Stack]
- Max Depth = 32 + Unknown Stack Size
- Call Chain = __printf
[Calls]- >> __ARM_common_call_via_r1
- >> _printf_percent (via Veneer)
- >> _is_digit
- >> __ARM_common_call_via_r2
[Called By]
__0sscanf (Thumb, 54 bytes, Stack size 72 bytes, __0sscanf.o(.text))
[Stack]
- Max Depth = 216
- Call Chain = __0sscanf ⇒ __vfscanf_char ⇒ __vfscanf ⇒ _scanf_int
[Calls]
[Called By]
_scanf_int (Thumb, 350 bytes, Stack size 48 bytes, _scanf_int.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = _scanf_int
[Calls]- >> __ARM_common_call_via_r1
- >> _chval
[Called By]
_do_fflush (Thumb, 58 bytes, Stack size 16 bytes, fflush.o(.text))
[Stack]
- Max Depth = 312 + Unknown Stack Size
- Call Chain = _do_fflush ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]- >> fflush
- >> _flushlinebuffered
fflush (Thumb, 46 bytes, Stack size 16 bytes, fflush.o(.text))
[Stack]
- Max Depth = 328 + Unknown Stack Size
- Call Chain = fflush ⇒ _do_fflush ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
fputs (Thumb, 38 bytes, Stack size 16 bytes, fputs.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = fputs ⇒ fputc ⇒ __flsbuf_byte
[Calls]
[Called By]
[Address Reference Count : 1]
putc (Thumb, 12 bytes, Stack size 8 bytes, putc.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = putc ⇒ fputc ⇒ __flsbuf_byte
[Calls]
[Called By]
freopen (Thumb, 152 bytes, Stack size 32 bytes, fopen.o(.text))
[Stack]
- Max Depth = 464 + Unknown Stack Size
- Call Chain = freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> _sys_open
- >> _fseek
- >> _fclose_internal
[Called By]
fopen (Thumb, 80 bytes, Stack size 24 bytes, fopen.o(.text))
[Stack]
- Max Depth = 488 + Unknown Stack Size
- Call Chain = fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> malloc
- >> __aeabi_memclr4 (via Veneer)
- >> freopen
[Called By]- >> cmd_copy
- >> cmd_type
- >> cmd_fill
- >> cmd_capture
_fclose_internal (Thumb, 76 bytes, Stack size 32 bytes, fclose.o(.text))
[Stack]
- Max Depth = 328 + Unknown Stack Size
- Call Chain = _fclose_internal ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> _sys_close
- >> _fflush
- >> free
- >> __aeabi_memclr4 (via Veneer)
[Called By]- >> _terminateio
- >> freopen
fclose (Thumb, 0 bytes, Stack size 32 bytes, fclose.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = fclose
[Called By]- >> cmd_copy
- >> cmd_type
- >> cmd_fill
- >> cmd_capture
strcpy (Thumb, 74 bytes, Stack size 12 bytes, strcpy.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = strcpy
[Called By]- >> init_card
- >> cmd_format
strlen (Thumb, 64 bytes, Stack size 8 bytes, strlen.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = strlen
[Called By]- >> write_entries
- >> search_for_name
- >> rename_entries
- >> alloc_name
- >> frename
- >> ffind
- >> cmd_dir
- >> cmd_delete
- >> cmd_rename
strcat (Thumb, 24 bytes, Stack size 0 bytes, strcat.o(.text))
[Called By]
__aeabi_memcpy (ARM, 0 bytes, Stack size 0 bytes, rt_memcpy.o(.text))
[Called By]
- >> write_cache (via Veneer)
- >> write_br (via Veneer)
- >> read_sector (via Veneer)
- >> read_cache (via Veneer)
- >> fat_write (via Veneer)
- >> fat_read (via Veneer)
- >> frename (via Veneer)
- >> fs_WriteData (via Veneer)
- >> fs_ReadData (via Veneer)
- >> fwrite (via Veneer)
- >> fread (via Veneer)
__rt_memcpy (ARM, 212 bytes, Stack size 0 bytes, rt_memcpy.o(.text), UNUSED)
[Calls]
_memcpy_lastbytes (ARM, 0 bytes, Stack size unknown bytes, rt_memcpy.o(.text), UNUSED)
__aeabi_memcpy4 (ARM, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __aeabi_memcpy4
[Called By]- >> write_dot_entries (via Veneer)
- >> read_last_entry (via Veneer)
- >> fat_close_write (via Veneer)
- >> __rt_memcpy
__aeabi_memcpy8 (ARM, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
__rt_memcpy_w (ARM, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
_memcpy_lastbytes_aligned (ARM, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED)
__aeabi_memset (ARM, 16 bytes, Stack size 0 bytes, aeabi_memset.o(.text))
[Calls]
[Called By]- >> fat_format (via Veneer)
__aeabi_memclr (ARM, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text))
[Called By]
- >> write_mbr (via Veneer)
- >> write_label (via Veneer)
- >> write_fsinfo (via Veneer)
- >> write_dot_entries (via Veneer)
- >> write_br (via Veneer)
- >> clear_clus (via Veneer)
- >> fat_format (via Veneer)
__rt_memclr (ARM, 64 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
[Calls]
_memset (ARM, 0 bytes, Stack size unknown bytes, rt_memclr.o(.text))
[Called By]
__aeabi_memclr4 (ARM, 0 bytes, Stack size 4 bytes, rt_memclr_w.o(.text))
[Stack]
- Max Depth = 4
- Call Chain = __aeabi_memclr4
[Called By]- >> init_dev (via Veneer)
- >> fs_find_iob (via Veneer)
- >> _initio (via Veneer)
- >> _fclose_internal (via Veneer)
- >> fopen (via Veneer)
__aeabi_memclr8 (ARM, 0 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)
__rt_memclr_w (ARM, 84 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)
_memset_w (ARM, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)
[Called By]
strcmp (ARM, 156 bytes, Stack size 4 bytes, strcmp.o(.text))
[Stack]
- Max Depth = 4
- Call Chain = strcmp
[Called By]- >> chk_dir_empty (via Veneer)
- >> _sys_open (via Veneer)
- >> ffind (via Veneer)
- >> main (via Veneer)
- >> cmd_format (via Veneer)
- >> cmd_copy (via Veneer)
- >> cmd_rename (via Veneer)
- >> cmd_capture (via Veneer)
- >> _get_lc_ctype
__aeabi_idiv (ARM, 0 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text), UNUSED)
__aeabi_idivmod (ARM, 384 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __aeabi_idivmod
[Called By]- >> init_dev (via Veneer)
- >> get_nt_name (via Veneer)
__use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_heap_escrow (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_heap_expand (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_ctype_table (ARM, 24 bytes, Stack size 8 bytes, rt_ctype_table.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __rt_ctype_table
[Calls]
[Called By]- >> toupper (via Veneer)
- >> isspace (via Veneer)
malloc (Thumb, 110 bytes, Stack size 16 bytes, h1_alloc.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = malloc ⇒ __Heap_Full ⇒ __Heap_ProvideMemory ⇒ free
[Calls]- >> __Heap_Full
- >> __rt_heap_descriptor (via Veneer)
[Called By]- >> __filbuf
- >> fopen
- >> __flsbuf
free (Thumb, 84 bytes, Stack size 16 bytes, h1_free.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = free
[Calls]- >> __rt_heap_descriptor (via Veneer)
[Called By]- >> _terminateio
- >> _fclose_internal
- >> __Heap_ProvideMemory
_printf_int_common (Thumb, 182 bytes, Stack size 40 bytes, _printf_intcommon.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = _printf_int_common ⇒ _printf_post_padding
[Calls]- >> _printf_post_padding
- >> _printf_pre_padding
- >> __ARM_common_call_via_r2
[Called By]- >> _printf_hex_ptr
- >> _printf_int_dec
_printf_char_common (Thumb, 34 bytes, Stack size 64 bytes, _printf_char_common.o(.text))
[Stack]
- Max Depth = 96 + Unknown Stack Size
- Call Chain = _printf_char_common ⇒ __printf
[Calls]
[Called By]- >> _printf_char_file
- >> __2sprintf
_sputc (Thumb, 10 bytes, Stack size 0 bytes, _sputc.o(.text))
[Called By]
[Address Reference Count : 1]
_printf_cs_common (Thumb, 26 bytes, Stack size 8 bytes, _printf_char.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = _printf_cs_common ⇒ _printf_str ⇒ _printf_post_padding
[Calls]- >> _printf_mbtowc (Weak Reference)
- >> _printf_str
[Called By]- >> _printf_string
- >> _printf_char
_printf_char (Thumb, 16 bytes, Stack size 0 bytes, _printf_char.o(.text), UNUSED)
[Calls]
_printf_string (Thumb, 8 bytes, Stack size 0 bytes, _printf_char.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = _printf_string ⇒ _printf_cs_common ⇒ _printf_str ⇒ _printf_post_padding
[Calls]
[Called By]- >> _printf_s (via Veneer)
_printf_char_file (Thumb, 38 bytes, Stack size 16 bytes, _printf_char_file.o(.text))
[Stack]
- Max Depth = 112 + Unknown Stack Size
- Call Chain = _printf_char_file ⇒ _printf_char_common ⇒ __printf
[Calls]- >> _printf_char_common
- >> ferror
[Called By]- >> __2fprintf
- >> __2printf
_chval (Thumb, 34 bytes, Stack size 0 bytes, _chval.o(.text))
[Called By]
__vfscanf_char (Thumb, 34 bytes, Stack size 8 bytes, scanf_char.o(.text))
[Stack]
- Max Depth = 144
- Call Chain = __vfscanf_char ⇒ __vfscanf ⇒ _scanf_int
[Calls]
[Called By]
_sgetc (Thumb, 32 bytes, Stack size 0 bytes, _sgetc.o(.text))
[Address Reference Count : 1]
_sbackspace (Thumb, 38 bytes, Stack size 0 bytes, _sgetc.o(.text))
[Address Reference Count : 1]
_readbuf (Thumb, 62 bytes, Stack size 16 bytes, filbuf.o(.text))
[Stack]
- Max Depth = 256
- Call Chain = _readbuf ⇒ _sys_read ⇒ __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_seteof (Thumb, 40 bytes, Stack size 0 bytes, filbuf.o(.text))
[Called By]
__filbuf (Thumb, 490 bytes, Stack size 32 bytes, filbuf.o(.text), UNUSED)
[Calls]
- >> _sys_seek
- >> _deferredlazyseek
- >> _fflush
- >> _seterr
- >> _seteof
- >> _readbuf
- >> malloc
- >> _flushlinebuffered
__filbuf_byte (Thumb, 0 bytes, Stack size 32 bytes, filbuf.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = __filbuf_byte
[Called By]
__filbuf_wide (Thumb, 0 bytes, Stack size 32 bytes, filbuf.o(.text), UNUSED)
_fseek (Thumb, 244 bytes, Stack size 24 bytes, fseek.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = _fseek ⇒ _sys_flen ⇒ __getfsize ⇒ fs_rd_sig
[Calls]- >> _sys_flen
- >> _sys_istty
- >> _seterr
- >> _ftell_internal
[Called By]
fseek (Thumb, 0 bytes, Stack size 24 bytes, fseek.o(.text), UNUSED)
_seterr (Thumb, 20 bytes, Stack size 0 bytes, stdio.o(.text))
[Called By]
- >> _writebuf
- >> _fseek
- >> __filbuf
- >> _readbuf
- >> __flsbuf
_writebuf (Thumb, 80 bytes, Stack size 32 bytes, stdio.o(.text))
[Stack]
- Max Depth = 280 + Unknown Stack Size
- Call Chain = _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> _sys_seek
- >> _sys_write
- >> _seterr
[Called By]- >> _fflush
- >> fwrite
- >> __flsbuf
_fflush (Thumb, 80 bytes, Stack size 16 bytes, stdio.o(.text))
[Stack]
- Max Depth = 296 + Unknown Stack Size
- Call Chain = _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]- >> _deferredlazyseek
- >> __filbuf
- >> _fclose_internal
- >> _do_fflush
_deferredlazyseek (Thumb, 64 bytes, Stack size 8 bytes, stdio.o(.text), UNUSED)
[Calls]
[Called By]
_initio (Thumb, 220 bytes, Stack size 8 bytes, initio.o(.text))
[Stack]
- Max Depth = 472 + Unknown Stack Size
- Call Chain = _initio ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> __aeabi_memclr4 (via Veneer)
- >> freopen
- >> __rt_SIGRTRED
- >> setvbuf
[Called By]
_terminateio (Thumb, 60 bytes, Stack size 16 bytes, initio.o(.text))
[Stack]
- Max Depth = 344 + Unknown Stack Size
- Call Chain = _terminateio ⇒ _fclose_internal ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> free
- >> _fclose_internal
[Called By]- >> __rt_lib_shutdown_stdio_2
__rt_udiv10 (ARM, 44 bytes, Stack size 0 bytes, rtudiv10.o(.text))
[Called By]
- >> _printf_int_dec (via Veneer)
__rt_heap_descriptor (ARM, 12 bytes, Stack size 0 bytes, rt_heap_descriptor_intlibspace.o(.text))
[Called By]
- >> free (via Veneer)
- >> malloc (via Veneer)
- >> _init_alloc (via Veneer)
__rt_locale (ARM, 12 bytes, Stack size 0 bytes, rt_locale_intlibspace.o(.text))
[Called By]
- >> __rt_ctype_table
- >> __rt_lib_init_lc_common (via Veneer)
__use_no_heap (Thumb, 2 bytes, Stack size 0 bytes, hguard.o(.text), UNUSED)
__heap$guard (Thumb, 2 bytes, Stack size 0 bytes, hguard.o(.text), UNUSED)
_terminate_user_alloc (Thumb, 2 bytes, Stack size 0 bytes, init_alloc.o(.text), UNUSED)
_init_user_alloc (Thumb, 2 bytes, Stack size 0 bytes, init_alloc.o(.text), UNUSED)
__Heap_Full (Thumb, 36 bytes, Stack size 16 bytes, init_alloc.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = __Heap_Full ⇒ __Heap_ProvideMemory ⇒ free
[Calls]
[Called By]
__Heap_Broken (Thumb, 14 bytes, Stack size 8 bytes, init_alloc.o(.text), UNUSED)
[Calls]
_init_alloc (Thumb, 94 bytes, Stack size 24 bytes, init_alloc.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = _init_alloc ⇒ __rt_SIGRTMEM ⇒ __rt_SIGRTMEM_inner ⇒ __default_signal_display ⇒ _ttywrch
[Calls]- >> __rt_SIGRTMEM
- >> __Heap_ProvideMemory
- >> __Heap_Initialize
- >> __rt_heap_descriptor (via Veneer)
[Called By]
__Heap_Initialize (Thumb, 10 bytes, Stack size 0 bytes, h1_init.o(.text))
[Called By]
__Heap_DescSize (Thumb, 4 bytes, Stack size 0 bytes, h1_init.o(.text), UNUSED)
isspace (Thumb, 22 bytes, Stack size 8 bytes, isspace.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = isspace ⇒ __rt_ctype_table
[Calls]- >> __rt_ctype_table (via Veneer)
[Address Reference Count : 1]
__vfscanf (Thumb, 962 bytes, Stack size 88 bytes, _scanf.o(.text))
[Stack]
- Max Depth = 136
- Call Chain = __vfscanf ⇒ _scanf_int
[Calls]- >> __ARM_common_call_via_r1
- >> _scanf_int
- >> __ARM_common_call_via_r2
- >> _scanf_wstring (Weak Reference)
- >> _scanf_wctomb (Weak Reference)
- >> _scanf_string (Weak Reference)
- >> _scanf_real (Weak Reference)
- >> _scanf_mbtowc (Weak Reference)
- >> _scanf_longlong (Weak Reference)
[Called By]
ferror (Thumb, 8 bytes, Stack size 0 bytes, ferror.o(.text))
[Called By]
__flsbuf (Thumb, 498 bytes, Stack size 24 bytes, flsbuf.o(.text), UNUSED)
[Calls]
- >> _sys_flen
- >> _sys_istty
- >> _deferredlazyseek
- >> _writebuf
- >> _seterr
- >> malloc
__flsbuf_byte (Thumb, 0 bytes, Stack size 24 bytes, flsbuf.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = __flsbuf_byte
[Called By]
__flsbuf_wide (Thumb, 0 bytes, Stack size 24 bytes, flsbuf.o(.text), UNUSED)
_ftell_internal (Thumb, 70 bytes, Stack size 8 bytes, ftell.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = _ftell_internal
[Calls]- >> __aeabi_errno_addr (via Veneer)
[Called By]
ftell (Thumb, 0 bytes, Stack size 8 bytes, ftell.o(.text), UNUSED)
setvbuf (Thumb, 74 bytes, Stack size 12 bytes, setvbuf.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = setvbuf
[Called By]
fread (Thumb, 308 bytes, Stack size 48 bytes, freadfast.o(.text))
[Stack]
- Max Depth = 304 + Unknown Stack Size
- Call Chain = fread ⇒ _readbuf ⇒ _sys_read ⇒ __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> __filbuf_byte
- >> _seteof
- >> _readbuf
- >> __aeabi_uidivmod (via Veneer)
- >> __aeabi_memcpy (via Veneer)
[Called By]
_flushlinebuffered (Thumb, 50 bytes, Stack size 16 bytes, flushlinebuffered.o(.text), UNUSED)
[Calls]
[Called By]
__rt_SIGRTRED (Thumb, 16 bytes, Stack size 8 bytes, defsig_rtred_outer.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = __rt_SIGRTRED ⇒ __rt_SIGRTRED_inner ⇒ __default_signal_display ⇒ _ttywrch
[Calls]- >> __rt_SIGRTRED_inner
- >> __sig_exit
[Called By]
__user_libspace (ARM, 12 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
__user_perproc_libspace (ARM, 0 bytes, Stack size 0 bytes, libspace.o(.text))
[Called By]
- >> __user_setup_stackheap
__user_perthread_libspace (ARM, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
__user_setup_stackheap (ARM, 96 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __user_setup_stackheap
[Calls]- >> __user_initial_stackheap
- >> __user_perproc_libspace
[Called By]
__aeabi_errno_addr (ARM, 12 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text))
[Called By]
- >> _ftell_internal (via Veneer)
__errno$intlibspace (ARM, 0 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text), UNUSED)
__rt_errno_addr$intlibspace (ARM, 0 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text), UNUSED)
__Heap_ProvideMemory (Thumb, 56 bytes, Stack size 8 bytes, h1_extend.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = __Heap_ProvideMemory ⇒ free
[Calls]
[Called By]- >> _init_alloc
- >> __Heap_Full
fwrite (Thumb, 204 bytes, Stack size 48 bytes, fwritefast.o(.text))
[Stack]
- Max Depth = 328 + Unknown Stack Size
- Call Chain = fwrite ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> _writebuf
- >> __aeabi_memcpy (via Veneer)
- >> __flsbuf_byte
[Called By]
exit (Thumb, 12 bytes, Stack size 0 bytes, exit.o(.text))
[Calls]
- >> __rt_exit (via Veneer)
- >> _call_atexit_fns (Weak Reference)
[Called By]
__sig_exit (Thumb, 16 bytes, Stack size 8 bytes, defsig_exit.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __sig_exit
[Calls]
[Called By]- >> __rt_SIGRTMEM
- >> __rt_SIGRTRED
__rt_SIGRTRED_inner (Thumb, 18 bytes, Stack size 8 bytes, defsig_rtred_inner.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = __rt_SIGRTRED_inner ⇒ __default_signal_display ⇒ _ttywrch
[Calls]- >> __default_signal_display
[Called By]
__rt_SIGRTMEM (Thumb, 16 bytes, Stack size 8 bytes, defsig_rtmem_outer.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = __rt_SIGRTMEM ⇒ __rt_SIGRTMEM_inner ⇒ __default_signal_display ⇒ _ttywrch
[Calls]- >> __rt_SIGRTMEM_inner
- >> __sig_exit
[Called By]- >> _init_alloc
- >> __Heap_Broken
__default_signal_display (Thumb, 56 bytes, Stack size 16 bytes, defsig_general.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = __default_signal_display ⇒ _ttywrch
[Calls]
[Called By]- >> __rt_SIGRTMEM_inner
- >> __rt_SIGRTRED_inner
__rt_SIGRTMEM_inner (Thumb, 24 bytes, Stack size 8 bytes, defsig_rtmem_inner.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = __rt_SIGRTMEM_inner ⇒ __default_signal_display ⇒ _ttywrch
[Calls]- >> __default_signal_display
[Called By]
__rt_fp_status_addr (ARM, 12 bytes, Stack size 0 bytes, rt_fp_status_addr_intlibspace.o(.text))
[Called By]
__aeabi_uidiv (ARM, 0 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text_udiv), UNUSED)
__aeabi_uidivmod (ARM, 36 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text_udiv))
[Calls]
- >> __arm_div_large
- >> __arm_div2
- >> __arm_div5
- >> __arm_div8
[Called By]- >> write_entries (via Veneer)
- >> search_for_name (via Veneer)
- >> rename_entries (via Veneer)
- >> init_dev (via Veneer)
- >> alloc_name (via Veneer)
- >> fat_set_fpos (via Veneer)
- >> fat_format (via Veneer)
- >> fread (via Veneer)
__ARM_common_call_via_r1 (Thumb, 2 bytes, Stack size 0 bytes, sd_file.o(i.__ARM_common_call_via_r1))
[Called By]
- >> main
- >> _scanf_int
- >> __printf
- >> __vfscanf
__ARM_common_call_via_r2 (Thumb, 2 bytes, Stack size 0 bytes, __printf.o(i.__ARM_common_call_via_r2))
[Called By]
- >> _printf_int_common
- >> __printf
- >> _printf_str
- >> _printf_post_padding
- >> _printf_pre_padding
- >> __vfscanf
__ARM_common_ll_muluu (ARM, 12 bytes, Stack size 0 bytes, fs_fat.o(i.__ARM_common_ll_muluu))
[Called By]
__ARM_common_switch8 (ARM, 24 bytes, Stack size 0 bytes, fs_fat.o(i.__ARM_common_switch8))
[Called By]
- >> get_nt_name (via Veneer)
__fclose (Thumb, 114 bytes, Stack size 24 bytes, _fs_fclose.o(i.__fclose))
[Stack]
- Max Depth = 224
- Call Chain = __fclose ⇒ fat_close_write ⇒ write_fsinfo ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_WriteBlock
- >> fat_close_write
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]
__flushbuf (Thumb, 126 bytes, Stack size 16 bytes, _fs_flushbuf.o(i.__flushbuf), UNUSED)
[Calls]
- >> fs_WriteBlock
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]
__fopen (Thumb, 342 bytes, Stack size 32 bytes, _fs_fopen.o(i.__fopen))
[Stack]
- Max Depth = 416 + Unknown Stack Size
- Call Chain = __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_get_freeID
- >> fat_create
- >> _fcreate
- >> fat_find_file
- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> fs_Find_File
- >> fat_delete
- >> _fdelete
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
- >> __getfsize
[Called By]
__getfsize (Thumb, 172 bytes, Stack size 48 bytes, _fs_getfsize.o(i.__getfsize))
[Stack]
- Max Depth = 56
- Call Chain = __getfsize ⇒ fs_rd_sig
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]- >> __fopen
- >> _sys_flen
- >> ffind
__read (Thumb, 164 bytes, Stack size 40 bytes, _fs_read.o(i.__read))
[Stack]
- Max Depth = 216
- Call Chain = __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_mark_fileMem
- >> fs_ReadBlock
- >> fat_read
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]
__setfpos (Thumb, 226 bytes, Stack size 48 bytes, _fs_setfpos.o(i.__setfpos))
[Stack]
- Max Depth = 208 + Unknown Stack Size
- Call Chain = __setfpos ⇒ fat_set_fpos ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> fat_set_fpos
- >> fs_AllocBlock
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]
__write (Thumb, 238 bytes, Stack size 32 bytes, _fs_write.o(i.__write))
[Stack]
- Max Depth = 224
- Call Chain = __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_BlockFull
- >> fs_AllocBlock
- >> fat_write
- >> fs_WriteBlock
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]
_fcreate (Thumb, 288 bytes, Stack size 72 bytes, _fs_fcreate.o(i._fcreate))
[Stack]
- Max Depth = 104
- Call Chain = _fcreate ⇒ fs_get_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_sig
- >> fs_adr_sig
- >> fs_WriteBlock
- >> fs_get_freeMem
- >> fs_mark_freeMem
- >> fs_check_fwopen
[Called By]
_fdelete (Thumb, 134 bytes, Stack size 32 bytes, _fs_fdelete.o(i._fdelete))
[Stack]
- Max Depth = 64
- Call Chain = _fdelete ⇒ fs_BlockInvalid ⇒ fs_rd_alloc
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> fs_WriteBlock
- >> fs_InitBlock
- >> fs_BlockInvalid
[Called By]
_ffind (Thumb, 188 bytes, Stack size 48 bytes, _fs_ffind.o(i._ffind))
[Stack]
- Max Depth = 56
- Call Chain = _ffind ⇒ fs_rd_sig
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> fs_spi_ReadData
- >> fs_ReadData
[Called By]
_frename (Thumb, 82 bytes, Stack size 24 bytes, _fs_frename.o(i._frename))
[Stack]
- Max Depth = 128
- Call Chain = _frename ⇒ _fcreate ⇒ fs_get_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
- >> fs_WriteBlock
- >> _fcreate
[Called By]
_is_digit (Thumb, 14 bytes, Stack size 0 bytes, __printf_wp.o(i._is_digit))
[Called By]
fat_close_write (Thumb, 168 bytes, Stack size 48 bytes, fs_fat.o(i.fat_close_write))
[Stack]
- Max Depth = 200
- Call Chain = fat_close_write ⇒ write_fsinfo ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> write_fsinfo
- >> write_fat_link
- >> write_cache
- >> read_sector
- >> read_last_entry
- >> get_dir_sect
- >> get_EOC
- >> cache_fat
- >> __aeabi_memcpy4 (via Veneer)
[Called By]
fat_create (Thumb, 86 bytes, Stack size 8 bytes, fs_fat.o(i.fat_create))
[Stack]
- Max Depth = 376 + Unknown Stack Size
- Call Chain = fat_create ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_entries
- >> fat_find_dir
- >> alloc_name
[Called By]
fat_delete (Thumb, 100 bytes, Stack size 8 bytes, fs_fat.o(i.fat_delete))
[Stack]
- Max Depth = 376 + Unknown Stack Size
- Call Chain = fat_delete ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> find_name
- >> fat_find_dir
- >> delete_entries
- >> chk_dir_empty
[Called By]
fat_ffind (Thumb, 68 bytes, Stack size 16 bytes, fs_fat.o(i.fat_ffind))
[Stack]
- Max Depth = 384 + Unknown Stack Size
- Call Chain = fat_ffind ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_next_info
- >> fat_find_dir
[Called By]
fat_find_file (Thumb, 78 bytes, Stack size 16 bytes, fs_fat.o(i.fat_find_file))
[Stack]
- Max Depth = 384 + Unknown Stack Size
- Call Chain = fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> find_name
- >> fat_find_dir
[Called By]
fat_format (Thumb, 762 bytes, Stack size 40 bytes, fs_fat.o(i.fat_format))
[Stack]
- Max Depth = 200 + Unknown Stack Size
- Call Chain = fat_format ⇒ write_label ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> mmc_write_sect
- >> mmc_read_config
- >> write_mbr
- >> write_label
- >> write_fsinfo
- >> write_cache
- >> write_br
- >> set_u32
- >> chk_param
- >> __aeabi_uidivmod (via Veneer)
- >> __aeabi_memclr (via Veneer)
- >> __aeabi_memset (via Veneer)
[Called By]
fat_free (Thumb, 48 bytes, Stack size 16 bytes, fs_fat.o(i.fat_free))
[Stack]
- Max Depth = 152
- Call Chain = fat_free ⇒ count_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> __ARM_common_ll_muluu (via Veneer)
- >> count_free_clus
[Called By]
fat_init (Thumb, 24 bytes, Stack size 8 bytes, fs_fat.o(i.fat_init))
[Stack]
- Max Depth = 200 + Unknown Stack Size
- Call Chain = fat_init ⇒ init_dev ⇒ write_fsinfo ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
fat_read (Thumb, 182 bytes, Stack size 40 bytes, fs_fat.o(i.fat_read))
[Stack]
- Max Depth = 176
- Call Chain = fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_cache
- >> clus_to_sect
- >> __aeabi_memcpy (via Veneer)
[Called By]
fat_rename (Thumb, 144 bytes, Stack size 16 bytes, fs_fat.o(i.fat_rename))
[Stack]
- Max Depth = 416 + Unknown Stack Size
- Call Chain = fat_rename ⇒ rename_entries ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> rename_entries
- >> find_name
- >> fat_find_dir
- >> check_name
[Called By]
fat_set_fpos (Thumb, 72 bytes, Stack size 24 bytes, fs_fat.o(i.fat_set_fpos))
[Stack]
- Max Depth = 160 + Unknown Stack Size
- Call Chain = fat_set_fpos ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> __aeabi_uidivmod (via Veneer)
[Called By]
fat_write (Thumb, 214 bytes, Stack size 48 bytes, fs_fat.o(i.fat_write))
[Stack]
- Max Depth = 192
- Call Chain = fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_fat_link
- >> write_cache
- >> read_sector
- >> get_free_clus
- >> clus_to_sect
- >> __aeabi_memcpy (via Veneer)
[Called By]
fdelete (Thumb, 120 bytes, Stack size 16 bytes, fs_fdelete.o(i.fdelete))
[Stack]
- Max Depth = 392 + Unknown Stack Size
- Call Chain = fdelete ⇒ fat_delete ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> fs_Find_File
- >> fat_delete
- >> _fdelete
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]
ffind (Thumb, 454 bytes, Stack size 40 bytes, fs_ffind.o(i.ffind))
[Stack]
- Max Depth = 424 + Unknown Stack Size
- Call Chain = ffind ⇒ fat_ffind ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_strpos
- >> fat_ffind
- >> _ffind
- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
- >> __getfsize
- >> strcmp (via Veneer)
- >> strlen
[Called By]
fformat (Thumb, 160 bytes, Stack size 16 bytes, fs_fformat.o(i.fformat))
[Stack]
- Max Depth = 216 + Unknown Stack Size
- Call Chain = fformat ⇒ fat_format ⇒ write_label ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_InitBlock
- >> fat_format
- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]
ffree (Thumb, 132 bytes, Stack size 24 bytes, fs_ffree.o(i.ffree))
[Stack]
- Max Depth = 176
- Call Chain = ffree ⇒ fat_free ⇒ count_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_get_freeMem
- >> fat_free
- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
[Called By]
fgetc (Thumb, 32 bytes, Stack size 8 bytes, fgetc.o(i.fgetc))
[Stack]
- Max Depth = 40
- Call Chain = fgetc ⇒ __filbuf_byte
[Calls]
[Called By]
finit (Thumb, 52 bytes, Stack size 16 bytes, fs_finit.o(i.finit))
[Stack]
- Max Depth = 216 + Unknown Stack Size
- Call Chain = finit ⇒ fat_init ⇒ init_dev ⇒ write_fsinfo ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
- >> fs_spi_Init
- >> fs_Init
- >> fat_init
[Called By]
fn_cmp (Thumb, 32 bytes, Stack size 0 bytes, fs_lib.o(i.fn_cmp))
[Called By]
- >> chk_param
- >> fs_Find_File
fputc (Thumb, 36 bytes, Stack size 8 bytes, fputc.o(i.fputc))
[Stack]
- Max Depth = 32
- Call Chain = fputc ⇒ __flsbuf_byte
[Calls]
[Called By]
[Address Reference Count : 1]- _printf_char_file.o(.text)
frename (Thumb, 242 bytes, Stack size 104 bytes, fs_frename.o(i.frename))
[Stack]
- Max Depth = 520 + Unknown Stack Size
- Call Chain = frename ⇒ fat_rename ⇒ rename_entries ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fat_rename
- >> fat_find_file
- >> _frename
- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> fs_Find_File
- >> _mutex_release (Weak Reference)
- >> _mutex_acquire (Weak Reference)
- >> __aeabi_memcpy (via Veneer)
- >> strcat
- >> strlen
[Called By]
fs_AllocBlock (Thumb, 170 bytes, Stack size 24 bytes, _fs_flashio.o(i.fs_AllocBlock))
[Stack]
- Max Depth = 56
- Call Chain = fs_AllocBlock ⇒ fs_get_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_sig
- >> fs_adr_sig
- >> fs_WriteBlock
- >> fs_get_freeMem
- >> fs_mark_freeMem
- >> fs_check_fwopen
[Called By]
fs_BlockFull (Thumb, 94 bytes, Stack size 16 bytes, _fs_flashio.o(i.fs_BlockFull))
[Stack]
- Max Depth = 32
- Call Chain = fs_BlockFull ⇒ fs_WriteBlock ⇒ fs_WriteData
[Calls]
[Called By]
fs_BlockInvalid (Thumb, 54 bytes, Stack size 24 bytes, _fs_flashio.o(i.fs_BlockInvalid))
[Stack]
- Max Depth = 32
- Call Chain = fs_BlockInvalid ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]
fs_EraseSector (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_EraseSector))
[Called By]
fs_Find_File (Thumb, 172 bytes, Stack size 72 bytes, _fs_flashio.o(i.fs_Find_File))
[Stack]
- Max Depth = 80
- Call Chain = fs_Find_File ⇒ fs_rd_sig
[Calls]- >> fn_cmp
- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> fs_spi_ReadData
- >> fs_ReadData
[Called By]- >> __fopen
- >> frename
- >> fdelete
fs_Init (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_Init))
[Called By]
fs_InitBlock (Thumb, 64 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_InitBlock))
[Stack]
- Max Depth = 8
- Call Chain = fs_InitBlock
[Calls]- >> fs_spi_EraseSector
- >> fs_EraseSector
[Called By]
fs_ProgramPage (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_ProgramPage))
[Called By]
fs_ReadBlock (Thumb, 34 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_ReadBlock))
[Stack]
- Max Depth = 16
- Call Chain = fs_ReadBlock ⇒ fs_ReadData
[Calls]- >> fs_spi_ReadData
- >> fs_ReadData
[Called By]
fs_ReadData (Thumb, 22 bytes, Stack size 8 bytes, fs_lib.o(i.fs_ReadData))
[Stack]
- Max Depth = 8
- Call Chain = fs_ReadData
[Calls]- >> __aeabi_memcpy (via Veneer)
[Called By]- >> fs_ReadBlock
- >> _ffind
- >> fs_Find_File
fs_WriteBlock (Thumb, 62 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_WriteBlock))
[Stack]
- Max Depth = 16
- Call Chain = fs_WriteBlock ⇒ fs_WriteData
[Calls]- >> fs_spi_ProgramPage
- >> fs_ProgramPage
- >> fs_WriteData
[Called By]- >> fs_BlockFull
- >> fs_AllocBlock
- >> _fcreate
- >> _frename
- >> _fdelete
- >> __write
- >> __flushbuf
- >> __fclose
fs_WriteData (Thumb, 20 bytes, Stack size 8 bytes, fs_lib.o(i.fs_WriteData))
[Stack]
- Max Depth = 8
- Call Chain = fs_WriteData
[Calls]- >> __aeabi_memcpy (via Veneer)
[Called By]
fs_adr_sig (Thumb, 20 bytes, Stack size 0 bytes, _fs_flashio.o(i.fs_adr_sig))
[Called By]
- >> fs_AllocBlock
- >> fs_mark_fileMem
- >> fs_get_freeID
- >> _fcreate
- >> fs_get_freeMem
- >> _ffind
- >> _frename
- >> fs_Find_File
- >> _fdelete
- >> __setfpos
- >> __getfsize
- >> fs_BlockInvalid
- >> fs_mark_freeMem
fs_check_fwopen (Thumb, 50 bytes, Stack size 12 bytes, _fs_flashio.o(i.fs_check_fwopen))
[Stack]
- Max Depth = 12
- Call Chain = fs_check_fwopen
[Called By]- >> fs_AllocBlock
- >> _fcreate
fs_find_iob (Thumb, 46 bytes, Stack size 8 bytes, fs_lib.o(i.fs_find_iob))
[Stack]
- Max Depth = 12
- Call Chain = fs_find_iob ⇒ __aeabi_memclr4
[Calls]- >> __aeabi_memclr4 (via Veneer)
[Called By]- >> __fopen
- >> frename
- >> ffree
- >> fformat
- >> ffind
- >> fdelete
fs_get_date (Thumb, 4 bytes, Stack size 0 bytes, fs_time.o(i.fs_get_date))
[Called By]
fs_get_drive (Thumb, 64 bytes, Stack size 0 bytes, fs_lib.o(i.fs_get_drive))
[Called By]
- >> __fopen
- >> frename
- >> ffree
- >> fformat
- >> ffind
- >> fdelete
fs_get_freeID (Thumb, 84 bytes, Stack size 32 bytes, _fs_flashio.o(i.fs_get_freeID))
[Stack]
- Max Depth = 40
- Call Chain = fs_get_freeID ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]
fs_get_freeMem (Thumb, 60 bytes, Stack size 24 bytes, _fs_flashio.o(i.fs_get_freeMem))
[Stack]
- Max Depth = 32
- Call Chain = fs_get_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]- >> fs_AllocBlock
- >> _fcreate
- >> ffree
fs_get_time (Thumb, 6 bytes, Stack size 0 bytes, fs_time.o(i.fs_get_time))
[Called By]
fs_mark_fileMem (Thumb, 120 bytes, Stack size 32 bytes, _fs_flashio.o(i.fs_mark_fileMem))
[Stack]
- Max Depth = 40
- Call Chain = fs_mark_fileMem ⇒ fs_rd_sig
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]
fs_mark_freeMem (Thumb, 66 bytes, Stack size 24 bytes, _fs_flashio.o(i.fs_mark_freeMem))
[Stack]
- Max Depth = 32
- Call Chain = fs_mark_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]- >> fs_AllocBlock
- >> _fcreate
fs_rd_alloc (Thumb, 40 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_rd_alloc))
[Stack]
- Max Depth = 8
- Call Chain = fs_rd_alloc
[Calls]
[Called By]- >> fs_mark_fileMem
- >> fs_get_freeID
- >> fs_get_freeMem
- >> _ffind
- >> _frename
- >> fs_Find_File
- >> _fdelete
- >> __setfpos
- >> __getfsize
- >> fs_BlockInvalid
- >> fs_mark_freeMem
fs_rd_sig (Thumb, 36 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_rd_sig))
[Stack]
- Max Depth = 8
- Call Chain = fs_rd_sig
[Calls]
[Called By]- >> fs_AllocBlock
- >> fs_mark_fileMem
- >> _fcreate
- >> _ffind
- >> fs_Find_File
- >> _fdelete
- >> __setfpos
- >> __getfsize
fs_set_params (Thumb, 70 bytes, Stack size 0 bytes, fs_lib.o(i.fs_set_params))
[Called By]
- >> __fopen
- >> frename
- >> ffree
- >> fformat
- >> ffind
- >> fdelete
fs_spi_EraseSector (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_spi_EraseSector))
[Called By]
fs_spi_Init (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_spi_Init))
[Called By]
fs_spi_ProgramPage (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_spi_ProgramPage))
[Called By]
fs_spi_ReadData (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_spi_ReadData))
[Called By]
- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_ReadBlock
- >> _ffind
- >> fs_Find_File
fs_strpos (Thumb, 26 bytes, Stack size 0 bytes, fs_lib.o(i.fs_strpos))
[Called By]
mmc_init (Thumb, 430 bytes, Stack size 24 bytes, fs_mmc.o(i.mmc_init))
[Stack]
- Max Depth = 80
- Call Chain = mmc_init ⇒ mmc_command
[Calls]- >> spi_send
- >> spi_ss
- >> spi_hi_speed
- >> spi_init
- >> mmc_command
[Called By]
mmc_read_config (Thumb, 230 bytes, Stack size 32 bytes, fs_mmc.o(i.mmc_read_config))
[Stack]
- Max Depth = 104
- Call Chain = mmc_read_config ⇒ mmc_read_bytes ⇒ mmc_command
[Calls]- >> spi_ss
- >> mmc_read_bytes
[Called By]
mmc_read_sect (Thumb, 90 bytes, Stack size 16 bytes, fs_mmc.o(i.mmc_read_sect))
[Stack]
- Max Depth = 96
- Call Chain = mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> spi_send
- >> spi_ss
- >> mmc_read_block
- >> mmc_command
[Called By]- >> read_sector
- >> read_cache
- >> cache_fat
mmc_write_sect (Thumb, 90 bytes, Stack size 16 bytes, fs_mmc.o(i.mmc_write_sect))
[Stack]
- Max Depth = 96
- Call Chain = mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> spi_send
- >> spi_ss
- >> mmc_write_block
[Called By]- >> write_sector
- >> write_cache
- >> cache_fat
- >> fat_format
_get_lc_ctype (ARM, 80 bytes, Stack size 8 bytes, lc_ctype_c.o(locale$$code))
[Stack]
- Max Depth = 12
- Call Chain = _get_lc_ctype ⇒ strcmp
[Calls]
[Called By]- >> __rt_lib_init_lc_ctype_2 (via Veneer)
[Address Reference Count : 1]
_fp_init (ARM, 24 bytes, Stack size 8 bytes, fpinit.o(x$fpl$fpinit))
[Stack]
- Max Depth = 8
- Call Chain = _fp_init
[Calls]
[Called By]- >> __rt_lib_init (via Veneer)
__fplib_config_pureend_doubles (ARM, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)
Local Symbols
get_entry (Thumb, 152 bytes, Stack size 8 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = get_entry
[Called By]- >> main
- >> cmd_format
- >> cmd_dir
- >> cmd_delete
- >> cmd_copy
- >> cmd_rename
- >> cmd_type
- >> cmd_fill
- >> cmd_capture
dot_format (Thumb, 328 bytes, Stack size 24 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 152 + Unknown Stack Size
- Call Chain = dot_format ⇒ __2sprintf ⇒ _printf_char_common ⇒ __printf
[Calls]- >> __2sprintf
- >> __aeabi_uldivmod (via Veneer)
[Called By]
cmd_capture (Thumb, 180 bytes, Stack size 32 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 520 + Unknown Stack Size
- Call Chain = cmd_capture ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> getline
- >> get_entry
- >> strcmp (via Veneer)
- >> fclose
- >> fopen
- >> fputs
- >> __2printf
[Address Reference Count : 1]
cmd_fill (Thumb, 134 bytes, Stack size 32 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 520 + Unknown Stack Size
- Call Chain = cmd_fill ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_entry
- >> fclose
- >> fopen
- >> __0sscanf
- >> __2fprintf
- >> __2printf
[Address Reference Count : 1]
cmd_type (Thumb, 98 bytes, Stack size 24 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 512 + Unknown Stack Size
- Call Chain = cmd_type ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_entry
- >> fclose
- >> fopen
- >> putc
- >> fgetc
- >> __2printf
[Address Reference Count : 1]
cmd_rename (Thumb, 154 bytes, Stack size 24 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 544 + Unknown Stack Size
- Call Chain = cmd_rename ⇒ frename ⇒ fat_rename ⇒ rename_entries ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> frename
- >> get_entry
- >> strcmp (via Veneer)
- >> strlen
- >> __2printf
[Address Reference Count : 1]
cmd_copy (Thumb, 824 bytes, Stack size 560 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 1048 + Unknown Stack Size
- Call Chain = cmd_copy ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> dot_format
- >> get_entry
- >> strcmp (via Veneer)
- >> fclose
- >> fopen
- >> __2printf
- >> fwrite
- >> fread
[Address Reference Count : 1]
cmd_delete (Thumb, 110 bytes, Stack size 24 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 416 + Unknown Stack Size
- Call Chain = cmd_delete ⇒ fdelete ⇒ fat_delete ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fdelete
- >> get_entry
- >> strlen
- >> __2printf
[Address Reference Count : 1]
cmd_dir (Thumb, 380 bytes, Stack size 352 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 776 + Unknown Stack Size
- Call Chain = cmd_dir ⇒ ffind ⇒ fat_ffind ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> ffree
- >> ffind
- >> dot_format
- >> get_entry
- >> strlen
- >> __2printf
[Address Reference Count : 1]
cmd_format (Thumb, 136 bytes, Stack size 48 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 264 + Unknown Stack Size
- Call Chain = cmd_format ⇒ fformat ⇒ fat_format ⇒ write_label ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> getkey
- >> fformat
- >> get_entry
- >> strcmp (via Veneer)
- >> strcat
- >> strcpy
- >> __2printf
[Called By]
[Address Reference Count : 1]
cmd_help (Thumb, 16 bytes, Stack size 8 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 144 + Unknown Stack Size
- Call Chain = cmd_help ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf
[Calls]
[Address Reference Count : 1]
init_card (Thumb, 60 bytes, Stack size 8 bytes, sd_file.o(.text))
[Stack]
- Max Depth = 272 + Unknown Stack Size
- Call Chain = init_card ⇒ cmd_format ⇒ fformat ⇒ fat_format ⇒ write_label ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> getkey
- >> finit
- >> cmd_format
- >> strcpy
- >> __2printf
[Called By]
Undef_Handler (ARM, 4 bytes, Stack size unknown bytes, startup.o(RESET))
[Calls]
[Called By]
[Address Reference Count : 1]
SWI_Handler (ARM, 4 bytes, Stack size unknown bytes, startup.o(RESET))
[Calls]
[Called By]
[Address Reference Count : 1]
PAbt_Handler (ARM, 4 bytes, Stack size unknown bytes, startup.o(RESET))
[Calls]
[Called By]
[Address Reference Count : 1]
DAbt_Handler (ARM, 4 bytes, Stack size unknown bytes, startup.o(RESET))
[Calls]
[Called By]
[Address Reference Count : 1]
IRQ_Handler (ARM, 4 bytes, Stack size unknown bytes, startup.o(RESET))
[Calls]
[Called By]
[Address Reference Count : 1]
FIQ_Handler (ARM, 4 bytes, Stack size unknown bytes, startup.o(RESET))
[Calls]
[Called By]
[Address Reference Count : 1]
alloc_name (Thumb, 264 bytes, Stack size 32 bytes, fs_fat.o(i.alloc_name))
[Stack]
- Max Depth = 192 + Unknown Stack Size
- Call Chain = alloc_name ⇒ alloc_new_clus ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_sector
- >> is_EOC
- >> get_dir_sect
- >> clus_to_sect
- >> clear_clus
- >> check_lfn
- >> alloc_new_clus
- >> __aeabi_uidivmod (via Veneer)
- >> strlen
[Called By]- >> rename_entries
- >> fat_find_dir
- >> fat_create
alloc_new_clus (Thumb, 72 bytes, Stack size 16 bytes, fs_fat.o(i.alloc_new_clus))
[Stack]
- Max Depth = 160
- Call Chain = alloc_new_clus ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_fat_link
- >> get_free_clus
- >> get_EOC
- >> cache_fat
[Called By]- >> write_entries
- >> alloc_name
cache_fat (Thumb, 104 bytes, Stack size 16 bytes, fs_fat.o(i.cache_fat))
[Stack]
- Max Depth = 112
- Call Chain = cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> mmc_write_sect
- >> mmc_read_sect
[Called By]- >> write_fat_link
- >> unlink_clus_chain
- >> set_next_clus
- >> get_free_clus
- >> count_free_clus
- >> alloc_new_clus
- >> fat_close_write
check_lfn (Thumb, 122 bytes, Stack size 24 bytes, fs_fat.o(i.check_lfn))
[Stack]
- Max Depth = 24
- Call Chain = check_lfn
[Calls]
[Called By]- >> write_entries
- >> search_for_name
- >> rename_entries
- >> alloc_name
check_name (Thumb, 14 bytes, Stack size 8 bytes, fs_fat.o(i.check_name))
[Stack]
- Max Depth = 240 + Unknown Stack Size
- Call Chain = check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]- >> write_entries
- >> fat_rename
chk_dir_empty (Thumb, 142 bytes, Stack size 24 bytes, fs_fat.o(i.chk_dir_empty))
[Stack]
- Max Depth = 160
- Call Chain = chk_dir_empty ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_sector
- >> is_EOC
- >> clus_to_sect
- >> strcmp (via Veneer)
[Called By]
chk_param (Thumb, 38 bytes, Stack size 16 bytes, fs_fat.o(i.chk_param))
[Stack]
- Max Depth = 16
- Call Chain = chk_param
[Calls]
[Called By]
clear_clus (Thumb, 68 bytes, Stack size 16 bytes, fs_fat.o(i.clear_clus))
[Stack]
- Max Depth = 152
- Call Chain = clear_clus ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_cache
- >> clus_to_sect
- >> __aeabi_memclr (via Veneer)
[Called By]- >> write_entries
- >> alloc_name
clus_to_sect (Thumb, 32 bytes, Stack size 4 bytes, fs_fat.o(i.clus_to_sect))
[Stack]
- Max Depth = 4
- Call Chain = clus_to_sect
[Called By]- >> write_entries
- >> write_dot_entries
- >> search_for_name
- >> get_next_info
- >> get_dir_sect
- >> delete_entries
- >> clear_clus
- >> chk_dir_empty
- >> alloc_name
- >> fat_write
- >> fat_read
count_free_clus (Thumb, 272 bytes, Stack size 24 bytes, fs_fat.o(i.count_free_clus))
[Stack]
- Max Depth = 136
- Call Chain = count_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_fat_sect
- >> cache_fat
[Called By]
cvt_fatname (Thumb, 174 bytes, Stack size 24 bytes, fs_fat.o(i.cvt_fatname))
[Stack]
- Max Depth = 32
- Call Chain = cvt_fatname ⇒ val_char
[Calls]
[Called By]- >> write_entries
- >> search_for_name
delete_entries (Thumb, 170 bytes, Stack size 40 bytes, fs_fat.o(i.delete_entries))
[Stack]
- Max Depth = 176
- Call Chain = delete_entries ⇒ unlink_clus_chain ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> unlink_clus_chain
- >> set_next_clus
- >> read_sector
- >> get_dir_sect
- >> clus_to_sect
[Called By]- >> rename_entries
- >> fat_delete
fat_find_dir (Thumb, 124 bytes, Stack size 32 bytes, fs_fat.o(i.fat_find_dir))
[Stack]
- Max Depth = 368 + Unknown Stack Size
- Call Chain = fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_entries
- >> write_dot_entries
- >> find_name
- >> alloc_name
[Called By]- >> fat_create
- >> fat_ffind
- >> fat_rename
- >> fat_find_file
- >> fat_delete
find_name (Thumb, 14 bytes, Stack size 8 bytes, fs_fat.o(i.find_name))
[Stack]
- Max Depth = 240 + Unknown Stack Size
- Call Chain = find_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]- >> fat_find_dir
- >> fat_rename
- >> fat_find_file
- >> fat_delete
get_EOC (Thumb, 32 bytes, Stack size 0 bytes, fs_fat.o(i.get_EOC))
[Called By]
- >> alloc_new_clus
- >> fat_close_write
get_bootrec (Thumb, 192 bytes, Stack size 16 bytes, fs_fat.o(i.get_bootrec))
[Stack]
- Max Depth = 128
- Call Chain = get_bootrec ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> read_sector
- >> get_u32
- >> get_u16
[Called By]
get_date (Thumb, 52 bytes, Stack size 8 bytes, fs_fat.o(i.get_date))
[Stack]
- Max Depth = 8
- Call Chain = get_date
[Calls]
[Called By]- >> write_label
- >> write_entries
- >> write_dot_entries
get_dir_sect (Thumb, 46 bytes, Stack size 8 bytes, fs_fat.o(i.get_dir_sect))
[Stack]
- Max Depth = 12
- Call Chain = get_dir_sect ⇒ clus_to_sect
[Calls]
[Called By]- >> write_entries
- >> search_for_name
- >> read_last_entry
- >> get_next_info
- >> delete_entries
- >> alloc_name
- >> fat_close_write
get_fat_sect (Thumb, 50 bytes, Stack size 0 bytes, fs_fat.o(i.get_fat_sect))
[Called By]
- >> write_fat_link
- >> unlink_clus_chain
- >> set_next_clus
- >> get_free_clus
- >> count_free_clus
get_free_clus (Thumb, 214 bytes, Stack size 32 bytes, fs_fat.o(i.get_free_clus))
[Stack]
- Max Depth = 144
- Call Chain = get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_u32
- >> get_fat_sect
- >> cache_fat
[Called By]- >> alloc_new_clus
- >> fat_write
get_fsinfo (Thumb, 120 bytes, Stack size 16 bytes, fs_fat.o(i.get_fsinfo))
[Stack]
- Max Depth = 128
- Call Chain = get_fsinfo ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> read_sector
- >> get_u32
[Called By]
get_mbrec (Thumb, 82 bytes, Stack size 8 bytes, fs_fat.o(i.get_mbrec))
[Stack]
- Max Depth = 120
- Call Chain = get_mbrec ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> read_sector
- >> get_u32
[Called By]
get_next_info (Thumb, 434 bytes, Stack size 56 bytes, fs_fat.o(i.get_next_info))
[Stack]
- Max Depth = 192
- Call Chain = get_next_info ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_sector
- >> lfn_calc_chksum
- >> is_EOC
- >> get_u32
- >> get_dir_sect
- >> clus_to_sect
[Called By]
get_nt_name (Thumb, 390 bytes, Stack size 48 bytes, fs_fat.o(i.get_nt_name))
[Stack]
- Max Depth = 56
- Call Chain = get_nt_name ⇒ val_char
[Calls]- >> __ARM_common_switch8 (via Veneer)
- >> val_char
- >> __aeabi_idivmod (via Veneer)
[Called By]
get_time (Thumb, 54 bytes, Stack size 8 bytes, fs_fat.o(i.get_time))
[Stack]
- Max Depth = 8
- Call Chain = get_time
[Calls]
[Called By]- >> write_label
- >> write_entries
- >> write_dot_entries
get_u16 (Thumb, 10 bytes, Stack size 0 bytes, fs_fat.o(i.get_u16))
[Called By]
- >> write_entries
- >> search_for_name
- >> get_bootrec
get_u32 (Thumb, 24 bytes, Stack size 0 bytes, fs_fat.o(i.get_u32))
[Called By]
- >> write_fat_link
- >> unlink_clus_chain
- >> search_for_name
- >> get_next_info
- >> get_mbrec
- >> get_fsinfo
- >> get_free_clus
- >> get_bootrec
init_dev (Thumb, 280 bytes, Stack size 40 bytes, fs_fat.o(i.init_dev))
[Stack]
- Max Depth = 192 + Unknown Stack Size
- Call Chain = init_dev ⇒ write_fsinfo ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_fsinfo
- >> get_mbrec
- >> get_fsinfo
- >> get_bootrec
- >> count_free_clus
- >> __aeabi_uidivmod (via Veneer)
- >> __aeabi_idivmod (via Veneer)
- >> __aeabi_memclr4 (via Veneer)
[Called By]
is_EOC (Thumb, 42 bytes, Stack size 0 bytes, fs_fat.o(i.is_EOC))
[Called By]
- >> unlink_clus_chain
- >> search_for_name
- >> get_next_info
- >> chk_dir_empty
- >> alloc_name
lfn_calc_chksum (Thumb, 32 bytes, Stack size 0 bytes, fs_fat.o(i.lfn_calc_chksum))
[Called By]
- >> write_entries
- >> search_for_name
- >> get_next_info
read_cache (Thumb, 124 bytes, Stack size 16 bytes, fs_fat.o(i.read_cache))
[Stack]
- Max Depth = 128
- Call Chain = read_cache ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> mmc_read_sect
- >> read_sector
- >> __aeabi_memcpy (via Veneer)
[Called By]
read_last_entry (Thumb, 52 bytes, Stack size 16 bytes, fs_fat.o(i.read_last_entry))
[Stack]
- Max Depth = 128
- Call Chain = read_last_entry ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> read_sector
- >> get_dir_sect
- >> __aeabi_memcpy4 (via Veneer)
[Called By]- >> rename_entries
- >> fat_close_write
read_sector (Thumb, 84 bytes, Stack size 16 bytes, fs_fat.o(i.read_sector))
[Stack]
- Max Depth = 112
- Call Chain = read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> mmc_read_sect
- >> __aeabi_memcpy (via Veneer)
[Called By]- >> write_entries
- >> search_for_name
- >> read_last_entry
- >> read_cache
- >> get_next_info
- >> get_mbrec
- >> get_fsinfo
- >> get_bootrec
- >> delete_entries
- >> chk_dir_empty
- >> alloc_name
- >> fat_write
- >> fat_close_write
rename_entries (Thumb, 124 bytes, Stack size 64 bytes, fs_fat.o(i.rename_entries))
[Stack]
- Max Depth = 400 + Unknown Stack Size
- Call Chain = rename_entries ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_entries
- >> read_last_entry
- >> delete_entries
- >> check_lfn
- >> alloc_name
- >> __aeabi_uidivmod (via Veneer)
- >> strlen
[Called By]
search_for_name (Thumb, 548 bytes, Stack size 96 bytes, fs_fat.o(i.search_for_name))
[Stack]
- Max Depth = 232 + Unknown Stack Size
- Call Chain = search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_sector
- >> lfn_calc_chksum
- >> is_EOC
- >> get_u32
- >> get_u16
- >> get_dir_sect
- >> cvt_fatname
- >> clus_to_sect
- >> check_lfn
- >> __aeabi_uidivmod (via Veneer)
- >> strlen
[Called By]- >> find_name
- >> check_name
set_next_clus (Thumb, 144 bytes, Stack size 24 bytes, fs_fat.o(i.set_next_clus))
[Stack]
- Max Depth = 136
- Call Chain = set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_fat_sect
- >> cache_fat
[Called By]- >> search_for_name
- >> get_next_info
- >> delete_entries
- >> chk_dir_empty
- >> alloc_name
- >> fat_set_fpos
- >> fat_read
set_u16 (Thumb, 8 bytes, Stack size 0 bytes, fs_fat.o(i.set_u16))
[Called By]
- >> write_mbr
- >> write_label
- >> write_fat_link
- >> write_entries
- >> write_dot_entries
- >> write_br
- >> unlink_clus_chain
set_u32 (Thumb, 16 bytes, Stack size 0 bytes, fs_fat.o(i.set_u32))
[Called By]
- >> write_mbr
- >> write_fsinfo
- >> write_fat_link
- >> write_br
- >> fat_format
unlink_clus_chain (Thumb, 290 bytes, Stack size 24 bytes, fs_fat.o(i.unlink_clus_chain))
[Stack]
- Max Depth = 136
- Call Chain = unlink_clus_chain ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_u16
- >> is_EOC
- >> get_u32
- >> get_fat_sect
- >> cache_fat
[Called By]
val_char (Thumb, 24 bytes, Stack size 8 bytes, fs_fat.o(i.val_char))
[Stack]
- Max Depth = 8
- Call Chain = val_char
[Calls]
[Called By]- >> get_nt_name
- >> cvt_fatname
val_char_sn (Thumb, 60 bytes, Stack size 0 bytes, fs_fat.o(i.val_char_sn))
[Called By]
write_br (Thumb, 328 bytes, Stack size 24 bytes, fs_fat.o(i.write_br))
[Stack]
- Max Depth = 160
- Call Chain = write_br ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_cache
- >> set_u32
- >> set_u16
- >> __aeabi_memclr (via Veneer)
- >> __aeabi_memcpy (via Veneer)
[Called By]
write_cache (Thumb, 140 bytes, Stack size 24 bytes, fs_fat.o(i.write_cache))
[Stack]
- Max Depth = 136
- Call Chain = write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> mmc_write_sect
- >> write_sector
- >> __aeabi_memcpy (via Veneer)
[Called By]- >> write_label
- >> write_fsinfo
- >> write_br
- >> clear_clus
- >> fat_write
- >> fat_close_write
- >> fat_format
write_dot_entries (Thumb, 212 bytes, Stack size 24 bytes, fs_fat.o(i.write_dot_entries))
[Stack]
- Max Depth = 136
- Call Chain = write_dot_entries ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> set_u16
- >> get_time
- >> get_date
- >> clus_to_sect
- >> __aeabi_memclr (via Veneer)
- >> __aeabi_memcpy4 (via Veneer)
[Called By]
write_entries (Thumb, 704 bytes, Stack size 96 bytes, fs_fat.o(i.write_entries))
[Stack]
- Max Depth = 336 + Unknown Stack Size
- Call Chain = write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> set_u16
- >> read_sector
- >> lfn_calc_chksum
- >> get_u16
- >> get_time
- >> get_nt_name
- >> get_dir_sect
- >> get_date
- >> cvt_fatname
- >> clus_to_sect
- >> clear_clus
- >> check_name
- >> check_lfn
- >> alloc_new_clus
- >> __aeabi_uidivmod (via Veneer)
- >> strlen
[Called By]- >> rename_entries
- >> fat_find_dir
- >> fat_create
write_fat_link (Thumb, 242 bytes, Stack size 24 bytes, fs_fat.o(i.write_fat_link))
[Stack]
- Max Depth = 136
- Call Chain = write_fat_link ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_u32
- >> set_u16
- >> get_u32
- >> get_fat_sect
- >> cache_fat
[Called By]- >> alloc_new_clus
- >> fat_write
- >> fat_close_write
write_fsinfo (Thumb, 100 bytes, Stack size 16 bytes, fs_fat.o(i.write_fsinfo))
[Stack]
- Max Depth = 152
- Call Chain = write_fsinfo ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_cache
- >> set_u32
- >> __aeabi_memclr (via Veneer)
[Called By]- >> init_dev
- >> fat_close_write
- >> fat_format
write_label (Thumb, 134 bytes, Stack size 24 bytes, fs_fat.o(i.write_label))
[Stack]
- Max Depth = 160
- Call Chain = write_label ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_cache
- >> set_u16
- >> get_time
- >> get_date
- >> __aeabi_memclr (via Veneer)
[Called By]
write_mbr (Thumb, 164 bytes, Stack size 16 bytes, fs_fat.o(i.write_mbr))
[Stack]
- Max Depth = 128
- Call Chain = write_mbr ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> set_u32
- >> set_u16
- >> __aeabi_memclr (via Veneer)
[Called By]
write_sector (Thumb, 30 bytes, Stack size 16 bytes, fs_fat.o(i.write_sector))
[Stack]
- Max Depth = 112
- Call Chain = write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]- >> write_mbr
- >> write_entries
- >> write_dot_entries
- >> write_cache
- >> delete_entries
- >> fat_close_write
mmc_command (Thumb, 180 bytes, Stack size 56 bytes, fs_mmc.o(i.mmc_command))
[Stack]
- Max Depth = 56
- Call Chain = mmc_command
[Calls]
[Called By]- >> mmc_read_sect
- >> mmc_init
- >> mmc_write_block
- >> mmc_read_bytes
- >> mmc_read_block
mmc_read_block (Thumb, 110 bytes, Stack size 24 bytes, fs_mmc.o(i.mmc_read_block))
[Stack]
- Max Depth = 80
- Call Chain = mmc_read_block ⇒ mmc_command
[Calls]- >> spi_send
- >> mmc_command
[Called By]
mmc_read_bytes (Thumb, 82 bytes, Stack size 16 bytes, fs_mmc.o(i.mmc_read_bytes))
[Stack]
- Max Depth = 72
- Call Chain = mmc_read_bytes ⇒ mmc_command
[Calls]- >> spi_send
- >> mmc_command
[Called By]
mmc_write_block (Thumb, 138 bytes, Stack size 24 bytes, fs_mmc.o(i.mmc_write_block))
[Stack]
- Max Depth = 80
- Call Chain = mmc_write_block ⇒ mmc_command
[Calls]- >> spi_send
- >> mmc_command
[Called By]
__arm_div8 (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))
[Called By]
__arm_div5 (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))
[Called By]
__arm_div2 (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))
[Called By]
__arm_div_large (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))
[Called By]
_printf_input_char (Thumb, 10 bytes, Stack size 0 bytes, _printf_char_common.o(.text))
[Address Reference Count : 1]
- _printf_char_common.o(.text)
_scanf_char_input (Thumb, 12 bytes, Stack size 0 bytes, scanf_char.o(.text))
[Address Reference Count : 1]
Undefined Global Symbols
_call_atexit_fns (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_mutex_acquire (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
- >> __write
- >> __setfpos
- >> __read
- >> __getfsize
- >> __fopen
- >> __flushbuf
- >> __fclose
- >> frename
- >> finit
- >> ffree
- >> fformat
- >> ffind
- >> fdelete
_mutex_release (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
- >> __write
- >> __setfpos
- >> __read
- >> __getfsize
- >> __fopen
- >> __flushbuf
- >> __fclose
- >> frename
- >> finit
- >> ffree
- >> fformat
- >> ffind
- >> fdelete
_printf_mbtowc (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_printf_truncate_signed (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_printf_truncate_unsigned (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_scanf_longlong (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_scanf_mbtowc (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_scanf_real (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_scanf_string (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_scanf_wctomb (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]
_scanf_wstring (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]