This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [AArch64][6/6] Core file support for "pauth" feature
- From: Pedro Alves <palves at redhat dot com>
- To: Jiong Wang <jiong dot wang at foss dot arm dot com>, GDB <gdb-patches at sourceware dot org>, Binutils <binutils at sourceware dot org>
- Date: Thu, 10 Aug 2017 12:08:36 +0100
- Subject: Re: [AArch64][6/6] Core file support for "pauth" feature
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx09.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx09.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=palves at redhat dot com
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 1042C404323
- References: <e4493fb7-9792-1bda-0011-808ac36418ae@foss.arm.com>
On 08/09/2017 01:23 PM, Jiong Wang wrote:
> /* Implementation of `gdbarch_stap_is_single_operand', as defined in
> diff --git a/gdb/aarch64-linux-tdep.h b/gdb/aarch64-linux-tdep.h
> index d0f9b12..580a8b8 100644
> --- a/gdb/aarch64-linux-tdep.h
> +++ b/gdb/aarch64-linux-tdep.h
> @@ -29,6 +29,14 @@
> are 4 bytes wide each, and the whole structure is padded to 128 bit
> alignment. */
> #define AARCH64_LINUX_SIZEOF_FPREGSET (33 * V_REGISTER_SIZE)
> +#define AARCH64_LINUX_SIZEOF_PAUTH (2 * X_REGISTER_SIZE)
>
> extern const struct regset aarch64_linux_gregset;
> extern const struct regset aarch64_linux_fpregset;
> +extern const struct regset aarch64_linux_pauthregset;
> +
> +#ifndef HWCAP_APIA
> +/* AArch64 GNU/Linux HWCAP values. These should be synced with kernel
> + definitions. */
> +#define HWCAP_APIA (1 << 16)
> +#endif
Re. the #ifndef, consider that tdep.h files are included in cross
debugger builds. E.g., an x86-hosted gdb cross debugging aarch64.
Some archs have "namespaced" names like the s390 mips, sparc, etc.
(e.g., HWCAP_S390_VX) which avoids the case of the names being defined
on host/target with a different meanings/values, but not all do.
But even with such names, we always have to provide fallback definitions
for cross debuggers. And with that all in mind, and since you're defining
fallbacks anyway, how about unconditionally defining/using our
own conflict-resistant versions, like AARCH64_HWCAP_APIA?
Thanks,
Pedro Alves