Re: [rfa/6.0] Fix a thinko in dwarf2loc

Daniel Jacobowitz
2003-08-24T16:48:56Z

On Sun, Aug 17, 2003 at 04:58:22PM -0400, Daniel Jacobowitz wrote:
> On Fri, Aug 01, 2003 at 03:32:45PM -0400, Daniel Jacobowitz wrote:
> > Any variable with DW_OP_reg* requires a frame to read it - what
> > symbol_read_needs_frame () really means is "is this variable meaningful when
> > the program is not running".
> >
> > This would show up in the testsuite, but GCC doesn't tend to put locals in
> > registers without optimization or register keywords everywhere. Symptom is
> > that a watchpoint was not deleted when we left its scope, since we thought
> > it was global.
> >
> > OK?
>
> Ping...
>
> [Does dwarf2loc fall under the maintenance umbrella of the dwarf2
> reader?]

Ping? I would like to fix this bug for 6.0.

>
> > 2003-08-01 Daniel Jacobowitz <drow@mvista.com>
> >
> > * dwarf2loc.c (dwarf2_loc_desc_needs_frame): Variables in a
> > register do need a frame.
> >
> > --- gdb-5.3.20030801/gdb/dwarf2loc.c.orig 2003-08-01 14:58:57.000000000 -0400
> > +++ gdb-5.3.20030801/gdb/dwarf2loc.c 2003-08-01 15:00:05.000000000 -0400
> > @@ -318,7 +318,7 @@ dwarf2_loc_desc_needs_frame (unsigned ch
> >
> > free_dwarf_expr_context (ctx);
> >
> > - return baton.needs_frame;
> > + return baton.needs_frame || ctx->in_reg;
> > }
> >
> > static void
> >
> >
>
> --
> Daniel Jacobowitz
> MontaVista Software Debian GNU/Linux Developer