summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJon French2019-05-13 16:03:08 +0100
committerJon French2019-05-13 16:04:21 +0100
commit8213af2f61a2c363afab94d5fb67774f9768f4dc (patch)
tree0eb9b72005fede1023fcecc2d3731e6121d166a5 /src
parentefe0975074c6733475cc0216e9a69e6498f39093 (diff)
Interpreter: update memory intrinsics to include addrsize argument
Diffstat (limited to 'src')
-rw-r--r--src/interpreter.ml6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/interpreter.ml b/src/interpreter.ml
index 9acfeb26..db4f45f6 100644
--- a/src/interpreter.ml
+++ b/src/interpreter.ml
@@ -388,14 +388,14 @@ let rec step (E_aux (e_aux, annot) as orig_exp) =
read_reg regname >>= fun v -> return (exp_of_value v)
| "read_mem" ->
begin match evaluated with
- | [rk; addr; len] ->
+ | [rk; addrsize; addr; len] ->
read_mem (value_of_exp rk) (value_of_exp addr) (value_of_exp len) >>= fun v -> return (exp_of_value v)
| _ ->
fail "Wrong number of parameters to read_mem intrinsic"
end
| "write_mem_ea" ->
begin match evaluated with
- | [wk; addr; len] ->
+ | [wk; addrsize; addr; len] ->
write_ea (value_of_exp wk) (value_of_exp addr) (value_of_exp len) >> wrap unit_exp
| _ ->
fail "Wrong number of parameters to write_ea intrinsic"
@@ -409,7 +409,7 @@ let rec step (E_aux (e_aux, annot) as orig_exp) =
end
| "write_mem" ->
begin match evaluated with
- | [wk; addr; len; v] ->
+ | [wk; addrsize; addr; len; v] ->
write_mem (value_of_exp wk) (value_of_exp v) (value_of_exp len) (value_of_exp v) >>= fun b -> return (exp_of_value (V_bool b))
| _ ->
fail "Wrong number of parameters to write_memv intrinsic"