Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[linux-btrfs-devel.git] / arch / sh / kernel / cpu / sh2 / ex.S
blob85b0bf81fc1d80c304ac01178f80cc68b8082d50
1 /*
2  * arch/sh/kernel/cpu/sh2/ex.S
3  *
4  * The SH-2 exception vector table
5  *
6  * Copyright (C) 2005 Yoshinori Sato
7  *
8  * This file is subject to the terms and conditions of the GNU General Public
9  * License.  See the file "COPYING" in the main directory of this archive
10  * for more details.
11  */
13 #include <linux/linkage.h>
16 ! convert Exception Vector to Exception Number
18 exception_entry:        
19 no      =       0
20         .rept   256
21         mov.l   r1,@-sp
22         bra     exception_trampoline
23         mov     #no,r1
24 no      =       no + 1
25         .endr
26 exception_trampoline:
27         mov.l   r0,@-sp
28         mov.l   $exception_handler,r0
29         extu.b  r1,r1
30         jmp     @r0
31           extu.w        r1,r1
33         .align  2
34 $exception_entry:
35         .long   exception_entry
36 $exception_handler:
37         .long   exception_handler
39 ! Exception Vector Base
41         .align  2
42 ENTRY(vbr_base)
43 vector  =       0
44         .rept   256
45         .long   exception_entry + vector * 6
46 vector  =       vector + 1
47         .endr