# Static Call Graph for image C:\Users\Adrie\Desktop\Automatic Weather System\Nuvoton\HMI.axf

#<CALLGRAPH># ARM Linker, 4.1 [Build 894]: Last Updated: Mon Nov 23 14:34:07 2015

### Maximum Stack Usage = 368 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

### Call chain for Maximum Stack Depth:

_printf_fp_dec_real ⇒ _fp_digits ⇒ _btod_etento ⇒ _btod_emul ⇒ btod_internal_mul ⇒ __ARM_common_ll_muluu

### Functions with no stack information

- __user_initial_stackheap

### Mutually Recursive functions

- NMI_Handler ⇒ NMI_Handler
- HardFault_Handler ⇒ HardFault_Handler
- SVC_Handler ⇒ SVC_Handler
- PendSV_Handler ⇒ PendSV_Handler
- SysTick_Handler ⇒ SysTick_Handler
- Default_Handler ⇒ Default_Handler

  ### Function Pointers

  - ACMP_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - ADC_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - BOD_IRQHandler from drvsys.o(.text) referenced from startup_nuc1xx.o(RESET)
  - CAN0_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - Default_Handler from startup_nuc1xx.o(.text) referenced 3 times from startup_nuc1xx.o(RESET)
  - EINT0_IRQHandler from drvgpio.o(.text) referenced from startup_nuc1xx.o(RESET)
  - EINT1_IRQHandler from drvgpio.o(.text) referenced from startup_nuc1xx.o(RESET)
  - GPAB_IRQHandler from drvgpio.o(.text) referenced from startup_nuc1xx.o(RESET)
  - GPCDE_IRQHandler from drvgpio.o(.text) referenced from startup_nuc1xx.o(RESET)
  - HardFault_Handler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - I2C0_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - I2C1_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - I2S_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - NMI_Handler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - PDMA_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - PS2_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - PWMA_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - PWMB_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - PWRWU_IRQHandler from drvsys.o(.text) referenced from startup_nuc1xx.o(RESET)
  - PendSV_Handler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - RTC_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - Reset_Handler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - SPI0_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - SPI1_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - SPI2_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - SPI3_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - SVC_Handler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - SysTick_Handler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - SystemInit from system_nuc1xx.o(.text) referenced from startup_nuc1xx.o(.text)
  - TMR0_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - TMR1_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - TMR2_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - TMR3_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - UART02_IRQHandler from drvuart.o(.text) referenced from startup_nuc1xx.o(RESET)
  - UART1_IRQHandler from drvuart.o(.text) referenced from startup_nuc1xx.o(RESET)
  - USBD_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - WDT_IRQHandler from startup_nuc1xx.o(.text) referenced from startup_nuc1xx.o(RESET)
  - __main from __main.o(!!!main) referenced from startup_nuc1xx.o(.text)
  - _get_lc_ctype from lc_ctype_c.o(locale$$code) referenced from rt_ctype_table.o(.text)
  - _printf_fp_dec_real from _printf_fp_dec.o(.text) referenced from printf1.o(x$fpl$printf1)
  - _printf_input_char from _printf_char_common.o(.text) referenced from _printf_char_common.o(.text)
  - _sputc from _sputc.o(.text) referenced from noretval__2sprintf.o(.text)

  ### Global Symbols

  __main (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
  [Calls]

  - >> __rt_entry
  - >> __scatterload

  __scatterload (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
  [Called By]

  - >> __main

  __scatterload_rt2 (Thumb, 52 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
  [Calls]

  - >> __rt_entry

  __scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)

  _printf_percent (Thumb, 0 bytes, Stack size unknown bytes, _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000))
  [Called By]

  - >> __printf

  _printf_f (Thumb, 0 bytes, Stack size unknown bytes, _printf_f.o(.ARM.Collect$$_printf_percent$$00000003))
  [Stack]

  - Max Depth = 88 + Unknown Stack Size
  - Call Chain = _printf_f ⇒ _printf_d ⇒ _printf_int_dec ⇒ _printf_int_common ⇒ _printf_post_padding
  [Calls]
  - >> _printf_fp_dec
  - >> _printf_d

  _printf_d (Thumb, 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_percent_end
  - >> _printf_int_dec
  [Called By]
  - >> _printf_f

  _printf_percent_end (Thumb, 0 bytes, Stack size unknown bytes, _printf_percent_end.o(.ARM.Collect$$_printf_percent$$00000017))
  [Called By]

  - >> _printf_d

  __rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
  [Called By]

  - >> __rt_entry_li

  __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

  __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 = 24 + Unknown Stack Size
  - Call Chain = __rt_lib_init_lc_ctype_2 ⇒ _get_lc_ctype ⇒ strcmp
  [Calls]
  - >> _get_lc_ctype

  __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_2 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000012))
  [Stack]

  - Max Depth = 24 + Unknown Stack Size
  - Call Chain = __rt_lib_init_lc_numeric_2 ⇒ _get_lc_numeric ⇒ strcmp
  [Calls]
  - >> _get_lc_numeric

  __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_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_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_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_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_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002F))

  __rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))

  __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

  __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 (Thumb, 0 bytes, Stack size unknown bytes, rtentry.o(.ARM.Collect$$rtentry$$00000000))
  [Called By]

  - >> __main
  - >> __scatterload_rt2

  __rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000002))

  __rt_entry_sh (Thumb, 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 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
  [Calls]

  - >> __rt_lib_init

  __rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000009))

  __rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = __rt_entry_main ⇒ main ⇒ callableMain ⇒ __2sprintf ⇒ _printf_char_common ⇒ __printf
  [Calls]
  - >> exit
  - >> main

  __rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000C))

  __rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
  [Called By]

  - >> exit

  __rt_exit_ls (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
  [Calls]

  - >> __rt_lib_shutdown

  __rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))

  __rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
  [Calls]

  - >> _sys_exit

  Reset_Handler (Thumb, 32 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))

  NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Calls]

  - >> NMI_Handler
  [Called By]
  - >> NMI_Handler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  HardFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Calls]

  - >> HardFault_Handler
  [Called By]
  - >> HardFault_Handler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Calls]

  - >> SVC_Handler
  [Called By]
  - >> SVC_Handler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Calls]

  - >> PendSV_Handler
  [Called By]
  - >> PendSV_Handler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  SysTick_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Calls]

  - >> SysTick_Handler
  [Called By]
  - >> SysTick_Handler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  ACMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  ADC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  CAN0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  I2C0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  I2C1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  I2S_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  PDMA_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  PS2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  PWMA_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  PWMB_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  RTC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  SPI0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  SPI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  SPI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  SPI3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  TMR0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  TMR1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  TMR2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  TMR3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  USBD_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  WDT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(RESET)

  __user_initial_stackheap (Thumb, 0 bytes, Stack size unknown bytes, startup_nuc1xx.o(.text))
  [Called By]

  - >> __user_setup_stackheap

  SystemCoreClockUpdate (Thumb, 130 bytes, Stack size 16 bytes, system_nuc1xx.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SystemCoreClockUpdate
  [Calls]
  - >> __aeabi_uidivmod
  [Called By]
  - >> DrvSYS_SetClockDivider
  - >> DrvSYS_SelectHCLKSource

  SystemInit (Thumb, 2 bytes, Stack size 0 bytes, system_nuc1xx.o(.text))
  [Address Reference Count : 1]

  - startup_nuc1xx.o(.text)

  GPAB_IRQHandler (Thumb, 52 bytes, Stack size 16 bytes, drvgpio.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = GPAB_IRQHandler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  GPCDE_IRQHandler (Thumb, 56 bytes, Stack size 16 bytes, drvgpio.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = GPCDE_IRQHandler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  EINT0_IRQHandler (Thumb, 28 bytes, Stack size 8 bytes, drvgpio.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = EINT0_IRQHandler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  EINT1_IRQHandler (Thumb, 28 bytes, Stack size 8 bytes, drvgpio.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = EINT1_IRQHandler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  DrvGPIO_Open (Thumb, 110 bytes, Stack size 16 bytes, drvgpio.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = DrvGPIO_Open
  [Called By]
  - >> main
  - >> Disable_Buzzer

  DrvGPIO_Close (Thumb, 54 bytes, Stack size 12 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_SetBit (Thumb, 36 bytes, Stack size 8 bytes, drvgpio.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = DrvGPIO_SetBit
  [Called By]
  - >> callableMain
  - >> Disable_Buzzer

  DrvGPIO_GetBit (Thumb, 34 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_ClrBit (Thumb, 36 bytes, Stack size 8 bytes, drvgpio.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = DrvGPIO_ClrBit
  [Called By]
  - >> main
  - >> callableMain

  DrvGPIO_SetPortBits (Thumb, 16 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_GetPortBits (Thumb, 12 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_GetDoutBit (Thumb, 30 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_GetPortDoutBits (Thumb, 20 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_SetBitMask (Thumb, 26 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_GetBitMask (Thumb, 22 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_ClrBitMask (Thumb, 26 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_GetPortMask (Thumb, 12 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)
  [Called By]

  - >> DrvGPIO_ClrPortMask
  - >> DrvGPIO_SetPortMask

  DrvGPIO_SetPortMask (Thumb, 26 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)
  [Calls]

  - >> DrvGPIO_GetPortMask

  DrvGPIO_ClrPortMask (Thumb, 26 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)
  [Calls]

  - >> DrvGPIO_GetPortMask

  DrvGPIO_EnableDigitalInputBit (Thumb, 32 bytes, Stack size 12 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_DisableDigitalInputBit (Thumb, 32 bytes, Stack size 12 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_EnableDebounce (Thumb, 44 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_DisableDebounce (Thumb, 42 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_SetDebounceTime (Thumb, 60 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_GetDebounceSampleCycle (Thumb, 12 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_EnableInt (Thumb, 250 bytes, Stack size 40 bytes, drvgpio.o(.text), UNUSED)
  [Calls]

  - >> NVIC_EnableIRQ
  - >> NVIC_SetPriority

  DrvGPIO_DisableInt (Thumb, 68 bytes, Stack size 16 bytes, drvgpio.o(.text), UNUSED)
  [Calls]

  - >> NVIC_DisableIRQ

  DrvGPIO_SetIntCallback (Thumb, 10 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_EnableEINT0 (Thumb, 118 bytes, Stack size 24 bytes, drvgpio.o(.text), UNUSED)
  [Calls]

  - >> NVIC_EnableIRQ
  - >> NVIC_SetPriority

  DrvGPIO_DisableEINT0 (Thumb, 24 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)
  [Calls]

  - >> NVIC_DisableIRQ

  DrvGPIO_EnableEINT1 (Thumb, 116 bytes, Stack size 24 bytes, drvgpio.o(.text), UNUSED)
  [Calls]

  - >> NVIC_EnableIRQ
  - >> NVIC_SetPriority

  DrvGPIO_DisableEINT1 (Thumb, 24 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)
  [Calls]

  - >> NVIC_DisableIRQ

  DrvGPIO_GetIntStatus (Thumb, 14 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)

  DrvGPIO_InitFunction (Thumb, 1904 bytes, Stack size 8 bytes, drvgpio.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = DrvGPIO_InitFunction ⇒ __ARM_common_switch8
  [Calls]
  - >> __ARM_common_switch8
  [Called By]
  - >> callableMain

  DrvGPIO_GetVersion (Thumb, 4 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)

  DrvSYS_GetVersion (Thumb, 4 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_ReadProductID (Thumb, 8 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_UnlockProtectedReg (Thumb, 34 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_LockProtectedReg (Thumb, 28 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_IsProtectedRegLocked (Thumb, 10 bytes, Stack size 0 bytes, drvsys.o(.text))
  [Called By]

  - >> DrvSYS_Open

  DrvSYS_GetResetSource (Thumb, 8 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_ClearResetSource (Thumb, 12 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_ResetIP (Thumb, 110 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_ResetCPU (Thumb, 20 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_ResetChip (Thumb, 20 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_SelectBODVolt (Thumb, 26 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_SetBODFunction (Thumb, 88 bytes, Stack size 16 bytes, drvsys.o(.text), UNUSED)
  [Calls]

  - >> NVIC_DisableIRQ
  - >> NVIC_EnableIRQ
  - >> NVIC_SetPriority

  DrvSYS_EnableBODLowPowerMode (Thumb, 20 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_DisableBODLowPowerMode (Thumb, 18 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_GetBODState (Thumb, 12 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_EnableLowVoltReset (Thumb, 20 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_DisableLowVoltReset (Thumb, 18 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_EnableTemperatureSensor (Thumb, 20 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_DisableTemperatureSensor (Thumb, 18 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_EnablePOR (Thumb, 10 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_DisablePOR (Thumb, 8 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  BOD_IRQHandler (Thumb, 36 bytes, Stack size 8 bytes, drvsys.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = BOD_IRQHandler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  DrvSYS_SetIPClock (Thumb, 114 bytes, Stack size 12 bytes, drvsys.o(.text), UNUSED)
  [Called By]

  - >> DrvSYS_SetFreqDividerOutput

  DrvSYS_SelectHCLKSource (Thumb, 48 bytes, Stack size 8 bytes, drvsys.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = DrvSYS_SelectHCLKSource ⇒ SystemCoreClockUpdate
  [Calls]
  - >> SystemCoreClockUpdate
  [Called By]
  - >> DrvSYS_Open

  DrvSYS_SelectSysTickSource (Thumb, 44 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_SelectIPClockSource (Thumb, 376 bytes, Stack size 8 bytes, drvsys.o(.text), UNUSED)
  [Calls]

  - >> __ARM_common_switch8

  DrvSYS_SetClockDivider (Thumb, 130 bytes, Stack size 16 bytes, drvsys.o(.text), UNUSED)
  [Calls]

  - >> SystemCoreClockUpdate

  DrvSYS_SetOscCtrl (Thumb, 120 bytes, Stack size 8 bytes, drvsys.o(.text), UNUSED)

  PWRWU_IRQHandler (Thumb, 32 bytes, Stack size 8 bytes, drvsys.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = PWRWU_IRQHandler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  DrvSYS_SetPowerDownWakeUpInt (Thumb, 98 bytes, Stack size 16 bytes, drvsys.o(.text), UNUSED)
  [Calls]

  - >> NVIC_DisableIRQ
  - >> NVIC_EnableIRQ
  - >> NVIC_SetPriority

  DrvSYS_EnterPowerDown (Thumb, 52 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_SelectPLLSource (Thumb, 26 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_SetPLLMode (Thumb, 46 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_GetExtClockFreq (Thumb, 4 bytes, Stack size 0 bytes, drvsys.o(.text))
  [Called By]

  - >> GetUartClk

  DrvSYS_GetPLLContent (Thumb, 164 bytes, Stack size 40 bytes, drvsys.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = DrvSYS_GetPLLContent
  [Calls]
  - >> __aeabi_uidivmod
  [Called By]
  - >> DrvSYS_Open

  DrvSYS_SetPLLContent (Thumb, 72 bytes, Stack size 0 bytes, drvsys.o(.text))
  [Called By]

  - >> DrvSYS_Open

  DrvSYS_GetPLLClockFreq (Thumb, 150 bytes, Stack size 32 bytes, drvsys.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = DrvSYS_GetPLLClockFreq
  [Calls]
  - >> __aeabi_uidivmod
  [Called By]
  - >> GetUartClk
  - >> DrvSYS_GetHCLKFreq

  DrvSYS_GetHCLKFreq (Thumb, 92 bytes, Stack size 16 bytes, drvsys.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_uidivmod
  - >> DrvSYS_GetPLLClockFreq

  DrvSYS_Open (Thumb, 156 bytes, Stack size 24 bytes, drvsys.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = DrvSYS_Open ⇒ DrvSYS_GetPLLContent
  [Calls]
  - >> DrvSYS_SetPLLContent
  - >> DrvSYS_GetPLLContent
  - >> DrvSYS_SelectHCLKSource
  - >> DrvSYS_IsProtectedRegLocked
  [Called By]
  - >> main

  DrvSYS_SetFreqDividerOutput (Thumb, 70 bytes, Stack size 12 bytes, drvsys.o(.text), UNUSED)
  [Calls]

  - >> DrvSYS_SetIPClock

  DrvSYS_EnableHighPerformanceMode (Thumb, 20 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_DisableHighPerformanceMode (Thumb, 18 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_Delay (Thumb, 34 bytes, Stack size 0 bytes, drvsys.o(.text))
  [Called By]

  - >> main

  DrvSYS_GetChipClockSourceStatus (Thumb, 80 bytes, Stack size 4 bytes, drvsys.o(.text), UNUSED)
  [Calls]

  - >> __ARM_common_switch8

  DrvSYS_GetClockSwitchStatus (Thumb, 10 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  DrvSYS_ClearClockSwitchStatus (Thumb, 16 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)

  UART02_IRQHandler (Thumb, 44 bytes, Stack size 16 bytes, drvuart.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = UART02_IRQHandler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  UART1_IRQHandler (Thumb, 24 bytes, Stack size 8 bytes, drvuart.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = UART1_IRQHandler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  DrvUART_SetRTS (Thumb, 46 bytes, Stack size 16 bytes, drvuart.o(.text), UNUSED)

  DrvUART_Open (Thumb, 598 bytes, Stack size 24 bytes, drvuart.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = DrvUART_Open ⇒ GetUartClk ⇒ DrvSYS_GetPLLClockFreq
  [Calls]
  - >> GetUartClk
  - >> BaudRateCalculator
  [Called By]
  - >> callableMain

  DrvUART_Close (Thumb, 182 bytes, Stack size 8 bytes, drvuart.o(.text), UNUSED)
  [Calls]

  - >> NVIC_DisableIRQ

  DrvUART_EnableInt (Thumb, 238 bytes, Stack size 24 bytes, drvuart.o(.text), UNUSED)
  [Calls]

  - >> NVIC_EnableIRQ

  DrvUART_DisableInt (Thumb, 156 bytes, Stack size 16 bytes, drvuart.o(.text), UNUSED)
  [Calls]

  - >> NVIC_DisableIRQ

  DrvUART_ClearIntFlag (Thumb, 138 bytes, Stack size 8 bytes, drvuart.o(.text), UNUSED)

  DrvUART_GetIntStatus (Thumb, 14 bytes, Stack size 0 bytes, drvuart.o(.text), UNUSED)

  DrvUART_GetCTSInfo (Thumb, 24 bytes, Stack size 8 bytes, drvuart.o(.text), UNUSED)

  DrvUART_Read (Thumb, 58 bytes, Stack size 16 bytes, drvuart.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = DrvUART_Read
  [Called By]
  - >> callableMain

  DrvUART_Write (Thumb, 58 bytes, Stack size 16 bytes, drvuart.o(.text), UNUSED)

  DrvUART_EnablePDMA (Thumb, 76 bytes, Stack size 0 bytes, drvuart.o(.text), UNUSED)

  DrvUART_DisablePDMA (Thumb, 68 bytes, Stack size 0 bytes, drvuart.o(.text), UNUSED)

  DrvUART_SetFnIRDA (Thumb, 118 bytes, Stack size 12 bytes, drvuart.o(.text), UNUSED)

  DrvUART_SetFnLIN (Thumb, 72 bytes, Stack size 16 bytes, drvuart.o(.text), UNUSED)

  DrvUART_SetFnRS485 (Thumb, 190 bytes, Stack size 12 bytes, drvuart.o(.text), UNUSED)

  DrvUART_GetVersion (Thumb, 4 bytes, Stack size 0 bytes, drvuart.o(.text), UNUSED)

  SysTimerDelay (Thumb, 32 bytes, Stack size 0 bytes, lcd_driver.o(.text), UNUSED)

  Initial_pannel (Thumb, 526 bytes, Stack size 0 bytes, lcd_driver.o(.text))
  [Called By]

  - >> main

  WriteData (Thumb, 82 bytes, Stack size 0 bytes, lcd_driver.o(.text))
  [Called By]

  - >> clr_all_pannal
  - >> Show_Word

  SetPACA (Thumb, 238 bytes, Stack size 0 bytes, lcd_driver.o(.text))
  [Called By]

  - >> clr_all_pannal
  - >> Show_Word

  Disable_Buzzer (Thumb, 22 bytes, Stack size 8 bytes, lcd_driver.o(.text), UNUSED)
  [Calls]

  - >> DrvGPIO_SetBit
  - >> DrvGPIO_Open

  Show_Word (Thumb, 132 bytes, Stack size 28 bytes, lcd_driver.o(.text))
  [Stack]

  - Max Depth = 28
  - Call Chain = Show_Word
  [Calls]
  - >> SetPACA
  - >> WriteData
  [Called By]
  - >> print_lcd

  print_lcd (Thumb, 40 bytes, Stack size 16 bytes, lcd_driver.o(.text))
  [Stack]

  - Max Depth = 44
  - Call Chain = print_lcd ⇒ Show_Word
  [Calls]
  - >> Show_Word
  [Called By]
  - >> main
  - >> callableMain

  clr_all_pannal (Thumb, 40 bytes, Stack size 8 bytes, lcd_driver.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = clr_all_pannal
  [Calls]
  - >> SetPACA
  - >> WriteData
  [Called By]
  - >> main

  delay (Thumb, 14 bytes, Stack size 0 bytes, aws.o(.text), UNUSED)

  Delay (Thumb, 14 bytes, Stack size 0 bytes, aws.o(.text))
  [Called By]

  - >> main
  - >> callableMain

  callableMain (Thumb, 548 bytes, Stack size 24 bytes, aws.o(.text))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = callableMain ⇒ __2sprintf ⇒ _printf_char_common ⇒ __printf
  [Calls]
  - >> __aeabi_i2d
  - >> __aeabi_ddiv
  - >> strncpy
  - >> strlen
  - >> strtol
  - >> __2sprintf
  - >> Delay
  - >> print_lcd
  - >> DrvUART_Read
  - >> DrvUART_Open
  - >> DrvGPIO_InitFunction
  - >> DrvGPIO_ClrBit
  - >> DrvGPIO_SetBit
  [Called By]
  - >> main

  main (Thumb, 204 bytes, Stack size 0 bytes, aws.o(.text))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = main ⇒ callableMain ⇒ __2sprintf ⇒ _printf_char_common ⇒ __printf
  [Calls]
  - >> callableMain
  - >> Delay
  - >> clr_all_pannal
  - >> print_lcd
  - >> Initial_pannel
  - >> DrvSYS_Delay
  - >> DrvSYS_Open
  - >> DrvGPIO_ClrBit
  - >> DrvGPIO_Open
  [Called By]
  - >> __rt_entry_main

  __2sprintf (Thumb, 36 bytes, Stack size 32 bytes, noretval__2sprintf.o(.text))
  [Stack]

  - Max Depth = 128 + Unknown Stack Size
  - Call Chain = __2sprintf ⇒ _printf_char_common ⇒ __printf
  [Calls]
  - >> _sputc
  - >> _printf_char_common
  [Called By]
  - >> callableMain

  _printf_pre_padding (Thumb, 44 bytes, Stack size 16 bytes, _printf_pad.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = _printf_pre_padding
  [Called By]
  - >> _printf_fp_infnan
  - >> _printf_fp_dec_real
  - >> _printf_int_common

  _printf_post_padding (Thumb, 34 bytes, Stack size 16 bytes, _printf_pad.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = _printf_post_padding
  [Called By]
  - >> _printf_fp_infnan
  - >> _printf_fp_dec_real
  - >> _printf_int_common

  _printf_int_dec (Thumb, 90 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]
  - >> __rt_udiv10
  - >> _printf_int_common
  - >> _printf_truncate_unsigned (Weak Reference)
  - >> _printf_truncate_signed (Weak Reference)
  [Called By]
  - >> _printf_d

  __printf (Thumb, 308 bytes, Stack size 32 bytes, __printf_flags_wp.o(.text))
  [Stack]

  - Max Depth = 32 + Unknown Stack Size
  - Call Chain = __printf
  [Calls]
  - >> _printf_percent
  - >> _is_digit
  [Called By]
  - >> _printf_char_common

  strtol (Thumb, 108 bytes, Stack size 32 bytes, strtol.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = strtol ⇒ _strtoul
  [Calls]
  - >> _strtoul
  - >> __aeabi_errno_addr
  - >> __rt_ctype_table
  [Called By]
  - >> callableMain

  strlen (Thumb, 62 bytes, Stack size 12 bytes, strlen.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = strlen
  [Called By]
  - >> callableMain

  strncpy (Thumb, 104 bytes, Stack size 24 bytes, strncpy.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = strncpy
  [Calls]
  - >> __rt_memclr
  [Called By]
  - >> callableMain

  __aeabi_uidiv (Thumb, 0 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text), UNUSED)

  __aeabi_uidivmod (Thumb, 20 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text))
  [Called By]

  - >> GetUartClk
  - >> BaudRateCalculator
  - >> DrvSYS_GetHCLKFreq
  - >> DrvSYS_GetPLLClockFreq
  - >> DrvSYS_GetPLLContent
  - >> SystemCoreClockUpdate

  __aeabi_idiv (Thumb, 0 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text), UNUSED)

  __aeabi_idivmod (Thumb, 326 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = __aeabi_idivmod
  [Called By]
  - >> _btod_etento

  __use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __aeabi_ddiv (Thumb, 0 bytes, Stack size 64 bytes, ddiv.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = __aeabi_ddiv
  [Called By]
  - >> callableMain

  _ddiv (Thumb, 1050 bytes, Stack size 64 bytes, ddiv.o(.text), UNUSED)
  [Called By]

  - >> _drdiv

  _drdiv (Thumb, 20 bytes, Stack size 8 bytes, ddiv.o(.text), UNUSED)
  [Calls]

  - >> _ddiv

  __aeabi_i2d_normalise (Thumb, 64 bytes, Stack size 0 bytes, dflti.o(.text))
  [Called By]

  - >> __aeabi_ui2d
  - >> __aeabi_i2d

  __aeabi_i2d (Thumb, 16 bytes, Stack size 0 bytes, dflti.o(.text))
  [Calls]

  - >> __aeabi_i2d_normalise
  [Called By]
  - >> callableMain

  _dflt (Thumb, 0 bytes, Stack size 0 bytes, dflti.o(.text), UNUSED)

  __aeabi_ui2d (Thumb, 6 bytes, Stack size 0 bytes, dflti.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_i2d_normalise

  _dfltu (Thumb, 0 bytes, Stack size 0 bytes, dflti.o(.text), UNUSED)

  __rt_ctype_table (Thumb, 16 bytes, Stack size 8 bytes, rt_ctype_table.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = __rt_ctype_table
  [Calls]
  - >> __rt_locale
  [Called By]
  - >> strtol

  __aeabi_errno_addr (Thumb, 8 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text))
  [Called By]

  - >> _strtoul
  - >> strtol

  __errno$intlibspace (Thumb, 0 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text), UNUSED)

  __rt_errno_addr$intlibspace (Thumb, 0 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text), UNUSED)

  _printf_int_common (Thumb, 176 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
  [Called By]
  - >> _printf_int_dec

  __lib_sel_fp_printf (Thumb, 2 bytes, Stack size 0 bytes, _printf_fp_dec.o(.text), UNUSED)

  _printf_fp_dec_real (Thumb, 618 bytes, Stack size 96 bytes, _printf_fp_dec.o(.text))
  [Stack]

  - Max Depth = 368
  - Call Chain = _printf_fp_dec_real ⇒ _fp_digits ⇒ _btod_etento ⇒ _btod_emul ⇒ btod_internal_mul ⇒ __ARM_common_ll_muluu
  [Calls]
  - >> __ARM_fpclassify
  - >> _printf_fp_infnan
  - >> __rt_locale
  - >> __rt_udiv10
  - >> _fp_digits
  - >> _printf_post_padding
  - >> _printf_pre_padding
  [Address Reference Count : 1]
  - printf1.o(x$fpl$printf1)

  _printf_char_common (Thumb, 32 bytes, Stack size 64 bytes, _printf_char_common.o(.text))
  [Stack]

  - Max Depth = 96 + Unknown Stack Size
  - Call Chain = _printf_char_common ⇒ __printf
  [Calls]
  - >> __printf
  [Called By]
  - >> __2sprintf

  _sputc (Thumb, 10 bytes, Stack size 0 bytes, _sputc.o(.text))
  [Called By]

  - >> __2sprintf
  [Address Reference Count : 1]
  - noretval__2sprintf.o(.text)

  _strtoul (Thumb, 166 bytes, Stack size 40 bytes, _strtoul.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = _strtoul
  [Calls]
  - >> _chval
  - >> __aeabi_errno_addr
  [Called By]
  - >> strtol

  _memset_w (Thumb, 26 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
  [Called By]

  - >> __rt_memclr_w
  - >> _memset

  _memset (Thumb, 30 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
  [Calls]

  - >> _memset_w
  [Called By]
  - >> __aeabi_memclr

  __aeabi_memclr (Thumb, 4 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
  [Calls]

  - >> _memset

  __rt_memclr (Thumb, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text))
  [Called By]

  - >> strncpy

  __aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)

  __aeabi_memclr8 (Thumb, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)

  __rt_memclr_w (Thumb, 4 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
  [Calls]

  - >> _memset_w

  __rt_udiv10 (Thumb, 40 bytes, Stack size 0 bytes, rtudiv10.o(.text))
  [Called By]

  - >> _printf_fp_dec_real
  - >> _printf_int_dec

  __user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

  __user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
  [Called By]

  - >> __user_setup_stackheap

  __user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

  __rt_locale (Thumb, 8 bytes, Stack size 0 bytes, rt_locale_intlibspace.o(.text))
  [Called By]

  - >> _printf_fp_dec_real
  - >> __rt_ctype_table
  - >> __rt_lib_init_lc_common

  _ll_udiv10 (Thumb, 122 bytes, Stack size 16 bytes, lludiv10.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = _ll_udiv10
  [Called By]
  - >> _fp_digits

  _printf_fp_infnan (Thumb, 120 bytes, Stack size 24 bytes, _printf_fp_infnan.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = _printf_fp_infnan ⇒ _printf_post_padding
  [Calls]
  - >> _printf_post_padding
  - >> _printf_pre_padding
  [Called By]
  - >> _printf_fp_dec_real

  _chval (Thumb, 30 bytes, Stack size 0 bytes, _chval.o(.text))
  [Called By]

  - >> _strtoul

  _btod_etento (Thumb, 200 bytes, Stack size 72 bytes, bigflt0.o(.text))
  [Stack]

  - Max Depth = 176
  - Call Chain = _btod_etento ⇒ _btod_emul ⇒ btod_internal_mul ⇒ __ARM_common_ll_muluu
  [Calls]
  - >> _btod_ediv
  - >> _btod_emul
  - >> __aeabi_idivmod
  [Called By]
  - >> _fp_digits

  _btod_d2e (Thumb, 64 bytes, Stack size 8 bytes, btod.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = _btod_d2e
  [Called By]
  - >> _fp_digits

  _btod_emul (Thumb, 24 bytes, Stack size 24 bytes, btod.o(.text))
  [Stack]

  - Max Depth = 104
  - Call Chain = _btod_emul ⇒ btod_internal_mul ⇒ __ARM_common_ll_muluu
  [Calls]
  - >> btod_internal_mul
  [Called By]
  - >> _btod_etento
  - >> _fp_digits

  _btod_emuld (Thumb, 60 bytes, Stack size 24 bytes, btod.o(.text), UNUSED)
  [Calls]

  - >> btod_internal_mul

  _btod_ediv (Thumb, 22 bytes, Stack size 24 bytes, btod.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = _btod_ediv ⇒ btod_internal_div
  [Calls]
  - >> btod_internal_div
  [Called By]
  - >> _btod_etento
  - >> _fp_digits

  _btod_edivd (Thumb, 60 bytes, Stack size 24 bytes, btod.o(.text), UNUSED)
  [Calls]

  - >> btod_internal_div

  __user_setup_stackheap (Thumb, 62 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = __user_setup_stackheap
  [Calls]
  - >> __user_perproc_libspace
  - >> __user_initial_stackheap
  [Called By]
  - >> __rt_entry_sh

  exit (Thumb, 12 bytes, Stack size 0 bytes, exit.o(.text))
  [Calls]

  - >> _call_atexit_fns (Weak Reference)
  - >> __rt_exit
  [Called By]
  - >> __rt_entry_main

  strcmp (Thumb, 132 bytes, Stack size 16 bytes, strcmp.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = strcmp
  [Called By]
  - >> _get_lc_numeric
  - >> _get_lc_ctype

  _sys_exit (Thumb, 8 bytes, Stack size 0 bytes, sys_exit.o(.text))
  [Called By]

  - >> __rt_exit_exit

  __I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

  __use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

  __decompress (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)

  __decompress1 (Thumb, 86 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)

  __semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED)

  __ARM_common_ll_muluu (Thumb, 48 bytes, Stack size 24 bytes, btod.o(i.__ARM_common_ll_muluu))
  [Stack]

  - Max Depth = 24
  - Call Chain = __ARM_common_ll_muluu
  [Called By]
  - >> btod_internal_mul

  __ARM_common_switch8 (Thumb, 28 bytes, Stack size 8 bytes, drvgpio.o(i.__ARM_common_switch8))
  [Stack]

  - Max Depth = 8
  - Call Chain = __ARM_common_switch8
  [Called By]
  - >> DrvSYS_GetChipClockSourceStatus
  - >> DrvSYS_SelectIPClockSource
  - >> DrvGPIO_InitFunction

  __ARM_fpclassify (Thumb, 38 bytes, Stack size 0 bytes, fpclassify.o(i.__ARM_fpclassify))
  [Called By]

  - >> _printf_fp_dec_real

  _is_digit (Thumb, 14 bytes, Stack size 0 bytes, __printf_wp.o(i._is_digit))
  [Called By]

  - >> __printf

  _get_lc_ctype (Thumb, 44 bytes, Stack size 8 bytes, lc_ctype_c.o(locale$$code))
  [Stack]

  - Max Depth = 24
  - Call Chain = _get_lc_ctype ⇒ strcmp
  [Calls]
  - >> strcmp
  [Called By]
  - >> __rt_lib_init_lc_ctype_2
  [Address Reference Count : 1]
  - rt_ctype_table.o(.text)

  _get_lc_numeric (Thumb, 44 bytes, Stack size 8 bytes, lc_numeric_c.o(locale$$code))
  [Stack]

  - Max Depth = 24
  - Call Chain = _get_lc_numeric ⇒ strcmp
  [Calls]
  - >> strcmp
  [Called By]
  - >> __rt_lib_init_lc_numeric_2

  _printf_fp_dec (Thumb, 16 bytes, Stack size 8 bytes, printf1.o(x$fpl$printf1))
  [Stack]

  - Max Depth = 8
  - Call Chain = _printf_fp_dec
  [Called By]
  - >> _printf_f

  __I$use$fp (Thumb, 0 bytes, Stack size unknown bytes, usenofp.o(x$fpl$usenofp), UNUSED)

  ### Local Symbols

  Default_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_nuc1xx.o(.text))
  [Calls]

  - >> Default_Handler
  [Called By]
  - >> Default_Handler
  [Address Reference Count : 1]
  - startup_nuc1xx.o(RESET)

  NVIC_SetPriority (Thumb, 110 bytes, Stack size 8 bytes, drvgpio.o(.text), UNUSED)
  [Called By]

  - >> DrvGPIO_EnableEINT1
  - >> DrvGPIO_EnableEINT0
  - >> DrvGPIO_EnableInt

  NVIC_EnableIRQ (Thumb, 14 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)
  [Called By]

  - >> DrvGPIO_EnableEINT1
  - >> DrvGPIO_EnableEINT0
  - >> DrvGPIO_EnableInt

  NVIC_DisableIRQ (Thumb, 16 bytes, Stack size 0 bytes, drvgpio.o(.text), UNUSED)
  [Called By]

  - >> DrvGPIO_DisableEINT1
  - >> DrvGPIO_DisableEINT0
  - >> DrvGPIO_DisableInt

  NVIC_SetPriority (Thumb, 110 bytes, Stack size 8 bytes, drvsys.o(.text), UNUSED)
  [Called By]

  - >> DrvSYS_SetPowerDownWakeUpInt
  - >> DrvSYS_SetBODFunction

  NVIC_EnableIRQ (Thumb, 14 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)
  [Called By]

  - >> DrvSYS_SetPowerDownWakeUpInt
  - >> DrvSYS_SetBODFunction

  NVIC_DisableIRQ (Thumb, 16 bytes, Stack size 0 bytes, drvsys.o(.text), UNUSED)
  [Called By]

  - >> DrvSYS_SetPowerDownWakeUpInt
  - >> DrvSYS_SetBODFunction

  BaudRateCalculator (Thumb, 204 bytes, Stack size 40 bytes, drvuart.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = BaudRateCalculator
  [Calls]
  - >> __aeabi_uidivmod
  [Called By]
  - >> DrvUART_Open

  GetUartClk (Thumb, 62 bytes, Stack size 16 bytes, drvuart.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = GetUartClk ⇒ DrvSYS_GetPLLClockFreq
  [Calls]
  - >> __aeabi_uidivmod
  - >> DrvSYS_GetPLLClockFreq
  - >> DrvSYS_GetExtClockFreq
  [Called By]
  - >> DrvUART_Open

  NVIC_EnableIRQ (Thumb, 14 bytes, Stack size 0 bytes, drvuart.o(.text), UNUSED)
  [Called By]

  - >> DrvUART_EnableInt

  NVIC_DisableIRQ (Thumb, 16 bytes, Stack size 0 bytes, drvuart.o(.text), UNUSED)
  [Called By]

  - >> DrvUART_DisableInt
  - >> DrvUART_Close

  _fp_digits (Thumb, 412 bytes, Stack size 96 bytes, _printf_fp_dec.o(.text))
  [Stack]

  - Max Depth = 272
  - Call Chain = _fp_digits ⇒ _btod_etento ⇒ _btod_emul ⇒ btod_internal_mul ⇒ __ARM_common_ll_muluu
  [Calls]
  - >> _btod_ediv
  - >> _btod_emul
  - >> _btod_d2e
  - >> _btod_etento
  - >> _ll_udiv10
  [Called By]
  - >> _printf_fp_dec_real

  _printf_input_char (Thumb, 10 bytes, Stack size 0 bytes, _printf_char_common.o(.text))
  [Address Reference Count : 1]

  - _printf_char_common.o(.text)

  btod_internal_mul (Thumb, 456 bytes, Stack size 56 bytes, btod.o(.text))
  [Stack]

  - Max Depth = 80
  - Call Chain = btod_internal_mul ⇒ __ARM_common_ll_muluu
  [Calls]
  - >> __ARM_common_ll_muluu
  [Called By]
  - >> _btod_emuld
  - >> _btod_emul

  btod_internal_div (Thumb, 494 bytes, Stack size 64 bytes, btod.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = btod_internal_div
  [Called By]
  - >> _btod_edivd
  - >> _btod_ediv

  ### Undefined Global Symbols

  _call_atexit_fns (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
  [Called By]

  - >> exit

  _printf_truncate_signed (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
  [Called By]

  - >> _printf_int_dec

  _printf_truncate_unsigned (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
  [Called By]

  - >> _printf_int_dec