1*de398406SYoshinori Sato/* 2*de398406SYoshinori Sato * arch/sh/kernel/cpu/sh2/ex.S 3*de398406SYoshinori Sato * 4*de398406SYoshinori Sato * The SH-2 exception vector table 5*de398406SYoshinori Sato * 6*de398406SYoshinori Sato * Copyright (C) 2005 Yoshinori Sato 7*de398406SYoshinori Sato * 8*de398406SYoshinori Sato * This file is subject to the terms and conditions of the GNU General Public 9*de398406SYoshinori Sato * License. See the file "COPYING" in the main directory of this archive 10*de398406SYoshinori Sato * for more details. 11*de398406SYoshinori Sato */ 12*de398406SYoshinori Sato 13*de398406SYoshinori Sato#include <linux/linkage.h> 14*de398406SYoshinori Sato 15*de398406SYoshinori Sato! 16*de398406SYoshinori Sato! convert Exception Vector to Exception Number 17*de398406SYoshinori Sato! 18*de398406SYoshinori Satoexception_entry: 19*de398406SYoshinori Satono = 0 20*de398406SYoshinori Sato .rept 256 21*de398406SYoshinori Sato mov.l r0,@-sp 22*de398406SYoshinori Sato mov #no,r0 23*de398406SYoshinori Sato bra exception_trampoline 24*de398406SYoshinori Sato and #0xff,r0 25*de398406SYoshinori Satono = no + 1 26*de398406SYoshinori Sato .endr 27*de398406SYoshinori Satoexception_trampoline: 28*de398406SYoshinori Sato mov.l r1,@-sp 29*de398406SYoshinori Sato mov.l $exception_handler,r1 30*de398406SYoshinori Sato jmp @r1 31*de398406SYoshinori Sato 32*de398406SYoshinori Sato .align 2 33*de398406SYoshinori Sato$exception_entry: 34*de398406SYoshinori Sato .long exception_entry 35*de398406SYoshinori Sato$exception_handler: 36*de398406SYoshinori Sato .long exception_handler 37*de398406SYoshinori Sato! 38*de398406SYoshinori Sato! Exception Vector Base 39*de398406SYoshinori Sato! 40*de398406SYoshinori Sato .align 2 41*de398406SYoshinori SatoENTRY(vbr_base) 42*de398406SYoshinori Satovector = 0 43*de398406SYoshinori Sato .rept 256 44*de398406SYoshinori Sato .long exception_entry + vector * 8 45*de398406SYoshinori Satovector = vector + 1 46*de398406SYoshinori Sato .endr 47