public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/30704]  New: Incorrect constant generation for long long
@ 2007-02-05  0:56 danglin at gcc dot gnu dot org
  2007-02-05 10:16 ` [Bug rtl-optimization/30704] " rguenth at gcc dot gnu dot org
                   ` (17 more replies)
  0 siblings, 18 replies; 19+ messages in thread
From: danglin at gcc dot gnu dot org @ 2007-02-05  0:56 UTC (permalink / raw)
  To: gcc-bugs

The following problem was seen in a testcase under discussion in PR 30634:

# cat yy.c
#include <stdio.h>
double f(void)
{
  long long t = 0x000fffffffffffff;
  double t1;
  __builtin_memcpy(&t1, &t, sizeof(long long));
  return t1;
}
int main()
{
  union
    {
      long long ll;
      double d;
    } u;

  u.d = f ();
  printf ("ll = 0x%llx\n", u.ll);
  return 0;
}

# ../../xgcc -B../../ -O2 -o yy yy.c
# ./yy
ll = 0xffffffff000fffff
# ../../xgcc -B../../ -O0 -o yy yy.c
# ./yy
ll = 0xfffffffffffff
# ../../xgcc -B../../ -v
Reading specs from ../../specs
Target: hppa64-hp-hpux11.00
Configured with: ../gcc/configure --with-gnu-as --with-as=/opt/gnu64/bin/as
--with-ld=/usr/ccs/bin/ld --enable-shared --with-local-prefix=/opt/gnu64
--prefix=/opt/gnu64/gcc/gcc-4.2.0 --host=hppa64-hp-hpux11.00 --disable-nls
--with-gmp=/opt/gnu64/gcc/gcc-4.2.0
Thread model: posix
gcc version 4.2.0 20070123 (prerelease)

The constant 0x000fffffffffffff appears in the assembler output as a
pair of 32-bit .word values.  The values are reversed when the testcase
is compiled at -O2.  This doesn't appear to be a target issue since the
target only defines directives for the output of constants.


-- 
           Summary: Incorrect constant generation for long long
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: danglin at gcc dot gnu dot org
 GCC build triplet: hppa64-hp-hpux11.00
  GCC host triplet: hppa64-hp-hpux11.00
GCC target triplet: hppa64-hp-hpux11.00


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug rtl-optimization/30704] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
@ 2007-02-05 10:16 ` rguenth at gcc dot gnu dot org
  2007-02-05 19:43 ` [Bug middle-end/30704] [4.2/4.3 Regression] " pinskia at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-02-05 10:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from rguenth at gcc dot gnu dot org  2007-02-05 10:16 -------
This works ok on a little-endian target.  How does the optimized tree-dump look
like?  (I suppose we use VIEW_CONVERT_EXPR for the memcpy and maybe even fold
the constant therein)


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu dot
                   |                            |org
           Keywords|                            |wrong-code


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
  2007-02-05 10:16 ` [Bug rtl-optimization/30704] " rguenth at gcc dot gnu dot org
@ 2007-02-05 19:43 ` pinskia at gcc dot gnu dot org
  2007-02-19 21:05 ` mmitchel at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-02-05 19:43 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2007-02-05 19:43 -------
Confirmed on powerpc64-linux-gnu also.
.LC0:
        .tc FD_ffffffff_fffff[TC],0xffffffff000fffff


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|rtl-optimization            |middle-end
     Ever Confirmed|0                           |1
  GCC build triplet|hppa64-hp-hpux11.00         |
   GCC host triplet|hppa64-hp-hpux11.00         |
 GCC target triplet|hppa64-hp-hpux11.00         |hppa64-hp-hpux11.00,
                   |                            |powerpc64-linux-gnu
   Last reconfirmed|0000-00-00 00:00:00         |2007-02-05 19:43:22
               date|                            |
            Summary|Incorrect constant          |[4.2/4.3 Regression]
                   |generation for long long    |Incorrect constant
                   |                            |generation for long long
   Target Milestone|---                         |4.2.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
  2007-02-05 10:16 ` [Bug rtl-optimization/30704] " rguenth at gcc dot gnu dot org
  2007-02-05 19:43 ` [Bug middle-end/30704] [4.2/4.3 Regression] " pinskia at gcc dot gnu dot org
@ 2007-02-19 21:05 ` mmitchel at gcc dot gnu dot org
  2007-03-12 20:19 ` dje at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2007-02-19 21:05 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2007-02-19 21:05 ` mmitchel at gcc dot gnu dot org
