[tree-ssa] copy prop vs. debugging

law@redhat.com law@redhat.com
Fri Jul 11 00:28:00 GMT 2003


In message <1057760521.29596.29.camel@p4>, Andrew MacLeod writes:
 >I can do that when I add the stack-space reduction pass to the
 >SSA->normal coalescer. Ie, when I try to merge various non-conflicting
 >temporaries of the same type into a single variable. You certainly want
 >to prioritize it to merge any which have a copy first (so we can
 >eliminate the copy), and it should be simple enough to choose a user var
 >over a compiler temporary to represent the merged location in those
 >cases.
I looked at this pretty briefly.  But it seems to me that:
What I was thinking about was:

  1. Do all the coalescing we do now as-is.  Basically meaning that we
  try to coalesce renamed variables back to their root.

  2. For each pair of objects that appears in a copy or in a PHI node
  try to coalesce them (since they're copies or potential copies).

  3. Try to coalesce unrelated temporaries of the same time to reduce
  the number of temporaries we use.

 >Does that also mean I shouldn't merge temporaries with user variables if
 >there is not a copy?
Unsure.  I think you should definitely merge them if they have a real
copy or a potential copy via a PHI node.  When I was playing with Jason's
stuff (which uses a lot more temporaries) we end up with a lot of copies
between user vars and temp vars.


Jeff





More information about the Gcc mailing list