]> granicus.if.org Git - clang/commitdiff
[AArch64] Disable __ARM_FEATURE_SVE without ACLE.
authorSander de Smalen <sander.desmalen@arm.com>
Tue, 30 Jul 2019 10:14:39 +0000 (10:14 +0000)
committerSander de Smalen <sander.desmalen@arm.com>
Tue, 30 Jul 2019 10:14:39 +0000 (10:14 +0000)
The Arm C Language Extensions for SVE document specifies that
__ARM_FEATURE_SVE should be set when the compiler supports SVE and
implements all the extensions described in the document.

This is currently not yet the case, so the feature should be disabled
until the compiler can provide all the extensions as described.

Reviewers: c-rhodes, rengolin, rovka, ktkachov

Reviewed By: rengolin

Differential Revision: https://reviews.llvm.org/D65404

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@367301 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Basic/Targets/AArch64.cpp
test/Preprocessor/aarch64-target-features.c

index bde23ffbbc49e37f71e2850fa583c56042e56360..25f2b7b35f41fe3f2da1c931a017dabf034badec 100644 (file)
@@ -196,9 +196,6 @@ void AArch64TargetInfo::getTargetDefines(const LangOptions &Opts,
     Builder.defineMacro("__ARM_NEON_FP", "0xE");
   }
 
-  if (FPU & SveMode)
-    Builder.defineMacro("__ARM_FEATURE_SVE", "1");
-
   if (HasCRC)
     Builder.defineMacro("__ARM_FEATURE_CRC32", "1");
 
index 6964edc96f0b27ad5579338ce11c00c1a8622639..922c0997d5990e53c23ab6ec2f22fd63efde8658 100644 (file)
@@ -88,7 +88,7 @@
 // RUN: %clang -target aarch64 -mtune=cyclone -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-MTUNE-CYCLONE %s
 
 // RUN: %clang -target aarch64-none-linux-gnu -march=armv8-a+sve -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SVE %s
-// CHECK-SVE: __ARM_FEATURE_SVE 1
+// CHECK-SVE-NOT: __ARM_FEATURE_SVE 1
 
 // RUN: %clang -target aarch64-none-linux-gnu -march=armv8.2a+dotprod -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-DOTPROD %s
 // CHECK-DOTPROD: __ARM_FEATURE_DOTPROD 1