comparison packages/hal/sh/arch/current/src/vectors.S @ 139:79d72068f491 ecos-sw-2000-11-24

Merge from eCos master repository on 2000-11-24-16:52:55-GMT
author jlarmour
date Fri, 24 Nov 2000 17:42:47 +0000
parents 289bf90c6a9b
children 2e9a636d9de9
comparison
equal deleted inserted replaced
138:289bf90c6a9b 139:79d72068f491
91 # Note: this is the unmapped, shadow address of the start of code 91 # Note: this is the unmapped, shadow address of the start of code
92 # Sadly, it is too far to just branch to. 92 # Sadly, it is too far to just branch to.
93 .align 2 93 .align 2
94 $_reset_platform: 94 $_reset_platform:
95 #ifdef CYG_HAL_STARTUP_RAM 95 #ifdef CYG_HAL_STARTUP_RAM
96 .long CYG_LABEL_NAME(_reset_platform) 96 .long CYG_LABEL_DEFN(_reset_platform)
97 #else 97 #else
98 // Uncached "shadow" address 98 // Uncached "shadow" address
99 .long CYG_LABEL_NAME(_reset_platform)+0x20000000 99 .long CYG_LABEL_DEFN(_reset_platform)+0x20000000
100 #endif 100 #endif
101 101
102 #--------------------------------------------------------------------------- 102 #---------------------------------------------------------------------------
103 # Exception entry 103 # Exception entry
104 104
279 jmp @r1 279 jmp @r1
280 nop 280 nop
281 281
282 .align 2 282 .align 2
283 $hal_vsr_table_int: 283 $hal_vsr_table_int:
284 .long CYG_LABEL_NAME(hal_vsr_table)+CYGNUM_HAL_VECTOR_INTERRUPT*4 284 .long CYG_LABEL_DEFN(hal_vsr_table)+CYGNUM_HAL_VECTOR_INTERRUPT*4
285 285
286 #--------------------------------------------------------------------------- 286 #---------------------------------------------------------------------------
287 # Common interrupt handling code. 287 # Common interrupt handling code.
288 288
289 FUNC_START(cyg_hal_default_interrupt_vsr) 289 FUNC_START(cyg_hal_default_interrupt_vsr)
612 #endif // CYGSEM_HAL_COMMON_INTERRUPTS_ALLOW_NESTING 612 #endif // CYGSEM_HAL_COMMON_INTERRUPTS_ALLOW_NESTING
613 613
614 614
615 #ifdef CYGFUN_HAL_COMMON_KERNEL_SUPPORT 615 #ifdef CYGFUN_HAL_COMMON_KERNEL_SUPPORT
616 SYM_PTR_REF(cyg_interrupt_call_pending_DSRs) 616 SYM_PTR_REF(cyg_interrupt_call_pending_DSRs)
617 SYM_PTR_REF(cyg_scheduler_sched_lock)
618 SYM_PTR_REF(interrupt_end) 617 SYM_PTR_REF(interrupt_end)
618 # cyg_scheduler_sched_lock is special as it is defined as an asm alias
619
620 .globl cyg_scheduler_sched_lock
621 $cyg_scheduler_sched_lock: .long cyg_scheduler_sched_lock
622
619 #endif 623 #endif
620 624
621 #--------------------------------------------------------------------------- 625 #---------------------------------------------------------------------------
622 # Platform initialization (reset) 626 # Platform initialization (reset)
623 FUNC_START(_reset_platform) 627 FUNC_START(_reset_platform)
702 SYM_PTR_REF(complete_setup) 706 SYM_PTR_REF(complete_setup)
703 707
704 #else 708 #else
705 709
706 # Jump to remaining setup code. Relative branch is OK since VMA=LMA. 710 # Jump to remaining setup code. Relative branch is OK since VMA=LMA.
707 bra CYG_LABEL_NAME(complete_setup) 711 bra CYG_LABEL_DEFN(complete_setup)
708 nop 712 nop
709 713
710 #endif 714 #endif
711 715
712 #----------------------------------------------------------------------------- 716 #-----------------------------------------------------------------------------
804 # These tables contain the isr, data and object pointers used to deliver 808 # These tables contain the isr, data and object pointers used to deliver
805 # interrupts to user code. 809 # interrupts to user code.
806 810
807 .data 811 .data
808 812
809 .extern CYG_LABEL_NAME(hal_default_isr) 813 .extern CYG_LABEL_DEFN(hal_default_isr)
810 #ifdef CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN 814 #ifdef CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN
811 #define CYG_ISR_TABLE_SIZE 1 815 #define CYG_ISR_TABLE_SIZE 1
812 #else 816 #else
813 #define CYG_ISR_TABLE_SIZE CYGNUM_HAL_ISR_COUNT 817 #define CYG_ISR_TABLE_SIZE CYGNUM_HAL_ISR_COUNT
814 #endif 818 #endif
815 819
816 SYM_DEF(hal_interrupt_handlers) 820 SYM_DEF(hal_interrupt_handlers)
817 .rept CYG_ISR_TABLE_SIZE 821 .rept CYG_ISR_TABLE_SIZE
818 .long CYG_LABEL_NAME(hal_default_isr) 822 .long CYG_LABEL_DEFN(hal_default_isr)
819 .endr 823 .endr
820 824
821 SYM_DEF(hal_interrupt_data) 825 SYM_DEF(hal_interrupt_data)
822 .rept CYG_ISR_TABLE_SIZE 826 .rept CYG_ISR_TABLE_SIZE
823 .long 0 827 .long 0