summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlastair Reid2018-06-27 15:44:44 +0100
committerAlastair Reid2018-06-27 15:44:44 +0100
commit90219a78d6a7c8dc14ea40fac681a9643bdc5faf (patch)
tree4ecd8048d5ba061fce564d9ba5bfd2038117606b
parent195f96ab4f10d69343ee6b7a1c1b2155af89608b (diff)
RTS: Add support for __ListConfig
-rw-r--r--lib/rts.c2
-rw-r--r--lib/rts.h1
-rw-r--r--src/specialize.ml2
3 files changed, 3 insertions, 2 deletions
diff --git a/lib/rts.c b/lib/rts.c
index 0c20d40f..656c86f7 100644
--- a/lib/rts.c
+++ b/lib/rts.c
@@ -391,7 +391,7 @@ int process_arguments(int argc, char *argv[])
// do nothing
} else {
fprintf(stderr, "Could not parse argument %s\n", optarg);
- // z__ListConfig();
+ z__ListConfig(UNIT);
return -1;
};
mpz_t s_value;
diff --git a/lib/rts.h b/lib/rts.h
index 95425d06..86b7f1f1 100644
--- a/lib/rts.h
+++ b/lib/rts.h
@@ -128,3 +128,4 @@ void setup_rts(void);
void cleanup_rts(void);
unit z__SetConfig(sail_string, sail_int);
+unit z__ListConfig(const unit u);
diff --git a/src/specialize.ml b/src/specialize.ml
index f5808dfe..de82c920 100644
--- a/src/specialize.ml
+++ b/src/specialize.ml
@@ -364,7 +364,7 @@ let specialize_id_overloads instantiations id (Defs defs) =
valspecs are then re-specialized. This process is iterated until
the whole spec is specialized. *)
let remove_unused_valspecs env ast =
- let calls = ref (IdSet.of_list [mk_id "main"; mk_id "__SetConfig"; mk_id "execute"; mk_id "decode"; mk_id "initialize_registers"; mk_id "append_64"]) in
+ let calls = ref (IdSet.of_list [mk_id "main"; mk_id "__SetConfig"; mk_id "__ListConfig"; mk_id "execute"; mk_id "decode"; mk_id "initialize_registers"; mk_id "append_64"]) in
let vs_ids = Initial_check.val_spec_ids ast in
let inspect_exp = function