This is the mail archive of the 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: RFC: Variables in blocks of registers

On Sat, Feb 01, 2003 at 11:35:03PM +0100, Mark Kettenis wrote:
>    Date: Sat, 01 Feb 2003 15:45:52 -0500
>    From: Andrew Cagney <>
>    > Michael, I think the new multi-arch function is a good idea as long as
>    > it is a fallback from explicit debug info support, when we have such. 
>    > I also think it needs a better name; but I'm not quite sure what.  Hmm,
>    > that could be mitigated by adequate commenting.
> I suppose Daniel meant me, Mark, here ;-).

Ack ack!  I'm sorry, Mark.

>    I think it is very dangerous.  It's assuming a specific algorithm
>    in the compiler.  That locks both GDB and GCC into something of a
>    death spiral.  I think its far better to try and get a proper
>    location mechanism working.
> Hmm, I agree that it is better to get a proper location mechanism
> working.  However, I don't think we have any hope at getting such a
> mechanism working with stabs.  And I don't agree that it is very
> dangerous to assume the specific algorithm that GCC has been using for
> several years.  Besides GDB already uses a specific algorithm since it
> assumes that registers have been allocated by the compiler in the
> order that is dictated by GDB's register cache.  That algorithm is
> known to be wrong for the majority of GDB's users, makes GDB print
> bugus values and can lead to segfaults in the inferior when setting
> variables.  Why not replace this algorithm with something better?  The
> changes that are necessary aren't very invasive (see the end of this
> message for the changes to findvar.c and valops.c).
> Daniel, do you think next_allocated_regnum is a better name?

Hmm, yes, I like that better.  We'll need to hook in a better mechanism
when we have DW_OP_piece support, but it doesn't need to be designed
now.  The basic idea of your patch below looks good to me.

Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer

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