This is the mail archive of the
gdb@sourceware.cygnus.com
mailing list for the GDB project.
Re: [PATCH] More updates to FXSR/SSE support in 2.4.0-test1
- To: gareth at precisioninsight dot com
- Subject: Re: [PATCH] More updates to FXSR/SSE support in 2.4.0-test1
- From: Mark Kettenis <kettenis at wins dot uva dot nl>
- Date: Mon, 12 Jun 2000 02:02:48 +0200
- CC: alan at lxorguk dot ukuu dot org dot uk, drepper at redhat dot com, adam at yggdrasil dot com, linux-kernel at vger dot rutgers dot edu, bug-glibc at gnu dot org, gdb at sourceware dot cygnus dot com
- References: <E130wkg-0000uJ-00@the-village.bc.nu> <394428DD.A2EFC21B@precisioninsight.com>
Date: Sun, 11 Jun 2000 18:03:41 -0600
From: Gareth Hughes <gareth@precisioninsight.com>
Here's a copy of my latest work, this time kernel and glibc headers
only. I'm still working on updating GDB, as incorporating Mark's
suggestions leads to some problems with the stock 5.0 code (mainly in
the interpretation of the FPU tag word).
Looks much better :-). I didn't realize there were tag word problems
until yesterday :-(. If this means that stock GDB 5.0 won't work
anymore, so be it. A sane kernel interface is more important.
What exactly happens if you try to compile stock GDB 5.0 with the new
kernel? Does it compile at all? Is it seriously crippled? Or does
it basically work right?
If there are major problems, it might be wise to choose a different
name for the PTRACE_{GET,SET}XFPREGS requests to avoid confusion.
That way, nobody will end up with a non-functional GDB (of course the
blame lies entirely with the GDB team for this mess). My suggestion
would be to call those requests PTRACE_{GET,SET}FPXREGS. It turns out
that Unixware uses a similar name for its FXSR support (they don't
have ptrace(), but they have a PCSFPXREG ioctl() and a __fpxregset_t
type[1]). Moreover this makes the FSAVE/FPREGS vs. FXSAVE/FPXREGS
analogy a bit more explicit.
Mark
[1] The patch implementing the FXSR support for Unixware is PTF7406B,
which you can get at the following URLs:
ftp://ftp.sco.com/SLS/ptf7406b.txt (description)
ftp://ftp.sco.com/SLS/ptf7406b.Z (the actual patch)
The patch is a `pkg Datastream (SVR4)' (according to file(1)), but
if you ignore the binary bits you can read the documentation and
header files.
Anyhow, people might want to take a look at this for additional
inspiration.