aboutsummaryrefslogtreecommitdiffstats
path: root/aarch64/Asmgenproof.v
diff options
context:
space:
mode:
authorLéo Gourdin <leo.gourdin@univ-grenoble-alpes.fr>2021-01-20 16:46:52 +0100
committerLéo Gourdin <leo.gourdin@univ-grenoble-alpes.fr>2021-01-20 16:46:52 +0100
commit8781c27a16463fd8f83a9c6eaba7b76846bd296c (patch)
tree17beca9da05a776da1193eb9c2002ea79a3261b5 /aarch64/Asmgenproof.v
parent87e268bc9e6079b5aea31cd6c20e30d00adf2bb8 (diff)
downloadcompcert-kvx-8781c27a16463fd8f83a9c6eaba7b76846bd296c.tar.gz
compcert-kvx-8781c27a16463fd8f83a9c6eaba7b76846bd296c.zip
Adding fp loads pair
Diffstat (limited to 'aarch64/Asmgenproof.v')
-rw-r--r--aarch64/Asmgenproof.v10
1 files changed, 6 insertions, 4 deletions
diff --git a/aarch64/Asmgenproof.v b/aarch64/Asmgenproof.v
index a33f90b3..23db2e92 100644
--- a/aarch64/Asmgenproof.v
+++ b/aarch64/Asmgenproof.v
@@ -1100,7 +1100,7 @@ Proof.
destruct (Mem.loadv chk2 m2
(eval_addressing lk
(get_offset_addr a match chk1 with
- | Mint32 | Many32 => 4
+ | Mint32 | Mfloat32| Many32 => 4
| _ => 8
end) rs1));
inversion HLOAD; auto.
@@ -1150,7 +1150,7 @@ Proof.
(eval_addressing lk
(get_offset_addr a
match chk1 with
- | Mint32 | Many32 => 4
+ | Mint32 | Mfloat32 | Many32 => 4
| _ => 8
end) rs1) v2);
inversion HSTORE; auto.
@@ -1331,12 +1331,14 @@ Proof.
destruct ld.
- destruct ld; monadInv TRANSBI; try destruct_ireg_inv; exploit load_rd_a_preserved; eauto;
intros; simpl in *; destruct sz; eauto.
- - destruct ld; monadInv TRANSBI; exploit load_double_preserved; eauto. }
+ - destruct ld; monadInv TRANSBI; destruct rd1 as [[rd1'|]|]; destruct rd2 as [[rd2'|]|];
+ inv EQ; inv EQ1; exploit load_double_preserved; eauto. }
{ (* PStore *)
destruct st.
- destruct st; monadInv TRANSBI; try destruct_ireg_inv; exploit store_rs_a_preserved; eauto;
simpl in *; inv_matchi; find_rwrt_ag.
- - destruct st; monadInv TRANSBI; exploit store_double_preserved; eauto;
+ - destruct st; monadInv TRANSBI; destruct rs0 as [[rs0'|]|]; destruct rs3 as [[rs3'|]|];
+ inv EQ; inv EQ1; exploit store_double_preserved; eauto;
simpl in *; inv_matchi; find_rwrt_ag. }
{ (* Pallocframe *)
monadInv TRANSBI;