forked from OSchip/llvm-project
[clang][aarch64] Drop experimental from __ARM_FEATURE_SVE_BITS macro
The __ARM_FEATURE_SVE_BITS feature macro is specified in the Arm C Language Extensions (ACLE) for SVE [1] (version 00bet5). From the spec, where __ARM_FEATURE_SVE_BITS==N: When N is nonzero, indicates that the implementation is generating code for an N-bit SVE target and that the arm_sve_vector_bits(N) attribute is available. This was defined in D83550 as __ARM_FEATURE_SVE_BITS_EXPERIMENTAL and enabled under the -msve-vector-bits flag to simplify initial tests. This patch drops _EXPERIMENTAL now there is support for the feature. [1] https://developer.arm.com/documentation/100987/latest Reviewed By: david-arm Differential Revision: https://reviews.llvm.org/D86720
This commit is contained in:
parent
4c5e4aa89b
commit
f9091e56d3
|
@ -4944,10 +4944,6 @@ to the SVE predicate type ``svbool_t``, this excludes tuple types such as
|
|||
``N==__ARM_FEATURE_SVE_BITS``, the implementation defined feature macro that is
|
||||
enabled under the ``-msve-vector-bits`` flag.
|
||||
|
||||
NOTE: This feature is currently WIP, the ``-msve-vector-bits=`` flag defines
|
||||
the ``__ARM_FEATURE_SVE_BITS_EXPERIMENTAL`` macro. This feature is complete
|
||||
when experimental is dropped.
|
||||
|
||||
For more information See `Arm C Language Extensions for SVE
|
||||
<https://developer.arm.com/documentation/100987/latest>`_ for more information.
|
||||
}];
|
||||
|
|
|
@ -378,8 +378,7 @@ void AArch64TargetInfo::getTargetDefines(const LangOptions &Opts,
|
|||
Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8");
|
||||
|
||||
if (Opts.ArmSveVectorBits)
|
||||
Builder.defineMacro("__ARM_FEATURE_SVE_BITS_EXPERIMENTAL",
|
||||
Twine(Opts.ArmSveVectorBits));
|
||||
Builder.defineMacro("__ARM_FEATURE_SVE_BITS", Twine(Opts.ArmSveVectorBits));
|
||||
}
|
||||
|
||||
ArrayRef<Builtin::Info> AArch64TargetInfo::getTargetBuiltins() const {
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
#include <arm_sve.h>
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef svint64_t fixed_int64_t __attribute__((arm_sve_vector_bits(N)));
|
||||
typedef svfloat64_t fixed_float64_t __attribute__((arm_sve_vector_bits(N)));
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
#include <arm_sve.h>
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef svint32_t fixed_int32_t __attribute__((arm_sve_vector_bits(N)));
|
||||
typedef svfloat64_t fixed_float64_t __attribute__((arm_sve_vector_bits(N)));
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
#include <arm_sve.h>
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef svint32_t fixed_int32_t __attribute__((arm_sve_vector_bits(N)));
|
||||
typedef svfloat64_t fixed_float64_t __attribute__((arm_sve_vector_bits(N)));
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
#include <arm_sve.h>
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef svint32_t fixed_int32_t __attribute__((arm_sve_vector_bits(N)));
|
||||
typedef svbool_t fixed_bool_t __attribute__((arm_sve_vector_bits(N)));
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
#include <arm_sve.h>
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef svint64_t fixed_int64_t __attribute__((arm_sve_vector_bits(N)));
|
||||
typedef svbfloat16_t fixed_bfloat16_t __attribute__((arm_sve_vector_bits(N)));
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
#include <arm_sve.h>
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef svint8_t fixed_int8_t __attribute__((arm_sve_vector_bits(N)));
|
||||
typedef svint16_t fixed_int16_t __attribute__((arm_sve_vector_bits(N)));
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
// RUN: -target-feature +sve -target-feature +bf16 -msve-vector-bits=2048 \
|
||||
// RUN: | FileCheck %s --check-prefix=CHECK-2048
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef __SVInt8_t fixed_int8_t __attribute__((arm_sve_vector_bits(N)));
|
||||
typedef __SVInt16_t fixed_int16_t __attribute__((arm_sve_vector_bits(N)));
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
// RUN: -target-feature +sve -target-feature +bf16 -msve-vector-bits=2048 \
|
||||
// RUN: | FileCheck %s --check-prefix=CHECK-2048
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
namespace std {
|
||||
class type_info;
|
||||
|
|
|
@ -44,12 +44,12 @@
|
|||
// CHECK-NOT: __ARM_BF16_FORMAT_ALTERNATIVE 1
|
||||
// CHECK-NOT: __ARM_FEATURE_BF16 1
|
||||
// CHECK-NOT: __ARM_FEATURE_BF16_VECTOR_ARITHMETIC 1
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 0
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 128
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 256
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 512
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 1024
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 2048
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS 0
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS 128
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS 256
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS 512
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS 1024
|
||||
// CHECK-NOT: __ARM_FEATURE_SVE_BITS 2048
|
||||
|
||||
// RUN: %clang -target aarch64_be-eabi -x c -E -dM %s -o - | FileCheck %s -check-prefix CHECK-BIGENDIAN
|
||||
// CHECK-BIGENDIAN: __ARM_BIG_ENDIAN 1
|
||||
|
@ -444,10 +444,8 @@
|
|||
// RUN: %clang -target aarch64-arm-none-eabi -march=armv8-a+sve -msve-vector-bits=1024 -x c -E -dM %s -o - 2>&1 | FileCheck -check-prefix=CHECK-SVE-VECTOR-BITS-1024 %s
|
||||
// RUN: %clang -target aarch64-arm-none-eabi -march=armv8-a+sve -msve-vector-bits=2048 -x c -E -dM %s -o - 2>&1 | FileCheck -check-prefix=CHECK-SVE-VECTOR-BITS-2048 %s
|
||||
// RUN: %clang -target aarch64-arm-none-eabi -march=armv8-a+sve -msve-vector-bits=2048 -x c -E -dM %s -o - 2>&1 | FileCheck -check-prefix=CHECK-SVE-VECTOR-BITS-2048 %s
|
||||
// NOTE: The __ARM_FEATURE_SVE_BITS feature macro is experimental until the
|
||||
// feature is complete.
|
||||
// CHECK-SVE-VECTOR-BITS-128: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 128
|
||||
// CHECK-SVE-VECTOR-BITS-256: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 256
|
||||
// CHECK-SVE-VECTOR-BITS-512: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 512
|
||||
// CHECK-SVE-VECTOR-BITS-1024: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 1024
|
||||
// CHECK-SVE-VECTOR-BITS-2048: __ARM_FEATURE_SVE_BITS_EXPERIMENTAL 2048
|
||||
// CHECK-SVE-VECTOR-BITS-128: __ARM_FEATURE_SVE_BITS 128
|
||||
// CHECK-SVE-VECTOR-BITS-256: __ARM_FEATURE_SVE_BITS 256
|
||||
// CHECK-SVE-VECTOR-BITS-512: __ARM_FEATURE_SVE_BITS 512
|
||||
// CHECK-SVE-VECTOR-BITS-1024: __ARM_FEATURE_SVE_BITS 1024
|
||||
// CHECK-SVE-VECTOR-BITS-2048: __ARM_FEATURE_SVE_BITS 2048
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fsyntax-only -verify -msve-vector-bits=1024 -fallow-half-arguments-and-returns %s
|
||||
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fsyntax-only -verify -msve-vector-bits=2048 -fallow-half-arguments-and-returns %s
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef __SVInt8_t svint8_t;
|
||||
typedef __SVInt16_t svint16_t;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +bf16 -fsyntax-only -verify -std=c++11 -msve-vector-bits=512 -fallow-half-arguments-and-returns %s
|
||||
// expected-no-diagnostics
|
||||
|
||||
#define N __ARM_FEATURE_SVE_BITS_EXPERIMENTAL
|
||||
#define N __ARM_FEATURE_SVE_BITS
|
||||
|
||||
typedef __SVInt8_t svint8_t;
|
||||
typedef svint8_t fixed_int8_t __attribute__((arm_sve_vector_bits(N)));
|
||||
|
|
Loading…
Reference in New Issue