From 93b89122000e42ac57abc39734fdf05d3a89e83c Mon Sep 17 00:00:00 2001 From: xleroy Date: Fri, 15 Jul 2011 08:26:16 +0000 Subject: Merge of branch new-semantics: revised and strengthened top-level statements of semantic preservation. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1683 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e --- backend/Tailcallproof.v | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'backend/Tailcallproof.v') diff --git a/backend/Tailcallproof.v b/backend/Tailcallproof.v index ca8e9150..f3dd9ed9 100644 --- a/backend/Tailcallproof.v +++ b/backend/Tailcallproof.v @@ -616,15 +616,13 @@ Qed. (** The preservation of the observable behavior of the program then - follows, using the generic preservation theorem - [Smallstep.simulation_opt_preservation]. *) + follows. *) Theorem transf_program_correct: - forall (beh: program_behavior), not_wrong beh -> - exec_program prog beh -> exec_program tprog beh. + forward_simulation (RTL.semantics prog) (RTL.semantics tprog). Proof. - unfold exec_program; intros. - eapply simulation_opt_preservation with (measure := measure); eauto. + eapply forward_simulation_opt with (measure := measure); eauto. + eexact symbols_preserved. eexact transf_initial_states. eexact transf_final_states. exact transf_step_correct. -- cgit