public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/38440]  New: auto-increment generation does not work
@ 2008-12-07 21:36 amylaar at gcc dot gnu dot org
  2008-12-07 21:39 ` [Bug rtl-optimization/38440] " amylaar at gcc dot gnu dot org
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2008-12-07 21:36 UTC (permalink / raw)
  To: gcc-bugs

While gcc 4.2 could generate auto-incremnt addressing at least for simple
code as in the libgcc bcmp, gcc 4.4 fails utterly there.


-- 
           Summary: auto-increment generation does not work
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Keywords: missed-optimization
          Severity: major
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: amylaar at gcc dot gnu dot org
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: arc-elf32


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


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

* [Bug rtl-optimization/38440] auto-increment generation does not work
  2008-12-07 21:36 [Bug rtl-optimization/38440] New: auto-increment generation does not work amylaar at gcc dot gnu dot org
@ 2008-12-07 21:39 ` amylaar at gcc dot gnu dot org
  2008-12-07 21:42 ` amylaar at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2008-12-07 21:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from amylaar at gcc dot gnu dot org  2008-12-07 21:38 -------
Created an attachment (id=16845)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16845&action=view)
test case

This is the test case, the preprocessed libgcc2 bcmp code.  I've used the
version from gcc 4.4, but have substituted SI[mode] for the expressions
that gcc 4.2 doesn't understand.


-- 


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


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

* [Bug rtl-optimization/38440] auto-increment generation does not work
  2008-12-07 21:36 [Bug rtl-optimization/38440] New: auto-increment generation does not work amylaar at gcc dot gnu dot org
  2008-12-07 21:39 ` [Bug rtl-optimization/38440] " amylaar at gcc dot gnu dot org
@ 2008-12-07 21:42 ` amylaar at gcc dot gnu dot org
  2008-12-07 21:52 ` amylaar at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2008-12-07 21:42 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from amylaar at gcc dot gnu dot org  2008-12-07 21:41 -------
Created an attachment (id=16846)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16846&action=view)
gcc 4.2.1 compiled code

This is the testcase compiled with the options -O2 -mA7, using gcc 4.2.1
with our local patches for ARC support.
I can send our patches on request, but note that we haven't got an
acknowledgement
for our copyright assignment from the FSF yet.


-- 


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


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

* [Bug rtl-optimization/38440] auto-increment generation does not work
  2008-12-07 21:36 [Bug rtl-optimization/38440] New: auto-increment generation does not work amylaar at gcc dot gnu dot org
  2008-12-07 21:39 ` [Bug rtl-optimization/38440] " amylaar at gcc dot gnu dot org
  2008-12-07 21:42 ` amylaar at gcc dot gnu dot org
@ 2008-12-07 21:52 ` amylaar at gcc dot gnu dot org
  2008-12-09 21:14 ` [Bug tree-optimization/38440] " amylaar at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2008-12-07 21:52 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from amylaar at gcc dot gnu dot org  2008-12-07 21:51 -------
Created an attachment (id=16848)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16848&action=view)
gcc 4.4.0 compiled code

This is the testcase compiled using the options -O2 -mA7 with gcc 4.4.0
20081205 (revision 142498) with out local patches for ARC support.


-- 


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


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

* [Bug tree-optimization/38440] auto-increment generation does not work
  2008-12-07 21:36 [Bug rtl-optimization/38440] New: auto-increment generation does not work amylaar at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2008-12-07 21:52 ` amylaar at gcc dot gnu dot org
@ 2008-12-09 21:14 ` amylaar at gcc dot gnu dot org
  2008-12-09 21:53 ` amylaar at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2008-12-09 21:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from amylaar at gcc dot gnu dot org  2008-12-09 21:13 -------
The .083t.cunroll (gcc 4.2.1) and .1045.cunroll (gcc 4.4.0) dumps
show that the read memory read pointers are incremented as given in the
source.
This is still the case in the .085.ivopts dump from gcc 4.2.1, but no more
in the .017.ivopts dump of gcc 4.4.0 .  There, the code is pessimized
to use a newly invented index and add this to the initial values of the
read pointers and size to arrive at their current values - the opposite of
strength reduction.

With this pessimized code, we can't form any auto-increments.


-- 

amylaar at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|rtl-optimization            |tree-optimization


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


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

* [Bug tree-optimization/38440] auto-increment generation does not work
  2008-12-07 21:36 [Bug rtl-optimization/38440] New: auto-increment generation does not work amylaar at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2008-12-09 21:14 ` [Bug tree-optimization/38440] " amylaar at gcc dot gnu dot org
