package libsail
Module Libsail.Sail2_operatorsSource
Source
val concat_bv :
'a Sail2_values.bitvector_class ->
'b Sail2_values.bitvector_class ->
'a ->
'b ->
Sail2_values.bitU listSource
val cons_bv :
'a Sail2_values.bitvector_class ->
Sail2_values.bitU ->
'a ->
Sail2_values.bitU listSource
val arith_op_bv_int :
'a Sail2_values.bitvector_class ->
(Nat_big_num.num -> Nat_big_num.num -> Nat_big_num.num) ->
bool ->
'a ->
Nat_big_num.num ->
'aSource
val arith_op_int_bv :
'a Sail2_values.bitvector_class ->
(Nat_big_num.num -> Nat_big_num.num -> Nat_big_num.num) ->
bool ->
Nat_big_num.num ->
'a ->
'aSource
val arith_op_bv_bool :
'a Sail2_values.bitvector_class ->
(Nat_big_num.num -> Nat_big_num.num -> Nat_big_num.num) ->
bool ->
'a ->
bool ->
'aSource
val arith_op_bv_bit :
'a Sail2_values.bitvector_class ->
(Nat_big_num.num -> Nat_big_num.num -> Nat_big_num.num) ->
bool ->
'a ->
Sail2_values.bitU ->
'a optionSource
val shift_op_bv :
'a Sail2_values.bitvector_class ->
shift ->
'a ->
Nat_big_num.num ->
Sail2_values.bitU listSource
val shiftl_bv :
'a Sail2_values.bitvector_class ->
'a ->
Nat_big_num.num ->
Sail2_values.bitU listSource
val shiftr_bv :
'a Sail2_values.bitvector_class ->
'a ->
Nat_big_num.num ->
Sail2_values.bitU listSource
val arith_shiftr_bv :
'a Sail2_values.bitvector_class ->
'a ->
Nat_big_num.num ->
Sail2_values.bitU listSource
val rotl_bv :
'a Sail2_values.bitvector_class ->
'a ->
Nat_big_num.num ->
Sail2_values.bitU listSource
val rotr_bv :
'a Sail2_values.bitvector_class ->
'a ->
Nat_big_num.num ->
Sail2_values.bitU listSource
val arith_op_no0 :
(Nat_big_num.num -> Nat_big_num.num -> Nat_big_num.num) ->
Nat_big_num.num ->
Nat_big_num.num ->
Nat_big_num.num optionSource
val arith_op_bv_no0 :
'a Sail2_values.bitvector_class ->
'b Sail2_values.bitvector_class ->
(Nat_big_num.num -> Nat_big_num.num -> Nat_big_num.num) ->
bool ->
Nat_big_num.num ->
'a ->
'a ->
'b optionSource
val mod_bv :
'a Sail2_values.bitvector_class ->
'b Sail2_values.bitvector_class ->
'b ->
'b ->
'a optionSource
val quot_bv :
'a Sail2_values.bitvector_class ->
'b Sail2_values.bitvector_class ->
'b ->
'b ->
'a optionSource
val quots_bv :
'a Sail2_values.bitvector_class ->
'b Sail2_values.bitvector_class ->
'b ->
'b ->
'a optionSource
val arith_op_bv_int_no0 :
'a Sail2_values.bitvector_class ->
'b Sail2_values.bitvector_class ->
(Nat_big_num.num -> Nat_big_num.num -> Nat_big_num.num) ->
bool ->
Nat_big_num.num ->
'a ->
Nat_big_num.num ->
'b optionSource
val quot_bv_int :
'a Sail2_values.bitvector_class ->
'b Sail2_values.bitvector_class ->
'b ->
Nat_big_num.num ->
'a optionSource
val mod_bv_int :
'a Sail2_values.bitvector_class ->
'b Sail2_values.bitvector_class ->
'b ->
Nat_big_num.num ->
'a optionSource
val mod_mword_int :
'a Lem_machine_word.size_class ->
(int * Nat_big_num.num) ->
Nat_big_num.num ->
Lem.mwordSource
val quot_mword_int :
'a Lem_machine_word.size_class ->
(int * Nat_big_num.num) ->
Nat_big_num.num ->
Lem.mwordSource
val quots_mword_int :
'a Lem_machine_word.size_class ->
(int * Nat_big_num.num) ->
Nat_big_num.num ->
Lem.mwordSource
val replicate_bits_bv :
'a Sail2_values.bitvector_class ->
'a ->
Nat_big_num.num ->
Sail2_values.bitU listSource
val duplicate_bit_bv :
'a Sail2_values.bitU_class ->
'a ->
Nat_big_num.num ->
Sail2_values.bitU listSource
val get_slice_int_bv :
'a Sail2_values.bitvector_class ->
Nat_big_num.num ->
Nat_big_num.num ->
Nat_big_num.num ->
'aSource
val set_slice_int_bv :
'a Sail2_values.bitvector_class ->
Nat_big_num.num ->
Nat_big_num.num ->
Nat_big_num.num ->
'a ->
Nat_big_num.num