diff options
author | James Pollard <james@pollard.dev> | 2020-06-02 15:28:43 +0100 |
---|---|---|
committer | James Pollard <james@pollard.dev> | 2020-06-02 15:28:43 +0100 |
commit | 6d11e8674a3bf910d0df6600e8db9e8748844cf0 (patch) | |
tree | b395c35b59825df6bc5b6c052499d7aac3a5d83d /src/translation/HTLgen.v | |
parent | 66c6f9da947d96683391105a99f570396864491b (diff) | |
parent | 5416713c9d6a64839fabf2a923e4dd3bb25ac5fc (diff) | |
download | vericert-6d11e8674a3bf910d0df6600e8db9e8748844cf0.tar.gz vericert-6d11e8674a3bf910d0df6600e8db9e8748844cf0.zip |
Merge branch 'develop' into arrays-proof
Diffstat (limited to 'src/translation/HTLgen.v')
-rw-r--r-- | src/translation/HTLgen.v | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/src/translation/HTLgen.v b/src/translation/HTLgen.v index 4564237..aa965fc 100644 --- a/src/translation/HTLgen.v +++ b/src/translation/HTLgen.v @@ -371,19 +371,9 @@ Definition max_state (f: function) : state := Definition transl_module (f : function) : Errors.res module := run_mon (max_state f) (transf_module f). -Fixpoint main_function (main : ident) (flist : list (ident * AST.globdef fundef unit)) -{struct flist} : option function := - match flist with - | (i, AST.Gfun (AST.Internal f)) :: xs => - if Pos.eqb i main - then Some f - else main_function main xs - | _ :: xs => main_function main xs - | nil => None - end. +Definition transl_fundef := transf_partial_fundef transl_module. -Definition transf_program (d : program) : Errors.res module := - match main_function d.(AST.prog_main) d.(AST.prog_defs) with - | Some f => transl_module f - | _ => Errors.Error (Errors.msg "HTL: could not find main function") - end. +(** Translation of a whole program. *) + +Definition transl_program (p: RTL.program) : Errors.res HTL.program := + transform_partial_program transl_fundef p. |