~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/sh/kernel/cpu/sh2a/ex.S

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0
  2  *
  3  * arch/sh/kernel/cpu/sh2a/ex.S
  4  *
  5  * The SH-2A exception vector table
  6  *
  7  * Copyright (C) 2008 Yoshinori Sato
  8  */
  9 
 10 #include <linux/linkage.h>
 11 
 12 !
 13 ! convert Exception Vector to Exception Number
 14 !
 15 
 16 ! exception no 0 to 255
 17 exception_entry0:
 18 no      =       0
 19         .rept   256
 20         mov.l   r1,@-sp
 21         bra     exception_trampoline0
 22         mov     #no,r1
 23 no      =       no + 1
 24         .endr
 25 exception_trampoline0:
 26         mov.l   r0,@-sp
 27         mov.l   1f,r0
 28         extu.b  r1,r1
 29         jmp     @r0
 30           extu.w        r1,r1
 31          
 32         .align  2
 33 1:      .long   exception_handler
 34 
 35 ! exception no 256 to 511
 36 exception_entry1:
 37 no      =       0
 38         .rept   256
 39         mov.l   r1,@-sp
 40         bra     exception_trampoline1
 41         mov     #no,r1
 42 no      =       no + 1
 43         .endr
 44 exception_trampoline1:
 45         mov.l   r0,@-sp
 46         extu.b  r1,r1
 47         movi20  #0x100,r0
 48         add     r0,r1
 49         mov.l   1f,r0
 50         jmp     @r0
 51           extu.w        r1,r1
 52         
 53         .align  2
 54 1:      .long   exception_handler
 55 
 56         !
 57 ! Exception Vector Base
 58 !
 59         .align  2
 60 ENTRY(vbr_base)
 61 vector  =       0
 62         .rept   256
 63         .long   exception_entry0 + vector * 6
 64 vector  =       vector + 1
 65         .endr
 66 vector  =       0
 67         .rept   256
 68         .long   exception_entry1 + vector * 6
 69 vector  =       vector + 1
 70         .endr

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php