From 3c539d41b48e5a70cc22b0151ee79b8bd752341d Mon Sep 17 00:00:00 2001 From: Luis Machado Date: Tue, 28 Jun 2022 14:08:46 +0100 Subject: [PATCH] [AArch64] Fix testcase compilation failure Newer distros carry newer headers that contains MTE definitions. Account for that fact in the MTE testcases (gdb.arch/aarch64-mte.exp) and define constants conditionally to prevent compilation failures. --- gdb/testsuite/gdb.arch/aarch64-mte.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/gdb/testsuite/gdb.arch/aarch64-mte.c b/gdb/testsuite/gdb.arch/aarch64-mte.c index bd7f1a6cf53..fc38d58fe5e 100644 --- a/gdb/testsuite/gdb.arch/aarch64-mte.c +++ b/gdb/testsuite/gdb.arch/aarch64-mte.c @@ -30,22 +30,27 @@ #include /* From arch/arm64/include/uapi/asm/hwcap.h */ +#ifndef HWCAP2_MTE #define HWCAP2_MTE (1 << 18) +#endif /* From arch/arm64/include/uapi/asm/mman.h */ +#ifndef PROT_MTE #define PROT_MTE 0x20 +#endif -/* From include/uapi/linux/prctl.h */ +#ifndef PR_SET_TAGGED_ADDR_CTRL #define PR_SET_TAGGED_ADDR_CTRL 55 -#define PR_GET_TAGGED_ADDR_CTRL 56 #define PR_TAGGED_ADDR_ENABLE (1UL << 0) +#endif + +/* From include/uapi/linux/prctl.h */ +#ifndef PR_MTE_TCF_SHIFT #define PR_MTE_TCF_SHIFT 1 -#define PR_MTE_TCF_NONE (0UL << PR_MTE_TCF_SHIFT) #define PR_MTE_TCF_SYNC (1UL << PR_MTE_TCF_SHIFT) #define PR_MTE_TCF_ASYNC (2UL << PR_MTE_TCF_SHIFT) -#define PR_MTE_TCF_MASK (3UL << PR_MTE_TCF_SHIFT) #define PR_MTE_TAG_SHIFT 3 -#define PR_MTE_TAG_MASK (0xffffUL << PR_MTE_TAG_SHIFT) +#endif void access_memory (unsigned char *tagged_ptr, unsigned char *untagged_ptr) -- 2.30.2