aboutsummaryrefslogtreecommitdiffstats
path: root/driver/Complements.v
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>2016-03-06 10:36:55 +0100
committerXavier Leroy <xavier.leroy@inria.fr>2016-03-06 10:36:55 +0100
commit478ae4c3aeb1a31b0eec9ab7eb8fe20ec2671614 (patch)
treec9f38903308fcc58ec317f850642454393eea1f9 /driver/Complements.v
parent862e6d00d0ee5d3a534ab111790d19823a73efa2 (diff)
downloadcompcert-kvx-478ae4c3aeb1a31b0eec9ab7eb8fe20ec2671614.tar.gz
compcert-kvx-478ae4c3aeb1a31b0eec9ab7eb8fe20ec2671614.zip
Misc updates following the introduction of the new linking framework
Diffstat (limited to 'driver/Complements.v')
-rw-r--r--driver/Complements.v12
1 files changed, 7 insertions, 5 deletions
diff --git a/driver/Complements.v b/driver/Complements.v
index 8651f2ff..f7598758 100644
--- a/driver/Complements.v
+++ b/driver/Complements.v
@@ -80,17 +80,19 @@ Theorem transf_cstrategy_program_preservation:
Proof.
assert (WBT: forall p, well_behaved_traces (Cstrategy.semantics p)).
intros. eapply ssr_well_behaved. apply Cstrategy.semantics_strongly_receptive.
- intros. intuition.
+ intros.
+ assert (MATCH: match_prog p tp) by (apply transf_c_program_match; auto).
+ intuition auto.
eapply forward_simulation_behavior_improves; eauto.
- apply (fst (transf_cstrategy_program_correct _ _ H)).
+ apply (proj1 (cstrategy_semantic_preservation _ _ MATCH)).
exploit backward_simulation_behavior_improves.
- apply (snd (transf_cstrategy_program_correct _ _ H)).
+ apply (proj2 (cstrategy_semantic_preservation _ _ MATCH)).
eauto.
intros [beh1 [A B]]. exists beh1; split; auto. rewrite atomic_behaviors; auto.
eapply forward_simulation_same_safe_behavior; eauto.
- apply (fst (transf_cstrategy_program_correct _ _ H)).
+ apply (proj1 (cstrategy_semantic_preservation _ _ MATCH)).
exploit backward_simulation_same_safe_behavior.
- apply (snd (transf_cstrategy_program_correct _ _ H)).
+ apply (proj2 (cstrategy_semantic_preservation _ _ MATCH)).
intros. rewrite <- atomic_behaviors in H2; eauto. eauto.
intros. rewrite atomic_behaviors; auto.
Qed.