diff options
author | Alan Hayward <alan.hayward@arm.com> | 2019-03-25 16:48:03 +0000 |
---|---|---|
committer | Alan Hayward <alan.hayward@arm.com> | 2019-03-25 16:50:38 +0000 |
commit | 0f83012ea0fb84d86d2a84a5feb51c0d63f0b7eb (patch) | |
tree | cb3bc9d4001b27d418fdb2f45f18ad3997e37547 /gdb/linux-tdep.h | |
parent | 796d6298bb11deab06814cc38cfe74a1bfc57551 (diff) | |
download | gdb-0f83012ea0fb84d86d2a84a5feb51c0d63f0b7eb.zip gdb-0f83012ea0fb84d86d2a84a5feb51c0d63f0b7eb.tar.gz gdb-0f83012ea0fb84d86d2a84a5feb51c0d63f0b7eb.tar.bz2 |
Add linux_get_hwcap
Tidy up calls to read HWCAP (and HWCAP2) by adding common functions,
removing the PPC and AArch64 specific versions.
The only function difference is in aarch64_linux_core_read_description - if
the hwcap read fails it now return a valid description instead of nullptr.
gdb/ChangeLog:
2019-03-25 Alan Hayward <alan.hayward@arm.com>
* aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
Call linux_get_hwcap.
* aarch64-linux-tdep.c (aarch64_linux_core_read_description):
Likewise.
(aarch64_linux_get_hwcap): Remove function.
* aarch64-linux-tdep.h (aarch64_linux_get_hwcap): Remove
declaration.
* arm-linux-nat.c (arm_linux_nat_target::read_description):Call
linux_get_hwcap.
* arm-linux-tdep.c (arm_linux_core_read_description): Likewise.
* linux-tdep.c (linux_get_hwcap): Add function.
(linux_get_hwcap2): Likewise.
* linux-tdep.h (linux_get_hwcap): Add declaration.
(linux_get_hwcap2): Likewise.
* ppc-linux-nat.c (ppc_linux_get_hwcap): Remove function.
(ppc_linux_get_hwcap2): Likewise.
(ppc_linux_nat_target::region_ok_for_hw_watchpoint): Call
linux_get_hwcap.
(ppc_linux_nat_target::insert_watchpoint): Likewise.
(ppc_linux_nat_target::watchpoint_addr_within_range): Likewise.
(ppc_linux_nat_target::read_description): Likewise.
* ppc-linux-tdep.c (ppc_linux_core_read_description): Likewise.
* s390-linux-nat.c: Likewise.
* s390-linux-tdep.c (s390_core_read_description): Likewise.
Diffstat (limited to 'gdb/linux-tdep.h')
-rw-r--r-- | gdb/linux-tdep.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/linux-tdep.h b/gdb/linux-tdep.h index 824ba3a..913045a 100644 --- a/gdb/linux-tdep.h +++ b/gdb/linux-tdep.h @@ -61,4 +61,12 @@ extern void linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch); extern int linux_is_uclinux (void); +/* Fetch the AT_HWCAP entry from the auxv vector for the given TARGET. On + error, 0 is returned. */ +extern CORE_ADDR linux_get_hwcap (struct target_ops *target); + +/* Fetch the AT_HWCAP2 entry from the auxv vector for the given TARGET. On + error, 0 is returned. */ +extern CORE_ADDR linux_get_hwcap2 (struct target_ops *target); + #endif /* linux-tdep.h */ |