aboutsummaryrefslogtreecommitdiffstats
path: root/src/Compiler.v
diff options
context:
space:
mode:
authorYann Herklotz <git@yannherklotz.com>2021-02-02 20:34:20 +0000
committerYann Herklotz <git@yannherklotz.com>2021-02-02 20:34:20 +0000
commitf3a0c5c0095258159c495d70fda6749bbf89de70 (patch)
treef06c5305b6744cc3c12e678c97248af36ff35e30 /src/Compiler.v
parente68848fc6970acc9b973a2c9dff5eddedb833914 (diff)
downloadvericert-f3a0c5c0095258159c495d70fda6749bbf89de70.tar.gz
vericert-f3a0c5c0095258159c495d70fda6749bbf89de70.zip
Add predicated values and instructions
Diffstat (limited to 'src/Compiler.v')
-rw-r--r--src/Compiler.v7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/Compiler.v b/src/Compiler.v
index 2406dad..27cb80c 100644
--- a/src/Compiler.v
+++ b/src/Compiler.v
@@ -67,6 +67,7 @@ Require vericert.hls.RTLBlockgen.
Require vericert.hls.RTLPargen.
Require vericert.hls.HTLPargen.
Require vericert.hls.Pipeline.
+Require vericert.hls.IfConversion.
Require Import vericert.hls.HTLgenproof.
@@ -79,7 +80,7 @@ We then need to declare the external OCaml functions used to print out intermedi
Parameter print_RTL: Z -> RTL.program -> unit.
Parameter print_HTL: HTL.program -> unit.
-Parameter print_RTLBlock: RTLBlock.program -> unit.
+Parameter print_RTLBlock: Z -> RTLBlock.program -> unit.
Definition print {A: Type} (printer: A -> unit) (prog: A) : A :=
let unused := printer prog in prog.
@@ -233,7 +234,9 @@ Definition transf_hls_temp (p : Csyntax.program) : res Verilog.program :=
@@@ time "Unused globals" Unusedglob.transform_program
@@ print (print_RTL 7)
@@@ RTLBlockgen.transl_program
- @@ print print_RTLBlock
+ @@ print (print_RTLBlock 1)
+ @@ IfConversion.transf_program
+ @@ print (print_RTLBlock 2)
@@@ RTLPargen.transl_program
@@@ HTLPargen.transl_program
@@ print print_HTL