public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed
@ 2011-09-29 18:58 pkoning at gcc dot gnu.org
  2011-09-29 18:58 ` [Bug c/50569] " pkoning at gcc dot gnu.org
                   ` (16 more replies)
  0 siblings, 17 replies; 18+ messages in thread
From: pkoning at gcc dot gnu.org @ 2011-09-29 18:58 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 50569
           Summary: Wrong code error: memcpy eliminated when it is needed
    Classification: Unclassified
           Product: gcc
           Version: 4.6.1
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: c
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: pkoning@gcc.gnu.org


Created attachment 25382
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25382
Test code that shows the issue

This issue shows up in 4.6.1 but is not present in 4.5.1.

The attached sample code picks up a buffer pointer from external data
structures, copies a block of data to a temporary variable, and then references
the temporary.  GCC 4.6.1 optimized away the memcpy and instead directly
references the original data, which is fine... except that the pointer is "char
*" meaning that the data structure in that buffer is not necessarily aligned. 
And the references through that pointer are written as if the data IS aligned,
so on my strict-alignment target (MIPS) I get an alignment exception.

GCC 4.5.1 does it right -- it also optimizes away the memcpy but it accesses
the original data using unaligned accesses.


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

* [Bug c/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
@ 2011-09-29 18:58 ` pkoning at gcc dot gnu.org
  2011-09-29 19:00 ` mikpe at it dot uu.se
                   ` (15 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: pkoning at gcc dot gnu.org @ 2011-09-29 18:58 UTC (permalink / raw)
  To: gcc-bugs

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

Paul Koning <pkoning at gcc dot gnu.org> changed:

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


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

* [Bug c/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
  2011-09-29 18:58 ` [Bug c/50569] " pkoning at gcc dot gnu.org
@ 2011-09-29 19:00 ` mikpe at it dot uu.se
  2011-09-29 19:53 ` [Bug middle-end/50569] " pinskia at gcc dot gnu.org
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-09-29 19:00 UTC (permalink / raw)
  To: gcc-bugs

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

Mikael Pettersson <mikpe at it dot uu.se> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mikpe at it dot uu.se

--- Comment #1 from Mikael Pettersson <mikpe at it dot uu.se> 2011-09-29 18:57:17 UTC ---
Can you add a suitable main() to the test case to make it executable?  I'd like
to check it on two strict-alignment platforms (ARMv5 and SPARC).  A cursory
inspection of the generated assembly code hints that gcc-4.6-20110923 and
gcc-4.7-20110924 keep the memcpy() calls when targeting armv5tel-linux-gnueabi.


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

* [Bug middle-end/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
  2011-09-29 18:58 ` [Bug c/50569] " pkoning at gcc dot gnu.org
  2011-09-29 19:00 ` mikpe at it dot uu.se
@ 2011-09-29 19:53 ` pinskia at gcc dot gnu.org
  2011-09-29 20:45 ` pkoning at gcc dot gnu.org
                   ` (13 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu.org @ 2011-09-29 19:53 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|c                           |middle-end

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> 2011-09-29 19:00:01 UTC ---
I could not reproduce this in our internal version of gcc 4.6.1 though I do
have a patch that might fix this.


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

* [Bug middle-end/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2011-09-29 19:53 ` [Bug middle-end/50569] " pinskia at gcc dot gnu.org
@ 2011-09-29 20:45 ` pkoning at gcc dot gnu.org
  2011-09-29 20:56 ` mikpe at it dot uu.se
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: pkoning at gcc dot gnu.org @ 2011-09-29 20:45 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Paul Koning <pkoning at gcc dot gnu.org> 2011-09-29 19:52:47 UTC ---
Created attachment 25383
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25383
Test case with main()

Here is an updated testcase.  This one runs to completion with 4.5.1, aborts
with a bus error exception on 4.6.1.

I compiled with -mabi=n32 -O1, but as far as I can tell from inspecting the
generated code, the choice of ABI is not a factor.


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

* [Bug middle-end/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2011-09-29 20:45 ` pkoning at gcc dot gnu.org
@ 2011-09-29 20:56 ` mikpe at it dot uu.se
  2011-09-29 22:14 ` pkoning at gcc dot gnu.org
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-09-29 20:56 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Mikael Pettersson <mikpe at it dot uu.se> 2011-09-29 20:47:09 UTC ---
The updated test case caused no alignment exceptions on armv5tel-linux-gnueabi
with gcc 4.6-20110923 or 4.7-20110924.  I'll check it on sparc64-linux tomorrow
evening.


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

* [Bug middle-end/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2011-09-29 20:56 ` mikpe at it dot uu.se
@ 2011-09-29 22:14 ` pkoning at gcc dot gnu.org
  2011-10-01 10:29 ` mikpe at it dot uu.se
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: pkoning at gcc dot gnu.org @ 2011-09-29 22:14 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Paul Koning <pkoning at gcc dot gnu.org> 2011-09-29 20:55:15 UTC ---
If the memcpy actually happens, that is the expected result.  The issue in the
MIPS case is that the memcpy is optimized away, and the source data accessed
instead, which would be ok if GCC hadn't lost track of the fact that it's a
char* pointer (and, in addition, that all the fields of the struct in question
are defined as "packed").


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

* [Bug middle-end/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2011-09-29 22:14 ` pkoning at gcc dot gnu.org
@ 2011-10-01 10:29 ` mikpe at it dot uu.se
  2011-11-04 15:32 ` mikpe at it dot uu.se
                   ` (9 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-10-01 10:29 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Mikael Pettersson <mikpe at it dot uu.se> 2011-10-01 10:29:07 UTC ---
This test case fails with a SIGBUS on sparc64-linux when compiled with -O1 -m32
by gcc 4.6-20110923 or 4.7-20110910.  gcc 4.5 and 4.4 generate correct code.


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

* [Bug middle-end/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2011-10-01 10:29 ` mikpe at it dot uu.se
@ 2011-11-04 15:32 ` mikpe at it dot uu.se
  2011-11-04 20:58 ` mikpe at it dot uu.se
                   ` (8 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-11-04 15:32 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Mikael Pettersson <mikpe at it dot uu.se> 2011-11-04 15:31:25 UTC ---
Created attachment 25716
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25716
reduced test case

This reduced test case causes an alignment fault when compiled with gcc 4.7 or
4.6 on sparc64-linux and armv5tel-linux-gnueabi, but not when compiled with gcc
4.5 or older.  On sparc64-linux the alignment fault results in a fatal SIGBUS,
on armv5tel-linux-gnueabi the fault can be fixed up by the kernel but that
incurs massive runtime overhead.

The core of the test case is the following:

struct event {
    struct {
        unsigned int sec;
    } sent __attribute__((packed));
};

void __attribute__((noinline,noclone)) frob_entry(char *buf)
{
    struct event event;

    __builtin_memcpy(&event, buf, sizeof(event));
    if (event.sent.sec < 64) {
        event.sent.sec = -1U;
        __builtin_memcpy(buf, &event, sizeof(event));
    }
}

With gcc 4.6/4.7 the __builtin_memcpy() calls result in plain int-sized loads
and stores on a misaligned address.  Removing '__attribute__((packed))' from
the 'sent' struct avoids the bug.  Removing the 'struct {...} sent' wrapper
around the 'unsigned int sec' but keeping '__attribute__((packed))' also avoids
the bug.


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

* [Bug middle-end/50569] Wrong code error: memcpy eliminated when it is needed
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2011-11-04 15:32 ` mikpe at it dot uu.se
@ 2011-11-04 20:58 ` mikpe at it dot uu.se
  2011-12-09  8:55 ` [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy ebotcazou at gcc dot gnu.org
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-11-04 20:58 UTC (permalink / raw)
  To: gcc-bugs

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

Mikael Pettersson <mikpe at it dot uu.se> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jamborm at gcc dot gnu.org

--- Comment #8 from Mikael Pettersson <mikpe at it dot uu.se> 2011-11-04 20:57:51 UTC ---
The regression started with r164136:
http://gcc.gnu.org/ml/gcc-cvs/2010-09/msg00428.html

Comparing the ARM assembly code from r164135 and r164136 on the reduced test
case clearly shows the error:

--- pr50569.s-r164135   2011-11-04 21:06:58.000000000 +0100
+++ pr50569.s-r164136   2011-11-04 21:10:48.000000000 +0100
@@ -17,19 +17,10 @@
        @ args = 0, pretend = 0, frame = 0
        @ frame_needed = 0, uses_anonymous_args = 0
        @ link register save eliminated.
-       ldrb    r2, [r0, #1]    @ zero_extendqisi2
-       ldrb    r3, [r0, #0]    @ zero_extendqisi2
-       ldrb    r1, [r0, #2]    @ zero_extendqisi2
-       orr     r3, r3, r2, asl #8
-       ldrb    r2, [r0, #3]    @ zero_extendqisi2
-       orr     r3, r3, r1, asl #16
-       orr     r3, r3, r2, asl #24
+       ldr     r3, [r0, #0]
        cmp     r3, #63
        mvnls   r3, #0
-       strlsb  r3, [r0, #0]
-       strlsb  r3, [r0, #1]
-       strlsb  r3, [r0, #2]
-       strlsb  r3, [r0, #3]
+       strls   r3, [r0, #0]
        bx      lr
        .size   frob_entry, .-frob_entry
        .align  2


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

* [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2011-11-04 20:58 ` mikpe at it dot uu.se
@ 2011-12-09  8:55 ` ebotcazou at gcc dot gnu.org
  2011-12-10 16:47 ` mikpe at it dot uu.se
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-12-09  8:55 UTC (permalink / raw)
  To: gcc-bugs

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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING
      Known to work|                            |4.4.6, 4.5.4
           Keywords|                            |wrong-code
   Last reconfirmed|                            |2011-12-09
          Component|middle-end                  |tree-optimization
                 CC|                            |ebotcazou at gcc dot
                   |                            |gnu.org
     Ever Confirmed|0                           |1
            Summary|Wrong code error: memcpy    |[4.6/4.7 regression]
                   |eliminated when it is       |unaligned memory accesses
                   |needed                      |generated for memcpy
   Target Milestone|---                         |4.6.3
      Known to fail|                            |4.6.1, 4.7.0

--- Comment #9 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-12-09 08:45:18 UTC ---
Please try the 4.6 branch (or a snapshot with the fix for PR tree-opt/51315).


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

* [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2011-12-09  8:55 ` [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy ebotcazou at gcc dot gnu.org
@ 2011-12-10 16:47 ` mikpe at it dot uu.se
  2011-12-10 17:55 ` ebotcazou at gcc dot gnu.org
                   ` (5 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-12-10 16:47 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from Mikael Pettersson <mikpe at it dot uu.se> 2011-12-10 16:39:57 UTC ---
(In reply to comment #9)
> Please try the 4.6 branch (or a snapshot with the fix for PR tree-opt/51315).

Unfortunately gcc-4.6-20111209 (which includes the PR51315 fix) still causes
alignment faults in this PR's test cases, on both sparc-linux and
armv5tel-linux-gnueabi.


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

* [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  2011-12-10 16:47 ` mikpe at it dot uu.se
@ 2011-12-10 17:55 ` ebotcazou at gcc dot gnu.org
  2011-12-11 20:25 ` mikpe at it dot uu.se
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-12-10 17:55 UTC (permalink / raw)
  To: gcc-bugs

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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |ASSIGNED
         AssignedTo|unassigned at gcc dot       |ebotcazou at gcc dot
                   |gnu.org                     |gnu.org

--- Comment #11 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-12-10 16:46:29 UTC ---
> Unfortunately gcc-4.6-20111209 (which includes the PR51315 fix) still causes
> alignment faults in this PR's test cases, on both sparc-linux and
> armv5tel-linux-gnueabi.

Bummer.  Investigating then.


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

* [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (11 preceding siblings ...)
  2011-12-10 17:55 ` ebotcazou at gcc dot gnu.org
@ 2011-12-11 20:25 ` mikpe at it dot uu.se
  2011-12-12 18:25 ` ebotcazou at gcc dot gnu.org
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-12-11 20:25 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #12 from Mikael Pettersson <mikpe at it dot uu.se> 2011-12-11 20:11:14 UTC ---
Eric's proposed patch applied on top of gcc-4.7-20111210 fixes both test cases
for me on sparc-linux and arm-linux-gnueabi.


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

* [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (12 preceding siblings ...)
  2011-12-11 20:25 ` mikpe at it dot uu.se
@ 2011-12-12 18:25 ` ebotcazou at gcc dot gnu.org
  2011-12-12 18:27 ` ebotcazou at gcc dot gnu.org
                   ` (2 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-12-12 18:25 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #13 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-12-12 18:22:17 UTC ---
Author: ebotcazou
Date: Mon Dec 12 18:22:13 2011
New Revision: 182252

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=182252
Log:
    PR tree-optimization/50569
    * tree-sra.c (build_ref_for_model): Replicate a chain of COMPONENT_REFs
    in the expression of MODEL instead of just the last one.

Added:
    trunk/gcc/testsuite/gcc.c-torture/execute/20111212-1.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-sra.c


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

* [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (13 preceding siblings ...)
  2011-12-12 18:25 ` ebotcazou at gcc dot gnu.org
@ 2011-12-12 18:27 ` ebotcazou at gcc dot gnu.org
  2011-12-12 18:55 ` ebotcazou at gcc dot gnu.org
  2012-06-12  9:24 ` liujiangning at gcc dot gnu.org
  16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-12-12 18:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #14 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-12-12 18:24:34 UTC ---
Author: ebotcazou
Date: Mon Dec 12 18:24:31 2011
New Revision: 182253

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=182253
Log:
    PR tree-optimization/50569
    * tree-sra.c (build_ref_for_model): Replicate a chain of COMPONENT_REFs
    in the expression of MODEL instead of just the last one.

Added:
    branches/gcc-4_6-branch/gcc/testsuite/gcc.c-torture/execute/20111212-1.c
      - copied unchanged from r182252,
trunk/gcc/testsuite/gcc.c-torture/execute/20111212-1.c
Modified:
    branches/gcc-4_6-branch/gcc/ChangeLog
    branches/gcc-4_6-branch/gcc/testsuite/ChangeLog
    branches/gcc-4_6-branch/gcc/tree-sra.c


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

* [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (14 preceding siblings ...)
  2011-12-12 18:27 ` ebotcazou at gcc dot gnu.org
@ 2011-12-12 18:55 ` ebotcazou at gcc dot gnu.org
  2012-06-12  9:24 ` liujiangning at gcc dot gnu.org
  16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-12-12 18:55 UTC (permalink / raw)
  To: gcc-bugs

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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

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

--- Comment #15 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-12-12 18:26:40 UTC ---
Patch installed.


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

* [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy
  2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
                   ` (15 preceding siblings ...)
  2011-12-12 18:55 ` ebotcazou at gcc dot gnu.org
@ 2012-06-12  9:24 ` liujiangning at gcc dot gnu.org
  16 siblings, 0 replies; 18+ messages in thread
From: liujiangning at gcc dot gnu.org @ 2012-06-12  9:24 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #16 from Jiangning Liu <liujiangning at gcc dot gnu.org> 2012-06-12 09:24:21 UTC ---
Author: liujiangning
Date: Tue Jun 12 09:24:11 2012
New Revision: 188431

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=188431
Log:
2011-06-12  Jiangning Liu  <jiangning.liu@arm.com>                              

    Backport r182252 from mainline
    2011-12-12  Eric Botcazou  <ebotcazou@adacore.com>

    PR tree-optimization/50569
    * tree-sra.c (build_ref_for_model): Replicate a chain of
    * COMPONENT_REFs
    in the expression of MODEL instead of just the last one.

2011-06-12  Jiangning Liu  <jiangning.liu@arm.com>                              

    Backport r182252 from mainline
    2011-12-12  Eric Botcazou  <ebotcazou@adacore.com>

    PR tree-optimization/50569
    * gcc.c-torture/execute/20111212-1.c: New test.


Added:
   
branches/ARM/embedded-4_6-branch/gcc/testsuite/gcc.c-torture/execute/20111212-1.c
Modified:
    branches/ARM/embedded-4_6-branch/gcc/ChangeLog.arm
    branches/ARM/embedded-4_6-branch/gcc/testsuite/ChangeLog.arm
    branches/ARM/embedded-4_6-branch/gcc/tree-sra.c


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

end of thread, other threads:[~2012-06-12  9:24 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-29 18:58 [Bug c/50569] New: Wrong code error: memcpy eliminated when it is needed pkoning at gcc dot gnu.org
2011-09-29 18:58 ` [Bug c/50569] " pkoning at gcc dot gnu.org
2011-09-29 19:00 ` mikpe at it dot uu.se
2011-09-29 19:53 ` [Bug middle-end/50569] " pinskia at gcc dot gnu.org
2011-09-29 20:45 ` pkoning at gcc dot gnu.org
2011-09-29 20:56 ` mikpe at it dot uu.se
2011-09-29 22:14 ` pkoning at gcc dot gnu.org
2011-10-01 10:29 ` mikpe at it dot uu.se
2011-11-04 15:32 ` mikpe at it dot uu.se
2011-11-04 20:58 ` mikpe at it dot uu.se
2011-12-09  8:55 ` [Bug tree-optimization/50569] [4.6/4.7 regression] unaligned memory accesses generated for memcpy ebotcazou at gcc dot gnu.org
2011-12-10 16:47 ` mikpe at it dot uu.se
2011-12-10 17:55 ` ebotcazou at gcc dot gnu.org
2011-12-11 20:25 ` mikpe at it dot uu.se
2011-12-12 18:25 ` ebotcazou at gcc dot gnu.org
2011-12-12 18:27 ` ebotcazou at gcc dot gnu.org
2011-12-12 18:55 ` ebotcazou at gcc dot gnu.org
2012-06-12  9:24 ` liujiangning at gcc dot gnu.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).