* [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