public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/27226]  New: Compiler looses track of alignment for emit_block_move
@ 2006-04-20 15:53 amylaar at gcc dot gnu dot org
  2006-04-20 15:59 ` [Bug c/27226] " amylaar at gcc dot gnu dot org
                   ` (19 more replies)
  0 siblings, 20 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-04-20 15:53 UTC (permalink / raw)
  To: gcc-bugs

The compiler used to use move_by_pieces for sh-elf at -O2 for the trivial
strcpy calls in dhrystone, but now it uses memcpy.  I've found that this
is because it no longer knows that the two MEM arguments are aligned.
Here is a pruned-down testcase:

char *strcpy (char *, const char *);

extern void g ();


f ()
{
  struct {
    int i;
    char str[31];
  } s;

  strcpy (s.str, "text text text text text text text text");
  g (s.str);
}


-- 
           Summary: Compiler looses track of alignment for emit_block_move
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Keywords: missed-optimization
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: amylaar at gcc dot gnu dot org


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


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

* [Bug c/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
@ 2006-04-20 15:59 ` amylaar at gcc dot gnu dot org
  2006-04-20 16:05 ` rguenth at gcc dot gnu dot org
                   ` (18 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-04-20 15:59 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from amylaar at gcc dot gnu dot org  2006-04-20 15:58 -------
This worked in 3.5.0 20040512 (experimental), but failed in 3.5.0 20040630
(experimental) 


-- 

amylaar at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |4.1.0 4.2.0
      Known to work|                            |3.4.0 3.4.3


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


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

* [Bug c/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
  2006-04-20 15:59 ` [Bug c/27226] " amylaar at gcc dot gnu dot org
@ 2006-04-20 16:05 ` rguenth at gcc dot gnu dot org
  2006-04-20 18:05 ` [Bug middle-end/27226] " amylaar at gcc dot gnu dot org
                   ` (17 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-04-20 16:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from rguenth at gcc dot gnu dot org  2006-04-20 16:05 -------
You might want to dive into builtins.c:get_pointer_alignment.


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
  2006-04-20 15:59 ` [Bug c/27226] " amylaar at gcc dot gnu dot org
  2006-04-20 16:05 ` rguenth at gcc dot gnu dot org
@ 2006-04-20 18:05 ` amylaar at gcc dot gnu dot org
  2006-04-20 18:10 ` amylaar at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-04-20 18:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from amylaar at gcc dot gnu dot org  2006-04-20 18:05 -------
(In reply to comment #2)
> You might want to dive into builtins.c:get_pointer_alignment.
> 

Hmm, indeed, I see that in 3.5.0 20040512, expand_builtin_memcpy
has found a dest_align of 32 and proceeded to go the store_by_pieces route.
The tree passed to get_poiter_alignment for the destination was:

 <nop_expr 0xb57cd794
    type <pointer_type 0xb58411b0
        type <integer_type 0xb58562f4 char QI
            size <integer_cst 0xb5854104 constant 8>
            unit size <integer_cst 0xb5854118 constant 1>
            align 8 symtab 0 alias set -1 precision 8 min <integer_cst
0xb58541a
4 -128> max <integer_cst 0xb58541b8 127>
            pointer_to_this <pointer_type 0xb58411b0>>
        unsigned SI
        size <integer_cst 0xb58547a8 constant 32>
        unit size <integer_cst 0xb58547d0 constant 4>
        align 32 symtab 0 alias set -1>

    arg 0 <plus_expr 0xb583e150
        type <pointer_type 0xb57ce438 type <array_type 0xb57ce0d8>
            unsigned SI size <integer_cst 0xb58547a8 32> unit size <integer_cst 
0xb58547d0 4>
            align 32 symtab 0 alias set -1>

        arg 0 <nop_expr 0xb57cd780 type <pointer_type 0xb57ce438>

            arg 0 <addr_expr 0xb57cd730 type <pointer_type 0xb57ce4a4>
                arg 0 <var_decl 0xb57ce288 s>>>
        arg 1 <integer_cst 0xb57cd76c constant 4>>>

In mainline, the calculated dest_align is 8.  The tree passed to
get_pointer_alignment is:

 <addr_expr 0xb58b13e0
    type <pointer_type 0xb58c6170
        type <integer_type 0xb58bd170 char sizes-gimplified public string-flag
QI
            size <integer_cst 0xb58ac1c8 constant invariant 8>
            unit size <integer_cst 0xb58ac1e0 constant invariant 1>
            align 8 symtab 0 alias set -1 precision 8 min <integer_cst
0xb58ac228 -128> max <integer_cst 0xb58ac288 127>
            pointer_to_this <pointer_type 0xb58c6170>>
        unsigned SI
        size <integer_cst 0xb58ac3c0 constant invariant 32>
        unit size <integer_cst 0xb58ac150 constant invariant 4>
        align 32 symtab 0 alias set -1>
    invariant
    arg 0 <array_ref 0xb593a820 type <integer_type 0xb58bd170 char>

        arg 0 <component_ref 0xb58bb078 type <array_type 0xb5938730>
            arg 0 <var_decl 0xb58ba108 s> arg 1 <field_decl 0xb593878c str>>
        arg 1 <integer_cst 0xb58ac168 constant invariant 0> arg 2 <integer_cst
0xb58ac168 0> arg 3 <integer_cst 0xb58ac1e0 1>>>


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2006-04-20 18:05 ` [Bug middle-end/27226] " amylaar at gcc dot gnu dot org
@ 2006-04-20 18:10 ` amylaar at gcc dot gnu dot org
  2006-04-20 18:58 ` amylaar at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-04-20 18:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from amylaar at gcc dot gnu dot org  2006-04-20 18:10 -------
Created an attachment (id=11304)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11304&action=view)
proposed patch


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2006-04-20 18:10 ` amylaar at gcc dot gnu dot org
@ 2006-04-20 18:58 ` amylaar at gcc dot gnu dot org
  2006-04-20 20:38 ` amylaar at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-04-20 18:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from amylaar at gcc dot gnu dot org  2006-04-20 18:58 -------
(In reply to comment #4)
> Created an attachment (id=11304)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11304&action=view) [edit]
> proposed patch
> 

Needs some more work.


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2006-04-20 18:58 ` amylaar at gcc dot gnu dot org
@ 2006-04-20 20:38 ` amylaar at gcc dot gnu dot org
  2006-04-20 20:47 ` rguenth at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-04-20 20:38 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from amylaar at gcc dot gnu dot org  2006-04-20 20:38 -------
