AArch64: Revert setting of elf class in linker stub.
[deliverable/binutils-gdb.git] / gdb / features / Makefile
index 82609f5862fa95dbc587c7cc08537373faf7bfd6..9a98b0542c4fffb079a5b6f43c727fb4541cf269 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2007-2018 Free Software Foundation, Inc.
+# Copyright (C) 2007-2020 Free Software Foundation, Inc.
 
 # This file is part of GDB.
 
 #
 #   make GDB=/path/to/gdb clean-cfiles cfiles
 #
-# To generate specific C files, you can override the XMLTOC make
-# variable:
+# To generate specific C files, you can override the XMLTOC and
+# FEATURE_XMLFILES make variables:
 #
-#   make GDB=/path/to/gdb XMLTOC="xml files" cfiles
+#   make GDB=/path/to/gdb XMLTOC="xml files" FEATURE_XMLFILES="xml files" cfiles
 
-WHICH = aarch64 \
-       arm/arm-with-iwmmxt arm/arm-with-vfpv2 arm/arm-with-vfpv3 \
+# List of .dat files to create in ../regformats/
+WHICH = arm/arm-with-iwmmxt arm/arm-with-vfpv2 arm/arm-with-vfpv3 \
        arm/arm-with-neon \
-       i386/i386 i386/i386-linux \
-       i386/i386-mmx-linux \
-       i386/amd64 i386/amd64-linux \
-       i386/i386-avx-linux \
-       i386/i386-mpx-linux \
-       i386/i386-avx-mpx-linux \
-       i386/i386-avx-avx512-linux \
-       i386/i386-avx-mpx-avx512-pku-linux \
-       i386/amd64-avx-linux \
-       i386/amd64-mpx-linux \
-       i386/amd64-avx-mpx-linux \
-       i386/amd64-avx-avx512-linux \
-       i386/amd64-avx-mpx-avx512-pku-linux \
-       i386/x32-linux \
-       i386/x32-avx-linux \
-       i386/x32-avx-avx512-linux \
        mips-linux mips-dsp-linux \
        microblaze-with-stack-protect \
        mips64-linux mips64-dsp-linux \
@@ -69,10 +53,15 @@ WHICH = aarch64 \
        rs6000/powerpc-32 \
        rs6000/powerpc-32l rs6000/powerpc-altivec32l rs6000/powerpc-e500l \
        rs6000/powerpc-64l rs6000/powerpc-altivec64l rs6000/powerpc-vsx32l \
-       rs6000/powerpc-vsx64l rs6000/powerpc-cell32l rs6000/powerpc-cell64l \
+       rs6000/powerpc-vsx64l \
        rs6000/powerpc-isa205-32l rs6000/powerpc-isa205-64l \
        rs6000/powerpc-isa205-altivec32l rs6000/powerpc-isa205-altivec64l \
        rs6000/powerpc-isa205-vsx32l rs6000/powerpc-isa205-vsx64l \
+       rs6000/powerpc-isa205-ppr-dscr-vsx32l \
+       rs6000/powerpc-isa205-ppr-dscr-vsx64l \
+       rs6000/powerpc-isa207-vsx32l rs6000/powerpc-isa207-vsx64l \
+       rs6000/powerpc-isa207-htm-vsx32l \
+       rs6000/powerpc-isa207-htm-vsx64l \
        s390-linux32 s390-linux64 s390x-linux64 \
        s390-linux32v1 s390-linux64v1 s390x-linux64v1 \
        s390-linux32v2 s390-linux64v2 s390x-linux64v2 \
@@ -95,8 +84,6 @@ microblaze-expedite = r1,rpc
 nios2-linux-expedite = sp,pc
 or1k-expedite = r1,npc
 powerpc-expedite = r1,pc
-rs6000/powerpc-cell32l-expedite = r1,pc,r0,orig_r3,r4
-rs6000/powerpc-cell64l-expedite = r1,pc,r0,orig_r3,r4
 s390-linux32-expedite = r14,r15,pswa
 s390-linux32v1-expedite = r14,r15,pswa
 s390-linux32v2-expedite = r14,r15,pswa
@@ -115,20 +102,14 @@ XSLTPROC = xsltproc
 outdir = ../regformats
 OUTPUTS = $(patsubst %,$(outdir)/%.dat,$(WHICH))
 
-# The set of xml files we'll generate .c files for GDB from.  By
+# For targets without feature based target descriptions,
+# the set of xml files we'll generate .c files for GDB from.  By
 # default we'll build all .c files, which requires an
 # --enable-targets=all GDB.  You can override this by passing XMLTOC
 # to make on the command line.
 XMLTOC = \
        arc-v2.xml \
        arc-arcompact.xml \
-       arm/arm-with-iwmmxt.xml \
-       arm/arm-with-m-fpa-layout.xml \
-       arm/arm-with-m-vfp-d16.xml \
-       arm/arm-with-m.xml \
-       arm/arm-with-neon.xml \
-       arm/arm-with-vfpv2.xml \
-       arm/arm-with-vfpv3.xml \
        microblaze-with-stack-protect.xml \
        microblaze.xml \
        mips-dsp-linux.xml \
