]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[Patch AArch64] Add __ARM_FEATURE_ATOMICS
authorRamana Radhakrishnan <ramana.radhakrishnan@arm.com>
Wed, 1 May 2019 15:27:40 +0000 (15:27 +0000)
committerRamana Radhakrishnan <ramana@gcc.gnu.org>
Wed, 1 May 2019 15:27:40 +0000 (15:27 +0000)
This keeps coming up repeatedly and the ACLE has finally added
__ARM_FEATURE_ATOMICS for the LSE feature in GCC. This is now part of
the latest ACLE release
(https://developer.arm.com/docs/101028/latest/5-feature-test-macros)

I know it's late for GCC-9 but this is a simple macro which need not
wait  for another year.

Ok for trunk and to backport to all release branches ?

Tested with a simple build and a smoke test.

Backport from mainline.
PR target/86538
* config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins): Define
__ARM_FEATURE_ATOMICS

From-SVN: r270770

gcc/ChangeLog
gcc/config/aarch64/aarch64-c.c

index d8bb38f6fb83f8a8c8a43df1954abe1fab8832c5..6d1af9a0ab5e18fb7483dc18cb9e518bfd4b57cc 100644 (file)
@@ -1,3 +1,11 @@
+2019-05-01  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
+
+       Backport from mainline.
+        2019-04-30  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
+       PR target/86538
+       * config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins):
+       Define __ARM_FEATURE_ATOMICS
+
 2019-04-30  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
 
        PR target/90075
@@ -6,7 +14,6 @@
 
        Backport from mainline
        2018-12-11  Richard Earnshaw  <Richard.Earnshaw@arm.com>
-
        PR target/37369
        * config/aarch64/iterators.md (sizem1): Add sizes for
        SFmode and DFmode.
index 177e638682f9dae3476b76e48a2d96c70d5acbd1..9979e06daaf77ceaaf48fc4013ab7753566e8ecb 100644 (file)
@@ -134,6 +134,8 @@ aarch64_update_cpp_builtins (cpp_reader *pfile)
   aarch64_def_or_undef (TARGET_CRYPTO, "__ARM_FEATURE_CRYPTO", pfile);
   aarch64_def_or_undef (TARGET_SIMD_RDMA, "__ARM_FEATURE_QRDMX", pfile);
 
+  aarch64_def_or_undef (TARGET_LSE, "__ARM_FEATURE_ATOMICS", pfile);
+
   /* Not for ACLE, but required to keep "float.h" correct if we switch
      target between implementations that do or do not support ARMv8.2-A
      16-bit floating-point extensions.  */