summaryrefslogtreecommitdiff
path: root/src/gen_lib/sail_values.lem
diff options
context:
space:
mode:
authorBrian Campbell2017-08-21 14:09:59 +0100
committerBrian Campbell2017-08-21 14:09:59 +0100
commit79388061a9fb34789821fe719ce3ff25f93a047d (patch)
tree01fcc120ecafe77212d66b8abbc8ded8593f7430 /src/gen_lib/sail_values.lem
parentbbdb011b8364ceaed867abb9d6b580ba8b2a60e8 (diff)
parentc310ad77dee2bec75c272556e4ec843f5d9f2715 (diff)
Merge branch 'experiments' into mono-experiments
Diffstat (limited to 'src/gen_lib/sail_values.lem')
-rw-r--r--src/gen_lib/sail_values.lem8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gen_lib/sail_values.lem b/src/gen_lib/sail_values.lem
index 3616897a..f994ae22 100644
--- a/src/gen_lib/sail_values.lem
+++ b/src/gen_lib/sail_values.lem
@@ -887,6 +887,14 @@ type register =
| UndefinedRegister of integer (* length *)
| RegisterPair of register * register
+type register_ref 'regstate 'a =
+ <| read_from : 'regstate -> 'a;
+ write_to : 'regstate -> 'a -> 'regstate |>
+
+type field_ref 'regtype 'a =
+ <| get_field : 'regtype -> 'a;
+ set_field : 'regtype -> 'a -> 'regtype |>
+
let name_of_reg = function
| Register name _ _ _ _ -> name
| UndefinedRegister _ -> failwith "name_of_reg UndefinedRegister"