@ 2008-12-09 21:53 ` amylaar at gcc dot gnu dot org
  2008-12-09 22:18 ` pinskia at gcc dot gnu dot org
  2008-12-10  5:41 ` amylaar at gcc dot gnu dot org
  6 siblings, 0 replies; 9+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2008-12-09 21:53 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from amylaar at gcc dot gnu dot org  2008-12-09 21:52 -------
FWIW, the same problem can be seen for the SH, although it doesn't manifest
as an actual preformance regression from 4.2.1 because the 4.2.1 SH backend is
suboptimal - the  mov.b / extu.b scheduling is bad, that could be fixed
with a peephole2, and the doloop_end pattern that can make use of the dt
instruction is not available.


-- 


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


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

* [Bug tree-optimization/38440] auto-increment generation does not work
  2008-12-07 21:36 [Bug rtl-optimization/38440] New: auto-increment generation does not work amylaar at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2008-12-09 21:53 ` amylaar at gcc dot gnu dot org
@ 2008-12-09 22:18 ` pinskia at gcc dot gnu dot org
  2008-12-10  5:41 ` amylaar at gcc dot gnu dot org
  6 siblings, 0 replies; 9+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2008-12-09 22:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pinskia at gcc dot gnu dot org  2008-12-09 22:17 -------
This is most likely a duplicate of bug 31849.  IV-opts does not understand at
all auto-increment/decrement.


-- 


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


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

* [Bug tree-optimization/38440] auto-increment generation does not work
  2008-12-07 21:36 [Bug rtl-optimization/38440] New: auto-increment generation does not work amylaar at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2008-12-09 22:18 ` pinskia at gcc dot gnu dot org
@ 2008-12-10  5:41 ` amylaar at gcc dot gnu dot org
  6 siblings, 0 replies; 9+ messages in thread
From: amylaar at gcc dot gnu dot org @ 2008-12-10  5:41 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from amylaar at gcc dot gnu dot org  2008-12-10 05:40 -------
(In reply to comment #6)
> This is most likely a duplicate of bug 31849.  IV-opts does not understand at
> all auto-increment/decrement.

I see little in common with the original subject of PR31849 (that was primarily
about hoisting out a constant load), but there is
some similarity with the code from comment 7 , and the patch from comment #25
appears salient, although bitrotted.


-- 


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


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

* [Bug tree-optimization/38440] auto-increment generation does not work
       [not found] <bug-38440-4@http.gcc.gnu.org/bugzilla/>
@ 2011-03-22 20:22 ` jsm28 at gcc dot gnu.org
  0 siblings, 0 replies; 9+ messages in thread
From: jsm28 at gcc dot gnu.org @ 2011-03-22 20:22 UTC (permalink / raw)
  To: gcc-bugs

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

Joseph S. Myers <jsm28 at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |WONTFIX

--- Comment #8 from Joseph S. Myers <jsm28 at gcc dot gnu.org> 2011-03-22 20:19:07 UTC ---
ARC support has been removed for GCC 4.7.


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

end of thread, other threads:[~2011-03-22 20:19 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-12-07 21:36 [Bug rtl-optimization/38440] New: auto-increment generation does not work amylaar at gcc dot gnu dot org
2008-12-07 21:39 ` [Bug rtl-optimization/38440] " amylaar at gcc dot gnu dot org
2008-12-07 21:42 ` amylaar at gcc dot gnu dot org
2008-12-07 21:52 ` amylaar at gcc dot gnu dot org
2008-12-09 21:14 ` [Bug tree-optimization/38440] " amylaar at gcc dot gnu dot org
2008-12-09 21:53 ` amylaar at gcc dot gnu dot org
2008-12-09 22:18 ` pinskia at gcc dot gnu dot org
2008-12-10  5:41 ` amylaar at gcc dot gnu dot org
     [not found] <bug-38440-4@http.gcc.gnu.org/bugzilla/>
2011-03-22 20:22 ` jsm28 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).