trap.h (389B)
1 #ifndef TRAP_H 2 #define TRAP_H 3 4 typedef enum { 5 TRAP_NONE = 0, 6 TRAP_EBREAK, 7 TRAP_ECALL, 8 TRAP_ILLEGAL_INSTRUCTION, 9 TRAP_INSTRUCTION_MISALIGNED, 10 TRAP_INSTRUCTION_ACCESS_FAULT, 11 /* 12 TRAP_LOAD_MISALIGNED, 13 TRAP_LOAD_ACCESS_FAULT, 14 TRAP_STORE_MISALIGNED, 15 TRAP_STORE_ACCESS_FAULT 16 */ 17 } trap_cause_t; 18 19 typedef struct { 20 trap_cause_t cause; 21 uint32_t pc; 22 uint32_t tval; 23 } trap_info_t; 24 25 #endif