Created an attachment (id=11305)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11305&action=view)
proposed patch for 4.1


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2006-04-20 20:38 ` amylaar at gcc dot gnu dot org
@ 2006-04-20 20:47 ` rguenth at gcc dot gnu dot org
  2006-04-20 21:09 ` amylaar at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-04-20 20:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from rguenth at gcc dot gnu dot org  2006-04-20 20:47 -------
I suggest you test on an architecture that traps on unaligned accesses, so as
ia64 with the correct prctrl setup.  In particular you seem to miss that
ARRAY_REF can have a custom index range that doesn't start with zero. 
Otherwise the patch looks reasonable, though you may wait on the backport of
the bits from mainline for the 4.1 branch.


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2006-04-20 20:47 ` rguenth at gcc dot gnu dot org
@ 2006-04-20 21:09 ` amylaar at gcc dot gnu dot org
  2006-04-20 21:23 ` rguenth at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-04-20 21:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from amylaar at gcc dot gnu dot org  2006-04-20 21:09 -------
(In reply to comment #7)
> I suggest you test on an architecture that traps on unaligned accesses, so as
> ia64 with the correct prctrl setup. 
I don't have access to an ia64 host, but sh-elf is a STRICT_ALIGNMENT target,
too.
> In particular you seem to miss that
> ARRAY_REF can have a custom index range that doesn't start with zero.

get_inner_reference should take care of that.

> Otherwise the patch looks reasonable, though you may wait on the backport of
> the bits from mainline for the 4.1 branch.

When I backported the mainline patch to our 4.1 based sources I've found that
it did ICE on dhrystone.  The 4.1 patch is completely re-written.  I'll have to
forward-port that when I find some time...


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2006-04-20 21:09 ` amylaar at gcc dot gnu dot org
@ 2006-04-20 21:23 ` rguenth at gcc dot gnu dot org
  2006-04-27 15:35 ` amylaar at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-04-20 21:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from rguenth at gcc dot gnu dot org  2006-04-20 21:23 -------
Ah, I see.  I only looked at the mainline patch.  I was refering to the patch
for PR26565 which is still pending for 4.1 and will bring the 4.1 version
in-line with the mainline version.  I guess sh is also affected for PR26565.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-04-20 21:23:19
               date|                            |


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2006-04-20 21:23 ` rguenth at gcc dot gnu dot org
@ 2006-04-27 15:35 ` amylaar at gcc dot gnu dot org
  2006-05-08 14:23 ` rguenth at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-04-27 15:35 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from amylaar at gcc dot gnu dot org  2006-04-27 15:35 -------
(In reply to comment #6)
> Created an attachment (id=11305)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11305&action=view) [edit]
> proposed patch for 4.1
> 

The assignment
          inner = max_align;
must come before the
          if (handled_component_p (exp))
test.


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2006-04-27 15:35 ` amylaar at gcc dot gnu dot org
@ 2006-05-08 14:23 ` rguenth at gcc dot gnu dot org
  2006-05-08 21:10 ` amylaar at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-05-08 14:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from rguenth at gcc dot gnu dot org  2006-05-08 14:23 -------
The patch looks good - are you going to test and submit it?


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2006-05-08 14:23 ` rguenth at gcc dot gnu dot org
@ 2006-05-08 21:10 ` amylaar at gcc dot gnu dot org
  2006-05-09  7:50 ` rguenth at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2006-05-08 21:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from amylaar at gcc dot gnu dot org  2006-05-08 21:09 -------
(In reply to comment #11)
> The patch looks good - are you going to test and submit it?

I hope so, however at the moment I have trouble with newlib.  The autoconf
upgrade seems rather half-baked at the moment.


-- 


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2006-05-08 21:10 ` amylaar at gcc dot gnu dot org
@ 2006-05-09  7:50 ` rguenth at gcc dot gnu dot org
  2006-06-07 21:29 ` ramana dot radhakrishnan at codito dot com
                   ` (6 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-05-09  7:50 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from rguenth at gcc dot gnu dot org  2006-05-09 07:50 -------
Created an attachment (id=11417)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11417&action=view)
updated patch

I updated the patch so it applies to mainline and 4.1 and bootstrapped and
regtested it on ia64-unknown-linux-gnu with trapping unaligned access.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #11304|0                           |1
        is obsolete|                            |
  Attachment #11305|0                           |1
        is obsolete|                            |


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2006-05-09  7:50 ` rguenth at gcc dot gnu dot org
@ 2006-06-07 21:29 ` ramana dot radhakrishnan at codito dot com
  2006-09-01 16:55 ` rguenth at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: ramana dot radhakrishnan at codito dot com @ 2006-06-07 21:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from ramana dot radhakrishnan at codito dot com  2006-06-07 21:20 -------
Add self to CC. 


-- 

ramana dot radhakrishnan at codito dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ramana dot radhakrishnan at
                   |                            |codito dot com


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


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

* [Bug middle-end/27226] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (13 preceding siblings ...)
  2006-06-07 21:29 ` ramana dot radhakrishnan at codito dot com
@ 2006-09-01 16:55 ` rguenth at gcc dot gnu dot org
  2006-09-01 16:56 ` [Bug middle-end/27226] [4.1/4.2 Regression] " rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-09-01 16:55 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2006-04-20 21:23:19         |2006-09-01 16:55:33
               date|                            |


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


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

* [Bug middle-end/27226] [4.1/4.2 Regression] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (14 preceding siblings ...)
  2006-09-01 16:55 ` rguenth at gcc dot gnu dot org
@ 2006-09-01 16:56 ` rguenth at gcc dot gnu dot org
  2006-09-01 20:25 ` rguenth at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-09-01 16:56 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Compiler looses track of    |[4.1/4.2 Regression]
                   |alignment for               |Compiler looses track of
                   |emit_block_move             |alignment for
                   |                            |emit_block_move
   Target Milestone|---                         |4.1.2


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


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

* [Bug middle-end/27226] [4.1/4.2 Regression] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (15 preceding siblings ...)
  2006-09-01 16:56 ` [Bug middle-end/27226] [4.1/4.2 Regression] " rguenth at gcc dot gnu dot org
@ 2006-09-01 20:25 ` rguenth at gcc dot gnu dot org
  2006-09-01 20:27 ` [Bug middle-end/27226] [4.1 " rguenth at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-09-01 20:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from rguenth at gcc dot gnu dot org  2006-09-01 20:25 -------
Subject: Bug 27226

Author: rguenth
Date: Fri Sep  1 20:25:34 2006
New Revision: 116641

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=116641
Log:
2006-09-01  J"orn Rennecke  <joern.rennecke@st.com>
        Richard Guenther  <rguenther@suse.de>
        Adam Nemet  <anemet@caviumnetworks.com>

        PR middle-end/27226
        * builtins.c (get_pointer_alignment): Handle more forms
        of base addresses that can be used to derive more precise
        information about alignment.

        * gcc.target/mips/memcpy-1.c: New testcase.
        * gcc.dg/pr27226.c: Likewise.

Added:
    trunk/gcc/testsuite/gcc.dg/pr27226.c
    trunk/gcc/testsuite/gcc.target/mips/memcpy-1.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/builtins.c
    trunk/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug middle-end/27226] [4.1 Regression] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (16 preceding siblings ...)
  2006-09-01 20:25 ` rguenth at gcc dot gnu dot org
@ 2006-09-01 20:27 ` rguenth at gcc dot gnu dot org
  2006-09-18  9:16 ` rguenth at gcc dot gnu dot org
  2006-09-18  9:17 ` rguenth at gcc dot gnu dot org
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-09-01 20:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from rguenth at gcc dot gnu dot org  2006-09-01 20:26 -------
Fixed on the mainline.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|4.1.0 4.2.0                 |4.1.0
      Known to work|3.4.0 3.4.3                 |3.4.0 3.4.3 4.2.0
            Summary|[4.1/4.2 Regression]        |[4.1 Regression] Compiler
                   |Compiler looses track of    |looses track of alignment
                   |alignment for               |for emit_block_move
                   |emit_block_move             |


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


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

* [Bug middle-end/27226] [4.1 Regression] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (17 preceding siblings ...)
  2006-09-01 20:27 ` [Bug middle-end/27226] [4.1 " rguenth at gcc dot gnu dot org
@ 2006-09-18  9:16 ` rguenth at gcc dot gnu dot org
  2006-09-18  9:17 ` rguenth at gcc dot gnu dot org
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-09-18  9:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from rguenth at gcc dot gnu dot org  2006-09-18 09:16 -------
Subject: Bug 27226

Author: rguenth
Date: Mon Sep 18 09:16:16 2006
New Revision: 117018

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=117018
Log:
2006-09-18  Richard Guenther  <rguenther@suse.de>

        Backport from mainline:
        J"orn Rennecke  <joern.rennecke@st.com>
        Richard Guenther  <rguenther@suse.de>
        Adam Nemet  <anemet@caviumnetworks.com>

        PR middle-end/27226
        * builtins.c (get_pointer_alignment): Handle more forms
        of base addresses that can be used to derive more precise
        information about alignment.

        * gcc.target/mips/memcpy-1.c: New testcase.

Added:
    branches/gcc-4_1-branch/gcc/testsuite/gcc.target/mips/memcpy-1.c
      - copied unchanged from r116641,
trunk/gcc/testsuite/gcc.target/mips/memcpy-1.c
Modified:
    branches/gcc-4_1-branch/gcc/ChangeLog
    branches/gcc-4_1-branch/gcc/builtins.c
    branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug middle-end/27226] [4.1 Regression] Compiler looses track of alignment for emit_block_move
  2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
                   ` (18 preceding siblings ...)
  2006-09-18  9:16 ` rguenth at gcc dot gnu dot org
@ 2006-09-18  9:17 ` rguenth at gcc dot gnu dot org
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-09-18  9:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from rguenth at gcc dot gnu dot org  2006-09-18 09:16 -------
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

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


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


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

end of thread, other threads:[~2006-09-18  9:17 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-04-20 15:53 [Bug c/27226] New: Compiler looses track of alignment for emit_block_move amylaar at gcc dot gnu dot org
2006-04-20 15:59 ` [Bug c/27226] " amylaar at gcc dot gnu dot org
2006-04-20 16:05 ` rguenth at gcc dot gnu dot org
2006-04-20 18:05 ` [Bug middle-end/27226] " amylaar at gcc dot gnu dot org
2006-04-20 18:10 ` amylaar at gcc dot gnu dot org
2006-04-20 18:58 ` amylaar at gcc dot gnu dot org
2006-04-20 20:38 ` amylaar at gcc dot gnu dot org
2006-04-20 20:47 ` rguenth at gcc dot gnu dot org
2006-04-20 21:09 ` amylaar at gcc dot gnu dot org
2006-04-20 21:23 ` rguenth at gcc dot gnu dot org
2006-04-27 15:35 ` amylaar at gcc dot gnu dot org
2006-05-08 14:23 ` rguenth at gcc dot gnu dot org
2006-05-08 21:10 ` amylaar at gcc dot gnu dot org
2006-05-09  7:50 ` rguenth at gcc dot gnu dot org
2006-06-07 21:29 ` ramana dot radhakrishnan at codito dot com
2006-09-01 16:55 ` rguenth at gcc dot gnu dot org
2006-09-01 16:56 ` [Bug middle-end/27226] [4.1/4.2 Regression] " rguenth at gcc dot gnu dot org
2006-09-01 20:25 ` rguenth at gcc dot gnu dot org
2006-09-01 20:27 ` [Bug middle-end/27226] [4.1 " rguenth at gcc dot gnu dot org
2006-09-18  9:16 ` rguenth at gcc dot gnu dot org
2006-09-18  9:17 ` rguenth 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).