@ 2007-03-12 20:19 ` dje at gcc dot gnu dot org
  2007-03-12 22:21 ` dje at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: dje at gcc dot gnu dot org @ 2007-03-12 20:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from dje at gcc dot gnu dot org  2007-03-12 20:19 -------
The problem appears to be occurring in real.c conversions from CONST_DOUBLE to
TARGET_DOUBLE.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2007-03-12 20:19 ` dje at gcc dot gnu dot org
@ 2007-03-12 22:21 ` dje at gcc dot gnu dot org
  2007-03-12 22:25 ` pinskia at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: dje at gcc dot gnu dot org @ 2007-03-12 22:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from dje at gcc dot gnu dot org  2007-03-12 22:20 -------
I do not believe this is an endian issue.  It is a coincidence that the output
value looks like the original constant.  GCC converts the __builtin_memcpy()
into a VIEW_CONVERT_EXPR<double>.  The constant is equivalent to a NaN and GCC
uses the value CONST_DOUBLE NaN, not the original bits.  real.c converts the
CONST_DOUBLE NaN into a ieee_double NaN, which happens to look like the value
printed.  On little endian targets, the words are swapped, which just happens
to look like the original constant.

If the VIEW_CONVERT_EXPR<double> is valid, manipulating it like a NaN seems
valid.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2007-03-12 22:21 ` dje at gcc dot gnu dot org
@ 2007-03-12 22:25 ` pinskia at gcc dot gnu dot org
  2007-03-12 22:38 ` pinskia at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-12 22:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pinskia at gcc dot gnu dot org  2007-03-12 22:25 -------
Index: ../../gcc/fold-const.c
===================================================================
--- ../../gcc/fold-const.c      (revision 122864)
+++ ../../gcc/fold-const.c      (working copy)
@@ -7357,6 +7357,7 @@ native_interpret_real (tree type, unsign
      up to 192 bits.  */
   REAL_VALUE_TYPE r;
   long tmp[6];
+  long tmp1[6];

   total_bytes = GET_MODE_SIZE (TYPE_MODE (type));
   if (total_bytes > len || total_bytes > 24)
@@ -7386,6 +7387,11 @@ native_interpret_real (tree type, unsign
     }

   real_from_target (&r, tmp, mode);
+  real_to_target (tmp1, &r, mode);
+  /* If the encoded real is going to decode differently, then reject the
constant
+     conversion. */
+  if (memcpy (tmp, tmp1,  total_bytes) != 0)
+    return NULL;
   return build_real (type, r);
 }


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2007-03-12 22:25 ` pinskia at gcc dot gnu dot org
@ 2007-03-12 22:38 ` pinskia at gcc dot gnu dot org
  2007-03-12 22:44 ` pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-12 22:38 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pinskia at gcc dot gnu dot org  2007-03-12 22:38 -------
>From native_encode_int, we get:
(gdb) p/x *(unsigned int[2]*)ptr
$14 = {0xffff0f00, 0xffffffff}

Which is obviously wrong, it should have encoded it as:
{0x000fffff, 0xffffffff}

So we get the wrong answer to begin with and it is not an issue with
native_interpret_real, at least right at this moment.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2007-03-12 22:38 ` pinskia at gcc dot gnu dot org
@ 2007-03-12 22:44 ` pinskia at gcc dot gnu dot org
  2007-03-12 23:08 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-12 22:44 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from pinskia at gcc dot gnu dot org  2007-03-12 22:44 -------
(In reply to comment #6)
> From native_encode_int, we get:
> (gdb) p/x *(unsigned int[2]*)ptr
> $14 = {0xffff0f00, 0xffffffff}

No that is right, I was looking at while doing a cross so (unsigned int[2]*)
meant we have byte endian swap.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2007-03-12 22:44 ` pinskia at gcc dot gnu dot org
@ 2007-03-12 23:08 ` pinskia at gcc dot gnu dot org
  2007-03-12 23:19 ` pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-12 23:08 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pinskia at gcc dot gnu dot org  2007-03-12 23:08 -------
