diff options
| author | Robert Norton | 2017-11-01 18:42:17 +0000 |
|---|---|---|
| committer | Robert Norton | 2017-11-01 18:42:17 +0000 |
| commit | 40a85677707395199a005c2742304b80be87e117 (patch) | |
| tree | 9576799000f8c2b12cb7e53cb5a54a7e765e8e4d /cheri | |
| parent | 8e5d44d17c71cf946e65e15de8df42de2af4c652 (diff) | |
workaound for another odd interpreter error where top level let variable got truncated to 64 bits...
Diffstat (limited to 'cheri')
| -rw-r--r-- | cheri/cheri_prelude_256.sail | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/cheri/cheri_prelude_256.sail b/cheri/cheri_prelude_256.sail index 1b13e408..b2bc8b1f 100644 --- a/cheri/cheri_prelude_256.sail +++ b/cheri/cheri_prelude_256.sail @@ -155,12 +155,12 @@ function (bit[257]) memBitsToCapBits256((bool) tag, (bit[256]) b) = this ensures that canonical null_cap is always all-zeros in memory even though it may have bits set logically (e.g. length or exponent *) -let (bit[256]) null_cap_bits = capStructToMemBits256(null_cap) - function (bit[256]) capStructToMemBits((CapStruct) cap) = + let (bit[256]) null_cap_bits = capStructToMemBits256(null_cap) in capStructToMemBits256(cap) ^ null_cap_bits function (bit[257]) memBitsToCapBits((bool) tag, (bit[256]) b) = + let (bit[256]) null_cap_bits = capStructToMemBits256(null_cap) in memBitsToCapBits256(tag, b ^ null_cap_bits) function (CapReg) capStructToCapReg((CapStruct) cap) = |
