Hi,

On Tue, 11 Oct 2011, Richard Guenther wrote:

> Since we have the alias oracle we no longer optimize the testcase below 
> because I initially restricted the stmt walking to give up for PHIs with 
> more than 2 arguments because of compile-time complexity issues. But 
> it's easy to see that compile-time is not an issue when we reduce PHI 
> args pairwise to a single dominating operand.

Of course it is, not a different complexity class, but a constant factor.  
You have to do N-1 pairwise reductions, meaning with a large fan-in block 
you pay N-1 times the price, not just once for one pair, and if the price 
happens to be walking all up to the function start you indeed then are at 
N*M.  I think there should be a cutoff, possibly not at two.  Think about 
the generated testcases with many large switches.


Ciao,
Michael.

Reply via email to