root/arch/sh/kernel/cpu/sh2/ex.S

/* [<][>][^][v][top][bottom][index][help] */
   1 /* SPDX-License-Identifier: GPL-2.0
   2  *
   3  * arch/sh/kernel/cpu/sh2/ex.S
   4  *
   5  * The SH-2 exception vector table
   6  *
   7  * Copyright (C) 2005 Yoshinori Sato
   8  */
   9 
  10 #include <linux/linkage.h>
  11 
  12 !
  13 ! convert Exception Vector to Exception Number
  14 !
  15 exception_entry:        
  16 no      =       0
  17         .rept   256
  18         mov.l   r1,@-sp
  19         bra     exception_trampoline
  20         mov     #no,r1
  21 no      =       no + 1
  22         .endr
  23 exception_trampoline:
  24         mov.l   r0,@-sp
  25         mov.l   $exception_handler,r0
  26         extu.b  r1,r1
  27         jmp     @r0
  28           extu.w        r1,r1
  29 
  30         .align  2
  31 $exception_entry:
  32         .long   exception_entry
  33 $exception_handler:
  34         .long   exception_handler
  35 !
  36 ! Exception Vector Base
  37 !
  38         .align  2
  39 ENTRY(vbr_base)
  40 vector  =       0
  41         .rept   256
  42         .long   exception_entry + vector * 6
  43 vector  =       vector + 1
  44         .endr

/* [<][>][^][v][top][bottom][index][help] */