rs6000.md (extendtfif2): Add missing 128-bit conversion insn that shows up when...
authorMichael Meissner <meissner@linux.ibm.com>
Thu, 21 Jun 2018 22:16:20 +0000 (22:16 +0000)
committerMichael Meissner <meissner@gcc.gnu.org>
Thu, 21 Jun 2018 22:16:20 +0000 (22:16 +0000)
2018-06-21  Michael Meissner  <meissner@linux.ibm.com>

* config/rs6000/rs6000.md (extendtfif2): Add missing 128-bit
conversion insn that shows up when pr85657-3.c is compiled using
IEEE 128-bit long double.

From-SVN: r261867

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

index 902f8df..ff854f8 100644 (file)
@@ -1,3 +1,9 @@
+2018-06-21  Michael Meissner  <meissner@linux.ibm.com>
+
+       * config/rs6000/rs6000.md (extendtfif2): Add missing 128-bit
+       conversion insn that shows up when pr85657-3.c is compiled using
+       IEEE 128-bit long double.
+
 2018-06-21  Eric Botcazou  <ebotcazou@adacore.com>
 
        * cfgrtl.c (fixup_reorder_chain): Do not emit NOPs in DECL_IGNORED_P
index e5c4cf1..3044e6e 100644 (file)
   DONE;
 })
 
+(define_expand "extendtfif2"
+  [(set (match_operand:IF 0 "gpc_reg_operand")
+       (float_extend:IF (match_operand:TF 1 "gpc_reg_operand")))]
+  "TARGET_FLOAT128_TYPE"
+{
+  rs6000_expand_float128_convert (operands[0], operands[1], false);
+  DONE;
+})
+
 (define_expand "trunciftf2"
   [(set (match_operand:TF 0 "gpc_reg_operand")
        (float_truncate:TF (match_operand:IF 1 "gpc_reg_operand")))]