Fix two problems with reorder_blocks and debugging

Mark Mitchell mark@codesourcery.com
Sat Jul 22 04:05:00 GMT 2006


Daniel Jacobowitz wrote:
> On Fri, Jul 21, 2006 at 08:18:36PM -0700, Mark Mitchell wrote:
>> Would you please say a bit more about the fix?  What's the origin?  I
>> expected you to say (after the bit above), "so, I made sure both copies
>> of B had the block's local variables".  But, thinking about it, that
>> doesn't seem like it would be valid DWARF.  So, can you say a bit about
>> what DWARF we emit with your patch and what the internal block/fragment
>> tree looks like with your change?
> 
> You're supposed to emit the obvious A -> B -> C relationship.  DWARF
> has syntax to express the disjoint ranges of blocks, and Richard wrote
> all of this code to support that originally; I'm just cleaning up a
> corner case.

OK, got it.

>> Do you know if this is a regression?  Is their optimized code that was
>> more debuggable before?
> 
> I doubt it highly.  However, I'd like GCC fixed in advance of GDB
> support for this information.

Sadly, I don't think that meets the standards for Stage 3 (let alone
regression-only) mode for GCC.  I would suggest you go ahead with the
GDB bits, using a locally modified GCC.

The patch is OK when we reach Stage 1.

Sorry,

-- 
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713



More information about the Gcc-patches mailing list