This is the mail archive of the gcc@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: 8 GCC regressions, 2 new, with your patch on 2003-04-16T21:21:05Z.


On Thu, Apr 17, 2003 at 12:54:05PM +0100, Joern Rennecke wrote:
> Still, the transformation is safe, and I see nothing fundamentally
> wrong with removing a variable in an optimizing compilation - yes, it makes
> debugging harder, but then so do a lot of optimizations.

The original motivation for the test was a bit more 
complicated than that:

  http://gcc.gnu.org/ml/gcc-patches/2001-12/msg02450.html

Interestingly, this test continues to pass with dwarf2:

        .uleb128 0x4    // (DIE (0x5c) DW_TAG_variable)
        data4.ua        @secrel(.LASF3) // DW_AT_name: "xyzzy"
        data1   0x1     // DW_AT_decl_file
        data1   0x9     // DW_AT_decl_line
        data4.ua        0x68    // DW_AT_type

Note that there is no DW_AT_location entry, so indeed
this variable has been optimized away, but the lexical 
block still exists, which is the real point of the test.

I guess stabs can't represent this.  I'd much prefer we
XFAIL these tests in that case rather than remove or
modify the test.

It's also a point that perhaps it would be best to remove
Dale's patch after the new register allocator is enabled
by default -- we'll get better debug information in that case.


r~


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