| Age | Commit message (Collapse) | Author |
|
|
|
|
|
mono-experiments
|
|
# Conflicts:
# src/type_internal.ml
|
|
|
|
The reason you want this is to do something like (note new parser only):
*********
default Order dec
type bits 'n:Int = vector('n - 1, 'n, dec, bit)
val zeros : forall 'n. atom('n) -> bits('n)
val decode : bool -> unit
function decode b = {
let 'datasize: {|32, 64|} = if b then 32 else 64;
let imm: bits('datasize) = zeros(datasize);
()
}
*********
for the ASL decode functions, where the typechecker now knows that the
datasize variable and the length of imm are the same.
|
|
|
|
|
|
string_of_value as used everywhere else
|
|
|
|
|
|
|
|
|
|
Also rename some functions for consistency.
|
|
|
|
|
|
translation to and from herdtools ast.
|
|
|
|
coded to zero
|
|
to translate exceptions in ASL. See test/typecheck/pass/trycatch.sail.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
operators.
|
|
|
|
|
|
holders for FENCE.I and ECALL.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Conflicts:
src/pretty_print_common.ml
|
|
|
|
|
|
|
|
Implemented using the exception monad, by throwing and catching the return
value
|
|
(until location information is updated)
|
|
|
|
|
|
|