ex.S 805 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  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. */
  12. #include <linux/linkage.h>
  13. !
  14. ! convert Exception Vector to Exception Number
  15. !
  16. exception_entry:
  17. no = 0
  18. .rept 256
  19. mov.l r0,@-sp
  20. mov #no,r0
  21. bra exception_trampoline
  22. and #0xff,r0
  23. no = no + 1
  24. .endr
  25. exception_trampoline:
  26. mov.l r1,@-sp
  27. mov.l $exception_handler,r1
  28. jmp @r1
  29. .align 2
  30. $exception_entry:
  31. .long exception_entry
  32. $exception_handler:
  33. .long exception_handler
  34. !
  35. ! Exception Vector Base
  36. !
  37. .align 2
  38. ENTRY(vbr_base)
  39. vector = 0
  40. .rept 256
  41. .long exception_entry + vector * 8
  42. vector = vector + 1
  43. .endr