This is the mail archive of the
gdb-prs@sources.redhat.com
mailing list for the GDB project.
Re: breakpoints/1321: GDB: problem with FPU
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: nobody at sources dot redhat dot com
- Cc: gdb-prs at sources dot redhat dot com,
- Date: 4 Jan 2004 17:48:00 -0000
- Subject: Re: breakpoints/1321: GDB: problem with FPU
- Reply-to: Daniel Jacobowitz <drow at mvista dot com>
The following reply was made to PR breakpoints/1321; it has been noted by GNATS.
From: Daniel Jacobowitz <drow@mvista.com>
To: Mark Kettenis <kettenis@chello.nl>, gdb-gnats@sources.redhat.com
Cc:
Subject: Re: breakpoints/1321: GDB: problem with FPU
Date: Sun, 4 Jan 2004 12:39:42 -0500
On Sun, Jan 04, 2004 at 10:38:00AM -0000, Mark Kettenis wrote:
> The following reply was made to PR breakpoints/1321; it has been noted by GNATS.
>
> From: Mark Kettenis <kettenis@chello.nl>
> To: gdb-gnats@sources.redhat.com, miwako.tokugawa@intel.com, sana@stl.sarov.ru
> Cc:
> Subject: Re: breakpoints/1321: GDB: problem with FPU
> Date: Sun, 4 Jan 2004 11:35:04 +0100 (CET)
>
> I'm fairly certain this problem is related to the lack of support for
> FXSAVE/SSE in libthread_db on Linux. As a result the SSE and FPU
> registers don't get passed along correctly between the different
> layers when debugging threaded programs. Consequently you're looking
> at stale FPU registers or FPU registers from a different thread. The
> problem will probably go away when debugging on an older machine that
> doesn't have the SSE registers.
>
> We can't fix this until someone adds the necessary bits to
> libthread_db, which can be found in glibc.
I don't think so - libthread_db will (with one exception) just pass an
arbitrary size of regset through. This particular bug was fixed two
years ago, I think. It was a nasty little bug that (IIRC) caused the
wrong thread's registers to be written back after a single-step.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer