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: Enable SSA at -O0


Jan Hubicka wrote:

Well, I don't know either... I didn't run into debug info quality
problems during development and I tried to use this as build compiler.
thats a good sign anyway!

right now -O0 is the only saving grace we have, and as much as I want to see the SSA path at -O0, I'd also hate for us to end up with numerous cases where we no longer have some basic info.

I've disabled TERing across statements, just within one statement or
putting statements with no debug info into statement with debug info.
Also I re-coalesce all user variables into single variable. So in
theory we should do no worse then we did before tree-SSA as trees fed
into expander are now only closer to pre-tree-SSA form.

right. And as long as we don't do any SSA optimizations which move code around, we should never have to worry about overlapping live ranges which play havoc with debug output. in theory, it should be OK, but the specter of compiler temps without debug info finding their way in where they shouldn't be lurks at the window... we certainly have to be careful what ssa passes are run.


Bootstrapped/regtested i686-linux. I am testing x86_64-linux and PPC-linux but both
passed with earlier version of the patch.


I presume this is being targeted for 4.4?

I guess it depends on overall consensus. I started with this patch as
simple hack as Richard needed it for the lowering passes. It turned out
to need a lot of fixing here and there and enabling unit-at-a-time by
default, so it ended up being more work. If for nothing, this patch was
useful to fix a lot of latent or semi-latent problems ;)) and I think
the results are not discougrating. Seeing it from the other POV, this patch would enforce us fixing debug
info quality issues in SSA that should improve debug quality when
optimizing.
Yeah. I'm currently working on a mechanism to provide a quantitative comparison of the 'user quality' of debug info issued between different runs of the compiler. It should also identify what isn't correct and where. At least that is the plan :-) This would be another useful thing to run through it, -O0 with SSA and -O0 without SSA and see how similar it is. And also as a test of the comparator mechanism itself.

We might then be able to detect that we have a problem we need to look at :-)

Andrew


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