s390: Fix gdb.base/all-architectures.exp with --enable-targets=all
authorPhilipp Rudo <prudo@linux.vnet.ibm.com>
Tue, 30 Jan 2018 16:10:08 +0000 (17:10 +0100)
committerAndreas Arnez <arnez@linux.vnet.ibm.com>
Tue, 30 Jan 2018 16:10:08 +0000 (17:10 +0100)
commitc81e88797907fc0698abec09767e49cee33b2bd5
tree38e91d3ab77eb9a0820eb15f2893f83a6c6e96ba
parente671cd59d74cec9f53e110ce887128d1eeadb7f2
s390: Fix gdb.base/all-architectures.exp with --enable-targets=all

With 7042632bf79 (s390: Hook s390 into OSABI mechanism) assigning a
default target description was moved from s390_gdbarch_init to
s390_linux_init_abi_*.  This causes problems when GDB is built with
--enable-targets=all and the user sets an unsupported OSABI, e.g. "set
osabi AIX".  In this case there is no valid tdesc, and GDB crashes with an
internal error.  Fix this by reverting parts of 7042632bf79.

gdb/ChangeLog:

* s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
"features/s390x-linux64.c".
(_initialize_s390_linux_tdep): Remove initialization of tdescs
s390_linux32 and s390x_linux64.
(s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
default tdesc.
* s390-tdep.c: Include "features/s390-linux32.c" and
"features/s390x-linux64.c".
(s390_tdesc_valid): Add check for tdesc_has_registers.
(s390_gdbarch_init): Make sure there is always a valid tdesc.
(_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
tdesc_s390x_linux64.
* s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
tdesc_s390x_linux64 to...
* s390-tdep.h: ...here.
gdb/ChangeLog
gdb/s390-linux-tdep.c
gdb/s390-linux-tdep.h
gdb/s390-tdep.c
gdb/s390-tdep.h
This page took 0.026098 seconds and 4 git commands to generate.