summaryrefslogtreecommitdiff
path: root/src/value2.lem
diff options
context:
space:
mode:
authorAlasdair Armstrong2019-04-09 18:30:37 +0100
committerAlasdair Armstrong2019-04-09 20:35:50 +0100
commit271a8aba3041e4f712f3331fd1610cdf31fbb4c9 (patch)
tree1644d1916b76e8e75606a63cf3d92b71358b26de /src/value2.lem
parent97cc026337ea5cfc33586b6725c312c1a507f922 (diff)
SMT: Refactor Jib values to make inlining work
Had to change the hundreds and hundreds of places such values were used. However this now lets us automatically prove cheri-concentrate properties. Such as showing function prop_cap_round_trip(cap: bits(128)) -> bool = { let cap_rt = capToBits(capBitsToCapability(true, cap)); cap == cap_rt } is always true.
Diffstat (limited to 'src/value2.lem')
-rw-r--r--src/value2.lem14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/value2.lem b/src/value2.lem
index caf355b7..0e65e91f 100644
--- a/src/value2.lem
+++ b/src/value2.lem
@@ -53,10 +53,10 @@ open import Pervasives
open import Sail2_values
type vl =
- | V_bits of list bitU
- | V_bit of bitU
- | V_bool of bool
- | V_unit
- | V_int of integer
- | V_string of string
- | V_null (* Used for unitialized values and null pointers in C compilation *)
+ | VL_bits of list bitU * bool
+ | VL_bit of bitU
+ | VL_bool of bool
+ | VL_unit
+ | VL_int of integer
+ | VL_string of string
+ | VL_null (* Used for unitialized values and null pointers in C compilation *)