Commit 306f66aa by Segher Boessenkool Committed by Segher Boessenkool

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
parent dca369ba
2019-07-01 Segher Boessenkool <segher@kernel.crashing.org> 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 * config/rs6000/rs6000.md (abs<mode>2_hw): Make this a parameterized
name. name.
(abs<mode>2): Use that name. Simplify. (abs<mode>2): Use that name. Simplify.
......
...@@ -8076,14 +8076,8 @@ ...@@ -8076,14 +8076,8 @@
if (TARGET_FLOAT128_HW) if (TARGET_FLOAT128_HW)
emit_insn (gen_neg2_hw (<MODE>mode, operands[0], operands[1])); emit_insn (gen_neg2_hw (<MODE>mode, operands[0], operands[1]));
else if (TARGET_FLOAT128_TYPE) else if (TARGET_FLOAT128_TYPE)
{ emit_insn (gen_ieee_128bit_vsx_neg2 (<MODE>mode,
if (<MODE>mode == TFmode) operands[0], operands[1]));
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 ();
}
else else
{ {
rtx libfunc = optab_libfunc (neg_optab, <MODE>mode); rtx libfunc = optab_libfunc (neg_optab, <MODE>mode);
...@@ -8195,7 +8189,7 @@ ...@@ -8195,7 +8189,7 @@
;; twiddle the sign bit. Later GCSE passes can then combine multiple uses of ;; twiddle the sign bit. Later GCSE passes can then combine multiple uses of
;; neg/abs to create the constant just once. ;; 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") [(set (match_operand:IEEE128 0 "register_operand" "=wa")
(neg:IEEE128 (match_operand:IEEE128 1 "register_operand" "wa"))) (neg:IEEE128 (match_operand:IEEE128 1 "register_operand" "wa")))
(clobber (match_scratch:V16QI 2 "=v"))] (clobber (match_scratch:V16QI 2 "=v"))]
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment