2019-07-01 Segher Boessenkool <seg...@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.
--- gcc/config/rs6000/rs6000.md | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 86acaae..9e81df9 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -8116,12 +8116,8 @@ (define_expand "abs<mode>2" } 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 @@ -8212,7 +8208,7 @@ (define_insn "*ieee_128bit_vsx_neg<mode>2_internal" [(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"))] -- 1.8.3.1