aboutsummaryrefslogtreecommitdiffstats
path: root/backend/Linearizetyping.v
diff options
context:
space:
mode:
authorxleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2006-09-04 15:08:29 +0000
committerxleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2006-09-04 15:08:29 +0000
commit73729d23ac13275c0d28d23bc1b1f6056104e5d9 (patch)
treee3044ce75edb30377bd8c87356b7617eba5ed223 /backend/Linearizetyping.v
parentc79434827bf2bd71f857f4471f7bbf381fddd189 (diff)
downloadcompcert-73729d23ac13275c0d28d23bc1b1f6056104e5d9.tar.gz
compcert-73729d23ac13275c0d28d23bc1b1f6056104e5d9.zip
Fusion de la branche "traces":
- Ajout de traces d'evenements d'E/S dans les semantiques - Ajout constructions switch et allocation dynamique - Initialisation des variables globales - Portage Coq 8.1 beta Debut d'integration du front-end C: - Traduction Clight -> Csharpminor dans cfrontend/ - Modifications de Csharpminor et Globalenvs en consequence. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@72 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'backend/Linearizetyping.v')
-rw-r--r--backend/Linearizetyping.v16
1 files changed, 14 insertions, 2 deletions
diff --git a/backend/Linearizetyping.v b/backend/Linearizetyping.v
index 6cebca8d..66926e9a 100644
--- a/backend/Linearizetyping.v
+++ b/backend/Linearizetyping.v
@@ -274,6 +274,8 @@ Proof.
(* call *)
constructor; auto.
eapply size_arguments_bound; eauto.
+ (* alloc *)
+ constructor.
(* goto *)
constructor.
(* cond *)
@@ -327,14 +329,24 @@ Proof.
apply cleanup_function_conservation_2; auto.
Qed.
+Lemma wt_transf_fundef:
+ forall f,
+ LTLtyping.wt_fundef f ->
+ wt_fundef (transf_fundef f).
+Proof.
+ induction 1; simpl.
+ constructor; assumption.
+ constructor; apply wt_transf_function; assumption.
+Qed.
+
Lemma program_typing_preserved:
forall (p: LTL.program),
LTLtyping.wt_program p ->
Lineartyping.wt_program (transf_program p).
Proof.
intros; red; intros.
- generalize (transform_program_function transf_function p i f H0).
+ generalize (transform_program_function transf_fundef p i f H0).
intros [f0 [IN TR]].
- subst f. apply wt_transf_function; auto.
+ subst f. apply wt_transf_fundef; auto.
apply (H i f0 IN).
Qed.