This is the mail archive of the
mailing list for the GCC project.
Re: [4.5] Find more autoinc addressing for induction variables
> I'm puzzled that we were promised all this shiny new df infrastructure
> and now it's supposedly too expensive to use?
As Steven mentioned, it's just the problem that's expensive, in terms of
both compile time and memory usage. In fact, your observation actually
> Okay, so we need to decide if we're going to reject every patch that
> tries to make use of this infrastructure, and simply delete the code if
> that's the conclusion. It makes no sense to have it in gcc if we can't
> actually use it because it's too expensive.
And I answer yes, we should reject every patch that tries to make use
(at -O1, at least) of whole-subroutine def-use/use-def chains. But it
should be fine to use it on regions, like loop invariant motion does,
and it should be fine to use it at -O2 if there is no better solution.
In 4.5, fwprop does not use chains anymore, is the only user of
whole-subroutine reaching definitions, and right now it is enabled at
-O1; but I plan to use a custom dataflow problem to find singleton
use-def chains without the cost of reaching definitions. (This custom
dataflow problem will be accessible to every pass, of course, but does
not help your case).