This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB 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: GDB does not show variables in inlined function


> > > > with inlining:
> > > > 
> > > >         .uleb128 0x2c   # (DIE (0x2a5a) DW_TAG_variable)
> > > >         .long   0x2af2  # DW_AT_abstract_origin
> > > >                 ^^^^^^
> > > >         .byte   0x1     # DW_AT_location
> > > >         .byte   0x56    # DW_OP_reg6
> > > > ...
> > > >         .long   0x2d    # DW_AT_type
> > > >         .uleb128 0x24   # (DIE (0x2af2) DW_TAG_variable)
> > > >                                 ^^^^^^
> > > >         .long   .LASF850        # DW_AT_name: "incoming"
> > > >         .byte   0x1     # DW_AT_decl_file
> > > >         .value  0x3f32  # DW_AT_decl_line
> > > >         .long   0x2d    # DW_AT_type
> > > > 
> > > > The location seems not to be generated for the real variable record
> > > > (2nd part after ...) with inlining.
> > > > 
> > > > Should GCC generate the location for the second part (after ...) too,
> > > > should GDB be able to link the descriptions through the marked number
> > > > or something else?
> > > 
> > > It's the former DIE (0x2a5a) which is in scope.  It has the name
> > > "incoming" through the abstract origin chain.  So this is probably a
> > > GDB issue.
> > > 
> > > Up until recently that DW_AT_location in the concrete DIE was missing,
> > > I believe.  You might want to try this (incredibly lame, untested) GDB
> > > patch.  Let me know if it does something useful.
> > 
> > Wow, that was fast!
> > Yes, it works with your patch :-)
> 
> Um... Josef, what GCC are you using?  I didn't check tree-ssa, but
> neither 3.3 nor HEAD produces those DW_AT_location entries, which is a
> serious (and filed in bugzilla, IIRC?) bug.

I used HEAD (maybe few days old) and compiled var-tracking.c from hammer-3_3-branch.
I used "-g -O2 -dA" (-funit-at-a-time is default at -O2)

Josef


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