From: "Terry Guo" <terry.guo@arm.com>
To: <lgustavo@codesourcery.com>, "Will Newton" <will.newton@linaro.org>
Cc: <gdb-patches@sourceware.org>
Subject: RE: [Patch]Clean up the XML files for ARM
Date: Mon, 16 Jun 2014 02:12:00 -0000 [thread overview]
Message-ID: <000001cf8908$49f991f0$ddecb5d0$@arm.com> (raw)
In-Reply-To: <001801cf85ef$f9decd40$ed9c67c0$@arm.com>
[-- Attachment #1: Type: text/plain, Size: 7836 bytes --]
> -----Original Message-----
> From: gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] On Behalf Of Terry Guo
> Sent: Thursday, June 12, 2014 11:40 AM
> To: lgustavo@codesourcery.com; 'Will Newton'
> Cc: gdb-patches@sourceware.org
> Subject: RE: [Patch]Clean up the XML files for ARM
>
>
>
> > -----Original Message-----
> > From: gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> > owner@sourceware.org] On Behalf Of Luis Machado
> > Sent: Wednesday, June 11, 2014 7:25 PM
> > To: Terry Guo; 'Will Newton'
> > Cc: gdb-patches@sourceware.org
> > Subject: Re: [Patch]Clean up the XML files for ARM
> >
> > On 06/11/2014 10:12 AM, Terry Guo wrote:
> > >
> > >
> > >> -----Original Message-----
> > >> From: Will Newton [mailto:will.newton@linaro.org]
> > >> Sent: Wednesday, June 11, 2014 4:16 PM
> > >> To: Terry Guo
> > >> Cc: gdb-patches@sourceware.org
> > >> Subject: Re: [Patch]Clean up the XML files for ARM
> > >>
> > >> On 11 June 2014 07:46, Terry Guo <terry.guo@arm.com> wrote:
> > >>> Hi There,
> > >>>
> > >>> Under folder gdb/features we are having more and more ARM related
> > >>> XML
> > >> files.
> > >>> This patch intends to move those ARM XML files into a new folder
> > >>> named
> > >> arm.
> > >>> All the references to those files are now prefixed with folder name
> arm.
> > >>> Please be noted that this doesn't include AArch64 XML files so far.
> > >>> Is it ok to GDB trunk?
> > >>>
> > >>> BR,
> > >>> Terry
> > >>>
> > >>> 2014-06-11 Terry Guo <terry.guo@arm.com>
> > >>>
> > >>> * features/arm-core.xml: Move to ...
> > >>> * features/arm/arm-core.xml: ... here.
> > >>> * features/arm-fpa.xml: Move to ...
> > >>> * features/arm/arm-fpa.xml: ... here.
> > >>> * features/arm-m-profile.xml: Move to ...
> > >>> * features/arm/arm-m-profile.xml: ... here.
> > >>> * features/arm-vfpv2.xml: Move to ...
> > >>> * features/arm/arm-vfpv2.xml: ... here.
> > >>> * features/arm-vfpv3.xml: Move to ...
> > >>> * features/arm/arm-vfpv3.xml: ... here.
> > >>> * features/arm-with-iwmmxt.xml: Move to ...
> > >>> * features/arm/arm-with-iwmmxt.xml: ... here.
> > >>> * features/arm-with-iwmmxt.c: Move to ...
> > >>> * features/arm/arm-with-iwmmxt.c: ... here.
> > >>> * features/arm-with-m.xml: Move to ...
> > >>> * features/arm/arm-with-m.xml: ... here.
> > >>> * features/arm-with-m.c: Move to ...
> > >>> * features/arm/arm-with-m.c: ... here.
> > >>> * features/arm-with-m-fpa-layout.xml: Move to ...
> > >>> * features/arm/arm-with-m-fpa-layout.xml: ... here.
> > >>> * features/arm-with-m-fpa-layout.c: Move to ...
> > >>> * features/arm/arm-with-m-fpa-layout.c: ... here.
> > >>> * features/arm-with-m-vfp-d16.xml: Move to ...
> > >>> * features/arm/arm-with-m-vfp-d16.xml: ... here.
> > >>> * features/arm-with-m-vfp-d16.c: Move to ...
> > >>> * features/arm/arm-with-m-vfp-d16.c: ... here.
> > >>> * features/arm-with-neon.xml: Move to ...
> > >>> * features/arm/arm-with-neon.xml: ... here.
> > >>> * features/arm-with-neon.c: Move to ...
> > >>> * features/arm/arm-with-neon.c: ... here.
> > >>> * features/arm-with-vfpv2.xml: Move to ...
> > >>> * features/arm/arm-with-vfpv2.xml: ... here.
> > >>> * features/arm-with-vfpv2.c: Move to ...
> > >>> * features/arm/arm-with-vfpv2.c: ... here.
> > >>> * features/arm-with-vfpv3.xml: Move to ...
> > >>> * features/arm/arm-with-vfpv3.xml: ... here.
> > >>> * features/arm-with-vfpv3.c: Move to ...
> > >>> * features/arm/arm-with-vfpv3.c: ... here.
> > >>> * features/Makefile: Use new paths to refer ARM files.
> > >>> * arm-tdep.c: Use new paths to include files.
> > >>
> > >> It seems like we have duplicate "arm" in some of the names now, it
> > >> might be a good cleanup to rename, e.g.:
> > >>
> > >> features/arm/arm-vfpv3.xml -> features/arm/vfpv3.xml
> > >>
> > >
> > > Thanks for comments. But files in folder i386 and rs6000 are same as mine.
> > Maybe there are reasons to do so.
> > >
> > > For example:
> > >
> > > i386/
> > > i386/i386-mmx.c
> > > i386/32bit-avx512.xml
> > > i386/x32-avx512.xml
> > > i386/x32-avx512-linux.c
> > > i386/32bit-sse.xml
> > > i386/32bit-mpx.xml
> > > i386/i386-avx-linux.xml
> > > i386/i386-mpx.c
> > > i386/i386-mpx-linux.xml
> > > i386/x32-core.xml
> > > i386/64bit-core.xml
> > > i386/i386.xml
> > >
> > > ./rs6000/powerpc-isa205-altivec64l.xml
> > > ./rs6000/powerpc-e500l.c
> > > ./rs6000/powerpc-altivec64l.c
> > > ./rs6000/powerpc-603.xml
> > > ./rs6000/powerpc-602.xml
> > > ./rs6000/power64-core.xml
> > > ./rs6000/powerpc-64.c
> > > ./rs6000/powerpc-altivec64.c
> > > ./rs6000/powerpc-505.xml
> > >
> > > BR,
> > > Terry
> >
> > I think one of the reasons for having duplication there is that nobody
> > commented about it, like Will.
> >
> > I'd go for the cleaner names without the duplication. The duplication
> certainly
> > doesn't add anything to it.
> >
>
> Hi Luis and Will,
>
> Thanks both of you. This clears my concerns. I will update this per your
> comments.
>
> BR,
> Terry
>
>
Hi,
Attachment is an updated patch with the removal of arm in filename. There is also a change to gdb regression test case. Is this one OK?
BR,
Terry
Updated ChangeLog:
2014-06-16 Terry Guo <terry.guo@arm.com>
* features/arm-core.xml: Move to ...
* features/arm/core.xml: ... here.
* features/arm-fpa.xml: Move to ...
* features/arm/fpa.xml: ... here.
* features/arm-m-profile.xml: Move to ...
* features/arm/m-profile.xml: ... here.
* features/arm-vfpv2.xml: Move to ...
* features/arm/vfpv2.xml: ... here.
* features/arm-vfpv3.xml: Move to ...
* features/arm/vfpv3.xml: ... here.
* features/arm-with-iwmmxt.xml: Move to ...
* features/arm/with-iwmmxt.xml: ... here.
* features/arm-with-iwmmxt.c: Move to ...
* features/arm/with-iwmmxt.c: ... here.
* features/arm-with-m.xml: Move to ...
* features/arm/with-m.xml: ... here.
* features/arm-with-m.c: Move to ...
* features/arm/with-m.c: ... here.
* features/arm-with-m-fpa-layout.xml: Move to ...
* features/arm/with-m-fpa-layout.xml: ... here.
* features/arm-with-m-fpa-layout.c: Move to ...
* features/arm/with-m-fpa-layout.c: ... here.
* features/arm-with-m-vfp-d16.xml: Move to ...
* features/arm/with-m-vfp-d16.xml: ... here.
* features/arm-with-m-vfp-d16.c: Move to ...
* features/arm/with-m-vfp-d16.c: ... here.
* features/arm-with-neon.xml: Move to ...
* features/arm/with-neon.xml: ... here.
* features/arm-with-neon.c: Move to ...
* features/arm/with-neon.c: ... here.
* features/arm-with-vfpv2.xml: Move to ...
* features/arm/with-vfpv2.xml: ... here.
* features/arm-with-vfpv2.c: Move to ...
* features/arm/with-vfpv2.c: ... here.
* features/arm-with-vfpv3.xml: Move to ...
* features/arm/with-vfpv3.xml: ... here.
* features/arm-with-vfpv3.c: Move to ...
* features/arm/with-vfpv3.c: ... here.
* features/xscale-iwmmxt.xml: Move to ...
* features/arm/xscale-iwmmxt.xml: ... here.
* features/Makefile: Use new paths to refer ARM files.
* arm-tdep.c: Use new paths to include files.
gdb/gdbserver/ChangeLog:
2014-06-16 Terry Guo <terry.guo@arm.com>
* configure.srv: Use new paths to refer ARM XML files.
2014-06-16 Terry Guo <terry.guo@arm.com>
* gdb.xml/tdesc-regs.exp (arm): Use new path to refer ARM XML file.
[-- Attachment #2: gdb-clean-xml-for-arm-v2.txt --]
[-- Type: text/plain, Size: 82569 bytes --]
diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
index 74942b1..6e1bcaa 100644
--- a/gdb/arm-tdep.c
+++ b/gdb/arm-tdep.c
@@ -59,13 +59,13 @@
#include "record.h"
#include "record-full.h"
-#include "features/arm-with-m.c"
-#include "features/arm-with-m-fpa-layout.c"
-#include "features/arm-with-m-vfp-d16.c"
-#include "features/arm-with-iwmmxt.c"
-#include "features/arm-with-vfpv2.c"
-#include "features/arm-with-vfpv3.c"
-#include "features/arm-with-neon.c"
+#include "features/arm/with-m.c"
+#include "features/arm/with-m-fpa-layout.c"
+#include "features/arm/with-m-vfp-d16.c"
+#include "features/arm/with-iwmmxt.c"
+#include "features/arm/with-vfpv2.c"
+#include "features/arm/with-vfpv3.c"
+#include "features/arm/with-neon.c"
static int arm_debug;
diff --git a/gdb/features/Makefile b/gdb/features/Makefile
index dbf4963..93ddbe2 100644
--- a/gdb/features/Makefile
+++ b/gdb/features/Makefile
@@ -31,8 +31,8 @@
# make GDB=/path/to/gdb XMLTOC="xml files" cfiles
WHICH = aarch64 \
- arm-with-iwmmxt arm-with-vfpv2 arm-with-vfpv3 arm-with-neon \
- arm-with-m arm-with-m-fpa-layout arm-with-m-vfp-d16 \
+ arm/with-iwmmxt arm/with-vfpv2 arm/with-vfpv3 arm/with-neon \
+ arm/with-m arm/with-m-fpa-layout arm/with-m-vfp-d16 \
i386/i386 i386/i386-linux \
i386/i386-mmx i386/i386-mmx-linux \
i386/amd64 i386/amd64-linux \
@@ -61,7 +61,7 @@ WHICH = aarch64 \
# Record which registers should be sent to GDB by default after stop.
aarch64-expedite = x29,sp,pc
-arm-expedite = r11,sp,pc
+arm/arm-expedite = r11,sp,pc
i386/i386-expedite = ebp,esp,eip
i386/i386-linux-expedite = ebp,esp,eip
i386/amd64-expedite = rbp,rsp,rip
@@ -141,7 +141,7 @@ cfiles: $(CFILES)
sh ../../move-if-change $@.tmp $@
# Other dependencies.
-$(outdir)/arm-with-iwmmxt.dat: arm-core.xml xscale-iwmmxt.xml
+$(outdir)/arm/with-iwmmxt.dat: arm/core.xml arm/xscale-iwmmxt.xml
$(outdir)/i386/i386.dat: i386/32bit-core.xml i386/32bit-sse.xml
$(outdir)/i386/i386-linux.dat: i386/32bit-core.xml i386/32bit-sse.xml \
i386/32bit-linux.xml
diff --git a/gdb/features/arm-core.xml b/gdb/features/arm-core.xml
deleted file mode 100644
index 422d9bd..0000000
--- a/gdb/features/arm-core.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE feature SYSTEM "gdb-target.dtd">
-<feature name="org.gnu.gdb.arm.core">
- <reg name="r0" bitsize="32" type="uint32"/>
- <reg name="r1" bitsize="32" type="uint32"/>
- <reg name="r2" bitsize="32" type="uint32"/>
- <reg name="r3" bitsize="32" type="uint32"/>
- <reg name="r4" bitsize="32" type="uint32"/>
- <reg name="r5" bitsize="32" type="uint32"/>
- <reg name="r6" bitsize="32" type="uint32"/>
- <reg name="r7" bitsize="32" type="uint32"/>
- <reg name="r8" bitsize="32" type="uint32"/>
- <reg name="r9" bitsize="32" type="uint32"/>
- <reg name="r10" bitsize="32" type="uint32"/>
- <reg name="r11" bitsize="32" type="uint32"/>
- <reg name="r12" bitsize="32" type="uint32"/>
- <reg name="sp" bitsize="32" type="data_ptr"/>
- <reg name="lr" bitsize="32"/>
- <reg name="pc" bitsize="32" type="code_ptr"/>
-
- <!-- The CPSR is register 25, rather than register 16, because
- the FPA registers historically were placed between the PC
- and the CPSR in the "g" packet. -->
- <reg name="cpsr" bitsize="32" regnum="25"/>
-</feature>
diff --git a/gdb/features/arm-fpa.xml b/gdb/features/arm-fpa.xml
deleted file mode 100644
index 8e21450..0000000
--- a/gdb/features/arm-fpa.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE feature SYSTEM "gdb-target.dtd">
-<feature name="org.gnu.gdb.arm.fpa">
- <!-- f0's regnum is set explicitly, because the FPA registers
- historically were placed between the PC and the CPSR in the "g"
- packet - in the middle of org.gnu.gdb.arm.core. -->
- <reg name="f0" bitsize="96" type="arm_fpa_ext" regnum="16"/>
- <reg name="f1" bitsize="96" type="arm_fpa_ext"/>
- <reg name="f2" bitsize="96" type="arm_fpa_ext"/>
- <reg name="f3" bitsize="96" type="arm_fpa_ext"/>
- <reg name="f4" bitsize="96" type="arm_fpa_ext"/>
- <reg name="f5" bitsize="96" type="arm_fpa_ext"/>
- <reg name="f6" bitsize="96" type="arm_fpa_ext"/>
- <reg name="f7" bitsize="96" type="arm_fpa_ext"/>
-
- <reg name="fps" bitsize="32"/>
-</feature>
diff --git a/gdb/features/arm-m-profile.xml b/gdb/features/arm-m-profile.xml
deleted file mode 100644
index 06d660a..0000000
--- a/gdb/features/arm-m-profile.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2010-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE feature SYSTEM "gdb-target.dtd">
-<feature name="org.gnu.gdb.arm.m-profile">
- <reg name="r0" bitsize="32"/>
- <reg name="r1" bitsize="32"/>
- <reg name="r2" bitsize="32"/>
- <reg name="r3" bitsize="32"/>
- <reg name="r4" bitsize="32"/>
- <reg name="r5" bitsize="32"/>
- <reg name="r6" bitsize="32"/>
- <reg name="r7" bitsize="32"/>
- <reg name="r8" bitsize="32"/>
- <reg name="r9" bitsize="32"/>
- <reg name="r10" bitsize="32"/>
- <reg name="r11" bitsize="32"/>
- <reg name="r12" bitsize="32"/>
- <reg name="sp" bitsize="32" type="data_ptr"/>
- <reg name="lr" bitsize="32"/>
- <reg name="pc" bitsize="32" type="code_ptr"/>
- <reg name="xpsr" bitsize="32" regnum="25"/>
-</feature>
diff --git a/gdb/features/arm-vfpv2.xml b/gdb/features/arm-vfpv2.xml
deleted file mode 100644
index 5e552e0..0000000
--- a/gdb/features/arm-vfpv2.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE feature SYSTEM "gdb-target.dtd">
-<feature name="org.gnu.gdb.arm.vfp">
- <reg name="d0" bitsize="64" type="ieee_double"/>
- <reg name="d1" bitsize="64" type="ieee_double"/>
- <reg name="d2" bitsize="64" type="ieee_double"/>
- <reg name="d3" bitsize="64" type="ieee_double"/>
- <reg name="d4" bitsize="64" type="ieee_double"/>
- <reg name="d5" bitsize="64" type="ieee_double"/>
- <reg name="d6" bitsize="64" type="ieee_double"/>
- <reg name="d7" bitsize="64" type="ieee_double"/>
- <reg name="d8" bitsize="64" type="ieee_double"/>
- <reg name="d9" bitsize="64" type="ieee_double"/>
- <reg name="d10" bitsize="64" type="ieee_double"/>
- <reg name="d11" bitsize="64" type="ieee_double"/>
- <reg name="d12" bitsize="64" type="ieee_double"/>
- <reg name="d13" bitsize="64" type="ieee_double"/>
- <reg name="d14" bitsize="64" type="ieee_double"/>
- <reg name="d15" bitsize="64" type="ieee_double"/>
-
- <reg name="fpscr" bitsize="32" type="int" group="float"/>
-</feature>
diff --git a/gdb/features/arm-vfpv3.xml b/gdb/features/arm-vfpv3.xml
deleted file mode 100644
index 4cd5983..0000000
--- a/gdb/features/arm-vfpv3.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE feature SYSTEM "gdb-target.dtd">
-<feature name="org.gnu.gdb.arm.vfp">
- <reg name="d0" bitsize="64" type="ieee_double"/>
- <reg name="d1" bitsize="64" type="ieee_double"/>
- <reg name="d2" bitsize="64" type="ieee_double"/>
- <reg name="d3" bitsize="64" type="ieee_double"/>
- <reg name="d4" bitsize="64" type="ieee_double"/>
- <reg name="d5" bitsize="64" type="ieee_double"/>
- <reg name="d6" bitsize="64" type="ieee_double"/>
- <reg name="d7" bitsize="64" type="ieee_double"/>
- <reg name="d8" bitsize="64" type="ieee_double"/>
- <reg name="d9" bitsize="64" type="ieee_double"/>
- <reg name="d10" bitsize="64" type="ieee_double"/>
- <reg name="d11" bitsize="64" type="ieee_double"/>
- <reg name="d12" bitsize="64" type="ieee_double"/>
- <reg name="d13" bitsize="64" type="ieee_double"/>
- <reg name="d14" bitsize="64" type="ieee_double"/>
- <reg name="d15" bitsize="64" type="ieee_double"/>
- <reg name="d16" bitsize="64" type="ieee_double"/>
- <reg name="d17" bitsize="64" type="ieee_double"/>
- <reg name="d18" bitsize="64" type="ieee_double"/>
- <reg name="d19" bitsize="64" type="ieee_double"/>
- <reg name="d20" bitsize="64" type="ieee_double"/>
- <reg name="d21" bitsize="64" type="ieee_double"/>
- <reg name="d22" bitsize="64" type="ieee_double"/>
- <reg name="d23" bitsize="64" type="ieee_double"/>
- <reg name="d24" bitsize="64" type="ieee_double"/>
- <reg name="d25" bitsize="64" type="ieee_double"/>
- <reg name="d26" bitsize="64" type="ieee_double"/>
- <reg name="d27" bitsize="64" type="ieee_double"/>
- <reg name="d28" bitsize="64" type="ieee_double"/>
- <reg name="d29" bitsize="64" type="ieee_double"/>
- <reg name="d30" bitsize="64" type="ieee_double"/>
- <reg name="d31" bitsize="64" type="ieee_double"/>
-
- <reg name="fpscr" bitsize="32" type="int" group="float"/>
-</feature>
diff --git a/gdb/features/arm-with-iwmmxt.c b/gdb/features/arm-with-iwmmxt.c
deleted file mode 100644
index 1770e03..0000000
--- a/gdb/features/arm-with-iwmmxt.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
- Original: arm-with-iwmmxt.xml */
-
-#include "defs.h"
-#include "osabi.h"
-#include "target-descriptions.h"
-
-struct target_desc *tdesc_arm_with_iwmmxt;
-static void
-initialize_tdesc_arm_with_iwmmxt (void)
-{
- struct target_desc *result = allocate_target_description ();
- struct tdesc_feature *feature;
- struct tdesc_type *field_type;
- struct tdesc_type *type;
-
- set_tdesc_architecture (result, bfd_scan_arch ("iwmmxt"));
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core");
- tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
- tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
- tdesc_create_reg (feature, "cpsr", 25, 1, NULL, 32, "int");
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.xscale.iwmmxt");
- field_type = tdesc_named_type (feature, "uint8");
- tdesc_create_vector (feature, "iwmmxt_v8u8", field_type, 8);
-
- field_type = tdesc_named_type (feature, "uint16");
- tdesc_create_vector (feature, "iwmmxt_v4u16", field_type, 4);
-
- field_type = tdesc_named_type (feature, "uint32");
- tdesc_create_vector (feature, "iwmmxt_v2u32", field_type, 2);
-
- type = tdesc_create_union (feature, "iwmmxt_vec64i");
- field_type = tdesc_named_type (feature, "iwmmxt_v8u8");
- tdesc_add_field (type, "u8", field_type);
- field_type = tdesc_named_type (feature, "iwmmxt_v4u16");
- tdesc_add_field (type, "u16", field_type);
- field_type = tdesc_named_type (feature, "iwmmxt_v2u32");
- tdesc_add_field (type, "u32", field_type);
- field_type = tdesc_named_type (feature, "uint64");
- tdesc_add_field (type, "u64", field_type);
-
- tdesc_create_reg (feature, "wR0", 26, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR1", 27, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR2", 28, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR3", 29, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR4", 30, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR5", 31, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR6", 32, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR7", 33, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR8", 34, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR9", 35, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR10", 36, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR11", 37, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR12", 38, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR13", 39, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR14", 40, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wR15", 41, 1, NULL, 64, "iwmmxt_vec64i");
- tdesc_create_reg (feature, "wCSSF", 42, 1, "vector", 32, "int");
- tdesc_create_reg (feature, "wCASF", 43, 1, "vector", 32, "int");
- tdesc_create_reg (feature, "wCGR0", 44, 1, "vector", 32, "int");
- tdesc_create_reg (feature, "wCGR1", 45, 1, "vector", 32, "int");
- tdesc_create_reg (feature, "wCGR2", 46, 1, "vector", 32, "int");
- tdesc_create_reg (feature, "wCGR3", 47, 1, "vector", 32, "int");
-
- tdesc_arm_with_iwmmxt = result;
-}
diff --git a/gdb/features/arm-with-iwmmxt.xml b/gdb/features/arm-with-iwmmxt.xml
deleted file mode 100644
index 5adadee..0000000
--- a/gdb/features/arm-with-iwmmxt.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE target SYSTEM "gdb-target.dtd">
-<target>
- <architecture>iwmmxt</architecture>
- <xi:include href="arm-core.xml"/>
- <xi:include href="xscale-iwmmxt.xml"/>
-</target>
diff --git a/gdb/features/arm-with-m-fpa-layout.c b/gdb/features/arm-with-m-fpa-layout.c
deleted file mode 100644
index bc51f05..0000000
--- a/gdb/features/arm-with-m-fpa-layout.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
- Original: arm-with-m-fpa-layout.xml */
-
-#include "defs.h"
-#include "osabi.h"
-#include "target-descriptions.h"
-
-struct target_desc *tdesc_arm_with_m_fpa_layout;
-static void
-initialize_tdesc_arm_with_m_fpa_layout (void)
-{
- struct target_desc *result = allocate_target_description ();
- struct tdesc_feature *feature;
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.m-profile");
- tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
- tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
- tdesc_create_reg (feature, "", 16, 1, NULL, 96, "arm_fpa_ext");
- tdesc_create_reg (feature, "", 17, 1, NULL, 96, "arm_fpa_ext");
- tdesc_create_reg (feature, "", 18, 1, NULL, 96, "arm_fpa_ext");
- tdesc_create_reg (feature, "", 19, 1, NULL, 96, "arm_fpa_ext");
- tdesc_create_reg (feature, "", 20, 1, NULL, 96, "arm_fpa_ext");
- tdesc_create_reg (feature, "", 21, 1, NULL, 96, "arm_fpa_ext");
- tdesc_create_reg (feature, "", 22, 1, NULL, 96, "arm_fpa_ext");
- tdesc_create_reg (feature, "", 23, 1, NULL, 96, "arm_fpa_ext");
- tdesc_create_reg (feature, "", 24, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "xpsr", 25, 1, NULL, 32, "int");
-
- tdesc_arm_with_m_fpa_layout = result;
-}
diff --git a/gdb/features/arm-with-m-fpa-layout.xml b/gdb/features/arm-with-m-fpa-layout.xml
deleted file mode 100644
index 18b5b0a..0000000
--- a/gdb/features/arm-with-m-fpa-layout.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!-- A target description for an M-profile device, for stubs that
- transfer registers using the historical fpa layout. -->
-
-<!DOCTYPE target SYSTEM "gdb-target.dtd">
-<target>
-<feature name="org.gnu.gdb.arm.m-profile">
- <reg name="r0" bitsize="32"/>
- <reg name="r1" bitsize="32"/>
- <reg name="r2" bitsize="32"/>
- <reg name="r3" bitsize="32"/>
- <reg name="r4" bitsize="32"/>
- <reg name="r5" bitsize="32"/>
- <reg name="r6" bitsize="32"/>
- <reg name="r7" bitsize="32"/>
- <reg name="r8" bitsize="32"/>
- <reg name="r9" bitsize="32"/>
- <reg name="r10" bitsize="32"/>
- <reg name="r11" bitsize="32"/>
- <reg name="r12" bitsize="32"/>
- <reg name="sp" bitsize="32" type="data_ptr"/>
- <reg name="lr" bitsize="32"/>
- <reg name="pc" bitsize="32" type="code_ptr"/>
-
- <!-- Slack for unused FPA registers (f0-f7 + fps).
- See arm-fpa.xml. -->
- <reg name="" bitsize="96" type="arm_fpa_ext" regnum="16"/>
- <reg name="" bitsize="96" type="arm_fpa_ext"/>
- <reg name="" bitsize="96" type="arm_fpa_ext"/>
- <reg name="" bitsize="96" type="arm_fpa_ext"/>
- <reg name="" bitsize="96" type="arm_fpa_ext"/>
- <reg name="" bitsize="96" type="arm_fpa_ext"/>
- <reg name="" bitsize="96" type="arm_fpa_ext"/>
- <reg name="" bitsize="96" type="arm_fpa_ext"/>
- <reg name="" bitsize="32"/>
-
- <reg name="xpsr" bitsize="32" regnum="25"/>
-</feature>
-</target>
diff --git a/gdb/features/arm-with-m-vfp-d16.c b/gdb/features/arm-with-m-vfp-d16.c
deleted file mode 100644
index a0da583..0000000
--- a/gdb/features/arm-with-m-vfp-d16.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
- Original: arm-with-m-vfp-d16.xml */
-
-#include "defs.h"
-#include "osabi.h"
-#include "target-descriptions.h"
-
-struct target_desc *tdesc_arm_with_m_vfp_d16;
-static void
-initialize_tdesc_arm_with_m_vfp_d16 (void)
-{
- struct target_desc *result = allocate_target_description ();
- struct tdesc_feature *feature;
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.m-profile");
- tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
- tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
- tdesc_create_reg (feature, "xpsr", 25, 1, NULL, 32, "int");
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.vfp");
- tdesc_create_reg (feature, "d0", 26, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d1", 27, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d2", 28, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d3", 29, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d4", 30, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d5", 31, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d6", 32, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d7", 33, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d8", 34, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d9", 35, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d10", 36, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d11", 37, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d12", 38, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d13", 39, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d14", 40, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d15", 41, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "fpscr", 42, 1, "float", 32, "int");
-
- tdesc_arm_with_m_vfp_d16 = result;
-}
diff --git a/gdb/features/arm-with-m-vfp-d16.xml b/gdb/features/arm-with-m-vfp-d16.xml
deleted file mode 100644
index a6527ab..0000000
--- a/gdb/features/arm-with-m-vfp-d16.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2010-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE target SYSTEM "gdb-target.dtd">
-<target>
- <xi:include href="arm-m-profile.xml"/>
- <!-- Layout of vfpv4-sp-d16 is identical to vfpv2 -->
- <xi:include href="arm-vfpv2.xml"/>
-</target>
diff --git a/gdb/features/arm-with-m.c b/gdb/features/arm-with-m.c
deleted file mode 100644
index 8e27a80..0000000
--- a/gdb/features/arm-with-m.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
- Original: arm-with-m.xml */
-
-#include "defs.h"
-#include "osabi.h"
-#include "target-descriptions.h"
-
-struct target_desc *tdesc_arm_with_m;
-static void
-initialize_tdesc_arm_with_m (void)
-{
- struct target_desc *result = allocate_target_description ();
- struct tdesc_feature *feature;
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.m-profile");
- tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
- tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
- tdesc_create_reg (feature, "xpsr", 25, 1, NULL, 32, "int");
-
- tdesc_arm_with_m = result;
-}
diff --git a/gdb/features/arm-with-m.xml b/gdb/features/arm-with-m.xml
deleted file mode 100644
index 6b82405..0000000
--- a/gdb/features/arm-with-m.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2010-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE target SYSTEM "gdb-target.dtd">
-<target>
- <xi:include href="arm-m-profile.xml"/>
-</target>
diff --git a/gdb/features/arm-with-neon.c b/gdb/features/arm-with-neon.c
deleted file mode 100644
index 61c9a3a..0000000
--- a/gdb/features/arm-with-neon.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
- Original: arm-with-neon.xml */
-
-#include "defs.h"
-#include "osabi.h"
-#include "target-descriptions.h"
-
-struct target_desc *tdesc_arm_with_neon;
-static void
-initialize_tdesc_arm_with_neon (void)
-{
- struct target_desc *result = allocate_target_description ();
- struct tdesc_feature *feature;
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core");
- tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
- tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
- tdesc_create_reg (feature, "cpsr", 25, 1, NULL, 32, "int");
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.vfp");
- tdesc_create_reg (feature, "d0", 26, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d1", 27, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d2", 28, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d3", 29, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d4", 30, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d5", 31, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d6", 32, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d7", 33, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d8", 34, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d9", 35, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d10", 36, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d11", 37, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d12", 38, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d13", 39, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d14", 40, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d15", 41, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d16", 42, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d17", 43, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d18", 44, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d19", 45, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d20", 46, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d21", 47, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d22", 48, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d23", 49, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d24", 50, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d25", 51, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d26", 52, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d27", 53, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d28", 54, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d29", 55, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d30", 56, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d31", 57, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "fpscr", 58, 1, "float", 32, "int");
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.neon");
-
- tdesc_arm_with_neon = result;
-}
diff --git a/gdb/features/arm-with-neon.xml b/gdb/features/arm-with-neon.xml
deleted file mode 100644
index 53d1618..0000000
--- a/gdb/features/arm-with-neon.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE target SYSTEM "gdb-target.dtd">
-<target>
- <xi:include href="arm-core.xml"/>
- <xi:include href="arm-vfpv3.xml"/>
- <feature name="org.gnu.gdb.arm.neon"/>
-</target>
diff --git a/gdb/features/arm-with-vfpv2.c b/gdb/features/arm-with-vfpv2.c
deleted file mode 100644
index 78e3c81..0000000
--- a/gdb/features/arm-with-vfpv2.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
- Original: arm-with-vfpv2.xml */
-
-#include "defs.h"
-#include "osabi.h"
-#include "target-descriptions.h"
-
-struct target_desc *tdesc_arm_with_vfpv2;
-static void
-initialize_tdesc_arm_with_vfpv2 (void)
-{
- struct target_desc *result = allocate_target_description ();
- struct tdesc_feature *feature;
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core");
- tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
- tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
- tdesc_create_reg (feature, "cpsr", 25, 1, NULL, 32, "int");
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.vfp");
- tdesc_create_reg (feature, "d0", 26, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d1", 27, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d2", 28, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d3", 29, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d4", 30, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d5", 31, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d6", 32, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d7", 33, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d8", 34, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d9", 35, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d10", 36, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d11", 37, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d12", 38, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d13", 39, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d14", 40, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d15", 41, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "fpscr", 42, 1, "float", 32, "int");
-
- tdesc_arm_with_vfpv2 = result;
-}
diff --git a/gdb/features/arm-with-vfpv2.xml b/gdb/features/arm-with-vfpv2.xml
deleted file mode 100644
index 98a5a1c..0000000
--- a/gdb/features/arm-with-vfpv2.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE target SYSTEM "gdb-target.dtd">
-<target>
- <xi:include href="arm-core.xml"/>
- <xi:include href="arm-vfpv2.xml"/>
-</target>
diff --git a/gdb/features/arm-with-vfpv3.c b/gdb/features/arm-with-vfpv3.c
deleted file mode 100644
index e48ca79..0000000
--- a/gdb/features/arm-with-vfpv3.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
- Original: arm-with-vfpv3.xml */
-
-#include "defs.h"
-#include "osabi.h"
-#include "target-descriptions.h"
-
-struct target_desc *tdesc_arm_with_vfpv3;
-static void
-initialize_tdesc_arm_with_vfpv3 (void)
-{
- struct target_desc *result = allocate_target_description ();
- struct tdesc_feature *feature;
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core");
- tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "uint32");
- tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
- tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
- tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
- tdesc_create_reg (feature, "cpsr", 25, 1, NULL, 32, "int");
-
- feature = tdesc_create_feature (result, "org.gnu.gdb.arm.vfp");
- tdesc_create_reg (feature, "d0", 26, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d1", 27, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d2", 28, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d3", 29, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d4", 30, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d5", 31, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d6", 32, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d7", 33, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d8", 34, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d9", 35, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d10", 36, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d11", 37, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d12", 38, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d13", 39, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d14", 40, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d15", 41, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d16", 42, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d17", 43, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d18", 44, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d19", 45, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d20", 46, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d21", 47, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d22", 48, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d23", 49, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d24", 50, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d25", 51, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d26", 52, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d27", 53, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d28", 54, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d29", 55, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d30", 56, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "d31", 57, 1, NULL, 64, "ieee_double");
- tdesc_create_reg (feature, "fpscr", 58, 1, "float", 32, "int");
-
- tdesc_arm_with_vfpv3 = result;
-}
diff --git a/gdb/features/arm-with-vfpv3.xml b/gdb/features/arm-with-vfpv3.xml
deleted file mode 100644
index aa39548..0000000
--- a/gdb/features/arm-with-vfpv3.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE target SYSTEM "gdb-target.dtd">
-<target>
- <xi:include href="arm-core.xml"/>
- <xi:include href="arm-vfpv3.xml"/>
-</target>
diff --git a/gdb/features/arm/core.xml b/gdb/features/arm/core.xml
new file mode 100644
index 0000000..422d9bd
--- /dev/null
+++ b/gdb/features/arm/core.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE feature SYSTEM "gdb-target.dtd">
+<feature name="org.gnu.gdb.arm.core">
+ <reg name="r0" bitsize="32" type="uint32"/>
+ <reg name="r1" bitsize="32" type="uint32"/>
+ <reg name="r2" bitsize="32" type="uint32"/>
+ <reg name="r3" bitsize="32" type="uint32"/>
+ <reg name="r4" bitsize="32" type="uint32"/>
+ <reg name="r5" bitsize="32" type="uint32"/>
+ <reg name="r6" bitsize="32" type="uint32"/>
+ <reg name="r7" bitsize="32" type="uint32"/>
+ <reg name="r8" bitsize="32" type="uint32"/>
+ <reg name="r9" bitsize="32" type="uint32"/>
+ <reg name="r10" bitsize="32" type="uint32"/>
+ <reg name="r11" bitsize="32" type="uint32"/>
+ <reg name="r12" bitsize="32" type="uint32"/>
+ <reg name="sp" bitsize="32" type="data_ptr"/>
+ <reg name="lr" bitsize="32"/>
+ <reg name="pc" bitsize="32" type="code_ptr"/>
+
+ <!-- The CPSR is register 25, rather than register 16, because
+ the FPA registers historically were placed between the PC
+ and the CPSR in the "g" packet. -->
+ <reg name="cpsr" bitsize="32" regnum="25"/>
+</feature>
diff --git a/gdb/features/arm/fpa.xml b/gdb/features/arm/fpa.xml
new file mode 100644
index 0000000..8e21450
--- /dev/null
+++ b/gdb/features/arm/fpa.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE feature SYSTEM "gdb-target.dtd">
+<feature name="org.gnu.gdb.arm.fpa">
+ <!-- f0's regnum is set explicitly, because the FPA registers
+ historically were placed between the PC and the CPSR in the "g"
+ packet - in the middle of org.gnu.gdb.arm.core. -->
+ <reg name="f0" bitsize="96" type="arm_fpa_ext" regnum="16"/>
+ <reg name="f1" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="f2" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="f3" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="f4" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="f5" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="f6" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="f7" bitsize="96" type="arm_fpa_ext"/>
+
+ <reg name="fps" bitsize="32"/>
+</feature>
diff --git a/gdb/features/arm/m-profile.xml b/gdb/features/arm/m-profile.xml
new file mode 100644
index 0000000..06d660a
--- /dev/null
+++ b/gdb/features/arm/m-profile.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2010-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE feature SYSTEM "gdb-target.dtd">
+<feature name="org.gnu.gdb.arm.m-profile">
+ <reg name="r0" bitsize="32"/>
+ <reg name="r1" bitsize="32"/>
+ <reg name="r2" bitsize="32"/>
+ <reg name="r3" bitsize="32"/>
+ <reg name="r4" bitsize="32"/>
+ <reg name="r5" bitsize="32"/>
+ <reg name="r6" bitsize="32"/>
+ <reg name="r7" bitsize="32"/>
+ <reg name="r8" bitsize="32"/>
+ <reg name="r9" bitsize="32"/>
+ <reg name="r10" bitsize="32"/>
+ <reg name="r11" bitsize="32"/>
+ <reg name="r12" bitsize="32"/>
+ <reg name="sp" bitsize="32" type="data_ptr"/>
+ <reg name="lr" bitsize="32"/>
+ <reg name="pc" bitsize="32" type="code_ptr"/>
+ <reg name="xpsr" bitsize="32" regnum="25"/>
+</feature>
diff --git a/gdb/features/arm/vfpv2.xml b/gdb/features/arm/vfpv2.xml
new file mode 100644
index 0000000..5e552e0
--- /dev/null
+++ b/gdb/features/arm/vfpv2.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE feature SYSTEM "gdb-target.dtd">
+<feature name="org.gnu.gdb.arm.vfp">
+ <reg name="d0" bitsize="64" type="ieee_double"/>
+ <reg name="d1" bitsize="64" type="ieee_double"/>
+ <reg name="d2" bitsize="64" type="ieee_double"/>
+ <reg name="d3" bitsize="64" type="ieee_double"/>
+ <reg name="d4" bitsize="64" type="ieee_double"/>
+ <reg name="d5" bitsize="64" type="ieee_double"/>
+ <reg name="d6" bitsize="64" type="ieee_double"/>
+ <reg name="d7" bitsize="64" type="ieee_double"/>
+ <reg name="d8" bitsize="64" type="ieee_double"/>
+ <reg name="d9" bitsize="64" type="ieee_double"/>
+ <reg name="d10" bitsize="64" type="ieee_double"/>
+ <reg name="d11" bitsize="64" type="ieee_double"/>
+ <reg name="d12" bitsize="64" type="ieee_double"/>
+ <reg name="d13" bitsize="64" type="ieee_double"/>
+ <reg name="d14" bitsize="64" type="ieee_double"/>
+ <reg name="d15" bitsize="64" type="ieee_double"/>
+
+ <reg name="fpscr" bitsize="32" type="int" group="float"/>
+</feature>
diff --git a/gdb/features/arm/vfpv3.xml b/gdb/features/arm/vfpv3.xml
new file mode 100644
index 0000000..4cd5983
--- /dev/null
+++ b/gdb/features/arm/vfpv3.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE feature SYSTEM "gdb-target.dtd">
+<feature name="org.gnu.gdb.arm.vfp">
+ <reg name="d0" bitsize="64" type="ieee_double"/>
+ <reg name="d1" bitsize="64" type="ieee_double"/>
+ <reg name="d2" bitsize="64" type="ieee_double"/>
+ <reg name="d3" bitsize="64" type="ieee_double"/>
+ <reg name="d4" bitsize="64" type="ieee_double"/>
+ <reg name="d5" bitsize="64" type="ieee_double"/>
+ <reg name="d6" bitsize="64" type="ieee_double"/>
+ <reg name="d7" bitsize="64" type="ieee_double"/>
+ <reg name="d8" bitsize="64" type="ieee_double"/>
+ <reg name="d9" bitsize="64" type="ieee_double"/>
+ <reg name="d10" bitsize="64" type="ieee_double"/>
+ <reg name="d11" bitsize="64" type="ieee_double"/>
+ <reg name="d12" bitsize="64" type="ieee_double"/>
+ <reg name="d13" bitsize="64" type="ieee_double"/>
+ <reg name="d14" bitsize="64" type="ieee_double"/>
+ <reg name="d15" bitsize="64" type="ieee_double"/>
+ <reg name="d16" bitsize="64" type="ieee_double"/>
+ <reg name="d17" bitsize="64" type="ieee_double"/>
+ <reg name="d18" bitsize="64" type="ieee_double"/>
+ <reg name="d19" bitsize="64" type="ieee_double"/>
+ <reg name="d20" bitsize="64" type="ieee_double"/>
+ <reg name="d21" bitsize="64" type="ieee_double"/>
+ <reg name="d22" bitsize="64" type="ieee_double"/>
+ <reg name="d23" bitsize="64" type="ieee_double"/>
+ <reg name="d24" bitsize="64" type="ieee_double"/>
+ <reg name="d25" bitsize="64" type="ieee_double"/>
+ <reg name="d26" bitsize="64" type="ieee_double"/>
+ <reg name="d27" bitsize="64" type="ieee_double"/>
+ <reg name="d28" bitsize="64" type="ieee_double"/>
+ <reg name="d29" bitsize="64" type="ieee_double"/>
+ <reg name="d30" bitsize="64" type="ieee_double"/>
+ <reg name="d31" bitsize="64" type="ieee_double"/>
+
+ <reg name="fpscr" bitsize="32" type="int" group="float"/>
+</feature>
diff --git a/gdb/features/arm/with-iwmmxt.c b/gdb/features/arm/with-iwmmxt.c
new file mode 100644
index 0000000..1770e03
--- /dev/null
+++ b/gdb/features/arm/with-iwmmxt.c
@@ -0,0 +1,82 @@
+/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
+ Original: arm-with-iwmmxt.xml */
+
+#include "defs.h"
+#include "osabi.h"
+#include "target-descriptions.h"
+
+struct target_desc *tdesc_arm_with_iwmmxt;
+static void
+initialize_tdesc_arm_with_iwmmxt (void)
+{
+ struct target_desc *result = allocate_target_description ();
+ struct tdesc_feature *feature;
+ struct tdesc_type *field_type;
+ struct tdesc_type *type;
+
+ set_tdesc_architecture (result, bfd_scan_arch ("iwmmxt"));
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core");
+ tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
+ tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
+ tdesc_create_reg (feature, "cpsr", 25, 1, NULL, 32, "int");
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.xscale.iwmmxt");
+ field_type = tdesc_named_type (feature, "uint8");
+ tdesc_create_vector (feature, "iwmmxt_v8u8", field_type, 8);
+
+ field_type = tdesc_named_type (feature, "uint16");
+ tdesc_create_vector (feature, "iwmmxt_v4u16", field_type, 4);
+
+ field_type = tdesc_named_type (feature, "uint32");
+ tdesc_create_vector (feature, "iwmmxt_v2u32", field_type, 2);
+
+ type = tdesc_create_union (feature, "iwmmxt_vec64i");
+ field_type = tdesc_named_type (feature, "iwmmxt_v8u8");
+ tdesc_add_field (type, "u8", field_type);
+ field_type = tdesc_named_type (feature, "iwmmxt_v4u16");
+ tdesc_add_field (type, "u16", field_type);
+ field_type = tdesc_named_type (feature, "iwmmxt_v2u32");
+ tdesc_add_field (type, "u32", field_type);
+ field_type = tdesc_named_type (feature, "uint64");
+ tdesc_add_field (type, "u64", field_type);
+
+ tdesc_create_reg (feature, "wR0", 26, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR1", 27, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR2", 28, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR3", 29, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR4", 30, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR5", 31, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR6", 32, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR7", 33, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR8", 34, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR9", 35, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR10", 36, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR11", 37, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR12", 38, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR13", 39, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR14", 40, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wR15", 41, 1, NULL, 64, "iwmmxt_vec64i");
+ tdesc_create_reg (feature, "wCSSF", 42, 1, "vector", 32, "int");
+ tdesc_create_reg (feature, "wCASF", 43, 1, "vector", 32, "int");
+ tdesc_create_reg (feature, "wCGR0", 44, 1, "vector", 32, "int");
+ tdesc_create_reg (feature, "wCGR1", 45, 1, "vector", 32, "int");
+ tdesc_create_reg (feature, "wCGR2", 46, 1, "vector", 32, "int");
+ tdesc_create_reg (feature, "wCGR3", 47, 1, "vector", 32, "int");
+
+ tdesc_arm_with_iwmmxt = result;
+}
diff --git a/gdb/features/arm/with-iwmmxt.xml b/gdb/features/arm/with-iwmmxt.xml
new file mode 100644
index 0000000..6b2939d
--- /dev/null
+++ b/gdb/features/arm/with-iwmmxt.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE target SYSTEM "gdb-target.dtd">
+<target>
+ <architecture>iwmmxt</architecture>
+ <xi:include href="core.xml"/>
+ <xi:include href="xscale-iwmmxt.xml"/>
+</target>
diff --git a/gdb/features/arm/with-m-fpa-layout.c b/gdb/features/arm/with-m-fpa-layout.c
new file mode 100644
index 0000000..bc51f05
--- /dev/null
+++ b/gdb/features/arm/with-m-fpa-layout.c
@@ -0,0 +1,44 @@
+/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
+ Original: arm-with-m-fpa-layout.xml */
+
+#include "defs.h"
+#include "osabi.h"
+#include "target-descriptions.h"
+
+struct target_desc *tdesc_arm_with_m_fpa_layout;
+static void
+initialize_tdesc_arm_with_m_fpa_layout (void)
+{
+ struct target_desc *result = allocate_target_description ();
+ struct tdesc_feature *feature;
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.m-profile");
+ tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
+ tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
+ tdesc_create_reg (feature, "", 16, 1, NULL, 96, "arm_fpa_ext");
+ tdesc_create_reg (feature, "", 17, 1, NULL, 96, "arm_fpa_ext");
+ tdesc_create_reg (feature, "", 18, 1, NULL, 96, "arm_fpa_ext");
+ tdesc_create_reg (feature, "", 19, 1, NULL, 96, "arm_fpa_ext");
+ tdesc_create_reg (feature, "", 20, 1, NULL, 96, "arm_fpa_ext");
+ tdesc_create_reg (feature, "", 21, 1, NULL, 96, "arm_fpa_ext");
+ tdesc_create_reg (feature, "", 22, 1, NULL, 96, "arm_fpa_ext");
+ tdesc_create_reg (feature, "", 23, 1, NULL, 96, "arm_fpa_ext");
+ tdesc_create_reg (feature, "", 24, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "xpsr", 25, 1, NULL, 32, "int");
+
+ tdesc_arm_with_m_fpa_layout = result;
+}
diff --git a/gdb/features/arm/with-m-fpa-layout.xml b/gdb/features/arm/with-m-fpa-layout.xml
new file mode 100644
index 0000000..18b5b0a
--- /dev/null
+++ b/gdb/features/arm/with-m-fpa-layout.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!-- A target description for an M-profile device, for stubs that
+ transfer registers using the historical fpa layout. -->
+
+<!DOCTYPE target SYSTEM "gdb-target.dtd">
+<target>
+<feature name="org.gnu.gdb.arm.m-profile">
+ <reg name="r0" bitsize="32"/>
+ <reg name="r1" bitsize="32"/>
+ <reg name="r2" bitsize="32"/>
+ <reg name="r3" bitsize="32"/>
+ <reg name="r4" bitsize="32"/>
+ <reg name="r5" bitsize="32"/>
+ <reg name="r6" bitsize="32"/>
+ <reg name="r7" bitsize="32"/>
+ <reg name="r8" bitsize="32"/>
+ <reg name="r9" bitsize="32"/>
+ <reg name="r10" bitsize="32"/>
+ <reg name="r11" bitsize="32"/>
+ <reg name="r12" bitsize="32"/>
+ <reg name="sp" bitsize="32" type="data_ptr"/>
+ <reg name="lr" bitsize="32"/>
+ <reg name="pc" bitsize="32" type="code_ptr"/>
+
+ <!-- Slack for unused FPA registers (f0-f7 + fps).
+ See arm-fpa.xml. -->
+ <reg name="" bitsize="96" type="arm_fpa_ext" regnum="16"/>
+ <reg name="" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="" bitsize="96" type="arm_fpa_ext"/>
+ <reg name="" bitsize="32"/>
+
+ <reg name="xpsr" bitsize="32" regnum="25"/>
+</feature>
+</target>
diff --git a/gdb/features/arm/with-m-vfp-d16.c b/gdb/features/arm/with-m-vfp-d16.c
new file mode 100644
index 0000000..a0da583
--- /dev/null
+++ b/gdb/features/arm/with-m-vfp-d16.c
@@ -0,0 +1,54 @@
+/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
+ Original: arm-with-m-vfp-d16.xml */
+
+#include "defs.h"
+#include "osabi.h"
+#include "target-descriptions.h"
+
+struct target_desc *tdesc_arm_with_m_vfp_d16;
+static void
+initialize_tdesc_arm_with_m_vfp_d16 (void)
+{
+ struct target_desc *result = allocate_target_description ();
+ struct tdesc_feature *feature;
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.m-profile");
+ tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
+ tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
+ tdesc_create_reg (feature, "xpsr", 25, 1, NULL, 32, "int");
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.vfp");
+ tdesc_create_reg (feature, "d0", 26, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d1", 27, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d2", 28, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d3", 29, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d4", 30, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d5", 31, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d6", 32, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d7", 33, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d8", 34, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d9", 35, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d10", 36, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d11", 37, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d12", 38, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d13", 39, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d14", 40, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d15", 41, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "fpscr", 42, 1, "float", 32, "int");
+
+ tdesc_arm_with_m_vfp_d16 = result;
+}
diff --git a/gdb/features/arm/with-m-vfp-d16.xml b/gdb/features/arm/with-m-vfp-d16.xml
new file mode 100644
index 0000000..7fb6fb9
--- /dev/null
+++ b/gdb/features/arm/with-m-vfp-d16.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2010-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE target SYSTEM "gdb-target.dtd">
+<target>
+ <xi:include href="m-profile.xml"/>
+ <!-- Layout of vfpv4-sp-d16 is identical to vfpv2 -->
+ <xi:include href="vfpv2.xml"/>
+</target>
diff --git a/gdb/features/arm/with-m.c b/gdb/features/arm/with-m.c
new file mode 100644
index 0000000..8e27a80
--- /dev/null
+++ b/gdb/features/arm/with-m.c
@@ -0,0 +1,35 @@
+/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
+ Original: arm-with-m.xml */
+
+#include "defs.h"
+#include "osabi.h"
+#include "target-descriptions.h"
+
+struct target_desc *tdesc_arm_with_m;
+static void
+initialize_tdesc_arm_with_m (void)
+{
+ struct target_desc *result = allocate_target_description ();
+ struct tdesc_feature *feature;
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.m-profile");
+ tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
+ tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
+ tdesc_create_reg (feature, "xpsr", 25, 1, NULL, 32, "int");
+
+ tdesc_arm_with_m = result;
+}
diff --git a/gdb/features/arm/with-m.xml b/gdb/features/arm/with-m.xml
new file mode 100644
index 0000000..b1a4316
--- /dev/null
+++ b/gdb/features/arm/with-m.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2010-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE target SYSTEM "gdb-target.dtd">
+<target>
+ <xi:include href="m-profile.xml"/>
+</target>
diff --git a/gdb/features/arm/with-neon.c b/gdb/features/arm/with-neon.c
new file mode 100644
index 0000000..61c9a3a
--- /dev/null
+++ b/gdb/features/arm/with-neon.c
@@ -0,0 +1,72 @@
+/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
+ Original: arm-with-neon.xml */
+
+#include "defs.h"
+#include "osabi.h"
+#include "target-descriptions.h"
+
+struct target_desc *tdesc_arm_with_neon;
+static void
+initialize_tdesc_arm_with_neon (void)
+{
+ struct target_desc *result = allocate_target_description ();
+ struct tdesc_feature *feature;
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core");
+ tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
+ tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
+ tdesc_create_reg (feature, "cpsr", 25, 1, NULL, 32, "int");
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.vfp");
+ tdesc_create_reg (feature, "d0", 26, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d1", 27, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d2", 28, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d3", 29, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d4", 30, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d5", 31, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d6", 32, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d7", 33, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d8", 34, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d9", 35, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d10", 36, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d11", 37, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d12", 38, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d13", 39, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d14", 40, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d15", 41, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d16", 42, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d17", 43, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d18", 44, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d19", 45, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d20", 46, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d21", 47, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d22", 48, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d23", 49, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d24", 50, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d25", 51, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d26", 52, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d27", 53, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d28", 54, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d29", 55, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d30", 56, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d31", 57, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "fpscr", 58, 1, "float", 32, "int");
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.neon");
+
+ tdesc_arm_with_neon = result;
+}
diff --git a/gdb/features/arm/with-neon.xml b/gdb/features/arm/with-neon.xml
new file mode 100644
index 0000000..096bb5a
--- /dev/null
+++ b/gdb/features/arm/with-neon.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE target SYSTEM "gdb-target.dtd">
+<target>
+ <xi:include href="core.xml"/>
+ <xi:include href="vfpv3.xml"/>
+ <feature name="org.gnu.gdb.arm.neon"/>
+</target>
diff --git a/gdb/features/arm/with-vfpv2.c b/gdb/features/arm/with-vfpv2.c
new file mode 100644
index 0000000..78e3c81
--- /dev/null
+++ b/gdb/features/arm/with-vfpv2.c
@@ -0,0 +1,54 @@
+/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
+ Original: arm-with-vfpv2.xml */
+
+#include "defs.h"
+#include "osabi.h"
+#include "target-descriptions.h"
+
+struct target_desc *tdesc_arm_with_vfpv2;
+static void
+initialize_tdesc_arm_with_vfpv2 (void)
+{
+ struct target_desc *result = allocate_target_description ();
+ struct tdesc_feature *feature;
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core");
+ tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
+ tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
+ tdesc_create_reg (feature, "cpsr", 25, 1, NULL, 32, "int");
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.vfp");
+ tdesc_create_reg (feature, "d0", 26, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d1", 27, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d2", 28, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d3", 29, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d4", 30, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d5", 31, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d6", 32, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d7", 33, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d8", 34, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d9", 35, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d10", 36, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d11", 37, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d12", 38, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d13", 39, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d14", 40, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d15", 41, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "fpscr", 42, 1, "float", 32, "int");
+
+ tdesc_arm_with_vfpv2 = result;
+}
diff --git a/gdb/features/arm/with-vfpv2.xml b/gdb/features/arm/with-vfpv2.xml
new file mode 100644
index 0000000..136c694
--- /dev/null
+++ b/gdb/features/arm/with-vfpv2.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE target SYSTEM "gdb-target.dtd">
+<target>
+ <xi:include href="core.xml"/>
+ <xi:include href="vfpv2.xml"/>
+</target>
diff --git a/gdb/features/arm/with-vfpv3.c b/gdb/features/arm/with-vfpv3.c
new file mode 100644
index 0000000..e48ca79
--- /dev/null
+++ b/gdb/features/arm/with-vfpv3.c
@@ -0,0 +1,70 @@
+/* THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi:set ro:
+ Original: arm-with-vfpv3.xml */
+
+#include "defs.h"
+#include "osabi.h"
+#include "target-descriptions.h"
+
+struct target_desc *tdesc_arm_with_vfpv3;
+static void
+initialize_tdesc_arm_with_vfpv3 (void)
+{
+ struct target_desc *result = allocate_target_description ();
+ struct tdesc_feature *feature;
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core");
+ tdesc_create_reg (feature, "r0", 0, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r1", 1, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r2", 2, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r3", 3, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r4", 4, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r5", 5, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r6", 6, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r7", 7, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r8", 8, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r9", 9, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r10", 10, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r11", 11, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "r12", 12, 1, NULL, 32, "uint32");
+ tdesc_create_reg (feature, "sp", 13, 1, NULL, 32, "data_ptr");
+ tdesc_create_reg (feature, "lr", 14, 1, NULL, 32, "int");
+ tdesc_create_reg (feature, "pc", 15, 1, NULL, 32, "code_ptr");
+ tdesc_create_reg (feature, "cpsr", 25, 1, NULL, 32, "int");
+
+ feature = tdesc_create_feature (result, "org.gnu.gdb.arm.vfp");
+ tdesc_create_reg (feature, "d0", 26, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d1", 27, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d2", 28, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d3", 29, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d4", 30, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d5", 31, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d6", 32, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d7", 33, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d8", 34, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d9", 35, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d10", 36, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d11", 37, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d12", 38, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d13", 39, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d14", 40, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d15", 41, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d16", 42, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d17", 43, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d18", 44, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d19", 45, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d20", 46, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d21", 47, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d22", 48, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d23", 49, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d24", 50, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d25", 51, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d26", 52, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d27", 53, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d28", 54, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d29", 55, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d30", 56, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "d31", 57, 1, NULL, 64, "ieee_double");
+ tdesc_create_reg (feature, "fpscr", 58, 1, "float", 32, "int");
+
+ tdesc_arm_with_vfpv3 = result;
+}
diff --git a/gdb/features/arm/with-vfpv3.xml b/gdb/features/arm/with-vfpv3.xml
new file mode 100644
index 0000000..855ad13
--- /dev/null
+++ b/gdb/features/arm/with-vfpv3.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2009-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE target SYSTEM "gdb-target.dtd">
+<target>
+ <xi:include href="core.xml"/>
+ <xi:include href="vfpv3.xml"/>
+</target>
diff --git a/gdb/features/arm/xscale-iwmmxt.xml b/gdb/features/arm/xscale-iwmmxt.xml
new file mode 100644
index 0000000..cf25067d
--- /dev/null
+++ b/gdb/features/arm/xscale-iwmmxt.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved. -->
+
+<!DOCTYPE feature SYSTEM "gdb-target.dtd">
+<feature name="org.gnu.gdb.xscale.iwmmxt">
+ <vector id="iwmmxt_v8u8" type="uint8" count="8"/>
+ <vector id="iwmmxt_v4u16" type="uint16" count="4"/>
+ <vector id="iwmmxt_v2u32" type="uint32" count="2"/>
+ <union id="iwmmxt_vec64i">
+ <field name="u8" type="iwmmxt_v8u8"/>
+ <field name="u16" type="iwmmxt_v4u16"/>
+ <field name="u32" type="iwmmxt_v2u32"/>
+ <field name="u64" type="uint64"/>
+ </union>
+
+ <reg name="wR0" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR1" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR2" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR3" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR4" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR5" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR6" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR7" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR8" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR9" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR10" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR11" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR12" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR13" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR14" bitsize="64" type="iwmmxt_vec64i"/>
+ <reg name="wR15" bitsize="64" type="iwmmxt_vec64i"/>
+
+ <reg name="wCSSF" bitsize="32" type="int" group="vector"/>
+ <reg name="wCASF" bitsize="32" type="int" group="vector"/>
+
+ <reg name="wCGR0" bitsize="32" type="int" group="vector"/>
+ <reg name="wCGR1" bitsize="32" type="int" group="vector"/>
+ <reg name="wCGR2" bitsize="32" type="int" group="vector"/>
+ <reg name="wCGR3" bitsize="32" type="int" group="vector"/>
+</feature>
diff --git a/gdb/features/xscale-iwmmxt.xml b/gdb/features/xscale-iwmmxt.xml
deleted file mode 100644
index cf25067d..0000000
--- a/gdb/features/xscale-iwmmxt.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0"?>
-<!-- Copyright (C) 2007-2014 Free Software Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. -->
-
-<!DOCTYPE feature SYSTEM "gdb-target.dtd">
-<feature name="org.gnu.gdb.xscale.iwmmxt">
- <vector id="iwmmxt_v8u8" type="uint8" count="8"/>
- <vector id="iwmmxt_v4u16" type="uint16" count="4"/>
- <vector id="iwmmxt_v2u32" type="uint32" count="2"/>
- <union id="iwmmxt_vec64i">
- <field name="u8" type="iwmmxt_v8u8"/>
- <field name="u16" type="iwmmxt_v4u16"/>
- <field name="u32" type="iwmmxt_v2u32"/>
- <field name="u64" type="uint64"/>
- </union>
-
- <reg name="wR0" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR1" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR2" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR3" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR4" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR5" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR6" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR7" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR8" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR9" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR10" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR11" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR12" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR13" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR14" bitsize="64" type="iwmmxt_vec64i"/>
- <reg name="wR15" bitsize="64" type="iwmmxt_vec64i"/>
-
- <reg name="wCSSF" bitsize="32" type="int" group="vector"/>
- <reg name="wCASF" bitsize="32" type="int" group="vector"/>
-
- <reg name="wCGR0" bitsize="32" type="int" group="vector"/>
- <reg name="wCGR1" bitsize="32" type="int" group="vector"/>
- <reg name="wCGR2" bitsize="32" type="int" group="vector"/>
- <reg name="wCGR3" bitsize="32" type="int" group="vector"/>
-</feature>
diff --git a/gdb/gdbserver/configure.srv b/gdb/gdbserver/configure.srv
index cc4f53d..1b816ec 100644
--- a/gdb/gdbserver/configure.srv
+++ b/gdb/gdbserver/configure.srv
@@ -58,19 +58,19 @@ case "${target}" in
srv_linux_regsets=yes
srv_linux_thread_db=yes
;;
- arm*-*-linux*) srv_regobj="reg-arm.o arm-with-iwmmxt.o"
- srv_regobj="${srv_regobj} arm-with-vfpv2.o"
- srv_regobj="${srv_regobj} arm-with-vfpv3.o"
- srv_regobj="${srv_regobj} arm-with-neon.o"
+ arm*-*-linux*) srv_regobj="reg-arm.o with-iwmmxt.o"
+ srv_regobj="${srv_regobj} with-vfpv2.o"
+ srv_regobj="${srv_regobj} with-vfpv3.o"
+ srv_regobj="${srv_regobj} with-neon.o"
srv_tgtobj="$srv_linux_obj linux-arm-low.o"
- srv_xmlfiles="arm-with-iwmmxt.xml"
- srv_xmlfiles="${srv_xmlfiles} arm-with-vfpv2.xml"
- srv_xmlfiles="${srv_xmlfiles} arm-with-vfpv3.xml"
- srv_xmlfiles="${srv_xmlfiles} arm-with-neon.xml"
- srv_xmlfiles="${srv_xmlfiles} arm-core.xml"
- srv_xmlfiles="${srv_xmlfiles} xscale-iwmmxt.xml"
- srv_xmlfiles="${srv_xmlfiles} arm-vfpv2.xml"
- srv_xmlfiles="${srv_xmlfiles} arm-vfpv3.xml"
+ srv_xmlfiles="arm/with-iwmmxt.xml"
+ srv_xmlfiles="${srv_xmlfiles} arm/with-vfpv2.xml"
+ srv_xmlfiles="${srv_xmlfiles} arm/with-vfpv3.xml"
+ srv_xmlfiles="${srv_xmlfiles} arm/with-neon.xml"
+ srv_xmlfiles="${srv_xmlfiles} arm/core.xml"
+ srv_xmlfiles="${srv_xmlfiles} arm/xscale-iwmmxt.xml"
+ srv_xmlfiles="${srv_xmlfiles} arm/vfpv2.xml"
+ srv_xmlfiles="${srv_xmlfiles} arm/vfpv3.xml"
srv_linux_usrregs=yes
srv_linux_regsets=yes
srv_linux_thread_db=yes
diff --git a/gdb/testsuite/gdb.xml/tdesc-regs.exp b/gdb/testsuite/gdb.xml/tdesc-regs.exp
index 0e4547c..18a99ba 100644
--- a/gdb/testsuite/gdb.xml/tdesc-regs.exp
+++ b/gdb/testsuite/gdb.xml/tdesc-regs.exp
@@ -28,7 +28,8 @@ set regdir ""
set architecture ""
switch -glob -- [istarget] {
"arm*-*-*" {
- set core-regs {arm-core.xml}
+ set regdir "arm/"
+ set core-regs {core.xml}
}
"*m68k-*-*" {
set core-regs {m68k-core.xml}
next prev parent reply other threads:[~2014-06-16 2:12 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-11 6:46 Terry Guo
2014-06-11 8:16 ` Will Newton
2014-06-11 9:12 ` Terry Guo
2014-06-11 11:24 ` Luis Machado
2014-06-12 3:40 ` Terry Guo
2014-06-16 2:12 ` Terry Guo [this message]
2014-06-16 7:27 ` Will Newton
2014-06-20 3:05 ` Terry Guo
2014-06-20 5:03 ` Luis Gustavo
2014-06-20 9:52 ` Pedro Alves
2014-06-20 10:21 ` Terry Guo
2014-06-20 11:21 ` Pedro Alves
2014-06-22 4:36 ` Terry Guo
2014-06-23 12:41 ` Pedro Alves
2014-06-25 1:30 ` Terry Guo
2016-10-04 10:11 [PATCH] Clean " Yao Qi
2016-10-04 18:40 ` Pedro Alves
2016-10-05 8:38 ` Yao Qi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='000001cf8908$49f991f0$ddecb5d0$@arm.com' \
--to=terry.guo@arm.com \
--cc=gdb-patches@sourceware.org \
--cc=lgustavo@codesourcery.com \
--cc=will.newton@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox