summaryrefslogtreecommitdiff
path: root/test/mono/test_extra.lem
blob: 9c526309fee872c4b61eeb13ea75626e06b52324 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
open import Pervasives_extra
open import Sail_instr_kinds
open import Sail_values
open import Sail_operators_mwords
open import Prompt_monad
open import State

let undefined_int () = return (0:ii)
val undefined_bitvector : forall 'rv 'a 'e. Bitvector 'a => integer -> monad 'rv 'a 'e
let undefined_bitvector len = return (of_bools (repeat [false] len))

val slice : forall 'a 'b. Size 'a, Size 'b => mword 'a -> integer -> integer -> mword 'b
let slice v lo len =
  subrange_vec_dec v (lo + len - 1) lo