diff options
author | Andrew Waterman <waterman@cs.berkeley.edu> | 2016-04-19 17:31:54 -0700 |
---|---|---|
committer | Andrew Waterman <waterman@cs.berkeley.edu> | 2016-04-19 17:31:54 -0700 |
commit | 27e29e69cc586a7d97e2ccae2447faa79b66f7b8 (patch) | |
tree | 00bd9b404c72df0e22fd4a246a796b07e918d65a /riscv/insns/ecall.h | |
parent | 7a2a57b8bcfe49386cf98dc435d3179e881abc62 (diff) | |
download | spike-27e29e69cc586a7d97e2ccae2447faa79b66f7b8.zip spike-27e29e69cc586a7d97e2ccae2447faa79b66f7b8.tar.gz spike-27e29e69cc586a7d97e2ccae2447faa79b66f7b8.tar.bz2 |
Split ERET into URET, SRET, HRET, MRET
Diffstat (limited to 'riscv/insns/ecall.h')
-rw-r--r-- | riscv/insns/ecall.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/riscv/insns/ecall.h b/riscv/insns/ecall.h new file mode 100644 index 0000000..a933e4d --- /dev/null +++ b/riscv/insns/ecall.h @@ -0,0 +1,7 @@ +switch (STATE.prv) +{ + case PRV_U: throw trap_user_ecall(); + case PRV_S: throw trap_supervisor_ecall(); + case PRV_H: throw trap_hypervisor_ecall(); + case PRV_M: throw trap_machine_ecall(); +} |