aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-05-11 06:41:20 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-05-11 06:41:20 +0200
commitf3d9c333fb27b1afb733b7aa8dfc9e2b22b596aa (patch)
treea3ef8363f2e3488532fc5ac8161c4024b3ebc0cd
parentd336d31434602b786bcaa89c8d91d2472d9cb3f5 (diff)
downloadcompcert-kvx-f3d9c333fb27b1afb733b7aa8dfc9e2b22b596aa.tar.gz
compcert-kvx-f3d9c333fb27b1afb733b7aa8dfc9e2b22b596aa.zip
more gen O -> P
-rw-r--r--mppa_k1c/Asmblockgen.v6
1 files changed, 6 insertions, 0 deletions
diff --git a/mppa_k1c/Asmblockgen.v b/mppa_k1c/Asmblockgen.v
index ef980894..505d6c86 100644
--- a/mppa_k1c/Asmblockgen.v
+++ b/mppa_k1c/Asmblockgen.v
@@ -458,6 +458,12 @@ Definition transl_op
| Orevsubimm n, a1 :: nil =>
do rd <- ireg_of res; do rs <- ireg_of a1;
OK (Prevsubiw rd rs n ::i k)
+ | Orevsubx shift, a1 :: a2 :: nil =>
+ do rd <- ireg_of res; do rs1 <- ireg_of a1; do rs2 <- ireg_of a2;
+ OK (Prevsubxw shift rd rs1 rs2 ::i k)
+ | Orevsubximm shift n, a1 :: nil =>
+ do rd <- ireg_of res; do rs <- ireg_of a1;
+ OK (Prevsubxiw shift rd rs n ::i k)
| Omul, a1 :: a2 :: nil =>
do rd <- ireg_of res; do rs1 <- ireg_of a1; do rs2 <- ireg_of a2;
OK (Pmulw rd rs1 rs2 ::i k)