1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
default Order dec
$include <prelude.sail>
type xlen : Int = config arch.xlen
constraint xlen in {32, 64}
// This test is similar to abstract_type.sail, but instantiating the
// type from the configuration file rather than the command line.
$iftarget c
$c_in_main sail_config_set_file("config_abstract_type.json");
$c_in_main sail_set_abstract_xlen();
$c_in_main_post sail_config_cleanup();
$else
$option --config ../c/config_abstract_type.json
$endif
register R : bits(xlen)
val main : unit -> unit
function main() = {
let v : bits(xlen) = config registers.R.init;
if sizeof(xlen) == 32 then {
R = v
} else {
R = 0x6464_6464_6464_6464
};
print_bits("R = ", R)
}
|