aboutsummaryrefslogtreecommitdiffstats
path: root/arm/SelectOp.vp
diff options
context:
space:
mode:
authorxleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-01-02 15:59:11 +0000
committerxleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-01-02 15:59:11 +0000
commit29e0c9b2c99a437fc9dfab66e1abdd546a5308d6 (patch)
tree2c3e924125d9b91e5e9b57b87c80f5b5ce9c6710 /arm/SelectOp.vp
parentc71e155dbbf34fa17d14e8eee50a019c8ccfd6f5 (diff)
downloadcompcert-kvx-29e0c9b2c99a437fc9dfab66e1abdd546a5308d6.tar.gz
compcert-kvx-29e0c9b2c99a437fc9dfab66e1abdd546a5308d6.zip
Updated ARM backend wrt new static analyses and optimizations.
NeedOp, Deadcode: must have distinct needs per argument of an operator. This change remains to be propagated to IA32 and PPC. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2399 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'arm/SelectOp.vp')
-rw-r--r--arm/SelectOp.vp4
1 files changed, 2 insertions, 2 deletions
diff --git a/arm/SelectOp.vp b/arm/SelectOp.vp
index 4cd09d1b..767e7471 100644
--- a/arm/SelectOp.vp
+++ b/arm/SelectOp.vp
@@ -369,11 +369,11 @@ Definition compf (c: comparison) (e1: expr) (e2: expr) :=
Definition cast8unsigned (e: expr) := andimm (Int.repr 255) e.
-Definition cast8signed (e: expr) := shrimm (shlimm e (Int.repr 24)) (Int.repr 24).
+Definition cast8signed (e: expr) := Eop Ocast8signed (e ::: Enil).
Definition cast16unsigned (e: expr) := andimm (Int.repr 65535) e.
-Definition cast16signed (e: expr) := shrimm (shlimm e (Int.repr 16)) (Int.repr 16).
+Definition cast16signed (e: expr) := Eop Ocast16signed (e ::: Enil).
(** ** Floating-point conversions *)