X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=cparser%2FTransform.mli;fp=cparser%2FTransform.mli;h=960d890b222aa358a9e4200ce312950b42d76b8d;hb=06154857ae14827fc40d714ac29ae54cc090cd57;hp=0000000000000000000000000000000000000000;hpb=69b6010f0016bba47bc7e74ad8e1f3fa473f259f;p=pkg-cerco%2Facc-trusted.git diff --git a/cparser/Transform.mli b/cparser/Transform.mli new file mode 100644 index 0000000..960d890 --- /dev/null +++ b/cparser/Transform.mli @@ -0,0 +1,30 @@ +(* *********************************************************************) +(* *) +(* The Compcert verified compiler *) +(* *) +(* Xavier Leroy, INRIA Paris-Rocquencourt *) +(* *) +(* Copyright Institut National de Recherche en Informatique et en *) +(* Automatique. All rights reserved. This file is distributed *) +(* under the terms of the GNU General Public License as published by *) +(* the Free Software Foundation, either version 2 of the License, or *) +(* (at your option) any later version. This file is also distributed *) +(* under the terms of the INRIA Non-Commercial License Agreement. *) +(* *) +(* *********************************************************************) + +(* Generic program transformation *) + +val reset_temps : unit -> unit +val new_temp_var : ?name:string -> C.typ -> C.ident +val new_temp : ?name:string -> C.typ -> C.exp +val get_temps : unit -> C.decl list + +val program : + ?decl:(Env.t -> C.decl -> C.decl) -> + ?fundef:(Env.t -> C.fundef -> C.fundef) -> + ?composite:(Env.t -> + C.struct_or_union -> C.ident -> C.field list -> C.field list) -> + ?typedef:(Env.t -> C.ident -> Env.typedef_info -> Env.typedef_info) -> + C.program -> + C.program