2019-07-01  Segher Boessenkool  <seg...@kernel.crashing.org>

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

---
 gcc/config/rs6000/rs6000.md | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 3235eb2..5b3e458 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -7775,7 +7775,7 @@ (define_insn_and_split "*mov<mode>_softfloat"
            (const_string "8")
            (const_string "16"))])])
 
-(define_expand "extenddf<mode>2"
+(define_expand "@extenddf<mode>2"
   [(set (match_operand:FLOAT128 0 "gpc_reg_operand")
        (float_extend:FLOAT128 (match_operand:DF 1 "gpc_reg_operand")))]
   "TARGET_HARD_FLOAT && TARGET_LONG_DOUBLE_128"
@@ -7922,12 +7922,7 @@ (define_expand "floatsi<mode>2"
     {
       rtx tmp = gen_reg_rtx (DFmode);
       expand_float (tmp, op1, false);
-      if (<MODE>mode == TFmode)
-       emit_insn (gen_extenddftf2 (op0, tmp));
-      else if (<MODE>mode == IFmode)
-       emit_insn (gen_extenddfif2 (op0, tmp));
-      else
-       gcc_unreachable ();
+      emit_insn (gen_extenddf2 (<MODE>mode, op0, tmp));
       DONE;
     }
 })
-- 
1.8.3.1

Reply via email to