Home | History | Annotate | Download | only in Preprocessor
      1 // RUN: %clang -target aarch64-none-linux-gnu -x c -E -dM %s -o - | FileCheck %s
      2 // RUN: %clang -target arm64-none-linux-gnu -x c -E -dM %s -o - | FileCheck %s
      3 
      4 // CHECK: __AARCH64EL__ 1
      5 // CHECK: __ARM_64BIT_STATE 1
      6 // CHECK: __ARM_ACLE 200
      7 // CHECK: __ARM_ALIGN_MAX_STACK_PWR 4
      8 // CHECK: __ARM_ARCH 8
      9 // CHECK: __ARM_ARCH_ISA_A64 1
     10 // CHECK: __ARM_ARCH_PROFILE 'A'
     11 // CHECK-NOT: __ARM_FEATURE_BIG_ENDIAN
     12 // CHECK: __ARM_FEATURE_CLZ 1
     13 // CHECK-NOT: __ARM_FEATURE_CRC32 1
     14 // CHECK-NOT: __ARM_FEATURE_CRYPTO 1
     15 // CHECK: __ARM_FEATURE_DIV 1
     16 // CHECK: __ARM_FEATURE_FMA 1
     17 // CHECK: __ARM_FEATURE_UNALIGNED 1
     18 // CHECK: __ARM_FP 0xe
     19 // CHECK: __ARM_FP16_FORMAT_IEEE 1
     20 // CHECK-NOT: __ARM_FP_FAST 1
     21 // CHECK: __ARM_FP_FENV_ROUNDING 1
     22 // CHECK: __ARM_NEON 1
     23 // CHECK: __ARM_NEON_FP 0xe
     24 // CHECK: __ARM_PCS_AAPCS64 1
     25 // CHECK-NOT: __ARM_SIZEOF_MINIMAL_ENUM 1
     26 // CHECK-NOT: __ARM_SIZEOF_WCHAR_T 2
     27 
     28 // RUN: %clang -target aarch64-none-linux-gnu -mfpu=crypto-neon-fp-armv8 -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-CRYPTO %s
     29 // RUN: %clang -target arm64-none-linux-gnu -mfpu=crypto-neon-fp-armv8 -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-CRYPTO %s
     30 // CHECK-CRYPTO: __ARM_FEATURE_CRYPTO 1
     31 
     32 // RUN: %clang -target aarch64-none-linux-gnu -mcrc -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-CRC32 %s
     33 // RUN: %clang -target arm64-none-linux-gnu -mcrc -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-CRC32 %s
     34 // CHECK-CRC32: __ARM_FEATURE_CRC32 1
     35 
     36 // RUN: %clang -target aarch64-none-linux-gnu -ffast-math -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-FASTMATH %s
     37 // RUN: %clang -target arm64-none-linux-gnu -ffast-math -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-FASTMATH %s
     38 // CHECK-FASTMATH: __ARM_FP_FAST 1
     39 
     40 // RUN: %clang -target aarch64-none-linux-gnu -fshort-wchar -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SHORTWCHAR %s
     41 // RUN: %clang -target arm64-none-linux-gnu -fshort-wchar -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SHORTWCHAR %s
     42 // CHECK-SHORTWCHAR: __ARM_SIZEOF_WCHAR_T 2
     43 
     44 // RUN: %clang -target aarch64-none-linux-gnu -fshort-enums -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SHORTENUMS %s
     45 // RUN: %clang -target arm64-none-linux-gnu -fshort-enums -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-SHORTENUMS %s
     46 // CHECK-SHORTENUMS: __ARM_SIZEOF_MINIMAL_ENUM 1
     47 
     48 // RUN: %clang -target aarch64-none-linux-gnu -mfpu=neon -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-NEON %s
     49 // RUN: %clang -target arm64-none-linux-gnu -mfpu=neon -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-NEON %s
     50 // CHECK-NEON: __ARM_NEON 1
     51 // CHECK-NEON: __ARM_NEON_FP 0xe
     52 
     53 // RUN: %clang -target aarch64-none-linux-gnu -mcpu=cortex-a53 -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-FEATURE %s
     54 // RUN: %clang -target aarch64-none-linux-gnu -mcpu=cortex-a57 -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-FEATURE %s
     55 // RUN: %clang -target aarch64-none-linux-gnu -mcpu=cyclone -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-FEATURE %s
     56 // CHECK-FEATURE: __ARM_FEATURE_CRC32 1
     57 // CHECK-FEATURE: __ARM_FEATURE_CRYPTO 1
     58 // CHECK-FEATURE: __ARM_NEON 1
     59 // CHECK-FEATURE: __ARM_NEON_FP 0xe
     60 
     61 
     62