diff options
author | Bradley Smith <bradley.smith@arm.com> | 2016-03-03 13:52:22 +0000 |
---|---|---|
committer | Bradley Smith <bradley.smith@arm.com> | 2016-03-03 13:52:22 +0000 |
commit | f4affc13c52f03683568450a6387a38519a17bdb (patch) | |
tree | 91764e59069356494294f44be9f848a937db0ef0 /clang/test/Preprocessor/arm-target-features.c | |
parent | 65c02ec83785e6e4ddb656d7bc33d7242ef0737d (diff) | |
download | bcm5719-llvm-f4affc13c52f03683568450a6387a38519a17bdb.tar.gz bcm5719-llvm-f4affc13c52f03683568450a6387a38519a17bdb.zip |
[ARM] Add Clang targeting for ARMv8-M Baseline/Mainline
llvm-svn: 262619
Diffstat (limited to 'clang/test/Preprocessor/arm-target-features.c')
-rw-r--r-- | clang/test/Preprocessor/arm-target-features.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/clang/test/Preprocessor/arm-target-features.c b/clang/test/Preprocessor/arm-target-features.c index 21fedff9bf2..54eb96f06a7 100644 --- a/clang/test/Preprocessor/arm-target-features.c +++ b/clang/test/Preprocessor/arm-target-features.c @@ -95,6 +95,42 @@ // THUMBV8A-EABI:#define __ARM_ARCH_EXT_IDIV__ 1 // THUMBV8A-EABI: #define __ARM_FP 0xE +// RUN: %clang -target armv8m.base-none-linux-gnu -x c -E -dM %s -o - | FileCheck --check-prefix=V8M_BASELINE %s +// V8M_BASELINE: __ARM_ARCH 8 +// V8M_BASELINE: __ARM_ARCH_8M_BASE__ 1 +// V8M_BASELINE: __ARM_ARCH_EXT_IDIV__ 1 +// V8M_BASELINE-NOT: __ARM_ARCH_ISA_ARM +// V8M_BASELINE: __ARM_ARCH_ISA_THUMB 1 +// V8M_BASELINE: __ARM_ARCH_PROFILE 'M' +// V8M_BASELINE-NOT: __ARM_FEATURE_CRC32 +// V8M_BASELINE-NOT: __ARM_FEATURE_DSP +// V8M_BASELINE-NOT: __ARM_FP 0x{{.*}} +// V8M_BASELINE-NOT: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 + +// RUN: %clang -target armv8m.main-none-linux-gnu -x c -E -dM %s -o - | FileCheck --check-prefix=V8M_MAINLINE %s +// V8M_MAINLINE: __ARM_ARCH 8 +// V8M_MAINLINE: __ARM_ARCH_8M_MAIN__ 1 +// V8M_MAINLINE: __ARM_ARCH_EXT_IDIV__ 1 +// V8M_MAINLINE-NOT: __ARM_ARCH_ISA_ARM +// V8M_MAINLINE: __ARM_ARCH_ISA_THUMB 2 +// V8M_MAINLINE: __ARM_ARCH_PROFILE 'M' +// V8M_MAINLINE-NOT: __ARM_FEATURE_CRC32 +// V8M_MAINLINE-NOT: __ARM_FEATURE_DSP +// V8M_MAINLINE: __ARM_FP 0xE +// V8M_MAINLINE: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 + +// RUN: %clang -target arm-none-linux-gnu -march=armv8-m.main+dsp -x c -E -dM %s -o - | FileCheck --check-prefix=V8M_MAINLINE_DSP %s +// V8M_MAINLINE_DSP: __ARM_ARCH 8 +// V8M_MAINLINE_DSP: __ARM_ARCH_8M_MAIN__ 1 +// V8M_MAINLINE_DSP: __ARM_ARCH_EXT_IDIV__ 1 +// V8M_MAINLINE_DSP-NOT: __ARM_ARCH_ISA_ARM +// V8M_MAINLINE_DSP: __ARM_ARCH_ISA_THUMB 2 +// V8M_MAINLINE_DSP: __ARM_ARCH_PROFILE 'M' +// V8M_MAINLINE_DSP-NOT: __ARM_FEATURE_CRC32 +// V8M_MAINLINE_DSP: __ARM_FEATURE_DSP 1 +// V8M_MAINLINE_DSP: __ARM_FP 0xE +// V8M_MAINLINE_DSP: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 + // RUN: %clang -target arm-none-linux-gnu -x c -E -dM %s -o - | FileCheck --check-prefix=CHECK-DEFS %s // CHECK-DEFS:#define __ARM_PCS 1 // CHECK-DEFS:#define __ARM_SIZEOF_MINIMAL_ENUM 4 |