patch for printing 64-bit values in i386 registers; STABS format

Mark Kettenis kettenis@chello.nl
Mon Apr 28 00:51:00 GMT 2003


   Date: Fri, 25 Apr 2003 18:29:02 -0400
   From: Andrew Cagney <ac131313@redhat.com>
   User-Agent: Mozilla/5.0 (X11; U; NetBSD macppc; en-US; rv:1.0.2) Gecko/20030223
   X-Accept-Language: en-us, en
   Cc: Mark Kettenis <kettenis@chello.nl>, colins@google.com,
      gdb-patches@sources.redhat.com
   Content-Type: text/plain; charset=us-ascii; format=flowed

   > On Fri, Apr 25, 2003 at 11:21:13PM +0200, Mark Kettenis wrote:
   > 
   >>    Date: Thu, 24 Apr 2003 20:27:44 -0400
   >>    From: Daniel Jacobowitz <drow@mvista.com>
   >> 
   >>    Hey, Mark, this sounds very much like a change you proposed.  What ever
   >>    happened to that patch?
   >> 
   >> It's still happily sitting in my tree :-(.  There didn't seem to be
   >> any consensus on whether making this change was a good idea.  I still
   >> think it is.  It's an improvement for the majority of our users, and
   >> it isn't making things worse for others.  Do you think I should
   >> re-submit my patch?
   > 
   > 
   > I do, definitely.

   FYI,

   It's possible to fix this without adding an architecture method, or 
   implementing location expressions (the penny just dropped).  The basic 
   problem is the same as for the MIPS - need a custom register area.  Hence:

   - define a sequence of nameless cooked ([NUM_REGS .. 
   NUM_REGS+NUM_PSEUDO_REGS) range) registers ordered the way stabs would 
   like them
   - modify the existing stabs_regnum_to_regnum to map the messed up 
   registers onto those values

Ugh, Yuck!  Yes it works, but isn't this a terrible hack?  Oh and
using nameless cooked registers means that

   info address variable

no longer prints the right thing if variable lives in a register.

Mark



More information about the Gdb-patches mailing list