sh2(A) exception handler update
This patch is By sh2 - Remove duplicate code - Reduce stack usage - Cleanup and little optimize By sh2a - Add missing handler(256 to 511) - Use sh2a instructions handler Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
committed by
Paul Mundt
parent
cafd63b007
commit
6e80f5e8c4
@ -18,16 +18,17 @@
|
||||
exception_entry:
|
||||
no = 0
|
||||
.rept 256
|
||||
mov.l r0,@-sp
|
||||
mov #no,r0
|
||||
mov.l r1,@-sp
|
||||
bra exception_trampoline
|
||||
and #0xff,r0
|
||||
mov #no,r1
|
||||
no = no + 1
|
||||
.endr
|
||||
exception_trampoline:
|
||||
mov.l r1,@-sp
|
||||
mov.l $exception_handler,r1
|
||||
jmp @r1
|
||||
mov.l r0,@-sp
|
||||
mov.l $exception_handler,r0
|
||||
extu.b r1,r1
|
||||
jmp @r0
|
||||
extu.w r1,r1
|
||||
|
||||
.align 2
|
||||
$exception_entry:
|
||||
@ -41,6 +42,6 @@ $exception_handler:
|
||||
ENTRY(vbr_base)
|
||||
vector = 0
|
||||
.rept 256
|
||||
.long exception_entry + vector * 8
|
||||
.long exception_entry + vector * 6
|
||||
vector = vector + 1
|
||||
.endr
|
||||
|
Reference in New Issue
Block a user