--- Comment #8 from steven at gcc dot gnu dot org 2008-06-01 09:41 ---
This is now optimized by VRP, CCP, store-CCP, DOM, PRE, and TER. It's hard to
break that test case!
--
steven at gcc dot gnu dot org changed:
What|Removed |Added
--
--- Comment #7 from kazu at gcc dot gnu dot org 2006-02-05 21:43 ---
Last time I came up with a patch, it introduced 0.1% or so of slow down.
I'll try my patch again when I get a chance.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24028
--- Comment #6 from pinskia at gcc dot gnu dot org 2006-02-05 21:26 ---
Any news on this one?
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
Last reconf
--- Additional Comments From kazu at gcc dot gnu dot org 2005-09-25 02:57
---
By the way, unpatched cc1 propagated 95619 constants while compiling cc1-i
files.
Patched one propagated 96482 constants in the ccp run (that is, not store-ccp).
So there is a 0.9% improvement.
--
http://
--- Additional Comments From kazu at gcc dot gnu dot org 2005-09-24 04:29
---
I tried the following code in ccp_initialize.
for (phi = phi_nodes (bb); phi; phi = PHI_CHAIN (phi))
{
tree var = PHI_RESULT (phi);
DONT_SIMULATE_AGAIN (phi) = (!do_store_ccp
--- Additional Comments From dnovillo at redhat dot com 2005-09-23 12:30
---
Subject: Re: CCP is broken
On September 23, 2005 01:29, kazu at gcc dot gnu dot org wrote:
> --- Additional Comments From kazu at gcc dot gnu dot org
> 2005-09-23 05:29 --- The reason why CCP thinks t
--- Additional Comments From kazu at gcc dot gnu dot org 2005-09-23 05:29
---
The reason why CCP thinks that the result of the PHI node is varying is
because ccp_initialize thinks that a PHI node is varying if at least
one of PHI argument is varying.
The problem is that the edge that th
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-23
05:25 ---
Confirmed, here is a better testcase which shows the issue:
int
foo (int a)
{
int b;
int c;
b = 0;
if (b)
c = a;
else
c = 9;
c++;
if (c != 10)
__builtin_abort();
return c;
}