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: [RFC] i386 SSE registers


   From: Jim Blandy <jimb@redhat.com>
   Date: 13 Dec 2003 13:46:40 -0500

   I'm not sure I understand how the various options you list would
   appear to the user.  It sounds like, in any proposal, the SSE
   registers would just have bogus values when they're not available.

Yup.  It's either

1a. All zeroes.

1b. All zeroes, but preserving any explicit (but otherwise pointless)
    changes made by the user.

2. Some faked values (presumably corresponding to a freshly
   initialized CPU).

   Is there some way that the SSE regs could instead cease to exist
   (i.e. "print $xmm0" would give you a void value, 'info regi sse'
   would give you an error message)?  Or is there some other
   non-invasive behavior which would make it clearer to the user what
   was going on?

You can't solve this via the architecture vector I think.  It's
possible to use the same GDB and use it to debug a program on a
machine without SSE and then later on a machine with SSE.

What we could do is add a per-register flag to the register cache that
says whether a register is actually present or not.  But that's quite
a bit of work I guess.  Don't think we should think about doing
something like that before the legacy stuff has been eradicated.

Mark


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