]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Preprocessor/aarch64-target-features.c
Vendor import of clang release_34 branch r197841 (effectively, 3.4 RC3):
[FreeBSD/FreeBSD.git] / test / Preprocessor / aarch64-target-features.c
1 // RUN: %clang -target aarch64-none-linux-gnu -x c -E -dM %s -o - | FileCheck %s
2
3 // CHECK: __AARCH64EL__ 1
4 // CHECK: __ARM_64BIT_STATE 1
5 // CHECK: __ARM_ACLE 200
6 // CHECK: __ARM_ALIGN_MAX_STACK_PWR 4
7 // CHECK: __ARM_ARCH 8
8 // CHECK: __ARM_ARCH_ISA_A64 1
9 // CHECK: __ARM_ARCH_PROFILE 'A'
10 // CHECK-NOT: __ARM_FEATURE_BIG_ENDIAN
11 // CHECK: __ARM_FEATURE_CLZ 1
12 // CHECK-NOT: __ARM_FEATURE_CRYPTO 1
13 // CHECK: __ARM_FEATURE_DIV 1
14 // CHECK: __ARM_FEATURE_FMA 1
15 // CHECK: __ARM_FEATURE_UNALIGNED 1
16 // CHECK: __ARM_FP 0xe
17 // CHECK: __ARM_FP16_FORMAT_IEEE 1
18 // CHECK-NOT: __ARM_FP_FAST 1
19 // CHECK: __ARM_FP_FENV_ROUNDING 1
20 // CHECK-NOT: __ARM_NEON 1
21 // CHECK-NOT: __ARM_NEON_FP 7
22 // CHECK: __ARM_PCS_AAPCS64 1
23 // CHECK-NOT: __ARM_SIZEOF_MINIMAL_ENUM 1
24 // CHECK-NOT: __ARM_SIZEOF_WCHAR_T 2
25
26 // RUN: %clang -target aarch64-none-linux-gnu -mfpu=crypto-neon-fp-armv8 -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-CRYPTO %s
27 // CHECK-CRYPTO: __ARM_FEATURE_CRYPTO 1
28
29 // RUN: %clang -target aarch64-none-linux-gnu -ffast-math -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-FASTMATH %s
30 // CHECK-FASTMATH: __ARM_FP_FAST 1
31
32 // RUN: %clang -target aarch64-none-linux-gnu -fshort-wchar -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SHORTWCHAR %s
33 // CHECK-SHORTWCHAR: __ARM_SIZEOF_WCHAR_T 2
34
35 // RUN: %clang -target aarch64-none-linux-gnu -fshort-enums -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SHORTENUMS %s
36 // CHECK-SHORTENUMS: __ARM_SIZEOF_MINIMAL_ENUM 1
37
38 // RUN: %clang -target aarch64-none-linux-gnu -mfpu=neon -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-NEON %s
39 // CHECK-NEON: __ARM_NEON 1
40 // CHECK-NEON: __ARM_NEON_FP 7