summaryrefslogtreecommitdiff
path: root/cfrontend/Cshmgenproof.v
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2012-07-23 15:01:54 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2012-07-23 15:01:54 +0000
commit4297fcb821c3188449b64184af73e41491a6118f (patch)
tree3f31e0bd4bcfa107a345c1670e65290e785ee091 /cfrontend/Cshmgenproof.v
parent7c9500e438384c6c0ce478c8c73b3887137ac924 (diff)
- Revised non-overflow constraints on memory injections so that
injections compose (Values, Memdata, Memory) - Memory chunks: Mfloat64 now has alignment 8; introduced Mfloat64al32 that works like old Mfloat64 (i.e. has alignment 4); simplified handling of memcpy builtin accordingly. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1983 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'cfrontend/Cshmgenproof.v')
-rw-r--r--cfrontend/Cshmgenproof.v14
1 files changed, 6 insertions, 8 deletions
diff --git a/cfrontend/Cshmgenproof.v b/cfrontend/Cshmgenproof.v
index 0b8b9a0..47bc1c6 100644
--- a/cfrontend/Cshmgenproof.v
+++ b/cfrontend/Cshmgenproof.v
@@ -727,6 +727,7 @@ Proof.
rewrite H in MKLOAD. inv MKLOAD. constructor; auto.
Qed.
+(*
Remark capped_alignof_divides:
forall ty n,
(alignof ty | n) -> (Zmin (alignof ty) 4 | n).
@@ -743,6 +744,7 @@ Proof.
intros. generalize (alignof_1248 ty).
intros [A|[A|[A|A]]]; rewrite A; auto.
Qed.
+*)
Lemma make_memcpy_correct:
forall f dst src ty k e le m b ofs v t m',
@@ -757,11 +759,9 @@ Proof.
econstructor.
econstructor. eauto. econstructor. eauto. constructor.
econstructor; eauto.
- apply capped_alignof_124.
+ apply alignof_1248.
apply sizeof_pos.
- apply capped_alignof_divides. apply sizeof_alignof_compat.
- apply capped_alignof_divides; auto.
- apply capped_alignof_divides; auto.
+ apply sizeof_alignof_compat.
Qed.
Lemma make_store_correct:
@@ -1046,11 +1046,9 @@ Proof.
apply bind_parameters_array with b m1.
exploit me_local; eauto. intros [vk [A B]]. congruence.
econstructor; eauto.
- apply capped_alignof_124.
+ apply alignof_1248.
apply sizeof_pos.
- apply capped_alignof_divides. apply sizeof_alignof_compat.
- apply capped_alignof_divides; auto.
- apply capped_alignof_divides; auto.
+ apply sizeof_alignof_compat.
apply IHbind_parameters; auto.
Qed.