This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [debuglocus] PHI source locations


Andrew Pinski wrote:
On Mon, Mar 23, 2009 at 6:43 AM, Andrew MacLeod <amacleod@redhat.com> wrote:
This is the first patch on the debuglocus branch.

It enhances PHI nodes to carry around a source location field which allows
out-of-ssa to properly replace the locus field when copies are issued.
Previously, we lost a *lot* of locus information here.  The cost is an extra
word (the source locus field) in each phi argument.

debuglocus requires this change in order to retain the locus field
throughout all optimizations, but its probably something that should have
been considered at the very beginning.

Does this fix PR 26475? Should this go in 4.5 even if debuglocus is
not merged as there are cases where we are missing line info
otherwise?
Its certainly something to consider. It independent of the debuglocus stuff, just a prerequisite. As for that testcase, I took a quick look, and it misses a statement there. One of the initial tasks will be to find all the places where we lose source locus information, and fix them. So this patch plus a few follow ons should resolve that PR. I will make sure to maintain the set of changes for locus retention separate.

The primary thing I would investigate before checking that into 4.5 as a bug fix is see if there is any impact on compile time and memory with the additional phi arg word. With virtual uses changing so much, I imagine the extra memory used would be vastly overshadowed by the savings in virtual PHI consumption.

I'll look at resolving the bits that are lost in that testcase today.

Andrew


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]