aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2019-07-01 20:47:05 +0200
committerSegher Boessenkool <segher@gcc.gnu.org>2019-07-01 20:47:05 +0200
commit306f66aaaaee3fa5240611ab0cbe22c1240f1f27 (patch)
treeab3db608247893fac1ab936fe68072e201178dc9
parentdca369ba28de3a4074d011c4f067def7cd4553ba (diff)
downloadgcc-306f66aaaaee3fa5240611ab0cbe22c1240f1f27.zip
gcc-306f66aaaaee3fa5240611ab0cbe22c1240f1f27.tar.gz
gcc-306f66aaaaee3fa5240611ab0cbe22c1240f1f27.tar.bz2
rs6000.md (ieee_128bit_vsx_neg<mode>2): Make this a parameterized name.
@ieee_128bit_vsx_neg<mode>2 * config/rs6000/rs6000.md (ieee_128bit_vsx_neg<mode>2): Make this a parameterized name. (neg<mode>2): Use that name. Simplify. From-SVN: r272906
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.md12
2 files changed, 9 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b36c001..8917449 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2019-07-01 Segher Boessenkool <segher@kernel.crashing.org>
+ * config/rs6000/rs6000.md (ieee_128bit_vsx_neg<mode>2): Make this a
+ parameterized name.
+ (neg<mode>2): Use that name. Simplify.
+
+2019-07-01 Segher Boessenkool <segher@kernel.crashing.org>
+
* config/rs6000/rs6000.md (abs<mode>2_hw): Make this a parameterized
name.
(abs<mode>2): Use that name. Simplify.
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 0eec35e..011edc3 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -8076,14 +8076,8 @@
if (TARGET_FLOAT128_HW)
emit_insn (gen_neg2_hw (<MODE>mode, operands[0], operands[1]));
else if (TARGET_FLOAT128_TYPE)
- {
- if (<MODE>mode == TFmode)
- emit_insn (gen_ieee_128bit_vsx_negtf2 (operands[0], operands[1]));
- else if (<MODE>mode == KFmode)
- emit_insn (gen_ieee_128bit_vsx_negkf2 (operands[0], operands[1]));
- else
- gcc_unreachable ();
- }
+ emit_insn (gen_ieee_128bit_vsx_neg2 (<MODE>mode,
+ operands[0], operands[1]));
else
{
rtx libfunc = optab_libfunc (neg_optab, <MODE>mode);
@@ -8195,7 +8189,7 @@
;; twiddle the sign bit. Later GCSE passes can then combine multiple uses of
;; neg/abs to create the constant just once.
-(define_insn_and_split "ieee_128bit_vsx_neg<mode>2"
+(define_insn_and_split "@ieee_128bit_vsx_neg<mode>2"
[(set (match_operand:IEEE128 0 "register_operand" "=wa")
(neg:IEEE128 (match_operand:IEEE128 1 "register_operand" "wa")))
(clobber (match_scratch:V16QI 2 "=v"))]