aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam McSpaddden <bill@riscv.org>2024-05-17 11:12:56 -0500
committerWilliam McSpaddden <bill@riscv.org>2024-05-17 11:12:56 -0500
commitece6086d8d637ee1a512ce2ef168dd8bdbcb2f48 (patch)
tree421e47f9fa65f353cef0316e370311b4c9682cc4
parent605dbfd2a6ad0106f3c66a7dbb53684e38689fb1 (diff)
downloadsail-riscv-ece6086d8d637ee1a512ce2ef168dd8bdbcb2f48.zip
sail-riscv-ece6086d8d637ee1a512ce2ef168dd8bdbcb2f48.tar.gz
sail-riscv-ece6086d8d637ee1a512ce2ef168dd8bdbcb2f48.tar.bz2
added command line support for Smepmp. command line switch: --enable-smepmp. Sail function: haveSmepmp. OCAML support
-rw-r--r--ocaml_emulator/platform.ml2
-rw-r--r--ocaml_emulator/riscv_ocaml_sim.ml3
2 files changed, 5 insertions, 0 deletions
diff --git a/ocaml_emulator/platform.ml b/ocaml_emulator/platform.ml
index 69f2714..4294214 100644
--- a/ocaml_emulator/platform.ml
+++ b/ocaml_emulator/platform.ml
@@ -12,6 +12,7 @@ let config_enable_misaligned_access = ref false
let config_mtval_has_illegal_inst_bits = ref false
let config_enable_svinval = ref false
let config_enable_zcb = ref false
+let config_enable_smepmp = ref false
let config_enable_writable_fiom = ref true
let config_enable_vext = ref true
let config_pmp_count = ref Big_int.zero
@@ -92,6 +93,7 @@ let enable_misaligned_access () = !config_enable_misaligned_access
let mtval_has_illegal_inst_bits () = !config_mtval_has_illegal_inst_bits
let enable_svinval () = !config_enable_svinval
let enable_zcb () = !config_enable_zcb
+let enable_smepmp () = !config_enable_smepmp
let enable_zfinx () = false
let enable_writable_fiom () = !config_enable_writable_fiom
let pmp_count () = !config_pmp_count
diff --git a/ocaml_emulator/riscv_ocaml_sim.ml b/ocaml_emulator/riscv_ocaml_sim.ml
index 56be8d8..855a98d 100644
--- a/ocaml_emulator/riscv_ocaml_sim.ml
+++ b/ocaml_emulator/riscv_ocaml_sim.ml
@@ -59,6 +59,9 @@ let options = Arg.align ([("-dump-dts",
("-enable-zcb",
Arg.Set P.config_enable_zcb,
" enable Zcb (simple code size) extension");
+ ("-enable-smepmp",
+ Arg.Set P.config_enable_smepmp,
+ " enable Smepmp extension");
("-enable-writable-fiom",
Arg.Set P.config_enable_writable_fiom,
" enable FIOM (Fence of I/O implies Memory) bit in menvcfg");