--- Comment #16 from matz at gcc dot gnu dot org 2010-01-19 16:06 ---
Subject: Bug 41783
Author: matz
Date: Tue Jan 19 16:05:57 2010
New Revision: 156043
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=156043
Log:
PR tree-optimization/41783
* tree-data-ref.c (topl
--- Comment #15 from rguenth at gcc dot gnu dot org 2009-10-30 16:39
---
In fact we now vectorize additional loops because of less prephitemps but
that gets in the way of predictive-commoning which is much more useful here :(
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41783
--- Comment #14 from rguenth at gcc dot gnu dot org 2009-10-30 16:14
---
I think this fix caused 172.mgrid to regress (we likely no longer perform
predictive commoning there). See
http://gcc.opensuse.org/SPEC/CFP/sb-vangelis-head-64/recent.html
--
http://gcc.gnu.org/bugzilla/show_
--- Comment #13 from matz at gcc dot gnu dot org 2009-10-26 13:04 ---
Fixed.
--
matz at gcc dot gnu dot org changed:
What|Removed |Added
Status|ASSIGNED
--- Comment #12 from matz at gcc dot gnu dot org 2009-10-26 13:00 ---
Subject: Bug 41783
Author: matz
Date: Mon Oct 26 13:00:36 2009
New Revision: 153551
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=153551
Log:
PR tree-optimization/41783
* tree-ssa-alias.c (get
--- Comment #11 from matz at gcc dot gnu dot org 2009-10-22 15:13 ---
Have patch.
--
matz at gcc dot gnu dot org changed:
What|Removed |Added
AssignedTo|unassigne
--- Comment #10 from rguenth at gcc dot gnu dot org 2009-10-21 20:14
---
Created an attachment (id=18861)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18861&action=view)
1st part of a patch
Like this. We should never produce new non-constant value-numbers during
phi-translation
--- Comment #9 from rguenth at gcc dot gnu dot org 2009-10-21 18:08 ---
Ok, I'm pretty much sure what happens and what is wrong. I'll fix what is
wrong
and we'll need that phi-translation fix to fixup the regressions that'll cause.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=417
--- Comment #8 from matz at gcc dot gnu dot org 2009-10-21 15:35 ---
But the important one (for zeusmp) is the first loop. That isn't vectorized
anymore (but was in r151560, i.e. there it vectorized two loops).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41783
--- Comment #7 from rguenth at gcc dot gnu dot org 2009-10-21 15:26 ---
LIM cleans up the 2nd insertion for me and moves the load next to the first
insertion. What remains is the full redundancy and elimination of all the
PHIs, so yes, your PRE patch would solve this. And yes, it is on
--- Comment #6 from matz at gcc dot gnu dot org 2009-10-21 15:22 ---
Hmm, at least I don't remember any patch dealing with phi translation right
now.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41783
--- Comment #5 from matz at gcc dot gnu dot org 2009-10-21 15:20 ---
Yes, I mean the second insertion. The phi node generated for that one (in the
first j-loop) prevents vectorization in r151561 (I haven't really tested
newer revs that r151590). Maybe some other stuff in later revs cle
--- Comment #4 from rguenth at gcc dot gnu dot org 2009-10-21 15:16 ---
Which all is likely due to the fact that PHI translation does not properly
value-number translated loads and thus we create extra full redundancies
sometimes (usually resulting in extra PHI nodes, but here extra load
--- Comment #3 from rguenth at gcc dot gnu dot org 2009-10-21 15:14 ---
C testcase showing the likely underlying issue:
int db[100];
int dt, fact;
int main()
{
int i;
do
{
for (i=0; i<100; ++i)
db[i] = i;
fact = dt * i;
}
while (1);
}
where we not only
--- Comment #2 from rguenth at gcc dot gnu dot org 2009-10-21 15:07 ---
Btw, the 2nd insertion is really weird (the first one in bb9 is just loop
invariant motion).
:
pretmp.7_45 = rootr.dt;
goto ;
:
:
# prephitmp.8_48 = PHI
D.1375_18 = (real(kind=8)) i_3;
D.1376_19 = prep
--- Comment #1 from rguenth at gcc dot gnu dot org 2009-10-21 14:53 ---
Confirmed. Btw the loop is still vectorized for me.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
16 matches
Mail list logo