This is the mail archive of the gdb@sourceware.org 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: MMX & Floating point insn suport for reversible debugging


I have gone through i387-tdep.c.
and I have come up with following doubts.

 here I start adding floating point register support.
 I think curerntly it records the memory

 so remaining thing for floating point is store
 registers st0 to st7.


> > code to be added here...
> >   /* floats */
> >      /* It just record the memory change of
> instrcution. */
> >    case 0xd8:
> >    case 0xd9:
> >    case 0xda:
> >    case 0xdb:
> >    case 0xdc:
> >    case 0xdd:
> >    case 0xde:
> >    case 0xdf:
> >
> >
    do we need to collect affect FPU flags !!

    and another thing is ;
    take floating point insn
    opcode  mnemnic   desc
    DE F9   FDIVP     Divide ST(1) by ST(0),
                      store result in ST(1), and
                      pop the register stack.

I do not think code is taking care of 2 bytes floating
instruction..
I suspoe ModR/M and SIB byte encoding is taken care
with respect to floating point.

please clarify.

Regards,
Oza.


--- On Wed, 5/13/09, Hui Zhu <teawater@gmail.com> wrote:

> From: Hui Zhu <teawater@gmail.com>
> Subject: Re: MMX & Floating point insn suport for reversible debugging
> To: "paawan oza" <paawan1982@yahoo.com>
> Cc: "gdb ml" <gdb@sourceware.org>
> Date: Wednesday, May 13, 2009, 10:07 PM
> Maybe you can read i387-tdep.c.
> 
> Thanks,
> Hui
> 
> On Thu, May 14, 2009 at 00:17, paawan oza <paawan1982@yahoo.com>
> wrote:
> >
> > Hi Hui,
> >
> > file : linux-tdep.c
> > function : i386_process_record
> >
> > here I start adding floating point register support.
> > I think it records the memory
> >
> > so remaining thing for floating point is store
> registers st0 to st7.
> >
> >
> > code to be added here...
> > ? /* floats */
> > ? ? ?/* It just record the memory change of
> instrcution. */
> > ? ?case 0xd8:
> > ? ?case 0xd9:
> > ? ?case 0xda:
> > ? ?case 0xdb:
> > ? ?case 0xdc:
> > ? ?case 0xdd:
> > ? ?case 0xde:
> > ? ?case 0xdf:
> >
> >
> > I am not sure ptrace will give FPU affected flags !!!
> >
> > and another thing is ;
> > take floating point insn
> > opcode ?mnemnic ? desc
> > DE F9 ? FDIVP ? ? Divide ST(1) by ST(0),
> > ? ? ? ? ? ? ? ? ?store result in ST(1), and
> pop the register stack.
> >
> > I do not think code is taking care of 2 bytes floating
> instruction..
> > I suspoe ModR/M and SIB byte encoding is taken care
> with respect to floating point.
> >
> > please clarify.
> >
> > Regards,
> > Oza.
> >
> >
> >
> >
> >
> >
> >
> >
> >
> 




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