binutils-gdb/gdb/features
Andrew Burgess 865bad2602 gdb/riscv: Remove CSR feature file
There is currently a bug in the RISC-V CSR/FPU feature files.  The
CSRs containing the FPU status registers are mentioned in both the FPU
feature file and the CSR feature file.

My original thinking when adding the FPU feature file was that it made
more sense to group the FPU status registers with the other FPU
state.  This opened up the possibility of debugging very
simple (possibly simulator only) targets that had little more than CPU
and FPU available for GDB to access.

When I then added code to automatically generate the CSR XML file I
forgot to filter out the FPU status CSRs, so these registers were
mentioned twice.

Now for GDB's default RISC-V target descriptions this doesn't actually
matter.  I did consider adding the CSRs to the default target
description, but in the end I didn't bother.  The reasoning again was
simplicity; the default target description is only to be used when the
target doesn't supply its own description, and NOT supplying the CSRs
actually serves to encourage targets to supply an accurate
description.  Combine this with the fact that the CSRs change from
revision to revision, sometimes in non-backward compatible ways, then
having a "default" set of CSRs just feels like a path to confusion and
complaints.

However, having a broken CSR XML file in the GDB source tree has had
one negative effect, QEMU has copied this file into its source tree,
and is using this as its description that it passes to GDB.  That is
QEMU announces the FPU status registers twice, once in the FPU
feature, and once in the CSR feature.

This commit starts along the path back to sanity by deleting the
default CSR XML files from within GDB.  These files were not used in
any way by current GDB, so there is absolutely no loss of
functionality with this change.

gdb/ChangeLog:

	* features/Makefile: Remove all references to the deleted files
	below.
	* features/riscv/32bit-csr.c: Deleted.
	* features/riscv/32bit-csr.xml: Deleted.
	* features/riscv/64bit-csr.c: Deleted.
	* features/riscv/64bit-csr.xml: Deleted.
	* features/riscv/rebuild-csr-xml.sh: Deleted.
2020-06-25 18:07:30 +01:00
..
arc
arm
i386
riscv gdb/riscv: Remove CSR feature file 2020-06-25 18:07:30 +01:00
rs6000
sparc
aarch64-core.c
aarch64-core.xml
aarch64-fpu.c
aarch64-fpu.xml
aarch64-pauth.c
aarch64-pauth.xml
aarch64-sve.c
btrace-conf.dtd
btrace.dtd
feature_to_c.sh
gdb-target.dtd
gdbserver-regs.xsl
library-list-aix.dtd
library-list-svr4.dtd
library-list.dtd
m68k-core.xml
Makefile gdb/riscv: Remove CSR feature file 2020-06-25 18:07:30 +01:00
microblaze-core.xml
microblaze-stack-protect.xml
microblaze-with-stack-protect.c
microblaze-with-stack-protect.xml
microblaze.c
microblaze.xml
mips64-cp0.xml
mips64-cpu.xml
mips64-dsp-linux.c
mips64-dsp-linux.xml
mips64-dsp.xml
mips64-fpu.xml
mips64-linux.c
mips64-linux.xml
mips-cp0.xml
mips-cpu.xml
mips-dsp-linux.c
mips-dsp-linux.xml
mips-dsp.xml
mips-fpu.xml
mips-linux.c
mips-linux.xml
nds32-core.xml
nds32-fpu.xml
nds32-system.xml
nds32.c
nds32.xml
nios2-cpu.xml
nios2-linux.xml
nios2.c
nios2.xml
number-regs.xsl
or1k-core.xml
or1k.c
or1k.xml
osdata.dtd
rx.c
rx.xml
s390-acr.xml
s390-core32.xml
s390-core64.xml
s390-fpr.xml
s390-gs-linux64.c
s390-gs-linux64.xml
s390-gs.xml
s390-gsbc.xml
s390-linux32.c
s390-linux32.xml
s390-linux32v1.c
s390-linux32v1.xml
s390-linux32v2.c
s390-linux32v2.xml
s390-linux64.c
s390-linux64.xml
s390-linux64v1.c
s390-linux64v1.xml
s390-linux64v2.c
s390-linux64v2.xml
s390-tdb.xml
s390-te-linux64.c
s390-te-linux64.xml
s390-tevx-linux64.c
s390-tevx-linux64.xml
s390-vx-linux64.c
s390-vx-linux64.xml
s390-vx.xml
s390x-core64.xml
s390x-gs-linux64.c
s390x-gs-linux64.xml
s390x-linux64.c
s390x-linux64.xml
s390x-linux64v1.c
s390x-linux64v1.xml
s390x-linux64v2.c
s390x-linux64v2.xml
s390x-te-linux64.c
s390x-te-linux64.xml
s390x-tevx-linux64.c
s390x-tevx-linux64.xml
s390x-vx-linux64.c
s390x-vx-linux64.xml
sort-regs.xsl
threads.dtd
tic6x-c6xp.c
tic6x-c6xp.xml
tic6x-c62x-linux.xml
tic6x-c64x-linux.xml
tic6x-c64xp-linux.xml
tic6x-core.c
tic6x-core.xml
tic6x-gp.c
tic6x-gp.xml
traceframe-info.dtd
xinclude.dtd