Annotation of sys/arch/mac68k/mac68k/vectors.s, Revision 1.1
1.1 ! nbrk 1: /* $OpenBSD: vectors.s,v 1.9 2006/01/13 19:36:47 miod Exp $ */
! 2: | $NetBSD: vectors.s,v 1.10 1998/08/12 06:58:42 scottr Exp $
! 3:
! 4: | Copyright (c) 1988 University of Utah
! 5: | Copyright (c) 1990 Regents of the University of California.
! 6: | All rights reserved.
! 7: |
! 8: | Redistribution and use in source and binary forms, with or without
! 9: | modification, are permitted provided that the following conditions
! 10: | are met:
! 11: | 1. Redistributions of source code must retain the above copyright
! 12: | notice, this list of conditions and the following disclaimer.
! 13: | 2. Redistributions in binary form must reproduce the above copyright
! 14: | notice, this list of conditions and the following disclaimer in the
! 15: | documentation and/or other materials provided with the distribution.
! 16: | 3. Neither the name of the University nor the names of its contributors
! 17: | may be used to endorse or promote products derived from this software
! 18: | without specific prior written permission.
! 19: |
! 20: | THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
! 21: | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
! 22: | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
! 23: | ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
! 24: | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
! 25: | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
! 26: | OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
! 27: | HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
! 28: | LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
! 29: | OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
! 30: | SUCH DAMAGE.
! 31: |
! 32: | @(#)vectors.s 7.2 (Berkeley) 5/7/91
! 33: |
! 34:
! 35: #define BADTRAP16 \
! 36: VECTOR(badtrap) ; VECTOR(badtrap) ; \
! 37: VECTOR(badtrap) ; VECTOR(badtrap) ; \
! 38: VECTOR(badtrap) ; VECTOR(badtrap) ; \
! 39: VECTOR(badtrap) ; VECTOR(badtrap) ; \
! 40: VECTOR(badtrap) ; VECTOR(badtrap) ; \
! 41: VECTOR(badtrap) ; VECTOR(badtrap) ; \
! 42: VECTOR(badtrap) ; VECTOR(badtrap) ; \
! 43: VECTOR(badtrap) ; VECTOR(badtrap)
! 44:
! 45: .data
! 46: GLOBAL(vectab)
! 47: VECTOR_UNUSED /* 0: NOT USED (reset SSP) */
! 48: VECTOR_UNUSED /* 1: NOT USED (reset PC) */
! 49: VECTOR_UNUSED /* 2: bus error */
! 50: VECTOR_UNUSED /* 3: address error */
! 51: VECTOR(illinst) /* 4: illegal instruction */
! 52: VECTOR(zerodiv) /* 5: zero divide */
! 53: VECTOR(chkinst) /* 6: CHK instruction */
! 54: VECTOR(trapvinst) /* 7: TRAPV instruction */
! 55: VECTOR(privinst) /* 8: privilege violation */
! 56: VECTOR(trace) /* 9: trace */
! 57: VECTOR(illinst) /* 10: line 1010 emulator */
! 58: VECTOR(fpfline) /* 11: line 1111 emulator */
! 59: VECTOR(badtrap) /* 12: unassigned, reserved */
! 60: VECTOR(coperr) /* 13: coprocessor protocol violation */
! 61: VECTOR(fmterr) /* 14: format error */
! 62: VECTOR(badtrap) /* 15: uninitialized interrupt vector */
! 63: VECTOR(badtrap) /* 16: unassigned, reserved */
! 64: VECTOR(badtrap) /* 17: unassigned, reserved */
! 65: VECTOR(badtrap) /* 17: unassigned, reserved */
! 66: VECTOR(badtrap) /* 19: unassigned, reserved */
! 67: VECTOR(badtrap) /* 20: unassigned, reserved */
! 68: VECTOR(badtrap) /* 21: unassigned, reserved */
! 69: VECTOR(badtrap) /* 22: unassigned, reserved */
! 70: VECTOR(badtrap) /* 23: unassigned, reserved */
! 71: VECTOR(spurintr) /* 24: spurious interrupt */
! 72: VECTOR(intrhand) /* 25: level 1 interrupt autovector */
! 73: VECTOR(intrhand) /* 26: level 2 interrupt autovector */
! 74: VECTOR(intrhand) /* 27: level 3 interrupt autovector */
! 75: VECTOR(intrhand) /* 28: level 4 interrupt autovector */
! 76: VECTOR(intrhand) /* 29: level 5 interrupt autovector */
! 77: VECTOR(intrhand) /* 30: level 6 interrupt autovector */
! 78: VECTOR(lev7intr) /* 31: level 7 interrupt autovector */
! 79: VECTOR(trap0) /* 32: syscalls */
! 80: VECTOR(trap1) /* 33: sigreturn syscall or breakpoint */
! 81: VECTOR(trap2) /* 34: breakpoint or sigreturn syscall */
! 82: VECTOR(illinst) /* 35: TRAP instruction vector */
! 83: VECTOR(illinst) /* 36: TRAP instruction vector */
! 84: VECTOR(illinst) /* 37: TRAP instruction vector */
! 85: VECTOR(illinst) /* 38: TRAP instruction vector */
! 86: VECTOR(illinst) /* 39: TRAP instruction vector */
! 87: VECTOR(illinst) /* 40: TRAP instruction vector */
! 88: VECTOR(illinst) /* 41: TRAP instruction vector */
! 89: VECTOR(illinst) /* 42: TRAP instruction vector */
! 90: VECTOR(illinst) /* 43: TRAP instruction vector */
! 91: VECTOR(trap12) /* 44: TRAP instruction vector */
! 92: VECTOR(illinst) /* 45: TRAP instruction vector */
! 93: VECTOR(illinst) /* 46: TRAP instruction vector */
! 94: VECTOR(trap15) /* 47: TRAP instruction vector */
! 95:
! 96: GLOBAL(fpvect_tab)
! 97: VECTOR(fpfault) /* 48: FPCP branch/set on unordered cond */
! 98: VECTOR(fpfault) /* 49: FPCP inexact result */
! 99: VECTOR(fpfault) /* 50: FPCP divide by zero */
! 100: VECTOR(fpfault) /* 51: FPCP underflow */
! 101: VECTOR(fpfault) /* 52: FPCP operand error */
! 102: VECTOR(fpfault) /* 53: FPCP overflow */
! 103: VECTOR(fpfault) /* 54: FPCP signalling NAN */
! 104: GLOBAL(fpvect_end)
! 105:
! 106: VECTOR(fpunsupp) /* 55: FPCP unimplemented data type */
! 107: VECTOR(badtrap) /* 56: unassigned, reserved */
! 108: VECTOR(badtrap) /* 57: unassigned, reserved */
! 109: VECTOR(badtrap) /* 58: unassigned, reserved */
! 110: VECTOR(badtrap) /* 59: unassigned, reserved */
! 111: VECTOR(badtrap) /* 60: unassigned, reserved */
! 112: VECTOR(badtrap) /* 61: unassigned, reserved */
! 113: VECTOR(badtrap) /* 62: unassigned, reserved */
! 114: VECTOR(badtrap) /* 63: unassigned, reserved */
! 115: BADTRAP16 /* 64-255: user interrupt vectors */
! 116: BADTRAP16 /* 64-255: user interrupt vectors */
! 117: BADTRAP16 /* 64-255: user interrupt vectors */
! 118: BADTRAP16 /* 64-255: user interrupt vectors */
! 119: BADTRAP16 /* 64-255: user interrupt vectors */
! 120: BADTRAP16 /* 64-255: user interrupt vectors */
! 121: BADTRAP16 /* 64-255: user interrupt vectors */
! 122: BADTRAP16 /* 64-255: user interrupt vectors */
! 123: BADTRAP16 /* 64-255: user interrupt vectors */
! 124: BADTRAP16 /* 64-255: user interrupt vectors */
! 125: BADTRAP16 /* 64-255: user interrupt vectors */
! 126: BADTRAP16 /* 64-255: user interrupt vectors */
! 127:
! 128: #ifdef FPSP
! 129: /*
! 130: * 68040: this chunk of vectors is copied into the fpfault zone
! 131: */
! 132: GLOBAL(fpsp_tab)
! 133: ASVECTOR(fpsp_bsun) /* 48: FPCP branch/set on unordered cond */
! 134: ASVECTOR(inex) /* 49: FPCP inexact result */
! 135: ASVECTOR(dz) /* 50: FPCP divide by zero */
! 136: ASVECTOR(fpsp_unfl) /* 51: FPCP underflow */
! 137: ASVECTOR(fpsp_operr) /* 52: FPCP operand error */
! 138: ASVECTOR(fpsp_ovfl) /* 53: FPCP overflow */
! 139: ASVECTOR(fpsp_snan) /* 54: FPCP signalling NAN */
! 140: #endif /* FPSP */
CVSweb