aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2012-08-22 19:43:58 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2012-08-22 12:43:58 -0700
commita8a68bb00acf28a07497e7d233f13f4e5097d21a (patch)
treeef9d3be339da3629aa1047116cf8e4ba865c56b5
parent21e2818df9486dbc297f4672f06850d744de85ec (diff)
downloadgcc-a8a68bb00acf28a07497e7d233f13f4e5097d21a.zip
gcc-a8a68bb00acf28a07497e7d233f13f4e5097d21a.tar.gz
gcc-a8a68bb00acf28a07497e7d233f13f4e5097d21a.tar.bz2
Replace REAL_VALUE_TO_TARGET_LONG_DOUBLE with real_to_target
PR target/54347 * config/i386/i386.c (ix86_split_to_parts): Replace REAL_VALUE_TO_TARGET_LONG_DOUBLE with real_to_target. From-SVN: r190598
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/i386.c4
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f965a4e..085bef1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2012-08-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/54347
+ * config/i386/i386.c (ix86_split_to_parts): Replace
+ REAL_VALUE_TO_TARGET_LONG_DOUBLE with real_to_target.
+
2012-08-22 Richard Guenther <rguenther@suse.de>
* tree-vectorizer.c (vectorize_loops): Do not call
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 5da4da2..a6fc45b 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -20743,7 +20743,9 @@ ix86_split_to_parts (rtx operand, rtx *parts, enum machine_mode mode)
parts[2] = gen_int_mode (l[2], SImode);
break;
case XFmode:
- REAL_VALUE_TO_TARGET_LONG_DOUBLE (r, l);
+ /* We can't use REAL_VALUE_TO_TARGET_LONG_DOUBLE since
+ long double may not be 80-bit. */
+ real_to_target (l, &r, mode);
parts[2] = gen_int_mode (l[2], SImode);
break;
case DFmode: