|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1999 Apple Computer, Inc. All rights reserved. ! 3: * ! 4: * @APPLE_LICENSE_HEADER_START@ ! 5: * ! 6: * Portions Copyright (c) 1999 Apple Computer, Inc. All Rights ! 7: * Reserved. This file contains Original Code and/or Modifications of ! 8: * Original Code as defined in and that are subject to the Apple Public ! 9: * Source License Version 1.1 (the "License"). You may not use this file ! 10: * except in compliance with the License. Please obtain a copy of the ! 11: * License at http://www.apple.com/publicsource and read it before using ! 12: * this file. ! 13: * ! 14: * The Original Code and all software distributed under the License are ! 15: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ! 16: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ! 17: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ! 18: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ! 19: * License for the specific language governing rights and limitations ! 20: * under the License. ! 21: * ! 22: * @APPLE_LICENSE_HEADER_END@ ! 23: */ ! 24: ! 25: /* ! 26: * Copyright (c) 1990, 1991, 1992, The University of Utah and ! 27: * the Center for Software Science at the University of Utah (CSS). ! 28: * All rights reserved. ! 29: * ! 30: * Permission to use, copy, modify and distribute this software is hereby ! 31: * granted provided that (1) source code retains these copyright, permission, ! 32: * and disclaimer notices, and (2) redistributions including binaries ! 33: * reproduce the notices in supporting documentation, and (3) all advertising ! 34: * materials mentioning features or use of this software display the following ! 35: * acknowledgement: ``This product includes software developed by the Center ! 36: * for Software Science at the University of Utah.'' ! 37: * ! 38: * THE UNIVERSITY OF UTAH AND CSS ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS ! 39: * IS" CONDITION. THE UNIVERSITY OF UTAH AND CSS DISCLAIM ANY LIABILITY OF ! 40: * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. ! 41: * ! 42: * CSS requests users of this software to return to [email protected] any ! 43: * improvements that they make and grant CSS redistribution rights. ! 44: * ! 45: * Utah $Hdr: $ ! 46: */ ! 47: ! 48: #ifndef _MACH_PPC_EXCEPTION_H_ ! 49: #define _MACH_PPC_EXCEPTION_H_ ! 50: ! 51: #define EXC_TYPES_COUNT 10 /* incl. illegal exception 0 */ ! 52: ! 53: #define EXCEPTION_CODE_MAX 2 /* elements in vector (code+subcode) */ ! 54: /* ! 55: * EXC_BAD_INSTRUCTION ! 56: */ ! 57: ! 58: #define EXC_PPC_INVALID_SYSCALL 1 /* invalid syscall number */ ! 59: #define EXC_PPC_UNIPL_INST 2 /* unimplemented instruction */ ! 60: #define EXC_PPC_PRIVINST 3 /* priviledged instruction */ ! 61: #define EXC_PPC_PRIVREG 4 /* priviledged register */ ! 62: #define EXC_PPC_TRACE 5 /* trace/single-step */ ! 63: ! 64: /* ! 65: * EXC_BAD_ACCESS ! 66: * Note: do not conflict with kern_return_t values returned by vm_fault ! 67: */ ! 68: ! 69: #define EXC_PPC_VM_PROT_READ 0x101 /* error reading syscall args */ ! 70: #define EXC_PPC_BADSPACE 0x102 /* bad space referenced */ ! 71: #define EXC_PPC_UNALIGNED 0x103 /* unaligned data reference */ ! 72: ! 73: /* ! 74: * EXC_ARITHMETIC ! 75: */ ! 76: ! 77: #define EXC_PPC_OVERFLOW 1 /* integer overflow */ ! 78: #define EXC_PPC_ZERO_DIVIDE 2 /* integer divide by zero */ ! 79: #define EXC_PPC_FLT_INEXACT 3 /* IEEE inexact exception */ ! 80: #define EXC_PPC_FLT_ZERO_DIVIDE 4 /* IEEE zero divide */ ! 81: #define EXC_PPC_FLT_UNDERFLOW 5 /* IEEE floating underflow */ ! 82: #define EXC_PPC_FLT_OVERFLOW 6 /* IEEE floating overflow */ ! 83: #define EXC_PPC_FLT_NOT_A_NUMBER 7 /* IEEE not a number */ ! 84: ! 85: /* ! 86: * EXC_PPC_NOEMULATION should go away when we add software emulation ! 87: * for floating point. Right now we don't support this. ! 88: */ ! 89: ! 90: #define EXC_PPC_NOEMULATION 8 /* no floating point emulation */ ! 91: ! 92: ! 93: /* ! 94: * EXC_SOFTWARE ! 95: */ ! 96: #define EXC_PPC_MIGRATE 0x10100 /* Time to bolt */ ! 97: ! 98: ! 99: /* ! 100: * EXC_BREAKPOINT ! 101: */ ! 102: ! 103: #define EXC_PPC_BREAKPOINT 1 /* breakpoint trap */ ! 104: ! 105: /* ! 106: * machine dependent exception masks ! 107: */ ! 108: #define EXC_MASK_MACHINE 0 ! 109: ! 110: ! 111: /* from MACH 3.0 mach_kernel/mach/exception.h */ ! 112: #include <mach/ppc/vm_types.h> ! 113: #ifndef __ASSEMBLER__ ! 114: typedef integer_t exception_data_type_t; ! 115: #endif /* __ASSEMBLER__ */ ! 116: ! 117: #endif /* _MACH_PPC_EXCEPTION_H_ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.