Hello, This patch adds the feature macro __ARM_FEATURE_QRDMX to indicate the presence of the ARMv8.1 instructions vqrdmlah and vqrdmlsh. It is defined when the instructions are available, as it is when -march=armv8.1-a is enabled with suitable fpu options.
Tested the series for arm-none-eabi with cross-compiled check-gcc on an ARMv8.1 emulator. Also tested arm-none-linux-gnueabihf with native bootstrap and make check. Ok for trunk? Matthew gcc/ 2015-11-26 Matthew Wahab <matthew.wa...@arm.com> * config/arm/arm-c.c (arm_cpu_builtins): Define __ARM_FEATURE_QRDMX.
>From 4009cf5c0455429a415be9ca239ac09ac86b17dd Mon Sep 17 00:00:00 2001 From: Matthew Wahab <matthew.wa...@arm.com> Date: Wed, 17 Jun 2015 13:25:09 +0100 Subject: [PATCH 4/7] [ARM] Add __ARM_FEATURE_QRDMX Change-Id: I26cde507e8844a731e4fd857fbd30bf87f213f89 --- gcc/config/arm/arm-c.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gcc/config/arm/arm-c.c b/gcc/config/arm/arm-c.c index c336a16..6bf740b 100644 --- a/gcc/config/arm/arm-c.c +++ b/gcc/config/arm/arm-c.c @@ -66,6 +66,8 @@ arm_cpu_builtins (struct cpp_reader* pfile) def_or_undef_macro (pfile, "__ARM_FEATURE_SAT", TARGET_ARM_SAT); def_or_undef_macro (pfile, "__ARM_FEATURE_CRYPTO", TARGET_CRYPTO); + if (TARGET_NEON_RDMA) + builtin_define ("__ARM_FEATURE_QRDMX"); if (unaligned_access) builtin_define ("__ARM_FEATURE_UNALIGNED"); if (TARGET_CRC32) -- 2.1.4