This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH]: Improve ability of PRE to detect redundancies
> > I would expect whatever is doing rematerialization would determine
> > whether it wants to undo that or not :).
> A solution for avoiding this "do/undo game" is to help PRE to decide
> in which case to transform or not, based on accurate information.
> You're clearly missing the information about the register pressure.
> Would it be possible to have an analyzer at the PRE level, that
> approximates the number of registers needed for a given loop?
restricting the PRE in this way would be great (not really because of
these corner case problems, but since the increased register pressure
due to PRE seems to be a serious problem just now).
The problem is (IMHO -- not really expert in the area) that doing it and
not limiting PRE too much is hard.
Postponing this for rematerialization also is not somehow great solution,
since doing rematerialization properly is about as complicated as PRE
itself. So what you end up with is a half-heuristic solution that
handles some common cases, but very often fails.