PR target/18371
Backport from mainline
2004-12-19 Steven Bosscher <stevenb@suse.de>
* config/i386/i386.c (ix86_split_to_parts): Use an array with
four elements for decoding a CONST_DOUBLE on 64 bits targets.
From-SVN: r96558
+2005-03-16 Roger Sayle <roger@eyesopen.com>
+
+ PR target/18371
+ Backport from mainline
+ 2004-12-19 Steven Bosscher <stevenb@suse.de>
+ * config/i386/i386.c (ix86_split_to_parts): Use an array with
+ four elements for decoding a CONST_DOUBLE on 64 bits targets.
+
2005-03-14 Alan Modra <amodra@bigpond.net.au>
* config.gcc: Remove excess indentation.
else if (GET_CODE (operand) == CONST_DOUBLE)
{
REAL_VALUE_TYPE r;
- long l[3];
+ long l[4];
REAL_VALUE_FROM_CONST_DOUBLE (r, operand);
real_to_target (l, &r, mode);
+
/* Do not use shift by 32 to avoid warning on 32bit systems. */
if (HOST_BITS_PER_WIDE_INT >= 64)
parts[0]
DImode);
else
parts[0] = immed_double_const (l[0], l[1], DImode);
+
if (upper_mode == SImode)
parts[1] = gen_int_mode (l[2], SImode);
else if (HOST_BITS_PER_WIDE_INT >= 64)