@@ -157,8 +138,6 @@ XMLTOC = \
        rs6000/powerpc-altivec32l.xml \
        rs6000/powerpc-altivec64.xml \
        rs6000/powerpc-altivec64l.xml \
-       rs6000/powerpc-cell32l.xml \
-       rs6000/powerpc-cell64l.xml \
        rs6000/powerpc-e500.xml \
        rs6000/powerpc-e500l.xml \
        rs6000/powerpc-isa205-32l.xml \
@@ -167,11 +146,18 @@ XMLTOC = \
        rs6000/powerpc-isa205-altivec64l.xml \
        rs6000/powerpc-isa205-vsx32l.xml \
        rs6000/powerpc-isa205-vsx64l.xml \
+       rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml \
+       rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml \
+       rs6000/powerpc-isa207-vsx32l.xml \
+       rs6000/powerpc-isa207-vsx64l.xml \
+       rs6000/powerpc-isa207-htm-vsx32l.xml \
+       rs6000/powerpc-isa207-htm-vsx64l.xml \
        rs6000/powerpc-vsx32.xml \
        rs6000/powerpc-vsx32l.xml \
        rs6000/powerpc-vsx64.xml \
        rs6000/powerpc-vsx64l.xml \
        rs6000/rs6000.xml \
+       rx.xml \
        s390-linux32.xml \
        s390-linux32v1.xml \
        s390-linux32v2.xml \
@@ -193,12 +179,20 @@ XMLTOC = \
 TDESC_CFILES = $(patsubst %.xml,%.c,$(XMLTOC))
 GDB = false
 
+#Targets which use feature based target descriptions.
+aarch64-feature = 1
+arm-feature = 1
+i386-feature = 1
+riscv-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
@@ -207,8 +201,18 @@ $(outdir)/%.dat: %.xml number-regs.xsl sort-regs.xsl gdbserver-regs.xsl
          $(XSLTPROC) gdbserver-regs.xsl - >> $(outdir)/$*.tmp
        sh ../../move-if-change $(outdir)/$*.tmp $(outdir)/$*.dat
 
+# For targets with feature based target descriptions,
+# the set of xml files we'll generate .c files for GDB from.
 FEATURE_XMLFILES = aarch64-core.xml \
        aarch64-fpu.xml \
+       aarch64-pauth.xml \
+       arm/arm-core.xml \
+       arm/arm-fpa.xml \
+       arm/arm-m-profile.xml \
+       arm/arm-m-profile-with-fpa.xml \
+       arm/arm-vfpv2.xml \
+       arm/arm-vfpv3.xml \
+       arm/xscale-iwmmxt.xml \
        i386/32bit-core.xml \
        i386/32bit-sse.xml \
        i386/32bit-linux.xml \
@@ -225,6 +229,13 @@ FEATURE_XMLFILES = aarch64-core.xml \
        i386/64bit-pkeys.xml \
        i386/64bit-sse.xml \
        i386/x32-core.xml \
+       riscv/32bit-cpu.xml \
+       riscv/32bit-csr.xml \
+       riscv/32bit-fpu.xml \
+       riscv/64bit-cpu.xml \
+       riscv/64bit-csr.xml \
+       riscv/64bit-fpu.xml \
+       rx.xml \
        tic6x-c6xp.xml \
        tic6x-core.xml \
        tic6x-gp.xml
@@ -255,72 +266,9 @@ $(FEATURE_CFILES): %.c: %.xml.tmp
        echo "</target>" >> $@.tmp
        sh ../../move-if-change $@.tmp $@
 
