summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorThomas Bauereiss2019-05-23 16:38:58 +0100
committerThomas Bauereiss2019-05-23 16:39:13 +0100
commitfd89347fae1a193911b4dc28a25eb184ce8ab392 (patch)
tree24485350faf5418b7b4ed0008091e0a92dd8ac26 /lib
parent3be44958890f9ee9e45f92e379d562d170869bf0 (diff)
Fix bug in slice_mask
Diffstat (limited to 'lib')
-rw-r--r--lib/vector_dec.sail2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/vector_dec.sail b/lib/vector_dec.sail
index ee84087e..7e2414de 100644
--- a/lib/vector_dec.sail
+++ b/lib/vector_dec.sail
@@ -205,7 +205,7 @@ val replicate_bits = "replicate_bits" : forall 'n 'm. (bits('n), atom('m)) -> bi
val slice_mask : forall 'n, 'n >= 0. (implicit('n), int, int) -> bits('n) effect pure
function slice_mask(n,i,l) =
if l >= n then {
- sail_ones(n)
+ sail_shiftleft(sail_ones(n), i)
} else {
let one : bits('n) = sail_mask(n, [bitone] : bits(1)) in
sail_shiftleft(sub_bits(sail_shiftleft(one, l), one), i)