rvemu

RISC-V RV32I execution engine
git clone git://mcdim.xyz/revemu.git
Log | Files | Refs

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