@@ -193,12 +193,18 @@ XMLTOC = \
TDESC_CFILES = $(patsubst %.xml,%.c,$(XMLTOC))
GDB = false
+#Targets which use feature based target descriptions.
+aarch64-feature = 1
+i386-feature = 1
+tic6x-feature = 1
+
all: $(OUTPUTS)
$(outdir)/%.dat: %.xml number-regs.xsl sort-regs.xsl gdbserver-regs.xsl
echo "# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:" > $(outdir)/$*.tmp
echo "# Generated from: $<" >> $(outdir)/$*.tmp
echo "name:`echo $(notdir $*) | sed 's/-/_/g'`" >> $(outdir)/$*.tmp
+ $(if $($(firstword $(subst /, ,$(subst -, ,$*)))-feature), echo "feature:1") >> $(outdir)/$*.tmp
echo "xmltarget:$(<F)" >> $(outdir)/$*.tmp
echo "expedite:$(if $($*-expedite),$($*-expedite),$($(firstword $(subst -, ,$(notdir $*)))-expedite))" \
>> $(outdir)/$*.tmp
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: aarch64.xml
name:aarch64
+feature:1
xmltarget:aarch64.xml
expedite:x29,sp,pc
64:x0
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/amd64-avx-avx512-linux.xml
name:amd64_avx_avx512_linux
+feature:1
xmltarget:amd64-avx-avx512-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/amd64-avx-linux.xml
name:amd64_avx_linux
+feature:1
xmltarget:amd64-avx-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/amd64-avx-mpx-avx512-pku-linux.xml
name:amd64_avx_mpx_avx512_pku_linux
+feature:1
xmltarget:amd64-avx-mpx-avx512-pku-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/amd64-avx-mpx-linux.xml
name:amd64_avx_mpx_linux
+feature:1
xmltarget:amd64-avx-mpx-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/amd64-linux.xml
name:amd64_linux
+feature:1
xmltarget:amd64-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/amd64-mpx-linux.xml
name:amd64_mpx_linux
+feature:1
xmltarget:amd64-mpx-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/amd64.xml
name:amd64
+feature:1
xmltarget:amd64.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/i386-avx-avx512-linux.xml
name:i386_avx_avx512_linux
+feature:1
xmltarget:i386-avx-avx512-linux.xml
expedite:ebp,esp,eip
32:eax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/i386-avx-linux.xml
name:i386_avx_linux
+feature:1
xmltarget:i386-avx-linux.xml
expedite:ebp,esp,eip
32:eax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/i386-avx-mpx-avx512-pku-linux.xml
name:i386_avx_mpx_avx512_pku_linux
+feature:1
xmltarget:i386-avx-mpx-avx512-pku-linux.xml
expedite:ebp,esp,eip
32:eax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/i386-avx-mpx-linux.xml
name:i386_avx_mpx_linux
+feature:1
xmltarget:i386-avx-mpx-linux.xml
expedite:ebp,esp,eip
32:eax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/i386-linux.xml
name:i386_linux
+feature:1
xmltarget:i386-linux.xml
expedite:ebp,esp,eip
32:eax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/i386-mmx-linux.xml
name:i386_mmx_linux
+feature:1
xmltarget:i386-mmx-linux.xml
expedite:ebp,esp,eip
32:eax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/i386-mpx-linux.xml
name:i386_mpx_linux
+feature:1
xmltarget:i386-mpx-linux.xml
expedite:ebp,esp,eip
32:eax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/i386.xml
name:i386
+feature:1
xmltarget:i386.xml
expedite:ebp,esp,eip
32:eax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/x32-avx-avx512-linux.xml
name:x32_avx_avx512_linux
+feature:1
xmltarget:x32-avx-avx512-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/x32-avx-linux.xml
name:x32_avx_linux
+feature:1
xmltarget:x32-avx-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: i386/x32-linux.xml
name:x32_linux
+feature:1
xmltarget:x32-linux.xml
expedite:rbp,rsp,rip
64:rax
@@ -118,6 +118,7 @@ xmltarget=x
xmlarch=x
xmlosabi=x
expedite=x
+feature=x
exec < $1
while do_read
do
@@ -145,6 +146,9 @@ do
elif test "${type}" = "expedite"; then
expedite="${entry}"
continue
+ elif test "${type}" = "feature"; then
+ feature="${entry}"
+ continue
elif test "${name}" = x; then
echo "$0: $1 does not specify \`\`name''." 1>&2
exit 1
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: tic6x-c62x-linux.xml
name:tic6x_c62x_linux
+feature:1
xmltarget:tic6x-c62x-linux.xml
expedite:A15,PC
32:A0
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: tic6x-c64x-linux.xml
name:tic6x_c64x_linux
+feature:1
xmltarget:tic6x-c64x-linux.xml
expedite:A15,PC
32:A0
@@ -1,6 +1,7 @@
# THIS FILE IS GENERATED. -*- buffer-read-only: t -*- vi :set ro:
# Generated from: tic6x-c64xp-linux.xml
name:tic6x_c64xp_linux
+feature:1
xmltarget:tic6x-c64xp-linux.xml
expedite:A15,PC
32:A0