1/*===-- AppleArm64ExceptionClass.def ---------------------------*- C++ -*-=== *\ 2|* 3|* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4|* See https://llvm.org/LICENSE.txt for license information. 5|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6|* 7\*===----------------------------------------------------------------------===*/ 8 9// Defines ESR exception classes for Apple arm64* targets. 10// These largely map 1:1 to the exception classes defined in ARM's architecture 11// reference manual, but there are some Apple-specific additions. 12 13#ifndef APPLE_ARM64_EXCEPTION_CLASS 14#error "APPLE_ARM64_EXCEPTION_CLASS(Name, Code) not defined." 15#endif 16 17APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_UNCATEGORIZED, 0x00) 18APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_WFI_WFE, 0x01) 19APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_MCR_MRC_CP15_TRAP, 0x03) 20APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_MCRR_MRRC_CP15_TRAP, 0x04) 21APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_MCR_MRC_CP14_TRAP, 0x05) 22APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_LDC_STC_CP14_TRAP, 0x06) 23APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_TRAP_SIMD_FP, 0x07) 24APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_PTRAUTH_INSTR_TRAP, 0x09) 25APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_MCRR_MRRC_CP14_TRAP, 0x0c) 26APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_ILLEGAL_INSTR_SET, 0x0e) 27APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_SVC_32, 0x11) 28APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_SVC_64, 0x15) 29APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_MSR_TRAP, 0x18) 30APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_PAC_FAIL, 0x1C) 31APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_IABORT_EL0, 0x20) 32APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_IABORT_EL1, 0x21) 33APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_PC_ALIGN, 0x22) 34APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_DABORT_EL0, 0x24) 35APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_DABORT_EL1, 0x25) 36APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_SP_ALIGN, 0x26) 37APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_FLOATING_POINT_32, 0x28) 38APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_FLOATING_POINT_64, 0x2C) 39APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_SERROR_INTERRUPT, 0x2F) 40APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_BKPT_REG_MATCH_EL0, 0x30) 41APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_BKPT_REG_MATCH_EL1, 0x31) 42APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_SW_STEP_DEBUG_EL0, 0x32) 43APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_SW_STEP_DEBUG_EL1, 0x33) 44APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_WATCHPT_MATCH_EL0, 0x34) 45APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_WATCHPT_MATCH_EL1, 0x35) 46APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_BKPT_AARCH32, 0x38) 47APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_BRK_AARCH64, 0x3C) 48APPLE_ARM64_EXCEPTION_CLASS(ESR_EC_PRIV, 0x3F) 49 50#undef APPLE_ARM64_EXCEPTION_CLASS 51