aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-05-11 17:03:50 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-05-11 17:03:50 +0200
commita17d3c0419ef5531142c4826d962009c9ba81fbc (patch)
tree46ad68f1ff4269d4a9230e5af170caafd9c01906
parent2c428ad4e0177756db2f6dfe56831b5a44f6de5c (diff)
downloadcompcert-kvx-a17d3c0419ef5531142c4826d962009c9ba81fbc.tar.gz
compcert-kvx-a17d3c0419ef5531142c4826d962009c9ba81fbc.zip
maddx ordre opposé
-rw-r--r--mppa_k1c/SelectOp.vp2
-rw-r--r--mppa_k1c/SelectOpproof.v4
2 files changed, 6 insertions, 0 deletions
diff --git a/mppa_k1c/SelectOp.vp b/mppa_k1c/SelectOp.vp
index ae9d64b9..61365be2 100644
--- a/mppa_k1c/SelectOp.vp
+++ b/mppa_k1c/SelectOp.vp
@@ -144,6 +144,8 @@ Nondetfunction add (e1: expr) (e2: expr) :=
Eop (Omaddimm n) (t1:::t2:::Enil)
| (Eop (Oshlimm n) (t1:::Enil)), t2 =>
add_shlimm n t1 t2
+ | t2, (Eop (Oshlimm n) (t1:::Enil)) =>
+ add_shlimm n t1 t2
| _, _ => Eop Oadd (e1:::e2:::Enil)
end.
diff --git a/mppa_k1c/SelectOpproof.v b/mppa_k1c/SelectOpproof.v
index 7b026bf5..583b6f02 100644
--- a/mppa_k1c/SelectOpproof.v
+++ b/mppa_k1c/SelectOpproof.v
@@ -274,6 +274,10 @@ Proof.
unfold binary_constructor_sound in ADDX.
rewrite Val.add_commut.
apply ADDX; assumption.
+ (* Oaddx *)
+ - subst. pose proof eval_addx as ADDX.
+ unfold binary_constructor_sound in ADDX.
+ apply ADDX; assumption.
- TrivialExists.
Qed.