aboutsummaryrefslogtreecommitdiff
path: root/gdb/regformats
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2008-02-28 05:54:10 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2008-02-28 05:54:10 +0000
commit9b4b61c8db8afdbf6b08761fc73e766ed9fcfaff (patch)
tree4a767e059e5054d9e5e09f60e0acc4486c40cd89 /gdb/regformats
parent919ed24cbc56717156ee86a754281cc08919d2ba (diff)
downloadgdb-9b4b61c8db8afdbf6b08761fc73e766ed9fcfaff.zip
gdb-9b4b61c8db8afdbf6b08761fc73e766ed9fcfaff.tar.gz
gdb-9b4b61c8db8afdbf6b08761fc73e766ed9fcfaff.tar.bz2
ChangeLog:
* features/Makefile (%.dat): Emit xmltarget statement. * regformats/regdat.sh: Support xmltarget and xmlarch statments. Generate code to set gdbserver_xmltarget in init_registers_${name}. * regformats/arm-with-iwmmxt.dat: Regenerate. * regformats/mips64-linux.dat: Regenerate. * regformats/mips-linux.dat: Regenerate. * regformats/rs6000/powerpc-32.dat: Regenerate. * regformats/rs6000/powerpc-64.dat: Regenerate. * regformats/rs6000/powerpc-e500.dat: Regenerate. * regformats/reg-arm.dat: Add xmlarch statement. * regformats/reg-i386.dat: Likewise. * regformats/reg-i386-linux.dat: Likewise. * regformats/reg-x86-64-linux.dat: Likewise. * regformats/reg-spu.dat: Likewise. gdbserver/ChangeLog: * regcache.h (gdbserver_xmltarget): Add extern declaration. * server.c (gdbserver_xmltarget): Define. (get_features_xml): Use it to replace "target.xml" and arch_string. * configure.srv: Remove srv_xmltarget. Add XML files that were mentioned there to srv_xmlfiles instead. Remove conditional tests on gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe; set srv_xmlfiles and srv_regobj to include all possible choices. * configure.ac (srv_xmltarget): Remove. (srv_xmlfiles): Do not add "target.xml". (gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe): Remove checks for supplementary target information. * configure: Regenerate. * Makefile.in (XML_TARGET): Remove. (target.xml): Remove rule. (clean): Do not clean up target.xml. (.PRECIOUS): Do not mention target.xml. * target.h (struct target_ops): Remove arch_string member. * linux-low.c (linux_arch_string): Remove. (linux_target_ops): Remove arch_string initializer. * linux-low.h (struct linux_target_ops): Remove arch_string member. * linux-i386-low.c (the_low_target): Remove arch_string initializer. * linux-x86-64-low.c (the_low_target): Remove arch_string initializer. * spu-low.c (spu_arch_string): Remove. (spu_target_ops): Remove arch_string initializer. * win32-low.c (win32_arch_string): Remove. (win32_target_ops): Remove arch_string initializer. * win32-low.h (struct win32_target_ops): Remove arch_string member. * win32-arm-low.c (the_low_target): Remove arch_string initializer. * win32-i368-low.c (the_low_target): Remove arch_string initializer.
Diffstat (limited to 'gdb/regformats')
-rw-r--r--gdb/regformats/arm-with-iwmmxt.dat1
-rw-r--r--gdb/regformats/mips-linux.dat1
-rw-r--r--gdb/regformats/mips64-linux.dat1
-rw-r--r--gdb/regformats/reg-arm.dat1
-rw-r--r--gdb/regformats/reg-i386-linux.dat1
-rw-r--r--gdb/regformats/reg-i386.dat1
-rw-r--r--gdb/regformats/reg-spu.dat1
-rw-r--r--gdb/regformats/reg-x86-64-linux.dat1
-rwxr-xr-xgdb/regformats/regdat.sh13
-rw-r--r--gdb/regformats/rs6000/powerpc-32.dat1
-rw-r--r--gdb/regformats/rs6000/powerpc-64.dat1
-rw-r--r--gdb/regformats/rs6000/powerpc-e500.dat1
12 files changed, 24 insertions, 0 deletions
diff --git a/gdb/regformats/arm-with-iwmmxt.dat b/gdb/regformats/arm-with-iwmmxt.dat
index 17bfec2..f4eba4d 100644
--- a/gdb/regformats/arm-with-iwmmxt.dat
+++ b/gdb/regformats/arm-with-iwmmxt.dat
@@ -1,5 +1,6 @@
# DO NOT EDIT: generated from arm-with-iwmmxt.xml
name:arm_with_iwmmxt
+xmltarget:arm-with-iwmmxt.xml
expedite:r11,sp,pc
32:r0
32:r1
diff --git a/gdb/regformats/mips-linux.dat b/gdb/regformats/mips-linux.dat
index 38c47d4..5371f5e 100644
--- a/gdb/regformats/mips-linux.dat
+++ b/gdb/regformats/mips-linux.dat
@@ -1,5 +1,6 @@
# DO NOT EDIT: generated from mips-linux.xml
name:mips_linux
+xmltarget:mips-linux.xml
expedite:r29,pc
32:r0
32:r1
diff --git a/gdb/regformats/mips64-linux.dat b/gdb/regformats/mips64-linux.dat
index 0049457..9364def 100644
--- a/gdb/regformats/mips64-linux.dat
+++ b/gdb/regformats/mips64-linux.dat
@@ -1,5 +1,6 @@
# DO NOT EDIT: generated from mips64-linux.xml
name:mips64_linux
+xmltarget:mips64-linux.xml
expedite:r29,pc
64:r0
64:r1
diff --git a/gdb/regformats/reg-arm.dat b/gdb/regformats/reg-arm.dat
index 5a60025..7d995fb 100644
--- a/gdb/regformats/reg-arm.dat
+++ b/gdb/regformats/reg-arm.dat
@@ -1,4 +1,5 @@
name:arm
+xmlarch:arm
expedite:r11,sp,pc
32:r0
32:r1
diff --git a/gdb/regformats/reg-i386-linux.dat b/gdb/regformats/reg-i386-linux.dat
index 91baa8f..8ea3d11 100644
--- a/gdb/regformats/reg-i386-linux.dat
+++ b/gdb/regformats/reg-i386-linux.dat
@@ -1,4 +1,5 @@
name:i386_linux
+xmlarch:i386
expedite:ebp,esp,eip
32:eax
32:ecx
diff --git a/gdb/regformats/reg-i386.dat b/gdb/regformats/reg-i386.dat
index 69c2d90..6e30971 100644
--- a/gdb/regformats/reg-i386.dat
+++ b/gdb/regformats/reg-i386.dat
@@ -1,4 +1,5 @@
name:i386
+xmlarch:i386
expedite:ebp,esp,eip
32:eax
32:ecx
diff --git a/gdb/regformats/reg-spu.dat b/gdb/regformats/reg-spu.dat
index 16c18f1..fb69119 100644
--- a/gdb/regformats/reg-spu.dat
+++ b/gdb/regformats/reg-spu.dat
@@ -1,4 +1,5 @@
name:spu
+xmlarch:spu
expedite:r0,r1,npc
128:r0
128:r1
diff --git a/gdb/regformats/reg-x86-64-linux.dat b/gdb/regformats/reg-x86-64-linux.dat
index 47d324a..656f72a 100644
--- a/gdb/regformats/reg-x86-64-linux.dat
+++ b/gdb/regformats/reg-x86-64-linux.dat
@@ -1,4 +1,5 @@
name:x86_64_linux
+xmlarch:i386:x86-64
expedite:rbp,rsp,rip
64:rax
64:rbx
diff --git a/gdb/regformats/regdat.sh b/gdb/regformats/regdat.sh
index c035f2b..3eb6818 100755
--- a/gdb/regformats/regdat.sh
+++ b/gdb/regformats/regdat.sh
@@ -127,6 +127,7 @@ echo
offset=0
i=0
name=x
+xmltarget=x
expedite=x
exec < $1
while do_read
@@ -135,6 +136,12 @@ do
name="${entry}"
echo "struct reg regs_${name}[] = {"
continue
+ elif test "${type}" = "xmltarget"; then
+ xmltarget="${entry}"
+ continue
+ elif test "${type}" = "xmlarch"; then
+ xmltarget="@<target><architecture>${entry}</architecture></target>"
+ continue
elif test "${type}" = "expedite"; then
expedite="${entry}"
continue
@@ -151,6 +158,11 @@ done
echo "};"
echo
echo "const char *expedite_regs_${name}[] = { \"`echo ${expedite} | sed 's/,/", "/g'`\", 0 };"
+if test "${xmltarget}" = x; then
+ echo "const char *xmltarget_${name} = 0;"
+else
+ echo "const char *xmltarget_${name} = \"${xmltarget}\";"
+fi
echo
cat <<EOF
@@ -160,6 +172,7 @@ init_registers_${name} ()
set_register_cache (regs_${name},
sizeof (regs_${name}) / sizeof (regs_${name}[0]));
gdbserver_expedite_regs = expedite_regs_${name};
+ gdbserver_xmltarget = xmltarget_${name};
}
EOF
diff --git a/gdb/regformats/rs6000/powerpc-32.dat b/gdb/regformats/rs6000/powerpc-32.dat
index 80dd9f3..3518b84 100644
--- a/gdb/regformats/rs6000/powerpc-32.dat
+++ b/gdb/regformats/rs6000/powerpc-32.dat
@@ -1,5 +1,6 @@
# DO NOT EDIT: generated from rs6000/powerpc-32.xml
name:powerpc_32
+xmltarget:rs6000/powerpc-32.xml
expedite:r1,pc
32:r0
32:r1
diff --git a/gdb/regformats/rs6000/powerpc-64.dat b/gdb/regformats/rs6000/powerpc-64.dat
index 00573d3..ddd72ba 100644
--- a/gdb/regformats/rs6000/powerpc-64.dat
+++ b/gdb/regformats/rs6000/powerpc-64.dat
@@ -1,5 +1,6 @@
# DO NOT EDIT: generated from rs6000/powerpc-64.xml
name:powerpc_64
+xmltarget:rs6000/powerpc-64.xml
expedite:r1,pc
64:r0
64:r1
diff --git a/gdb/regformats/rs6000/powerpc-e500.dat b/gdb/regformats/rs6000/powerpc-e500.dat
index 5d33c59..d609146 100644
--- a/gdb/regformats/rs6000/powerpc-e500.dat
+++ b/gdb/regformats/rs6000/powerpc-e500.dat
@@ -1,5 +1,6 @@
# DO NOT EDIT: generated from rs6000/powerpc-e500.xml
name:powerpc_e500
+xmltarget:rs6000/powerpc-e500.xml
expedite:r1,pc
32:r0
32:r1