| Age | Commit message (Collapse) | Author |
|
that uses the new Lem machine words library.
|
|
|
|
|
|
# Conflicts:
# src/lem_interp/interp.lem
# src/lem_interp/interp_inter_imp.lem
# src/lem_interp/interp_interface.lem
# src/parser.mly
# src/pretty_print_lem.ml
|
|
|
|
zero but it is not exposed via Bit_int_Z. Use it instead of rolling our own. Also ocaml / and mod already do the right thing.
|
|
for set_vector_subrange_bit.
|
|
Some tests intentionally produce undefined values (e.g. divide by zero) and this might be required for them to work.
|
|
|
|
bytes. This makes loading binaries much quicker but doesn't seem to make a big difference to execution speed.
|
|
|
|
bit_int_of_int. Likely very little performance benefit but slightly more readable.
|
|
|
|
|
|
need to use power.
|
|
|
|
|
|
neq_range.
|
|
|
|
|
|
exceptions are not permitted so a local mutable variable, ret, is used in ocaml to store the return value. This avoids having to define a new exception type for each function. Ocaml infers the type of the option when it is assigned at the return site.
|
|
taking account of register direction.
|
|
way but standard for C and most hw.
|
|
more correct
|
|
|
|
|
|
converting to integers, allowing them to work on vectors containing undef.
|
|
|
|
|
|
for mips compatibility.
|
|
|
|
|
|
possible to rewrite using arithmetic on big_int which might be faster.
|
|
embedding.
|
|
|
|
fix sail_values bug.
|
|
|
|
|
|
|
|
shallow/deep ast conversion type class instances anymore, add herdtools ast / shallow ast conversion functions, add mips ImplementationDefinedStopFetching instruction
|
|
|
|
instruction state, factor out interpreter/shallow embedding value conversion
|
|
operations
|
|
state monad, library fixes
|
|
|
|
|
|
|
|
|
|
|
|
|