[PATCH] Add orig_eax to regforms
Daniel Jacobowitz
drow@mvista.com
Tue Feb 26 22:18:00 GMT 2002
Committed as obvious, if somewhat regrettable. The register packet grew
when $orig_eax was added, so GNU/Linux/i386 no longer has the same remote
protocol as other i386 targets. We do read this register from the target,
so there's not much we can do. Has anyone perhaps checked that an
i386-linux GDB can still talk to an i386-linux-gnu kernel via KGDB now that
it expects an extra register?
This points out that it would be nice to have regformats/ express 'core
architecture registers' and some sort of 'secondary' registers. I'll hold
off on that for the moment, probably until after the next release.
--
Daniel Jacobowitz Carnegie Mellon University
MontaVista Software Debian GNU/Linux Developer
2002-02-27 Daniel Jacobowitz <drow@mvista.com>
* regformats/reg-i386-linux.dat: New file, with $orig_eax.
* gdbserver/Makefile.in: Add rules for reg-i386-linux.o.
* gdbserver/configure.srv: Change i386-*-linux* to use
reg-i386-linux.o.
Index: regformats/reg-i386-linux.dat
===================================================================
RCS file: N/A
diff -u /dev/null regformats/reg-i386-linux.dat
--- /dev/null Wed Dec 31 19:00:00 1969
+++ regformats/reg-i386-linux.dat Wed Feb 27 01:14:35 2002
@@ -0,0 +1,44 @@
+name:i386_linux
+expedite:ebp,esp,eip
+32:eax
+32:ecx
+32:edx
+32:ebx
+32:esp
+32:ebp
+32:esi
+32:edi
+32:eip
+32:eflags
+32:cs
+32:ss
+32:ds
+32:es
+32:fs
+32:gs
+80:st0
+80:st1
+80:st2
+80:st3
+80:st4
+80:st5
+80:st6
+80:st7
+32:fctrl
+32:fstat
+32:ftag
+32:fiseg
+32:fioff
+32:foseg
+32:fooff
+32:fop
+128:xmm0
+128:xmm1
+128:xmm2
+128:xmm3
+128:xmm4
+128:xmm5
+128:xmm6
+128:xmm7
+32:mxcsr
+32:orig_eax
Index: gdbserver/Makefile.in
===================================================================
RCS file: /cvs/src/src/gdb/gdbserver/Makefile.in,v
retrieving revision 1.8
diff -u -p -r1.8 Makefile.in
--- gdbserver/Makefile.in 2002/02/25 02:47:23 1.8
+++ gdbserver/Makefile.in 2002/02/27 06:15:35
@@ -183,7 +183,7 @@ clean:
rm -f *.o ${ADD_FILES} *~
rm -f gdbserver gdbreplay core make.log
rm -f reg-arm.c reg-i386.c reg-ia64.c reg-m68k.c reg-mips.c
- rm -f reg-ppc.c reg-sh.c
+ rm -f reg-ppc.c reg-sh.c reg-i386-linux.c
distclean: clean
rm -f nm.h tm.h xm.h config.status
@@ -254,6 +254,9 @@ reg-arm.c : $(srcdir)/../regformats/reg-
reg-i386.o : reg-i386.c $(regdef_h)
reg-i386.c : $(srcdir)/../regformats/reg-i386.dat $(regdat_sh)
sh $(regdat_sh) $(srcdir)/../regformats/reg-i386.dat reg-i386.c
+reg-i386-linux.o : reg-i386-linux.c $(regdef_h)
+reg-i386-linux.c : $(srcdir)/../regformats/reg-i386-linux.dat $(regdat_sh)
+ sh $(regdat_sh) $(srcdir)/../regformats/reg-i386-linux.dat reg-i386-linux.c
reg-ia64.o : reg-ia64.c $(regdef_h)
reg-ia64.c : $(srcdir)/../regformats/reg-ia64.dat $(regdat_sh)
sh $(regdat_sh) $(srcdir)/../regformats/reg-ia64.dat reg-ia64.c
Index: gdbserver/configure.srv
===================================================================
RCS file: /cvs/src/src/gdb/gdbserver/configure.srv,v
retrieving revision 1.1
diff -u -p -r1.1 configure.srv
--- gdbserver/configure.srv 2002/02/25 02:47:23 1.1
+++ gdbserver/configure.srv 2002/02/27 06:15:35
@@ -17,7 +17,7 @@ case "${target}" in
arm*-*-linux*) srv_regobj=reg-arm.o
srv_tgtobj="linux-low.o linux-arm-low.o"
;;
- i[3456]86-*-linux*) srv_regobj=reg-i386.o
+ i[3456]86-*-linux*) srv_regobj=reg-i386-linux.o
srv_tgtobj="linux-low.o linux-i386-low.o"
;;
ia64-*-linux*) srv_regobj=reg-ia64.o
More information about the Gdb-patches
mailing list