the issue is with native_interpret_real really, tmp is getting the wrong words
order.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2007-03-12 23:08 ` pinskia at gcc dot gnu dot org
@ 2007-03-12 23:19 ` pinskia at gcc dot gnu dot org
  2007-03-12 23:21 ` pinskia at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-12 23:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from pinskia at gcc dot gnu dot org  2007-03-12 23:18 -------
Here is my new patch:
Index: ../../gcc/fold-const.c
===================================================================
--- ../../gcc/fold-const.c      (revision 122864)
+++ ../../gcc/fold-const.c      (working copy)
@@ -7357,6 +7357,7 @@ native_interpret_real (tree type, unsign
      up to 192 bits.  */
   REAL_VALUE_TYPE r;
   long tmp[6];
+  long tmp1[6];

   total_bytes = GET_MODE_SIZE (TYPE_MODE (type));
   if (total_bytes > len || total_bytes > 24)
@@ -7367,6 +7368,7 @@ native_interpret_real (tree type, unsign
   for (byte = 0; byte < total_bytes; byte++)
     {
       int bitpos = byte * BITS_PER_UNIT;
+      int bytepos;
       if (total_bytes > UNITS_PER_WORD)
        {
          word = byte / UNITS_PER_WORD;
@@ -7381,11 +7383,18 @@ native_interpret_real (tree type, unsign
       else
        offset = BYTES_BIG_ENDIAN ? (total_bytes - 1) - byte : byte;
       value = ptr[offset];
+      bytepos = FLOAT_WORDS_BIG_ENDIAN ? total_bytes / 4 - bitpos / 32 - 1 :
bitpos / 32;

-      tmp[bitpos / 32] |= (unsigned long)value << (bitpos & 31);
+      tmp[bytepos] |= (unsigned long)value << (bitpos & 31);
+      printf("%ld %ld [%d,%d]\n", tmp[0], tmp[1], bytepos, bitpos);
     }

   real_from_target (&r, tmp, mode);
+  real_to_target (tmp1, &r, mode);
+  /* If the encoded real is going to decode differently, then reject the
constant
+     conversion. */
+  if (memcmp (tmp, tmp1, total_bytes) != 0)
+    return NULL;
   return build_real (type, r);
 }



I am not 100 % sure this is correct but we get the correct constant now for
this one.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2007-03-12 23:19 ` pinskia at gcc dot gnu dot org
@ 2007-03-12 23:21 ` pinskia at gcc dot gnu dot org
  2007-03-13  0:10 ` pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-12 23:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from pinskia at gcc dot gnu dot org  2007-03-12 23:21 -------
I proved to my self at least with a cross from x86 to ppc64, I get the correct
output:
change t:
  long long t = 0x1234567890123456ULL;

and we get:
        .tc FD_12345678_90123456[TC],0x1234567890123456


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2007-03-12 23:21 ` pinskia at gcc dot gnu dot org
@ 2007-03-13  0:10 ` pinskia at gcc dot gnu dot org
  2007-03-13 22:16 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-13  0:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from pinskia at gcc dot gnu dot org  2007-03-13 00:10 -------
Mine, my patch is correct, just need to test it now.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |pinskia at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2007-03-13  0:10 ` pinskia at gcc dot gnu dot org
@ 2007-03-13 22:16 ` pinskia at gcc dot gnu dot org
  2007-03-14  6:09 ` pinskia at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-13 22:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from pinskia at gcc dot gnu dot org  2007-03-13 22:16 -------
Another testcase but it is not fixed by my patch as I did not fix the other
side:
int main(void)
{
  double b = 234.0;
  long long c;
  double d = b;
  __builtin_memcpy(&c, &b, sizeof(double));
  long long e = c;
  if (__builtin_memcmp (&e, &d, sizeof(double)) != 0)
    __builtin_abort ();
  return 0;
}


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |blocker
 GCC target triplet|hppa64-hp-hpux11.00,        |FLOAT_WORDS_BIG_ENDIAN
                   |powerpc64-linux-gnu         |targets


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2007-03-13 22:16 ` pinskia at gcc dot gnu dot org
@ 2007-03-14  6:09 ` pinskia at gcc dot gnu dot org
  2007-04-02 13:59 ` jakub at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-14  6:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from pinskia at gcc dot gnu dot org  2007-03-14 06:08 -------
