Loop optimizer issues
Richard Henderson
rth@redhat.com
Tue Jul 29 21:14:00 GMT 2003
On Tue, Jul 29, 2003 at 09:43:00PM +0200, Jan Hubicka wrote:
> - Zdenek's loop optimizer changes. I would personally support merging
> these with tree-SSA infrastructure and developing both GIMPLE/SSA and RTL
> based optimizers. Merge of SSA branch will likely make our current
> loop optimizer no-op by killing loop notes once forever and having
> GCC release with no good replacement for it is IMO very bad.
[...]
> - my webizer pass (comming from 3.2 times IMO ready for merge but there
> are issues with SSA-RTL making it perhaps redundant one day in
> future). Has measurable improvements in perfomrance especially in
> combination with Zdenek's new loop unroller that lack induction
> variable splitting
I'm seriously considering allowing (most of) these to be merged
into mainline during stage 2, under the argument that at present
we have performance regressions.
This should mostly cover re-use needs of a tree-based optimizer
for the tree-ssa branch, I would think.
> - Zdenek's value range profiling code. This one is half way in the
> mainline. I really hoped to see this merged in 3.4 but I am not
> quite sure this will happen.
> This is major problem in merging mainline as Nathanel's work on gcov
> did cause gread amount of conflicts..
[...]
> - Josef's variable tracking and Daniel's location lists. I believe
> there is useable version sent for review for some time but it has
> problem with losing track when value is copied to temporary location
> that is later killed. This is relatively minnor problem in the
> algorithm as the interfaces are major problem right now here.
>
> I believe we have to solve this in order to get nice debugging out of
> de-SSA once we drop limitations on de-SSAizing. It is also solving
> problems with -frename-registers as well as with webizer rendering
> variable values random in debugger.
I'm not sure what to do about these. Clearly the location list
support is highly desirable, but I thought you said when I pinged
you last is that it didn't work reliably.
> - Zdenek's cleanup of GCSE. Improved store motion has been merged but
> his breakup of GCSE into multiple files didn't. I guess in it's
> current shape it would need to be redone.
> - My code for GCSE on parallels that is actually in cfg branch only and
> first halve of the changes went into mainline (basic code motion
> infrastructure)
I'm not sure these are worthwhile long term. I expect the rtl GCSE
optimizer to collapse to almost nothing with the tree-ssa merge.
r~
More information about the Gcc
mailing list