summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lem_interp/run_with_elf.ml4
-rw-r--r--src/lem_interp/run_with_elf_cheri.ml1
2 files changed, 4 insertions, 1 deletions
diff --git a/src/lem_interp/run_with_elf.ml b/src/lem_interp/run_with_elf.ml
index ee9dfcc6..0f8e86ad 100644
--- a/src/lem_interp/run_with_elf.ml
+++ b/src/lem_interp/run_with_elf.ml
@@ -500,7 +500,9 @@ let mips_register_data_all = [
let initial_stack_and_reg_data_of_MIPS_elf_file e_entry all_data_memory =
let initial_stack_data = [] in
- let initial_register_abi_data : (string * Interp_interface.register_value) list = [] in
+ let initial_register_abi_data : (string * Interp_interface.register_value) list = [
+ ("CP0Status", Interp_interface.register_value_of_integer 32 31 D_decreasing (Nat_big_num.of_string "0x00400000"));
+ ] in
(initial_stack_data, initial_register_abi_data)
let initial_reg_file reg_data init =
diff --git a/src/lem_interp/run_with_elf_cheri.ml b/src/lem_interp/run_with_elf_cheri.ml
index 1d016453..f50720c5 100644
--- a/src/lem_interp/run_with_elf_cheri.ml
+++ b/src/lem_interp/run_with_elf_cheri.ml
@@ -542,6 +542,7 @@ let initial_stack_and_reg_data_of_MIPS_elf_file e_entry all_data_memory =
let initial_cap_val_int = Nat_big_num.of_string "115792089264276142078167421332581561412618036492862375629811892344162380414975" (*"0x100000000fffffffe00000000000000000000000000000000ffffffffffffffff"*) in
let initial_cap_val_reg = Interp_interface.register_value_of_integer 257 256 D_decreasing initial_cap_val_int in
let initial_register_abi_data : (string * Interp_interface.register_value) list = [
+ ("CP0Status", Interp_interface.register_value_of_integer 32 31 D_decreasing (Nat_big_num.of_string "0x00400000"));
("PCC", initial_cap_val_reg);
("nextPCC", initial_cap_val_reg);
("delayedPCC", initial_cap_val_reg);