rs6000.md (ieee_128bit_vsx_abs<mode>2): Make this a parameterized name.
authorSegher Boessenkool <segher@kernel.crashing.org>
Mon, 1 Jul 2019 18:47:56 +0000 (20:47 +0200)
committerSegher Boessenkool <segher@gcc.gnu.org>
Mon, 1 Jul 2019 18:47:56 +0000 (20:47 +0200)
@ieee_128bit_vsx_abs<mode>2

* config/rs6000/rs6000.md (ieee_128bit_vsx_abs<mode>2): Make this a
parameterized name.
(abs<mode>2): Use that name.  Simplify.

From-SVN: r272907

gcc/ChangeLog
gcc/config/rs6000/rs6000.md

index 8917449..4e80c34 100644 (file)
@@ -1,5 +1,11 @@
 2019-07-01  Segher Boessenkool  <segher@kernel.crashing.org>
 
+       * config/rs6000/rs6000.md (ieee_128bit_vsx_abs<mode>2): Make this a
+       parameterized name.
+       (abs<mode>2): Use that name.  Simplify.
+
+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.
index 011edc3..9ab9ceb 100644 (file)
        }
       else if (TARGET_FLOAT128_TYPE)
        {
-         if (<MODE>mode == TFmode)
-           emit_insn (gen_ieee_128bit_vsx_abstf2 (operands[0], operands[1]));
-         else if (<MODE>mode == KFmode)
-           emit_insn (gen_ieee_128bit_vsx_abskf2 (operands[0], operands[1]));
-         else
-           FAIL;
+         emit_insn (gen_ieee_128bit_vsx_abs2 (<MODE>mode,
+                                              operands[0], operands[1]));
          DONE;
        }
       else
   [(set_attr "type" "veclogical")])
 
 ;; IEEE 128-bit absolute value
-(define_insn_and_split "ieee_128bit_vsx_abs<mode>2"
+(define_insn_and_split "@ieee_128bit_vsx_abs<mode>2"
   [(set (match_operand:IEEE128 0 "register_operand" "=wa")
        (abs:IEEE128 (match_operand:IEEE128 1 "register_operand" "wa")))
    (clobber (match_scratch:V16QI 2 "=v"))]