Definition match_prog (p: CminorSel.program) (tp: RTL.program) :=
  match_program (fun cu f tf => transl_fundef f = Errors.OK tf) eq p tp.

Lemma transl_expr_Econdition_correct: forall (le : letenv) (a: condexpr) (ifso ifnot : expr) (va : bool) (v : val), eval_condexpr ge sp e m le a va -> transl_condexpr_prop le a va -> eval_expr ge sp e m le (if va then ifso else ifnot) v -> transl_expr_prop le (if va then ifso else ifnot) v -> transl_expr_prop le (Econdition a ifso ifnot) v.