]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
[Morello] Generate target descriptions based on runtime capability feature checks
authorLuis Machado <luis.machado@arm.com>
Thu, 26 Mar 2020 14:58:01 +0000 (11:58 -0300)
committerLuis Machado <luis.machado@linaro.org>
Tue, 20 Oct 2020 18:05:18 +0000 (15:05 -0300)
commit1bdd3dce2f7323570616499e72b386a3f00d8d51
tree76f419940af5e378649d40206a2516901911107f
parent5ea4625bb20fd40eb3c0990c60b95819fd21f25c
[Morello] Generate target descriptions based on runtime capability feature checks

This patch adds code to do runtime checks for Morello, so GDB can pick the
correct target description and register set.

gdb/ChangeLog:

2020-10-20  Luis Machado  <luis.machado@arm.com>

* aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
Check for HWCAP2_MORELLO.
* aarch64-linux-tdep.c (aarch64_linux_core_read_description): Likewise.
* aarch64-tdep.c (tdesc_aarch64_list): Add one more dimension.
(aarch64_read_description): New parameter capability_p, use it to
generate the proper target description.
(aarch64_gdbarch_init): Update invocation of aarch64_read_description.
* aarch64-tdep.h (aarch64_read_description): New parameter capability_p.
* arch/aarch64.c (aarch64_create_target_description): New parameter
capability_p. Use it.
* arch/aarch64.h (aarch64_create_target_description): New parameter
capability_p.

gdbserver/ChangeLog:

2020-10-20  Luis Machado  <luis.machado@arm.com>

* linux-aarch64-ipa.cc (get_ipa_tdesc): Update.
* linux-aarch64-low.cc (aarch64_target::low_arch_setup): Check for
HWCAP2_MORELLO and use it.
* linux-aarch64-tdesc.cc (tdesc_aarch64_list): Add one more dimension.
(aarch64_linux_read_description): New parameter capability_p. Use it.
* linux-aarch64-tdesc.h (aarch64_linux_read_description): New parameter
capability_p.
12 files changed:
gdb/ChangeLog
gdb/aarch64-linux-nat.c
gdb/aarch64-linux-tdep.c
gdb/aarch64-tdep.c
gdb/aarch64-tdep.h
gdb/arch/aarch64.c
gdb/arch/aarch64.h
gdbserver/ChangeLog
gdbserver/linux-aarch64-ipa.cc
gdbserver/linux-aarch64-low.cc
gdbserver/linux-aarch64-tdesc.cc
gdbserver/linux-aarch64-tdesc.h