ttable_32.S 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418
  1. /* The Sparc trap table, bootloader gives us control at _start. */
  2. __HEAD
  3. .globl _start
  4. _start:
  5. .globl _stext
  6. _stext:
  7. .globl trapbase
  8. trapbase:
  9. #ifdef CONFIG_SMP
  10. trapbase_cpu0:
  11. #endif
  12. /* We get control passed to us here at t_zero. */
  13. t_zero: b gokernel; nop; nop; nop;
  14. t_tflt: SRMMU_TFAULT /* Inst. Access Exception */
  15. t_bins: TRAP_ENTRY(0x2, bad_instruction) /* Illegal Instruction */
  16. t_pins: TRAP_ENTRY(0x3, priv_instruction) /* Privileged Instruction */
  17. t_fpd: TRAP_ENTRY(0x4, fpd_trap_handler) /* Floating Point Disabled */
  18. t_wovf: WINDOW_SPILL /* Window Overflow */
  19. t_wunf: WINDOW_FILL /* Window Underflow */
  20. t_mna: TRAP_ENTRY(0x7, mna_handler) /* Memory Address Not Aligned */
  21. t_fpe: TRAP_ENTRY(0x8, fpe_trap_handler) /* Floating Point Exception */
  22. t_dflt: SRMMU_DFAULT /* Data Miss Exception */
  23. t_tio: TRAP_ENTRY(0xa, do_tag_overflow) /* Tagged Instruction Ovrflw */
  24. t_wpt: TRAP_ENTRY(0xb, do_watchpoint) /* Watchpoint Detected */
  25. t_badc: BAD_TRAP(0xc) BAD_TRAP(0xd) BAD_TRAP(0xe) BAD_TRAP(0xf) BAD_TRAP(0x10)
  26. t_irq1: TRAP_ENTRY_INTERRUPT(1) /* IRQ Software/SBUS Level 1 */
  27. t_irq2: TRAP_ENTRY_INTERRUPT(2) /* IRQ SBUS Level 2 */
  28. t_irq3: TRAP_ENTRY_INTERRUPT(3) /* IRQ SCSI/DMA/SBUS Level 3 */
  29. t_irq4: TRAP_ENTRY_INTERRUPT(4) /* IRQ Software Level 4 */
  30. t_irq5: TRAP_ENTRY_INTERRUPT(5) /* IRQ SBUS/Ethernet Level 5 */
  31. t_irq6: TRAP_ENTRY_INTERRUPT(6) /* IRQ Software Level 6 */
  32. t_irq7: TRAP_ENTRY_INTERRUPT(7) /* IRQ Video/SBUS Level 5 */
  33. t_irq8: TRAP_ENTRY_INTERRUPT(8) /* IRQ SBUS Level 6 */
  34. t_irq9: TRAP_ENTRY_INTERRUPT(9) /* IRQ SBUS Level 7 */
  35. t_irq10:TRAP_ENTRY_INTERRUPT(10) /* IRQ Timer #1 (one we use) */
  36. t_irq11:TRAP_ENTRY_INTERRUPT(11) /* IRQ Floppy Intr. */
  37. t_irq12:TRAP_ENTRY_INTERRUPT(12) /* IRQ Zilog serial chip */
  38. t_irq13:TRAP_ENTRY_INTERRUPT(13) /* IRQ Audio Intr. */
  39. t_irq14:TRAP_ENTRY_INTERRUPT(14) /* IRQ Timer #2 */
  40. .globl t_nmi
  41. t_nmi: TRAP_ENTRY(0x1f, linux_trap_ipi15_sun4m)
  42. t_racc: TRAP_ENTRY(0x20, do_reg_access) /* General Register Access Error */
  43. t_iacce:BAD_TRAP(0x21) /* Instr Access Error */
  44. t_bad22:BAD_TRAP(0x22)
  45. BAD_TRAP(0x23)
  46. t_cpdis:TRAP_ENTRY(0x24, do_cp_disabled) /* Co-Processor Disabled */
  47. t_uflsh:SKIP_TRAP(0x25, unimp_flush) /* Unimplemented FLUSH inst. */
  48. t_bad26:BAD_TRAP(0x26) BAD_TRAP(0x27)
  49. t_cpexc:TRAP_ENTRY(0x28, do_cp_exception) /* Co-Processor Exception */
  50. t_dacce:SRMMU_DFAULT /* Data Access Error */
  51. t_hwdz: TRAP_ENTRY(0x2a, do_hw_divzero) /* Division by zero, you lose... */
  52. t_dserr:BAD_TRAP(0x2b) /* Data Store Error */
  53. t_daccm:BAD_TRAP(0x2c) /* Data Access MMU-Miss */
  54. t_bad2d:BAD_TRAP(0x2d) BAD_TRAP(0x2e) BAD_TRAP(0x2f) BAD_TRAP(0x30) BAD_TRAP(0x31)
  55. t_bad32:BAD_TRAP(0x32) BAD_TRAP(0x33) BAD_TRAP(0x34) BAD_TRAP(0x35) BAD_TRAP(0x36)
  56. t_bad37:BAD_TRAP(0x37) BAD_TRAP(0x38) BAD_TRAP(0x39) BAD_TRAP(0x3a) BAD_TRAP(0x3b)
  57. t_iaccm:BAD_TRAP(0x3c) /* Instr Access MMU-Miss */
  58. t_bad3d:BAD_TRAP(0x3d) BAD_TRAP(0x3e) BAD_TRAP(0x3f) BAD_TRAP(0x40) BAD_TRAP(0x41)
  59. t_bad42:BAD_TRAP(0x42) BAD_TRAP(0x43) BAD_TRAP(0x44) BAD_TRAP(0x45) BAD_TRAP(0x46)
  60. t_bad47:BAD_TRAP(0x47) BAD_TRAP(0x48) BAD_TRAP(0x49) BAD_TRAP(0x4a) BAD_TRAP(0x4b)
  61. t_bad4c:BAD_TRAP(0x4c) BAD_TRAP(0x4d) BAD_TRAP(0x4e) BAD_TRAP(0x4f) BAD_TRAP(0x50)
  62. t_bad51:BAD_TRAP(0x51) BAD_TRAP(0x52) BAD_TRAP(0x53) BAD_TRAP(0x54) BAD_TRAP(0x55)
  63. t_bad56:BAD_TRAP(0x56) BAD_TRAP(0x57) BAD_TRAP(0x58) BAD_TRAP(0x59) BAD_TRAP(0x5a)
  64. t_bad5b:BAD_TRAP(0x5b) BAD_TRAP(0x5c) BAD_TRAP(0x5d) BAD_TRAP(0x5e) BAD_TRAP(0x5f)
  65. t_bad60:BAD_TRAP(0x60) BAD_TRAP(0x61) BAD_TRAP(0x62) BAD_TRAP(0x63) BAD_TRAP(0x64)
  66. t_bad65:BAD_TRAP(0x65) BAD_TRAP(0x66) BAD_TRAP(0x67) BAD_TRAP(0x68) BAD_TRAP(0x69)
  67. t_bad6a:BAD_TRAP(0x6a) BAD_TRAP(0x6b) BAD_TRAP(0x6c) BAD_TRAP(0x6d) BAD_TRAP(0x6e)
  68. t_bad6f:BAD_TRAP(0x6f) BAD_TRAP(0x70) BAD_TRAP(0x71) BAD_TRAP(0x72) BAD_TRAP(0x73)
  69. t_bad74:BAD_TRAP(0x74) BAD_TRAP(0x75) BAD_TRAP(0x76) BAD_TRAP(0x77) BAD_TRAP(0x78)
  70. t_bad79:BAD_TRAP(0x79) BAD_TRAP(0x7a) BAD_TRAP(0x7b) BAD_TRAP(0x7c) BAD_TRAP(0x7d)
  71. t_bad7e:BAD_TRAP(0x7e) BAD_TRAP(0x7f)
  72. t_bad80:BAD_TRAP(0x80) /* SunOS System Call */
  73. t_sbkpt:BREAKPOINT_TRAP /* Software Breakpoint/KGDB */
  74. t_divz: TRAP_ENTRY(0x82, do_hw_divzero) /* Divide by zero trap */
  75. t_flwin:TRAP_ENTRY(0x83, do_flush_windows) /* Flush Windows Trap */
  76. t_clwin:BAD_TRAP(0x84) /* Clean Windows Trap */
  77. t_rchk: BAD_TRAP(0x85) /* Range Check */
  78. t_funal:BAD_TRAP(0x86) /* Fix Unaligned Access Trap */
  79. t_iovf: BAD_TRAP(0x87) /* Integer Overflow Trap */
  80. t_bad88:BAD_TRAP(0x88) /* Slowaris System Call */
  81. t_bad89:BAD_TRAP(0x89) /* Net-B.S. System Call */
  82. t_bad8a:BAD_TRAP(0x8a) BAD_TRAP(0x8b) BAD_TRAP(0x8c) BAD_TRAP(0x8d) BAD_TRAP(0x8e)
  83. t_bad8f:BAD_TRAP(0x8f)
  84. t_linux:LINUX_SYSCALL_TRAP /* Linux System Call */
  85. t_bad91:BAD_TRAP(0x91) BAD_TRAP(0x92) BAD_TRAP(0x93) BAD_TRAP(0x94) BAD_TRAP(0x95)
  86. t_bad96:BAD_TRAP(0x96) BAD_TRAP(0x97) BAD_TRAP(0x98) BAD_TRAP(0x99) BAD_TRAP(0x9a)
  87. t_bad9b:BAD_TRAP(0x9b) BAD_TRAP(0x9c) BAD_TRAP(0x9d) BAD_TRAP(0x9e) BAD_TRAP(0x9f)
  88. t_getcc:GETCC_TRAP /* Get Condition Codes */
  89. t_setcc:SETCC_TRAP /* Set Condition Codes */
  90. t_getpsr:GETPSR_TRAP /* Get PSR Register */
  91. t_bada3:BAD_TRAP(0xa3) BAD_TRAP(0xa4) BAD_TRAP(0xa5) BAD_TRAP(0xa6)
  92. t_bada7:BAD_TRAP(0xa7)
  93. t_bada8:BAD_TRAP(0xa8) BAD_TRAP(0xa9) BAD_TRAP(0xaa) BAD_TRAP(0xab)
  94. t_badac:BAD_TRAP(0xac) BAD_TRAP(0xad) BAD_TRAP(0xae) BAD_TRAP(0xaf) BAD_TRAP(0xb0)
  95. t_badb1:BAD_TRAP(0xb1) BAD_TRAP(0xb2) BAD_TRAP(0xb3) BAD_TRAP(0xb4) BAD_TRAP(0xb5)
  96. t_badb6:BAD_TRAP(0xb6) BAD_TRAP(0xb7) BAD_TRAP(0xb8) BAD_TRAP(0xb9) BAD_TRAP(0xba)
  97. t_badbb:BAD_TRAP(0xbb) BAD_TRAP(0xbc) BAD_TRAP(0xbd) BAD_TRAP(0xbe) BAD_TRAP(0xbf)
  98. t_badc0:BAD_TRAP(0xc0) BAD_TRAP(0xc1) BAD_TRAP(0xc2) BAD_TRAP(0xc3) BAD_TRAP(0xc4)
  99. t_badc5:BAD_TRAP(0xc5) BAD_TRAP(0xc6) BAD_TRAP(0xc7) BAD_TRAP(0xc8) BAD_TRAP(0xc9)
  100. t_badca:BAD_TRAP(0xca) BAD_TRAP(0xcb) BAD_TRAP(0xcc) BAD_TRAP(0xcd) BAD_TRAP(0xce)
  101. t_badcf:BAD_TRAP(0xcf) BAD_TRAP(0xd0) BAD_TRAP(0xd1) BAD_TRAP(0xd2) BAD_TRAP(0xd3)
  102. t_badd4:BAD_TRAP(0xd4) BAD_TRAP(0xd5) BAD_TRAP(0xd6) BAD_TRAP(0xd7) BAD_TRAP(0xd8)
  103. t_badd9:BAD_TRAP(0xd9) BAD_TRAP(0xda) BAD_TRAP(0xdb) BAD_TRAP(0xdc) BAD_TRAP(0xdd)
  104. t_badde:BAD_TRAP(0xde) BAD_TRAP(0xdf) BAD_TRAP(0xe0) BAD_TRAP(0xe1) BAD_TRAP(0xe2)
  105. t_bade3:BAD_TRAP(0xe3) BAD_TRAP(0xe4) BAD_TRAP(0xe5) BAD_TRAP(0xe6) BAD_TRAP(0xe7)
  106. t_bade8:BAD_TRAP(0xe8) BAD_TRAP(0xe9) BAD_TRAP(0xea) BAD_TRAP(0xeb) BAD_TRAP(0xec)
  107. t_baded:BAD_TRAP(0xed) BAD_TRAP(0xee) BAD_TRAP(0xef) BAD_TRAP(0xf0) BAD_TRAP(0xf1)
  108. t_badf2:BAD_TRAP(0xf2) BAD_TRAP(0xf3) BAD_TRAP(0xf4) BAD_TRAP(0xf5) BAD_TRAP(0xf6)
  109. t_badf7:BAD_TRAP(0xf7) BAD_TRAP(0xf8) BAD_TRAP(0xf9) BAD_TRAP(0xfa) BAD_TRAP(0xfb)
  110. t_badfc:BAD_TRAP(0xfc)
  111. t_kgdb: KGDB_TRAP(0xfd)
  112. dbtrap: BAD_TRAP(0xfe) /* Debugger/PROM breakpoint #1 */
  113. dbtrap2:BAD_TRAP(0xff) /* Debugger/PROM breakpoint #2 */
  114. .globl end_traptable
  115. end_traptable:
  116. #ifdef CONFIG_SMP
  117. /* Trap tables for the other cpus. */
  118. .globl trapbase_cpu1, trapbase_cpu2, trapbase_cpu3
  119. trapbase_cpu1:
  120. BAD_TRAP(0x0)
  121. SRMMU_TFAULT
  122. TRAP_ENTRY(0x2, bad_instruction)
  123. TRAP_ENTRY(0x3, priv_instruction)
  124. TRAP_ENTRY(0x4, fpd_trap_handler)
  125. WINDOW_SPILL
  126. WINDOW_FILL
  127. TRAP_ENTRY(0x7, mna_handler)
  128. TRAP_ENTRY(0x8, fpe_trap_handler)
  129. SRMMU_DFAULT
  130. TRAP_ENTRY(0xa, do_tag_overflow)
  131. TRAP_ENTRY(0xb, do_watchpoint)
  132. BAD_TRAP(0xc) BAD_TRAP(0xd) BAD_TRAP(0xe) BAD_TRAP(0xf) BAD_TRAP(0x10)
  133. TRAP_ENTRY_INTERRUPT(1) TRAP_ENTRY_INTERRUPT(2)
  134. TRAP_ENTRY_INTERRUPT(3) TRAP_ENTRY_INTERRUPT(4)
  135. TRAP_ENTRY_INTERRUPT(5) TRAP_ENTRY_INTERRUPT(6)
  136. TRAP_ENTRY_INTERRUPT(7) TRAP_ENTRY_INTERRUPT(8)
  137. TRAP_ENTRY_INTERRUPT(9) TRAP_ENTRY_INTERRUPT(10)
  138. TRAP_ENTRY_INTERRUPT(11) TRAP_ENTRY_INTERRUPT(12)
  139. TRAP_ENTRY_INTERRUPT(13) TRAP_ENTRY_INTERRUPT(14)
  140. TRAP_ENTRY(0x1f, linux_trap_ipi15_sun4m)
  141. TRAP_ENTRY(0x20, do_reg_access)
  142. BAD_TRAP(0x21)
  143. BAD_TRAP(0x22)
  144. BAD_TRAP(0x23)
  145. TRAP_ENTRY(0x24, do_cp_disabled)
  146. SKIP_TRAP(0x25, unimp_flush)
  147. BAD_TRAP(0x26)
  148. BAD_TRAP(0x27)
  149. TRAP_ENTRY(0x28, do_cp_exception)
  150. SRMMU_DFAULT
  151. TRAP_ENTRY(0x2a, do_hw_divzero)
  152. BAD_TRAP(0x2b)
  153. BAD_TRAP(0x2c)
  154. BAD_TRAP(0x2d) BAD_TRAP(0x2e) BAD_TRAP(0x2f) BAD_TRAP(0x30) BAD_TRAP(0x31)
  155. BAD_TRAP(0x32) BAD_TRAP(0x33) BAD_TRAP(0x34) BAD_TRAP(0x35) BAD_TRAP(0x36)
  156. BAD_TRAP(0x37) BAD_TRAP(0x38) BAD_TRAP(0x39) BAD_TRAP(0x3a) BAD_TRAP(0x3b)
  157. BAD_TRAP(0x3c) BAD_TRAP(0x3d) BAD_TRAP(0x3e) BAD_TRAP(0x3f) BAD_TRAP(0x40)
  158. BAD_TRAP(0x41) BAD_TRAP(0x42) BAD_TRAP(0x43) BAD_TRAP(0x44) BAD_TRAP(0x45)
  159. BAD_TRAP(0x46) BAD_TRAP(0x47) BAD_TRAP(0x48) BAD_TRAP(0x49) BAD_TRAP(0x4a)
  160. BAD_TRAP(0x4b) BAD_TRAP(0x4c) BAD_TRAP(0x4d) BAD_TRAP(0x4e) BAD_TRAP(0x4f)
  161. BAD_TRAP(0x50)
  162. BAD_TRAP(0x51) BAD_TRAP(0x52) BAD_TRAP(0x53) BAD_TRAP(0x54) BAD_TRAP(0x55)
  163. BAD_TRAP(0x56) BAD_TRAP(0x57) BAD_TRAP(0x58) BAD_TRAP(0x59) BAD_TRAP(0x5a)
  164. BAD_TRAP(0x5b) BAD_TRAP(0x5c) BAD_TRAP(0x5d) BAD_TRAP(0x5e) BAD_TRAP(0x5f)
  165. BAD_TRAP(0x60) BAD_TRAP(0x61) BAD_TRAP(0x62) BAD_TRAP(0x63) BAD_TRAP(0x64)
  166. BAD_TRAP(0x65) BAD_TRAP(0x66) BAD_TRAP(0x67) BAD_TRAP(0x68) BAD_TRAP(0x69)
  167. BAD_TRAP(0x6a) BAD_TRAP(0x6b) BAD_TRAP(0x6c) BAD_TRAP(0x6d) BAD_TRAP(0x6e)
  168. BAD_TRAP(0x6f) BAD_TRAP(0x70) BAD_TRAP(0x71) BAD_TRAP(0x72) BAD_TRAP(0x73)
  169. BAD_TRAP(0x74) BAD_TRAP(0x75) BAD_TRAP(0x76) BAD_TRAP(0x77) BAD_TRAP(0x78)
  170. BAD_TRAP(0x79) BAD_TRAP(0x7a) BAD_TRAP(0x7b) BAD_TRAP(0x7c) BAD_TRAP(0x7d)
  171. BAD_TRAP(0x7e) BAD_TRAP(0x7f)
  172. BAD_TRAP(0x80)
  173. BREAKPOINT_TRAP
  174. TRAP_ENTRY(0x82, do_hw_divzero)
  175. TRAP_ENTRY(0x83, do_flush_windows)
  176. BAD_TRAP(0x84) BAD_TRAP(0x85) BAD_TRAP(0x86)
  177. BAD_TRAP(0x87) BAD_TRAP(0x88) BAD_TRAP(0x89)
  178. BAD_TRAP(0x8a) BAD_TRAP(0x8b) BAD_TRAP(0x8c)
  179. BAD_TRAP(0x8d) BAD_TRAP(0x8e) BAD_TRAP(0x8f)
  180. LINUX_SYSCALL_TRAP BAD_TRAP(0x91)
  181. BAD_TRAP(0x92) BAD_TRAP(0x93) BAD_TRAP(0x94)
  182. BAD_TRAP(0x95) BAD_TRAP(0x96) BAD_TRAP(0x97) BAD_TRAP(0x98) BAD_TRAP(0x99)
  183. BAD_TRAP(0x9a) BAD_TRAP(0x9b) BAD_TRAP(0x9c) BAD_TRAP(0x9d) BAD_TRAP(0x9e)
  184. BAD_TRAP(0x9f)
  185. GETCC_TRAP
  186. SETCC_TRAP
  187. GETPSR_TRAP
  188. BAD_TRAP(0xa3) BAD_TRAP(0xa4) BAD_TRAP(0xa5) BAD_TRAP(0xa6)
  189. BAD_TRAP(0xa7) BAD_TRAP(0xa8) BAD_TRAP(0xa9) BAD_TRAP(0xaa) BAD_TRAP(0xab)
  190. BAD_TRAP(0xac) BAD_TRAP(0xad) BAD_TRAP(0xae) BAD_TRAP(0xaf) BAD_TRAP(0xb0)
  191. BAD_TRAP(0xb1) BAD_TRAP(0xb2) BAD_TRAP(0xb3) BAD_TRAP(0xb4) BAD_TRAP(0xb5)
  192. BAD_TRAP(0xb6) BAD_TRAP(0xb7) BAD_TRAP(0xb8) BAD_TRAP(0xb9) BAD_TRAP(0xba)
  193. BAD_TRAP(0xbb) BAD_TRAP(0xbc) BAD_TRAP(0xbd) BAD_TRAP(0xbe) BAD_TRAP(0xbf)
  194. BAD_TRAP(0xc0) BAD_TRAP(0xc1) BAD_TRAP(0xc2) BAD_TRAP(0xc3) BAD_TRAP(0xc4)
  195. BAD_TRAP(0xc5) BAD_TRAP(0xc6) BAD_TRAP(0xc7) BAD_TRAP(0xc8) BAD_TRAP(0xc9)
  196. BAD_TRAP(0xca) BAD_TRAP(0xcb) BAD_TRAP(0xcc) BAD_TRAP(0xcd) BAD_TRAP(0xce)
  197. BAD_TRAP(0xcf) BAD_TRAP(0xd0) BAD_TRAP(0xd1) BAD_TRAP(0xd2) BAD_TRAP(0xd3)
  198. BAD_TRAP(0xd4) BAD_TRAP(0xd5) BAD_TRAP(0xd6) BAD_TRAP(0xd7) BAD_TRAP(0xd8)
  199. BAD_TRAP(0xd9) BAD_TRAP(0xda) BAD_TRAP(0xdb) BAD_TRAP(0xdc) BAD_TRAP(0xdd)
  200. BAD_TRAP(0xde) BAD_TRAP(0xdf) BAD_TRAP(0xe0) BAD_TRAP(0xe1) BAD_TRAP(0xe2)
  201. BAD_TRAP(0xe3) BAD_TRAP(0xe4) BAD_TRAP(0xe5) BAD_TRAP(0xe6) BAD_TRAP(0xe7)
  202. BAD_TRAP(0xe8) BAD_TRAP(0xe9) BAD_TRAP(0xea) BAD_TRAP(0xeb) BAD_TRAP(0xec)
  203. BAD_TRAP(0xed) BAD_TRAP(0xee) BAD_TRAP(0xef) BAD_TRAP(0xf0) BAD_TRAP(0xf1)
  204. BAD_TRAP(0xf2) BAD_TRAP(0xf3) BAD_TRAP(0xf4) BAD_TRAP(0xf5) BAD_TRAP(0xf6)
  205. BAD_TRAP(0xf7) BAD_TRAP(0xf8) BAD_TRAP(0xf9) BAD_TRAP(0xfa) BAD_TRAP(0xfb)
  206. BAD_TRAP(0xfc)
  207. KGDB_TRAP(0xfd)
  208. BAD_TRAP(0xfe)
  209. BAD_TRAP(0xff)
  210. trapbase_cpu2:
  211. BAD_TRAP(0x0)
  212. SRMMU_TFAULT
  213. TRAP_ENTRY(0x2, bad_instruction)
  214. TRAP_ENTRY(0x3, priv_instruction)
  215. TRAP_ENTRY(0x4, fpd_trap_handler)
  216. WINDOW_SPILL
  217. WINDOW_FILL
  218. TRAP_ENTRY(0x7, mna_handler)
  219. TRAP_ENTRY(0x8, fpe_trap_handler)
  220. SRMMU_DFAULT
  221. TRAP_ENTRY(0xa, do_tag_overflow)
  222. TRAP_ENTRY(0xb, do_watchpoint)
  223. BAD_TRAP(0xc) BAD_TRAP(0xd) BAD_TRAP(0xe) BAD_TRAP(0xf) BAD_TRAP(0x10)
  224. TRAP_ENTRY_INTERRUPT(1)
  225. TRAP_ENTRY_INTERRUPT(2)
  226. TRAP_ENTRY_INTERRUPT(3)
  227. TRAP_ENTRY_INTERRUPT(4)
  228. TRAP_ENTRY_INTERRUPT(5)
  229. TRAP_ENTRY_INTERRUPT(6)
  230. TRAP_ENTRY_INTERRUPT(7)
  231. TRAP_ENTRY_INTERRUPT(8)
  232. TRAP_ENTRY_INTERRUPT(9)
  233. TRAP_ENTRY_INTERRUPT(10)
  234. TRAP_ENTRY_INTERRUPT(11)
  235. TRAP_ENTRY_INTERRUPT(12)
  236. TRAP_ENTRY_INTERRUPT(13)
  237. TRAP_ENTRY_INTERRUPT(14)
  238. TRAP_ENTRY(0x1f, linux_trap_ipi15_sun4m)
  239. TRAP_ENTRY(0x20, do_reg_access)
  240. BAD_TRAP(0x21)
  241. BAD_TRAP(0x22)
  242. BAD_TRAP(0x23)
  243. TRAP_ENTRY(0x24, do_cp_disabled)
  244. SKIP_TRAP(0x25, unimp_flush)
  245. BAD_TRAP(0x26)
  246. BAD_TRAP(0x27)
  247. TRAP_ENTRY(0x28, do_cp_exception)
  248. SRMMU_DFAULT
  249. TRAP_ENTRY(0x2a, do_hw_divzero)
  250. BAD_TRAP(0x2b)
  251. BAD_TRAP(0x2c)
  252. BAD_TRAP(0x2d) BAD_TRAP(0x2e) BAD_TRAP(0x2f) BAD_TRAP(0x30) BAD_TRAP(0x31)
  253. BAD_TRAP(0x32) BAD_TRAP(0x33) BAD_TRAP(0x34) BAD_TRAP(0x35) BAD_TRAP(0x36)
  254. BAD_TRAP(0x37) BAD_TRAP(0x38) BAD_TRAP(0x39) BAD_TRAP(0x3a) BAD_TRAP(0x3b)
  255. BAD_TRAP(0x3c) BAD_TRAP(0x3d) BAD_TRAP(0x3e) BAD_TRAP(0x3f) BAD_TRAP(0x40)
  256. BAD_TRAP(0x41) BAD_TRAP(0x42) BAD_TRAP(0x43) BAD_TRAP(0x44) BAD_TRAP(0x45)
  257. BAD_TRAP(0x46) BAD_TRAP(0x47) BAD_TRAP(0x48) BAD_TRAP(0x49) BAD_TRAP(0x4a)
  258. BAD_TRAP(0x4b) BAD_TRAP(0x4c) BAD_TRAP(0x4d) BAD_TRAP(0x4e) BAD_TRAP(0x4f)
  259. BAD_TRAP(0x50)
  260. BAD_TRAP(0x51) BAD_TRAP(0x52) BAD_TRAP(0x53) BAD_TRAP(0x54) BAD_TRAP(0x55)
  261. BAD_TRAP(0x56) BAD_TRAP(0x57) BAD_TRAP(0x58) BAD_TRAP(0x59) BAD_TRAP(0x5a)
  262. BAD_TRAP(0x5b) BAD_TRAP(0x5c) BAD_TRAP(0x5d) BAD_TRAP(0x5e) BAD_TRAP(0x5f)
  263. BAD_TRAP(0x60) BAD_TRAP(0x61) BAD_TRAP(0x62) BAD_TRAP(0x63) BAD_TRAP(0x64)
  264. BAD_TRAP(0x65) BAD_TRAP(0x66) BAD_TRAP(0x67) BAD_TRAP(0x68) BAD_TRAP(0x69)
  265. BAD_TRAP(0x6a) BAD_TRAP(0x6b) BAD_TRAP(0x6c) BAD_TRAP(0x6d) BAD_TRAP(0x6e)
  266. BAD_TRAP(0x6f) BAD_TRAP(0x70) BAD_TRAP(0x71) BAD_TRAP(0x72) BAD_TRAP(0x73)
  267. BAD_TRAP(0x74) BAD_TRAP(0x75) BAD_TRAP(0x76) BAD_TRAP(0x77) BAD_TRAP(0x78)
  268. BAD_TRAP(0x79) BAD_TRAP(0x7a) BAD_TRAP(0x7b) BAD_TRAP(0x7c) BAD_TRAP(0x7d)
  269. BAD_TRAP(0x7e) BAD_TRAP(0x7f)
  270. BAD_TRAP(0x80)
  271. BREAKPOINT_TRAP
  272. TRAP_ENTRY(0x82, do_hw_divzero)
  273. TRAP_ENTRY(0x83, do_flush_windows)
  274. BAD_TRAP(0x84)
  275. BAD_TRAP(0x85)
  276. BAD_TRAP(0x86) BAD_TRAP(0x87) BAD_TRAP(0x88)
  277. BAD_TRAP(0x89) BAD_TRAP(0x8a) BAD_TRAP(0x8b) BAD_TRAP(0x8c)
  278. BAD_TRAP(0x8d) BAD_TRAP(0x8e) BAD_TRAP(0x8f)
  279. LINUX_SYSCALL_TRAP BAD_TRAP(0x91)
  280. BAD_TRAP(0x92) BAD_TRAP(0x93) BAD_TRAP(0x94)
  281. BAD_TRAP(0x95) BAD_TRAP(0x96) BAD_TRAP(0x97) BAD_TRAP(0x98) BAD_TRAP(0x99)
  282. BAD_TRAP(0x9a) BAD_TRAP(0x9b) BAD_TRAP(0x9c) BAD_TRAP(0x9d) BAD_TRAP(0x9e)
  283. BAD_TRAP(0x9f)
  284. GETCC_TRAP
  285. SETCC_TRAP
  286. GETPSR_TRAP
  287. BAD_TRAP(0xa3) BAD_TRAP(0xa4) BAD_TRAP(0xa5) BAD_TRAP(0xa6)
  288. BAD_TRAP(0xa7) BAD_TRAP(0xa8) BAD_TRAP(0xa9) BAD_TRAP(0xaa) BAD_TRAP(0xab)
  289. BAD_TRAP(0xac) BAD_TRAP(0xad) BAD_TRAP(0xae) BAD_TRAP(0xaf) BAD_TRAP(0xb0)
  290. BAD_TRAP(0xb1) BAD_TRAP(0xb2) BAD_TRAP(0xb3) BAD_TRAP(0xb4) BAD_TRAP(0xb5)
  291. BAD_TRAP(0xb6) BAD_TRAP(0xb7) BAD_TRAP(0xb8) BAD_TRAP(0xb9) BAD_TRAP(0xba)
  292. BAD_TRAP(0xbb) BAD_TRAP(0xbc) BAD_TRAP(0xbd) BAD_TRAP(0xbe) BAD_TRAP(0xbf)
  293. BAD_TRAP(0xc0) BAD_TRAP(0xc1) BAD_TRAP(0xc2) BAD_TRAP(0xc3) BAD_TRAP(0xc4)
  294. BAD_TRAP(0xc5) BAD_TRAP(0xc6) BAD_TRAP(0xc7) BAD_TRAP(0xc8) BAD_TRAP(0xc9)
  295. BAD_TRAP(0xca) BAD_TRAP(0xcb) BAD_TRAP(0xcc) BAD_TRAP(0xcd) BAD_TRAP(0xce)
  296. BAD_TRAP(0xcf) BAD_TRAP(0xd0) BAD_TRAP(0xd1) BAD_TRAP(0xd2) BAD_TRAP(0xd3)
  297. BAD_TRAP(0xd4) BAD_TRAP(0xd5) BAD_TRAP(0xd6) BAD_TRAP(0xd7) BAD_TRAP(0xd8)
  298. BAD_TRAP(0xd9) BAD_TRAP(0xda) BAD_TRAP(0xdb) BAD_TRAP(0xdc) BAD_TRAP(0xdd)
  299. BAD_TRAP(0xde) BAD_TRAP(0xdf) BAD_TRAP(0xe0) BAD_TRAP(0xe1) BAD_TRAP(0xe2)
  300. BAD_TRAP(0xe3) BAD_TRAP(0xe4) BAD_TRAP(0xe5) BAD_TRAP(0xe6) BAD_TRAP(0xe7)
  301. BAD_TRAP(0xe8) BAD_TRAP(0xe9) BAD_TRAP(0xea) BAD_TRAP(0xeb) BAD_TRAP(0xec)
  302. BAD_TRAP(0xed) BAD_TRAP(0xee) BAD_TRAP(0xef) BAD_TRAP(0xf0) BAD_TRAP(0xf1)
  303. BAD_TRAP(0xf2) BAD_TRAP(0xf3) BAD_TRAP(0xf4) BAD_TRAP(0xf5) BAD_TRAP(0xf6)
  304. BAD_TRAP(0xf7) BAD_TRAP(0xf8) BAD_TRAP(0xf9) BAD_TRAP(0xfa) BAD_TRAP(0xfb)
  305. BAD_TRAP(0xfc)
  306. KGDB_TRAP(0xfd)
  307. BAD_TRAP(0xfe)
  308. BAD_TRAP(0xff)
  309. trapbase_cpu3:
  310. BAD_TRAP(0x0)
  311. SRMMU_TFAULT
  312. TRAP_ENTRY(0x2, bad_instruction)
  313. TRAP_ENTRY(0x3, priv_instruction)
  314. TRAP_ENTRY(0x4, fpd_trap_handler)
  315. WINDOW_SPILL
  316. WINDOW_FILL
  317. TRAP_ENTRY(0x7, mna_handler)
  318. TRAP_ENTRY(0x8, fpe_trap_handler)
  319. SRMMU_DFAULT
  320. TRAP_ENTRY(0xa, do_tag_overflow)
  321. TRAP_ENTRY(0xb, do_watchpoint)
  322. BAD_TRAP(0xc) BAD_TRAP(0xd) BAD_TRAP(0xe) BAD_TRAP(0xf) BAD_TRAP(0x10)
  323. TRAP_ENTRY_INTERRUPT(1)
  324. TRAP_ENTRY_INTERRUPT(2)
  325. TRAP_ENTRY_INTERRUPT(3)
  326. TRAP_ENTRY_INTERRUPT(4)
  327. TRAP_ENTRY_INTERRUPT(5)
  328. TRAP_ENTRY_INTERRUPT(6)
  329. TRAP_ENTRY_INTERRUPT(7)
  330. TRAP_ENTRY_INTERRUPT(8)
  331. TRAP_ENTRY_INTERRUPT(9)
  332. TRAP_ENTRY_INTERRUPT(10)
  333. TRAP_ENTRY_INTERRUPT(11)
  334. TRAP_ENTRY_INTERRUPT(12)
  335. TRAP_ENTRY_INTERRUPT(13)
  336. TRAP_ENTRY_INTERRUPT(14)
  337. TRAP_ENTRY(0x1f, linux_trap_ipi15_sun4m)
  338. TRAP_ENTRY(0x20, do_reg_access)
  339. BAD_TRAP(0x21)
  340. BAD_TRAP(0x22)
  341. BAD_TRAP(0x23)
  342. TRAP_ENTRY(0x24, do_cp_disabled)
  343. SKIP_TRAP(0x25, unimp_flush)
  344. BAD_TRAP(0x26)
  345. BAD_TRAP(0x27)
  346. TRAP_ENTRY(0x28, do_cp_exception)
  347. SRMMU_DFAULT
  348. TRAP_ENTRY(0x2a, do_hw_divzero)
  349. BAD_TRAP(0x2b) BAD_TRAP(0x2c)
  350. BAD_TRAP(0x2d) BAD_TRAP(0x2e) BAD_TRAP(0x2f) BAD_TRAP(0x30) BAD_TRAP(0x31)
  351. BAD_TRAP(0x32) BAD_TRAP(0x33) BAD_TRAP(0x34) BAD_TRAP(0x35) BAD_TRAP(0x36)
  352. BAD_TRAP(0x37) BAD_TRAP(0x38) BAD_TRAP(0x39) BAD_TRAP(0x3a) BAD_TRAP(0x3b)
  353. BAD_TRAP(0x3c) BAD_TRAP(0x3d) BAD_TRAP(0x3e) BAD_TRAP(0x3f) BAD_TRAP(0x40)
  354. BAD_TRAP(0x41) BAD_TRAP(0x42) BAD_TRAP(0x43) BAD_TRAP(0x44) BAD_TRAP(0x45)
  355. BAD_TRAP(0x46) BAD_TRAP(0x47) BAD_TRAP(0x48) BAD_TRAP(0x49) BAD_TRAP(0x4a)
  356. BAD_TRAP(0x4b) BAD_TRAP(0x4c) BAD_TRAP(0x4d) BAD_TRAP(0x4e) BAD_TRAP(0x4f)
  357. BAD_TRAP(0x50)
  358. BAD_TRAP(0x51) BAD_TRAP(0x52) BAD_TRAP(0x53) BAD_TRAP(0x54) BAD_TRAP(0x55)
  359. BAD_TRAP(0x56) BAD_TRAP(0x57) BAD_TRAP(0x58) BAD_TRAP(0x59) BAD_TRAP(0x5a)
  360. BAD_TRAP(0x5b) BAD_TRAP(0x5c) BAD_TRAP(0x5d) BAD_TRAP(0x5e) BAD_TRAP(0x5f)
  361. BAD_TRAP(0x60) BAD_TRAP(0x61) BAD_TRAP(0x62) BAD_TRAP(0x63) BAD_TRAP(0x64)
  362. BAD_TRAP(0x65) BAD_TRAP(0x66) BAD_TRAP(0x67) BAD_TRAP(0x68) BAD_TRAP(0x69)
  363. BAD_TRAP(0x6a) BAD_TRAP(0x6b) BAD_TRAP(0x6c) BAD_TRAP(0x6d) BAD_TRAP(0x6e)
  364. BAD_TRAP(0x6f) BAD_TRAP(0x70) BAD_TRAP(0x71) BAD_TRAP(0x72) BAD_TRAP(0x73)
  365. BAD_TRAP(0x74) BAD_TRAP(0x75) BAD_TRAP(0x76) BAD_TRAP(0x77) BAD_TRAP(0x78)
  366. BAD_TRAP(0x79) BAD_TRAP(0x7a) BAD_TRAP(0x7b) BAD_TRAP(0x7c) BAD_TRAP(0x7d)
  367. BAD_TRAP(0x7e) BAD_TRAP(0x7f)
  368. BAD_TRAP(0x80)
  369. BREAKPOINT_TRAP
  370. TRAP_ENTRY(0x82, do_hw_divzero)
  371. TRAP_ENTRY(0x83, do_flush_windows)
  372. BAD_TRAP(0x84) BAD_TRAP(0x85)
  373. BAD_TRAP(0x86) BAD_TRAP(0x87) BAD_TRAP(0x88)
  374. BAD_TRAP(0x89) BAD_TRAP(0x8a) BAD_TRAP(0x8b) BAD_TRAP(0x8c)
  375. BAD_TRAP(0x8d) BAD_TRAP(0x8e) BAD_TRAP(0x8f)
  376. LINUX_SYSCALL_TRAP
  377. BAD_TRAP(0x91) BAD_TRAP(0x92) BAD_TRAP(0x93) BAD_TRAP(0x94)
  378. BAD_TRAP(0x95) BAD_TRAP(0x96) BAD_TRAP(0x97) BAD_TRAP(0x98) BAD_TRAP(0x99)
  379. BAD_TRAP(0x9a) BAD_TRAP(0x9b) BAD_TRAP(0x9c) BAD_TRAP(0x9d) BAD_TRAP(0x9e)
  380. BAD_TRAP(0x9f)
  381. GETCC_TRAP
  382. SETCC_TRAP
  383. GETPSR_TRAP
  384. BAD_TRAP(0xa3) BAD_TRAP(0xa4) BAD_TRAP(0xa5) BAD_TRAP(0xa6)
  385. BAD_TRAP(0xa7) BAD_TRAP(0xa8) BAD_TRAP(0xa9) BAD_TRAP(0xaa) BAD_TRAP(0xab)
  386. BAD_TRAP(0xac) BAD_TRAP(0xad) BAD_TRAP(0xae) BAD_TRAP(0xaf) BAD_TRAP(0xb0)
  387. BAD_TRAP(0xb1) BAD_TRAP(0xb2) BAD_TRAP(0xb3) BAD_TRAP(0xb4) BAD_TRAP(0xb5)
  388. BAD_TRAP(0xb6) BAD_TRAP(0xb7) BAD_TRAP(0xb8) BAD_TRAP(0xb9) BAD_TRAP(0xba)
  389. BAD_TRAP(0xbb) BAD_TRAP(0xbc) BAD_TRAP(0xbd) BAD_TRAP(0xbe) BAD_TRAP(0xbf)
  390. BAD_TRAP(0xc0) BAD_TRAP(0xc1) BAD_TRAP(0xc2) BAD_TRAP(0xc3) BAD_TRAP(0xc4)
  391. BAD_TRAP(0xc5) BAD_TRAP(0xc6) BAD_TRAP(0xc7) BAD_TRAP(0xc8) BAD_TRAP(0xc9)
  392. BAD_TRAP(0xca) BAD_TRAP(0xcb) BAD_TRAP(0xcc) BAD_TRAP(0xcd) BAD_TRAP(0xce)
  393. BAD_TRAP(0xcf) BAD_TRAP(0xd0) BAD_TRAP(0xd1) BAD_TRAP(0xd2) BAD_TRAP(0xd3)
  394. BAD_TRAP(0xd4) BAD_TRAP(0xd5) BAD_TRAP(0xd6) BAD_TRAP(0xd7) BAD_TRAP(0xd8)
  395. BAD_TRAP(0xd9) BAD_TRAP(0xda) BAD_TRAP(0xdb) BAD_TRAP(0xdc) BAD_TRAP(0xdd)
  396. BAD_TRAP(0xde) BAD_TRAP(0xdf) BAD_TRAP(0xe0) BAD_TRAP(0xe1) BAD_TRAP(0xe2)
  397. BAD_TRAP(0xe3) BAD_TRAP(0xe4) BAD_TRAP(0xe5) BAD_TRAP(0xe6) BAD_TRAP(0xe7)
  398. BAD_TRAP(0xe8) BAD_TRAP(0xe9) BAD_TRAP(0xea) BAD_TRAP(0xeb) BAD_TRAP(0xec)
  399. BAD_TRAP(0xed) BAD_TRAP(0xee) BAD_TRAP(0xef) BAD_TRAP(0xf0) BAD_TRAP(0xf1)
  400. BAD_TRAP(0xf2) BAD_TRAP(0xf3) BAD_TRAP(0xf4) BAD_TRAP(0xf5) BAD_TRAP(0xf6)
  401. BAD_TRAP(0xf7) BAD_TRAP(0xf8) BAD_TRAP(0xf9) BAD_TRAP(0xfa) BAD_TRAP(0xfb)
  402. BAD_TRAP(0xfc)
  403. KGDB_TRAP(0xfd)
  404. BAD_TRAP(0xfe)
  405. BAD_TRAP(0xff)
  406. #endif