(** ** Relational specification of the translation. *)

Definition match_prog (p: Csyntax.program) (tp: Clight.program) :=
    match_program (fun ctx f tf => tr_fundef f tf) eq p tp
 /\ prog_types tp = prog_types p.

Lemma type_of_fundef_preserved: forall f tf, tr_fundef f tf -> type_of_fundef tf = Csyntax.type_of_fundef f.