Static Call Graph for image .\obj\CAN_Ex1.axf



#<CALLGRAPH># ARM Linker, 4.1 [Build 644]: Last Updated: Mon Apr 11 10:35:25 2011

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

Call chain for Maximum Stack Depth:

task_send_CAN ⇒ CAN_send ⇒ CAN_push ⇒ os_mbx_wait ⇒ os_dispatch ⇒ os_put_prio

Functions with no stack information

Mutually Recursive functions

  • os_idle_demon   ⇒   os_idle_demon
  • task_disp   ⇒   task_disp
  • delay   ⇒   delay
  • os_error   ⇒   os_error
  • Undef_Handler   ⇒   Undef_Handler
  • PAbt_Handler   ⇒   PAbt_Handler
  • DAbt_Handler   ⇒   DAbt_Handler
  • IRQ_Handler   ⇒   IRQ_Handler
  • FIQ_Handler   ⇒   FIQ_Handler

    Function Pointers

    Global Symbols

    Reset_Handler (ARM, 0 bytes, Stack size unknown bytes, lpc2300.o(RESET))
    [Address Reference Count : 1]

    __main (ARM, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))

    _main_stk (ARM, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))

    _main_scatterload (ARM, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

    [Calls]

    __main_after_scatterload (ARM, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

    [Called By]

    _main_init (ARM, 0 bytes, Stack size unknown bytes, entry7.o(.ARM.Collect$$$$00000007))

    _inc_qi (Thumb, 60 bytes, Stack size 0 bytes, hal_arm.o(.emb_text))

    [Called By]

    _dec_qc (Thumb, 32 bytes, Stack size 0 bytes, hal_arm.o(.emb_text))

    [Called By]

    os_set_env (Thumb, 8 bytes, Stack size 0 bytes, hal_arm.o(.emb_text))

    [Called By]

    os_sys_init0 (Thumb, 12 bytes, Stack size 0 bytes, hal_arm.o(.emb_text))

    [Called By]

    os_sys_run (Thumb, 16 bytes, Stack size 0 bytes, hal_arm.o(.emb_text))

    [Called By]

    os_clock_interrupt (ARM, 128 bytes, Stack size 0 bytes, hal_arm.o(.emb_text))
    [Address Reference Count : 1]

    os_sys_manager_ret (Thumb, 0 bytes, Stack size unknown bytes, hal_arm.o(.emb_text))

    [Called By]

    SWI_Handler (ARM, 192 bytes, Stack size 0 bytes, hal_arm.o(.emb_text))
    [Address Reference Count : 1]

    os_switch_tasks_ret (Thumb, 0 bytes, Stack size unknown bytes, hal_arm.o(.emb_text))

    [Called By]

    os_idle_demon (Thumb, 2 bytes, Stack size 0 bytes, rtx_config.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    os_tmr_call (Thumb, 2 bytes, Stack size 0 bytes, rtx_config.o(.text))

    [Called By]

    os_error (Thumb, 2 bytes, Stack size 0 bytes, rtx_config.o(.text))

    [Calls]


    [Called By]

    os_tmr_init (Thumb, 32 bytes, Stack size 0 bytes, rtx_config.o(.text))

    [Called By]

    os_tmr_force_irq (Thumb, 8 bytes, Stack size 0 bytes, rtx_config.o(.text))

    [Called By]

    os_tmr_inspect_cnt (Thumb, 6 bytes, Stack size 0 bytes, rtx_config.o(.text))

    [Called By]

    os_tmr_inspect_ovf (Thumb, 10 bytes, Stack size 0 bytes, rtx_config.o(.text))

    [Called By]

    os_irq_ack_lock (Thumb, 22 bytes, Stack size 0 bytes, rtx_config.o(.text))
    [Address Reference Count : 1]

    __SWI_5 (Thumb, 8 bytes, Stack size 0 bytes, rtx_config.o(.text))
    [Address Reference Count : 1]

    tsk_unlock (Thumb, 8 bytes, Stack size 0 bytes, rtx_config.o(.text))

    [Called By]


    [Address Reference Count : 1]

    CAN_init (Thumb, 102 bytes, Stack size 16 bytes, rtx_can.o(.text))

    [Stack]


    [Calls]
    [Called By]

    CAN_start (Thumb, 12 bytes, Stack size 8 bytes, rtx_can.o(.text))

    [Stack]


    [Calls]
    [Called By]

    CAN_send (Thumb, 6 bytes, Stack size 0 bytes, rtx_can.o(.text))

    [Stack]


    [Calls]
    [Called By]

    CAN_request (Thumb, 6 bytes, Stack size 0 bytes, rtx_can.o(.text), UNUSED)

    [Calls]

    CAN_set (Thumb, 72 bytes, Stack size 32 bytes, rtx_can.o(.text), UNUSED)

    [Calls]

    CAN_receive (Thumb, 58 bytes, Stack size 16 bytes, rtx_can.o(.text))

    [Stack]


    [Calls]
    [Called By]

    CAN_rx_object (Thumb, 8 bytes, Stack size 8 bytes, rtx_can.o(.text))

    [Stack]


    [Calls]
    [Called By]

    CAN_tx_object (Thumb, 8 bytes, Stack size 8 bytes, rtx_can.o(.text), UNUSED)

    [Calls]

    CAN_hw_wr (Thumb, 70 bytes, Stack size 0 bytes, can_lpc23xx.o(.text))

    [Called By]

    CAN_hw_setup (Thumb, 98 bytes, Stack size 16 bytes, can_lpc23xx.o(.text))

    [Stack]


    [Called By]

    CAN_hw_init (Thumb, 60 bytes, Stack size 16 bytes, can_lpc23xx.o(.text))

    [Stack]


    [Calls]
    [Called By]

    CAN_hw_start (Thumb, 16 bytes, Stack size 0 bytes, can_lpc23xx.o(.text))

    [Called By]

    CAN_hw_tx_empty (Thumb, 50 bytes, Stack size 16 bytes, can_lpc23xx.o(.text))

    [Stack]


    [Calls]
    [Called By]

    CAN_hw_set (Thumb, 4 bytes, Stack size 0 bytes, can_lpc23xx.o(.text), UNUSED)

    [Called By]

    CAN_hw_rx_object (Thumb, 442 bytes, Stack size 24 bytes, can_lpc23xx.o(.text))

    [Stack]


    [Called By]

    CAN_hw_tx_object (Thumb, 4 bytes, Stack size 0 bytes, can_lpc23xx.o(.text), UNUSED)

    [Called By]

    Hex_Str (Thumb, 26 bytes, Stack size 0 bytes, can_ex1.o(.text))

    [Called By]

    In_Init (Thumb, 26 bytes, Stack size 0 bytes, can_ex1.o(.text))

    [Called By]

    In_Get (Thumb, 30 bytes, Stack size 0 bytes, can_ex1.o(.text))

    [Called By]

    Out_Init (Thumb, 70 bytes, Stack size 8 bytes, can_ex1.o(.text))

    [Stack]


    [Calls]
    [Called By]

    Out_Val (Thumb, 60 bytes, Stack size 8 bytes, can_ex1.o(.text))

    [Stack]


    [Calls]
    [Called By]

    task_disp (Thumb, 12 bytes, Stack size 0 bytes, can_ex1.o(.text))

    [Stack]


    [Calls]
    [Called By]
    [Address Reference Count : 1]

    task_rece_CAN (Thumb, 28 bytes, Stack size 16 bytes, can_ex1.o(.text))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    task_send_CAN (Thumb, 92 bytes, Stack size 16 bytes, can_ex1.o(.text))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    task_init (Thumb, 42 bytes, Stack size 0 bytes, can_ex1.o(.text))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    main (Thumb, 24 bytes, Stack size 8 bytes, can_ex1.o(.text))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    lcd_write_4bit (Thumb, 48 bytes, Stack size 16 bytes, lcd_4bit.o(.text))

    [Stack]


    [Calls]
    [Called By]

    lcd_write_cmd (Thumb, 34 bytes, Stack size 8 bytes, lcd_4bit.o(.text))

    [Stack]


    [Calls]
    [Called By]

    lcd_putchar (Thumb, 30 bytes, Stack size 8 bytes, lcd_4bit.o(.text))

    [Stack]


    [Calls]
    [Called By]

    lcd_init (Thumb, 112 bytes, Stack size 16 bytes, lcd_4bit.o(.text))

    [Stack]


    [Calls]
    [Called By]

    set_cursor (Thumb, 18 bytes, Stack size 0 bytes, lcd_4bit.o(.text))

    [Stack]


    [Calls]
    [Called By]

    lcd_clear (Thumb, 18 bytes, Stack size 8 bytes, lcd_4bit.o(.text))

    [Stack]


    [Calls]
    [Called By]

    lcd_print (Thumb, 20 bytes, Stack size 8 bytes, lcd_4bit.o(.text))

    [Stack]


    [Calls]
    [Called By]

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

    __aeabi_uidivmod (Thumb, 46 bytes, Stack size 8 bytes, uidiv.o(.text))

    [Stack]


    [Called By]

    __scatterload (Thumb, 24 bytes, Stack size 0 bytes, init.o(.text))

    [Calls]


    [Called By]

    __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)

    __ARM_common_call_via_r3 (Thumb, 2 bytes, Stack size 0 bytes, init.o(i.__ARM_common_call_via_r3))

    [Called By]

    __SWI_0 (Thumb, 44 bytes, Stack size 0 bytes, hal_arm.o(i.__SWI_0))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    __SWI_1 (Thumb, 14 bytes, Stack size 0 bytes, rt_membox.o(i.__SWI_1))
    [Address Reference Count : 1]

    __SWI_2 (Thumb, 24 bytes, Stack size 0 bytes, rt_membox.o(i.__SWI_2))
    [Address Reference Count : 1]

    __SWI_3 (Thumb, 8 bytes, Stack size 0 bytes, hal_arm.o(i.__SWI_3))
    [Address Reference Count : 1]

    __SWI_4 (Thumb, 8 bytes, Stack size 0 bytes, hal_arm.o(i.__SWI_4))
    [Address Reference Count : 1]

    __SWI_6 (Thumb, 2 bytes, Stack size 0 bytes, hal_arm.o(i.__SWI_6))
    [Address Reference Count : 1]

    __SWI_7 (Thumb, 2 bytes, Stack size 0 bytes, hal_arm.o(i.__SWI_7))
    [Address Reference Count : 1]

    __scatterload_copy (ARM, 28 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)

    __scatterload_null (ARM, 4 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)

    __scatterload_zeroinit (ARM, 24 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)

    _init_box (Thumb, 74 bytes, Stack size 4 bytes, rt_membox.o(i._init_box))

    [Stack]


    [Called By]

    isr_mbx_receive (Thumb, 76 bytes, Stack size 8 bytes, rt_mailbox.o(i.isr_mbx_receive))

    [Stack]


    [Calls]
    [Called By]

    isr_mbx_send (Thumb, 16 bytes, Stack size 8 bytes, rt_mailbox.o(i.isr_mbx_send))

    [Stack]


    [Calls]
    [Called By]

    isr_sem_send (Thumb, 18 bytes, Stack size 8 bytes, rt_semaphore.o(i.isr_sem_send))

    [Stack]


    [Calls]
    [Called By]

    os_block (Thumb, 58 bytes, Stack size 16 bytes, rt_task.o(i.os_block))

    [Stack]


    [Calls]
    [Called By]

    os_chk_robin (Thumb, 56 bytes, Stack size 8 bytes, rt_robin.o(i.os_chk_robin))

    [Stack]


    [Calls]
    [Called By]

    os_dec_dly (Thumb, 116 bytes, Stack size 16 bytes, rt_list.o(i.os_dec_dly))

    [Stack]


    [Calls]
    [Called By]

    os_dispatch (Thumb, 60 bytes, Stack size 16 bytes, rt_task.o(i.os_dispatch))

    [Stack]


    [Calls]
    [Called By]

    os_dly_wait (Thumb, 24 bytes, Stack size 8 bytes, rt_time.o(i.os_dly_wait))

    [Stack]


    [Calls]
    [Called By]

    os_evt_psh (Thumb, 74 bytes, Stack size 8 bytes, rt_event.o(i.os_evt_psh))

    [Stack]


    [Calls]
    [Called By]

    os_get_first (Thumb, 42 bytes, Stack size 0 bytes, rt_list.o(i.os_get_first))

    [Called By]

    os_init_robin (Thumb, 16 bytes, Stack size 0 bytes, rt_robin.o(i.os_init_robin))

    [Called By]

    os_init_stack (Thumb, 86 bytes, Stack size 8 bytes, hal_arm.o(i.os_init_stack))

    [Stack]


    [Called By]

    os_mbx_check (Thumb, 8 bytes, Stack size 0 bytes, rt_mailbox.o(i.os_mbx_check))

    [Called By]

    os_mbx_init (Thumb, 44 bytes, Stack size 16 bytes, rt_mailbox.o(i.os_mbx_init))

    [Stack]


    [Calls]
    [Called By]

    os_mbx_psh (Thumb, 132 bytes, Stack size 16 bytes, rt_mailbox.o(i.os_mbx_psh))

    [Stack]


    [Calls]
    [Called By]

    os_mbx_send (Thumb, 158 bytes, Stack size 32 bytes, rt_mailbox.o(i.os_mbx_send))

    [Stack]


    [Calls]
    [Called By]

    os_mbx_wait (Thumb, 154 bytes, Stack size 32 bytes, rt_mailbox.o(i.os_mbx_wait))

    [Stack]


    [Calls]
    [Called By]

    os_psh_req (Thumb, 46 bytes, Stack size 8 bytes, rt_system.o(i.os_psh_req))

    [Stack]


    [Calls]
    [Called By]

    os_psq_enq (Thumb, 46 bytes, Stack size 16 bytes, rt_list.o(i.os_psq_enq))

    [Stack]


    [Calls]
    [Called By]

    os_put_dly (Thumb, 76 bytes, Stack size 4 bytes, rt_list.o(i.os_put_dly))

    [Stack]


    [Called By]

    os_put_prio (Thumb, 62 bytes, Stack size 8 bytes, rt_list.o(i.os_put_prio))

    [Stack]


    [Called By]

    os_put_rdy_first (Thumb, 14 bytes, Stack size 0 bytes, rt_list.o(i.os_put_rdy_first))

    [Called By]

    os_rmv_dly (Thumb, 44 bytes, Stack size 4 bytes, rt_list.o(i.os_rmv_dly))

    [Stack]


    [Called By]

    os_rmv_list (Thumb, 46 bytes, Stack size 0 bytes, rt_list.o(i.os_rmv_list))

    [Called By]

    os_sem_init (Thumb, 28 bytes, Stack size 16 bytes, rt_semaphore.o(i.os_sem_init))

    [Stack]


    [Calls]
    [Called By]

    os_sem_psh (Thumb, 50 bytes, Stack size 8 bytes, rt_semaphore.o(i.os_sem_psh))

    [Stack]


    [Calls]
    [Called By]

    os_sem_send (Thumb, 58 bytes, Stack size 8 bytes, rt_semaphore.o(i.os_sem_send))

    [Stack]


    [Calls]
    [Called By]

    os_sem_wait (Thumb, 90 bytes, Stack size 16 bytes, rt_semaphore.o(i.os_sem_wait))

    [Stack]


    [Calls]
    [Called By]

    os_stk_check (Thumb, 34 bytes, Stack size 8 bytes, hal_arm.o(i.os_stk_check))

    [Stack]


    [Calls]
    [Called By]

    os_sys_init1 (Thumb, 162 bytes, Stack size 0 bytes, rt_task.o(i.os_sys_init1))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    os_sys_manager (Thumb, 182 bytes, Stack size 0 bytes, rt_system.o(i.os_sys_manager))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    os_tmr_tick (Thumb, 58 bytes, Stack size 16 bytes, rt_timer.o(i.os_tmr_tick))

    [Stack]


    [Calls]
    [Called By]

    os_tsk_create0 (Thumb, 130 bytes, Stack size 40 bytes, rt_task.o(i.os_tsk_create0))

    [Stack]


    [Calls]
    [Called By]
    [Address Reference Count : 1]

    os_tsk_delete (Thumb, 148 bytes, Stack size 16 bytes, rt_task.o(i.os_tsk_delete))

    [Stack]


    [Calls]
    [Called By]

    Local Symbols

    Undef_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    PAbt_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    DAbt_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    IRQ_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    FIQ_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    CAN_push (Thumb, 134 bytes, Stack size 40 bytes, rtx_can.o(.text))

    [Stack]


    [Calls]
    [Called By]

    CAN_ISR (ARM, 372 bytes, Stack size 56 bytes, can_lpc23xx.o(.text))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    CAN_hw_rd (Thumb, 46 bytes, Stack size 0 bytes, can_lpc23xx.o(.text))

    [Called By]

    delay (Thumb, 6 bytes, Stack size 0 bytes, lcd_4bit.o(.text))

    [Calls]


    [Called By]

    wait_while_busy (Thumb, 4 bytes, Stack size 0 bytes, lcd_4bit.o(.text))

    [Called By]

    os_init_context (Thumb, 66 bytes, Stack size 16 bytes, rt_task.o(i.os_init_context))

    [Stack]


    [Calls]
    [Called By]

    Switch_task (ARM, 0 bytes, Stack size unknown bytes, hal_arm.o(.emb_text))
    [Address Reference Count : 1]

    Undefined Global Symbols

    os_tmr_reload (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)

    [Called By]

    rt_init (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)

    [Called By]

    rt_notify (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)

    [Called By]

    rt_post_taskswitch (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)

    [Called By]