1 /* 2 * Copyright (c) 2014 Wind River Systems, Inc. 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 /** 8 * @file 9 * @brief Definitions for the exception vector table 10 * 11 * 12 * Definitions for the boot vector table. 13 * 14 * System exception handler names all have the same format: 15 * 16 * __<exception name with underscores> 17 * 18 * Refer to the ARCv2 manual for an explanation of the exceptions. 19 */ 20 21 #ifndef ZEPHYR_ARCH_ARC_INCLUDE_VECTOR_TABLE_H_ 22 #define ZEPHYR_ARCH_ARC_INCLUDE_VECTOR_TABLE_H_ 23 24 #define EXC_EV_TRAP 0x9 25 26 #ifdef _ASMLANGUAGE 27 28 #include <toolchain.h> 29 #include <linker/sections.h> 30 31 GTEXT(__start) 32 GTEXT(_VectorTable) 33 34 GTEXT(__reset) 35 GTEXT(__memory_error) 36 GTEXT(__instruction_error) 37 GTEXT(__ev_machine_check) 38 GTEXT(__ev_tlb_miss_i) 39 GTEXT(__ev_tlb_miss_d) 40 GTEXT(__ev_prot_v) 41 GTEXT(__ev_privilege_v) 42 GTEXT(__ev_swi) 43 GTEXT(__ev_trap) 44 GTEXT(__ev_extension) 45 GTEXT(__ev_div_zero) 46 GTEXT(__ev_dc_error) 47 GTEXT(__ev_maligned) 48 49 GTEXT(_PrepC) 50 GTEXT(_isr_wrapper) 51 52 #else 53 54 #ifdef __cplusplus 55 extern "C" { 56 #endif 57 58 extern void __reset(void); 59 extern void __memory_error(void); 60 extern void __instruction_error(void); 61 extern void __ev_machine_check(void); 62 extern void __ev_tlb_miss_i(void); 63 extern void __ev_tlb_miss_d(void); 64 extern void __ev_prot_v(void); 65 extern void __ev_privilege_v(void); 66 extern void __ev_swi(void); 67 extern void __ev_trap(void); 68 extern void __ev_extension(void); 69 extern void __ev_div_zero(void); 70 extern void __ev_dc_error(void); 71 extern void __ev_maligned(void); 72 73 #ifdef __cplusplus 74 } 75 #endif 76 77 #endif /* _ASMLANGUAGE */ 78 79 #endif /* ZEPHYR_ARCH_ARC_INCLUDE_VECTOR_TABLE_H_ */ 80