summaryrefslogtreecommitdiff
path: root/gcc/config/arm/neon.ml
diff options
context:
space:
mode:
authormgretton <mgretton@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-13 10:53:57 +0000
committermgretton <mgretton@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-13 10:53:57 +0000
commitfa89c18dd67096cadc9c07de6245631beab568ab (patch)
tree42462955e0d31178ecd401ffc15b2dedfc518665 /gcc/config/arm/neon.ml
parent1da1898e5fd1795b08da6611d10197386b28491c (diff)
downloadgcc-fa89c18dd67096cadc9c07de6245631beab568ab.tar.gz
* gcc/config/arm/neon.ml (ops): Fixup expected instructions for
unsigned vector compares. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185328 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/arm/neon.ml')
-rw-r--r--gcc/config/arm/neon.ml22
1 files changed, 16 insertions, 6 deletions
diff --git a/gcc/config/arm/neon.ml b/gcc/config/arm/neon.ml
index 363e55c713c..85eb5ec42f2 100644
--- a/gcc/config/arm/neon.ml
+++ b/gcc/config/arm/neon.ml
@@ -780,14 +780,19 @@ let ops =
(* Comparison, greater-than or equal. *)
Vcge, [], All (3, Dreg), "vcge", cmp_sign_matters, F32 :: s_8_32;
- Vcge, [Builtin_name "vcgeu"], All (3, Dreg), "vcge", cmp_sign_matters, u_8_32;
+ Vcge, [Instruction_name ["vcge"]; Builtin_name "vcgeu"],
+ All (3, Dreg), "vcge", cmp_sign_matters,
+ u_8_32;
Vcge, [], All (3, Qreg), "vcgeQ", cmp_sign_matters, F32 :: s_8_32;
- Vcge, [Builtin_name "vcgeu"], All (3, Qreg), "vcgeQ", cmp_sign_matters, u_8_32;
+ Vcge, [Instruction_name ["vcge"]; Builtin_name "vcgeu"],
+ All (3, Qreg), "vcgeQ", cmp_sign_matters,
+ u_8_32;
(* Comparison, less-than or equal. *)
Vcle, [Flipped "vcge"], All (3, Dreg), "vcle", cmp_sign_matters,
F32 :: s_8_32;
- Vcle, [Flipped "vcgeu"], All (3, Dreg), "vcle", cmp_sign_matters,
+ Vcle, [Instruction_name ["vcge"]; Flipped "vcgeu"],
+ All (3, Dreg), "vcle", cmp_sign_matters,
u_8_32;
Vcle, [Instruction_name ["vcge"]; Flipped "vcgeQ"],
All (3, Qreg), "vcleQ", cmp_sign_matters,
@@ -798,14 +803,19 @@ let ops =
(* Comparison, greater-than. *)
Vcgt, [], All (3, Dreg), "vcgt", cmp_sign_matters, F32 :: s_8_32;
- Vcgt, [Builtin_name "vcgtu"], All (3, Dreg), "vcgt", cmp_sign_matters, u_8_32;
+ Vcgt, [Instruction_name ["vcgt"]; Builtin_name "vcgtu"],
+ All (3, Dreg), "vcgt", cmp_sign_matters,
+ u_8_32;
Vcgt, [], All (3, Qreg), "vcgtQ", cmp_sign_matters, F32 :: s_8_32;
- Vcgt, [Builtin_name "vcgtu"], All (3, Qreg), "vcgtQ", cmp_sign_matters, u_8_32;
+ Vcgt, [Instruction_name ["vcgt"]; Builtin_name "vcgtu"],
+ All (3, Qreg), "vcgtQ", cmp_sign_matters,
+ u_8_32;
(* Comparison, less-than. *)
Vclt, [Flipped "vcgt"], All (3, Dreg), "vclt", cmp_sign_matters,
F32 :: s_8_32;
- Vclt, [Flipped "vcgtu"], All (3, Dreg), "vclt", cmp_sign_matters,
+ Vclt, [Instruction_name ["vcgt"]; Flipped "vcgtu"],
+ All (3, Dreg), "vclt", cmp_sign_matters,
u_8_32;
Vclt, [Instruction_name ["vcgt"]; Flipped "vcgtQ"],
All (3, Qreg), "vcltQ", cmp_sign_matters,