I can't get my last testcase in comment #12 working.
Roger this was caused by your folding of VIEW_CONVERT_EXPR patch.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |roger at eyesopen dot com
         AssignedTo|pinskia at gcc dot gnu dot  |unassigned at gcc dot gnu
                   |org                         |dot org
             Status|ASSIGNED                    |NEW


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (13 preceding siblings ...)
  2007-03-14  6:09 ` pinskia at gcc dot gnu dot org
@ 2007-04-02 13:59 ` jakub at gcc dot gnu dot org
  2007-04-03  9:06 ` jakub at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-04-02 13:59 UTC (permalink / raw)
  To: gcc-bugs



-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
                   |dot org                     |
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2007-02-05 19:43:22         |2007-04-02 14:58:41
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (14 preceding siblings ...)
  2007-04-02 13:59 ` jakub at gcc dot gnu dot org
@ 2007-04-03  9:06 ` jakub at gcc dot gnu dot org
  2007-04-03  9:23 ` jakub at gcc dot gnu dot org
  2007-04-03 11:33 ` jakub at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-04-03  9:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from jakub at gcc dot gnu dot org  2007-04-03 10:05 -------
Subject: Bug 30704

Author: jakub
Date: Tue Apr  3 10:05:38 2007
New Revision: 123455

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=123455
Log:
        PR middle-end/30704
        * fold-const.c (native_encode_real): Encode real.c provided longs
        as a series of 32-bit native integers.
        (native_interpret_real): Interpret buffer as a series of 32-bit
        native integers.

        * gcc.c-torture/execute/ieee/pr30704.c: New test.

Added:
    trunk/gcc/testsuite/gcc.c-torture/execute/ieee/pr30704.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/fold-const.c
    trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (15 preceding siblings ...)
  2007-04-03  9:06 ` jakub at gcc dot gnu dot org
@ 2007-04-03  9:23 ` jakub at gcc dot gnu dot org
  2007-04-03 11:33 ` jakub at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-04-03  9:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from jakub at gcc dot gnu dot org  2007-04-03 10:23 -------
Subject: Bug 30704

Author: jakub
Date: Tue Apr  3 10:23:03 2007
New Revision: 123460

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=123460
Log:
        PR middle-end/30704
        * fold-const.c (native_encode_real): Encode real.c provided longs
        as a series of 32-bit native integers.
        (native_interpret_real): Interpret buffer as a series of 32-bit
        native integers.

        * gcc.c-torture/execute/ieee/pr30704.c: New test.

Added:
    branches/gcc-4_2-branch/gcc/testsuite/gcc.c-torture/execute/ieee/pr30704.c
Modified:
    branches/gcc-4_2-branch/gcc/ChangeLog
    branches/gcc-4_2-branch/gcc/fold-const.c
    branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug middle-end/30704] [4.2/4.3 Regression] Incorrect constant generation for long long
  2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
                   ` (16 preceding siblings ...)
  2007-04-03  9:23 ` jakub at gcc dot gnu dot org
@ 2007-04-03 11:33 ` jakub at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-04-03 11:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from jakub at gcc dot gnu dot org  2007-04-03 12:33 -------
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30704


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2007-04-03 11:33 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-05  0:56 [Bug rtl-optimization/30704] New: Incorrect constant generation for long long danglin at gcc dot gnu dot org
2007-02-05 10:16 ` [Bug rtl-optimization/30704] " rguenth at gcc dot gnu dot org
2007-02-05 19:43 ` [Bug middle-end/30704] [4.2/4.3 Regression] " pinskia at gcc dot gnu dot org
2007-02-19 21:05 ` mmitchel at gcc dot gnu dot org
2007-03-12 20:19 ` dje at gcc dot gnu dot org
2007-03-12 22:21 ` dje at gcc dot gnu dot org
2007-03-12 22:25 ` pinskia at gcc dot gnu dot org
2007-03-12 22:38 ` pinskia at gcc dot gnu dot org
2007-03-12 22:44 ` pinskia at gcc dot gnu dot org
2007-03-12 23:08 ` pinskia at gcc dot gnu dot org
2007-03-12 23:19 ` pinskia at gcc dot gnu dot org
2007-03-12 23:21 ` pinskia at gcc dot gnu dot org
2007-03-13  0:10 ` pinskia at gcc dot gnu dot org
2007-03-13 22:16 ` pinskia at gcc dot gnu dot org
2007-03-14  6:09 ` pinskia at gcc dot gnu dot org
2007-04-02 13:59 ` jakub at gcc dot gnu dot org
2007-04-03  9:06 ` jakub at gcc dot gnu dot org
2007-04-03  9:23 ` jakub at gcc dot gnu dot org
2007-04-03 11:33 ` jakub at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).