-# Other dependencies.
-$(outdir)/arm/arm-with-iwmmxt.dat: arm/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
-$(outdir)/i386/amd64.dat: i386/64bit-core.xml i386/64bit-sse.xml \
-                              i386/64bit-segments.xml
-$(outdir)/i386/amd64-linux.dat: i386/64bit-core.xml i386/64bit-sse.xml \
-                              i386/64bit-linux.xml i386/64bit-segments.xml
-$(outdir)/i386/i386-avx.dat: i386/32bit-core.xml i386/32bit-avx.xml
-$(outdir)/i386/i386-avx-linux.dat: i386/32bit-core.xml i386/32bit-avx.xml \
-                              i386/32bit-linux.xml
-$(outdir)/i386/i386-mpx.dat: i386/32bit-core.xml i386/32bit-avx.xml \
-                              i386/32bit-mpx.xml
-$(outdir)/i386/i386-mpx-linux.dat: i386/32bit-core.xml         i386/32bit-avx.xml \
-                              i386/32bit-linux.xml i386/32bit-mpx.xml
-$(outdir)/i386/i386-mpx-linux.dat: i386/32bit-core.xml \
-                              i386/32bit-linux.xml i386/32bit-mpx.xml
-$(outdir)/i386/i386-avx-mpx-linux.dat: i386/32bit-core.xml \
-                              i386/32bit-linux.xml i386/32bit-mpx.xml
-$(outdir)/i386/i386-avx-avx512.dat: i386/32bit-core.xml i386/32bit-avx.xml \
-                              i386/32bit-avx512.xml
-$(outdir)/i386/i386-avx-avx512-linux.dat: i386/32bit-core.xml i386/32bit-avx.xml \
-                              i386/32bit-linux.xml i386/32bit-avx512.xml
-$(outdir)/i386/i386-avx-mpx-avx512-pku.dat: i386/32bit-core.xml \
-                              i386/32bit-avx.xml i386/32bit-mpx.xml i386/32bit-avx512.xml \
-                              i386/32bit-pkeys.xml
-$(outdir)/i386/i386-avx-mpx-avx512-pku-linux.dat: i386/32bit-core.xml \
-                              i386/32bit-avx.xml i386/32bit-mpx.xml i386/32bit-avx512.xml \
-                              i386/32bit-pkeys.xml i386/32bit-linux.xml
-$(outdir)/i386/i386-mmx.dat: i386/32bit-core.xml 
-$(outdir)/i386/i386-mmx-linux.dat: i386/32bit-core.xml i386/32bit-linux.xml
-$(outdir)/i386/amd64-avx.dat: i386/64bit-core.xml i386/64bit-avx.xml \
-                              i386/64bit-segments.xml
-$(outdir)/i386/amd64-avx-linux.dat: i386/64bit-core.xml i386/64bit-avx.xml \
-                              i386/64bit-linux.xml i386/64bit-segments.xml
-$(outdir)/i386/amd64-mpx-linux.dat: i386/64bit-core.xml i386/64bit-avx.xml \
-                              i386/64bit-linux.xml i386/64bit-segments.xml i386/64bit-mpx.xml
-$(outdir)/i386/amd64-avx-mpx-linux.dat: i386/64bit-core.xml \
-                              i386/64bit-linux.xml i386/64bit-segments.xml i386/64bit-mpx.xml
-$(outdir)/i386/amd64-mpx.dat: i386/64bit-core.xml i386/64bit-avx.xml \
-                              i386/64bit-segments.xml i386/64bit-mpx.xml
-$(outdir)/i386/amd64-avx-mpx.dat: i386/64bit-core.xml \
-                              i386/64bit-segments.xml i386/64bit-mpx.xml
-$(outdir)/i386/amd64-avx-avx512.dat: i386/64bit-core.xml i386/64bit-avx.xml \
-                              i386/64bit-avx512.xml i386/64bit-segments.xml
-$(outdir)/i386/amd64-avx-avx512-linux.dat: i386/64bit-core.xml i386/64bit-avx.xml \
-                              i386/64bit-avx512.xml i386/64bit-linux.xml
-$(outdir)/i386/amd64-avx-mpx-avx512-pku.dat: i386/64bit-core.xml \
-                              i386/64bit-avx.xml i386/64bit-mpx.xml i386/64bit-avx512.xml \
-                              i386/64bit-pkeys.xml i386/64bit-segments.xml
-$(outdir)/i386/amd64-avx-mpx-avx512-pku-linux.dat: i386/64bit-core.xml \
-                              i386/64bit-avx.xml i386/64bit-mpx.xml i386/64bit-avx512.xml \
-                              i386/64bit-linux.xml i386/64bit-segments.xml \
-                              i386/64bit-pkeys.xml
-$(outdir)/i386/x32.dat: i386/x32-core.xml i386/64bit-sse.xml
-$(outdir)/i386/x32-linux.dat: i386/x32-core.xml i386/64bit-sse.xml \
-                              i386/64bit-linux.xml i386/64bit-segments.xml
-$(outdir)/i386/x32-avx.dat: i386/x32-core.xml i386/64bit-avx.xml
-$(outdir)/i386/x32-avx-linux.dat: i386/x32-core.xml i386/64bit-avx.xml \
-                              i386/64bit-linux.xml i386/64bit-segments.xml
-$(outdir)/i386/x32-avx-avx512.dat: i386/x32-core.xml i386/64bit-avx.xml \
-                              i386/64bit-avx512.xml
-$(outdir)/i386/x32-avx-avx512-linux.dat: i386/x32-core.xml i386/64bit-avx.xml \
-                              i386/64bit-avx512.xml i386/64bit-linux.xml \
-                              i386/64bit-segments.xml
+# Regenerate RISC-V CSR feature lists.
+riscv/32bit-csr.xml riscv/64bit-csr.xml: ../../include/opcode/riscv-opc.h
+       ./riscv/rebuild-csr-xml.sh ../../include/opcode/riscv-opc.h ./riscv
 
 # 'all' doesn't build the C files, so don't delete them in 'clean'
 # either.
This page took 0.028335 seconds and 4 git commands to generate.