diff options
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/CodeGen/arm-target-features.c | 28 | ||||
| -rw-r--r-- | clang/test/Driver/arm-mfpu.c | 54 |
2 files changed, 51 insertions, 31 deletions
diff --git a/clang/test/CodeGen/arm-target-features.c b/clang/test/CodeGen/arm-target-features.c index 03719f8a9e5..11fe4e50543 100644 --- a/clang/test/CodeGen/arm-target-features.c +++ b/clang/test/CodeGen/arm-target-features.c @@ -1,23 +1,23 @@ // REQUIRES: arm-registered-target // RUN: %clang_cc1 -triple thumbv7-linux-gnueabihf -target-cpu cortex-a8 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP3 -// CHECK-VFP3: "target-features"="+armv7-a,+d32,+dsp,+fp64,+fpregs,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp" +// CHECK-VFP3: "target-features"="+armv7-a,+d32,+dsp,+fp64,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp" // RUN: %clang_cc1 -triple thumbv7-linux-gnueabihf -target-cpu cortex-a5 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP4 -// CHECK-VFP4: "target-features"="+armv7-a,+d32,+dsp,+fp16,+fp64,+fpregs,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" +// CHECK-VFP4: "target-features"="+armv7-a,+d32,+dsp,+fp16,+fp64,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" // RUN: %clang_cc1 -triple thumbv7-linux-gnueabihf -target-cpu cortex-a7 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP4-DIV // RUN: %clang_cc1 -triple thumbv7-linux-gnueabi -target-cpu cortex-a12 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP4-DIV // RUN: %clang_cc1 -triple thumbv7s-linux-gnueabi -target-cpu swift -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP4-DIV-2 // RUN: %clang_cc1 -triple thumbv7-linux-gnueabihf -target-cpu krait -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP4-DIV -// CHECK-VFP4-DIV: "target-features"="+armv7-a,+d32,+dsp,+fp16,+fp64,+fpregs,+hwdiv,+hwdiv-arm,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" -// CHECK-VFP4-DIV-2: "target-features"="+armv7s,+d32,+dsp,+fp16,+fp64,+fpregs,+hwdiv,+hwdiv-arm,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" +// CHECK-VFP4-DIV: "target-features"="+armv7-a,+d32,+dsp,+fp16,+fp64,+hwdiv,+hwdiv-arm,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" +// CHECK-VFP4-DIV-2: "target-features"="+armv7s,+d32,+dsp,+fp16,+fp64,+hwdiv,+hwdiv-arm,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" // RUN: %clang_cc1 -triple armv7-linux-gnueabihf -target-cpu cortex-a15 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP4-DIV-ARM // RUN: %clang_cc1 -triple armv7-linux-gnueabihf -target-cpu cortex-a17 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP4-DIV-ARM -// CHECK-VFP4-DIV-ARM: "target-features"="+armv7-a,+d32,+dsp,+fp16,+fp64,+fpregs,+hwdiv,+hwdiv-arm,+neon,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp,-thumb-mode" +// CHECK-VFP4-DIV-ARM: "target-features"="+armv7-a,+d32,+dsp,+fp16,+fp64,+hwdiv,+hwdiv-arm,+neon,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp,-thumb-mode" // RUN: %clang_cc1 -triple thumbv7s-apple-ios7.0 -target-cpu cyclone -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-BASIC-V8 // RUN: %clang_cc1 -triple thumbv8-linux-gnueabihf -target-cpu cortex-a32 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-BASIC-V8 @@ -26,34 +26,34 @@ // RUN: %clang_cc1 -triple thumbv8-linux-gnueabihf -target-cpu cortex-a72 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-BASIC-V8 // RUN: %clang_cc1 -triple thumbv8-linux-gnueabihf -target-cpu cortex-a73 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-BASIC-V8 // RUN: %clang_cc1 -triple thumbv8-linux-gnueabihf -target-cpu exynos-m3 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-BASIC-V8 -// CHECK-BASIC-V8: "target-features"="+armv8-a,+crc,+crypto,+d32,+dsp,+fp-armv8,+fp-armv8d16,+fp-armv8d16sp,+fp-armv8sp,+fp16,+fp64,+fpregs,+hwdiv,+hwdiv-arm,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" +// CHECK-BASIC-V8: "target-features"="+armv8-a,+crc,+crypto,+d32,+dsp,+fp-armv8,+fp-armv8d16,+fp-armv8d16sp,+fp-armv8sp,+fp16,+fp64,+hwdiv,+hwdiv-arm,+neon,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" // RUN: %clang_cc1 -triple thumbv8-linux-gnueabihf -target-cpu exynos-m4 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-BASIC-V82 // RUN: %clang_cc1 -triple thumbv8-linux-gnueabihf -target-cpu exynos-m5 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-BASIC-V82 -// CHECK-BASIC-V82: "target-features"="+armv8.2-a,+crc,+crypto,+d32,+dotprod,+dsp,+fp-armv8,+fp-armv8d16,+fp-armv8d16sp,+fp-armv8sp,+fp16,+fp64,+fpregs,+fullfp16,+hwdiv,+hwdiv-arm,+neon,+ras,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" +// CHECK-BASIC-V82: "target-features"="+armv8.2-a,+crc,+crypto,+d32,+dotprod,+dsp,+fp-armv8,+fp-armv8d16,+fp-armv8d16sp,+fp-armv8sp,+fp16,+fp64,+fullfp16,+hwdiv,+hwdiv-arm,+neon,+ras,+thumb-mode,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp" // RUN: %clang_cc1 -triple armv8-linux-gnueabi -target-cpu cortex-a53 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-BASIC-V8-ARM -// CHECK-BASIC-V8-ARM: "target-features"="+armv8-a,+crc,+crypto,+d32,+dsp,+fp-armv8,+fp-armv8d16,+fp-armv8d16sp,+fp-armv8sp,+fp16,+fp64,+fpregs,+hwdiv,+hwdiv-arm,+neon,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp,-thumb-mode" +// CHECK-BASIC-V8-ARM: "target-features"="+armv8-a,+crc,+crypto,+d32,+dsp,+fp-armv8,+fp-armv8d16,+fp-armv8d16sp,+fp-armv8sp,+fp16,+fp64,+hwdiv,+hwdiv-arm,+neon,+vfp2,+vfp2sp,+vfp3,+vfp3d16,+vfp3d16sp,+vfp3sp,+vfp4,+vfp4d16,+vfp4d16sp,+vfp4sp,-thumb-mode" // RUN: %clang_cc1 -triple thumbv7-linux-gnueabi -target-cpu cortex-r5 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP3-D16-DIV -// CHECK-VFP3-D16-DIV: "target-features"="+armv7-r,+dsp,+fp64,+fpregs,+hwdiv,+hwdiv-arm,+thumb-mode,+vfp2,+vfp2sp,+vfp3d16,+vfp3d16sp" +// CHECK-VFP3-D16-DIV: "target-features"="+armv7-r,+dsp,+fp64,+hwdiv,+hwdiv-arm,+thumb-mode,+vfp2,+vfp2sp,+vfp3d16,+vfp3d16sp" // RUN: %clang_cc1 -triple armv7-linux-gnueabi -target-cpu cortex-r4f -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP3-D16-THUMB-DIV -// CHECK-VFP3-D16-THUMB-DIV: "target-features"="+armv7-r,+dsp,+fp64,+fpregs,+hwdiv,+vfp2,+vfp2sp,+vfp3d16,+vfp3d16sp,-thumb-mode" +// CHECK-VFP3-D16-THUMB-DIV: "target-features"="+armv7-r,+dsp,+fp64,+hwdiv,+vfp2,+vfp2sp,+vfp3d16,+vfp3d16sp,-thumb-mode" // RUN: %clang_cc1 -triple thumbv7-linux-gnueabi -target-cpu cortex-r7 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP3-D16-FP16-DIV // RUN: %clang_cc1 -triple thumbv7-linux-gnueabi -target-cpu cortex-r8 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP3-D16-FP16-DIV -// CHECK-VFP3-D16-FP16-DIV: "target-features"="+armv7-r,+dsp,+fp16,+fp64,+fpregs,+hwdiv,+hwdiv-arm,+thumb-mode,+vfp2,+vfp2sp,+vfp3d16,+vfp3d16sp" +// CHECK-VFP3-D16-FP16-DIV: "target-features"="+armv7-r,+dsp,+fp16,+fp64,+hwdiv,+hwdiv-arm,+thumb-mode,+vfp2,+vfp2sp,+vfp3d16,+vfp3d16sp" // RUN: %clang_cc1 -triple thumbv7-linux-gnueabi -target-cpu cortex-m4 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP4-D16-SP-THUMB-DIV -// CHECK-VFP4-D16-SP-THUMB-DIV: "target-features"="+armv7e-m,+dsp,+fp16,+fpregs,+hwdiv,+thumb-mode,+vfp2sp,+vfp3d16sp,+vfp4d16sp" +// CHECK-VFP4-D16-SP-THUMB-DIV: "target-features"="+armv7e-m,+dsp,+fp16,+hwdiv,+thumb-mode,+vfp2sp,+vfp3d16sp,+vfp4d16sp" // RUN: %clang_cc1 -triple thumbv7-linux-gnueabi -target-cpu cortex-m7 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-VFP5-D16-THUMB-DIV -// CHECK-VFP5-D16-THUMB-DIV: "target-features"="+armv7e-m,+dsp,+fp-armv8d16,+fp-armv8d16sp,+fp16,+fp64,+fpregs,+hwdiv,+thumb-mode,+vfp2,+vfp2sp,+vfp3d16,+vfp3d16sp,+vfp4d16,+vfp4d16sp" +// CHECK-VFP5-D16-THUMB-DIV: "target-features"="+armv7e-m,+dsp,+fp-armv8d16,+fp-armv8d16sp,+fp16,+fp64,+hwdiv,+thumb-mode,+vfp2,+vfp2sp,+vfp3d16,+vfp3d16sp,+vfp4d16,+vfp4d16sp" // RUN: %clang_cc1 -triple armv7-linux-gnueabi -target-cpu cortex-r4 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-THUMB-DIV @@ -105,6 +105,6 @@ // CHECK-ARMV8M-M23-LINUX: "target-features"="+armv8-m.base,+hwdiv,+thumb-mode" // RUN: %clang_cc1 -triple thumb-linux-gnueabi -target-cpu cortex-m33 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-ARMV8M-MAIN-LINUX -// CHECK-ARMV8M-MAIN-LINUX: "target-features"="+armv8-m.main,+dsp,+fp-armv8d16sp,+fp16,+fpregs,+hwdiv,+thumb-mode,+vfp2sp,+vfp3d16sp,+vfp4d16sp" +// CHECK-ARMV8M-MAIN-LINUX: "target-features"="+armv8-m.main,+dsp,+fp-armv8d16sp,+fp16,+hwdiv,+thumb-mode,+vfp2sp,+vfp3d16sp,+vfp4d16sp" void foo() {} diff --git a/clang/test/Driver/arm-mfpu.c b/clang/test/Driver/arm-mfpu.c index b709622f720..c3731fa5bd6 100644 --- a/clang/test/Driver/arm-mfpu.c +++ b/clang/test/Driver/arm-mfpu.c @@ -84,7 +84,7 @@ // CHECK-VFP3-D16-DAG: "-target-feature" "-vfp4d16sp" // CHECK-VFP3-D16-DAG: "-target-feature" "-fp-armv8d16sp" // CHECK-VFP3-D16-DAG: "-target-feature" "+fp64" -// CHECK-VFP3-D16-NOT: "-target-feature" "+d32" +// CHECK-VFP3-D16-DAG: "-target-feature" "-d32" // CHECK-VFP3-D16-DAG: "-target-feature" "-neon" // RUN: %clang -target arm-linux-eabi -mfpu=vfpv3-d16-fp16 %s -### -o %t.o 2>&1 \ @@ -98,7 +98,7 @@ // CHECK-VFP3-D16-FP16-DAG: "-target-feature" "-vfp4d16sp" // CHECK-VFP3-D16-FP16-DAG: "-target-feature" "-fp-armv8d16sp" // CHECK-VFP3-D16-FP16-DAG: "-target-feature" "+fp64" -// CHECK-VFP3-D16-FP16-NOT: "-target-feature" "+d32" +// CHECK-VFP3-D16-FP16-DAG: "-target-feature" "-d32" // CHECK-VFP3-D16-FP16-DAG: "-target-feature" "-neon" // CHECK-VFP3-D16-FP16-DAG: "-target-feature" "-crypto" @@ -108,8 +108,8 @@ // RUN: | FileCheck --check-prefix=CHECK-SOFT-ABI-FP-3 %s // CHECK-VFP3XD-NOT: "-target-feature" "+soft-float" // CHECK-VFP3XD-DAG: "-target-feature" "+soft-float-abi" -// CHECK-VFP3XD-NOT: "-target-feature" "+fp64" -// CHECK-VFP3XD-NOT: "-target-feature" "+d32" +// CHECK-VFP3XD-DAG: "-target-feature" "-fp64" +// CHECK-VFP3XD-DAG: "-target-feature" "-d32" // CHECK-VFP3XD-DAG: "-target-feature" "+vfp3d16sp" // CHECK-VFP3XD-DAG: "-target-feature" "-fp16" // CHECK-VFP3XD-DAG: "-target-feature" "-vfp4d16sp" @@ -127,8 +127,8 @@ // CHECK-VFP3XD-FP16-DAG: "-target-feature" "+fp16" // CHECK-VFP3XD-FP16-DAG: "-target-feature" "-vfp4d16sp" // CHECK-VFP3XD-FP16-DAG: "-target-feature" "-fp-armv8d16sp" -// CHECK-VFP3XD-FP16-NOT: "-target-feature" "+fp64" -// CHECK-VFP3XD-FP16-NOT: "-target-feature" "+d32" +// CHECK-VFP3XD-FP16-DAG: "-target-feature" "-fp64" +// CHECK-VFP3XD-FP16-DAG: "-target-feature" "-d32" // CHECK-VFP3XD-FP16-DAG: "-target-feature" "-neon" // CHECK-VFP3XD-FP16-DAG: "-target-feature" "-crypto" @@ -162,7 +162,7 @@ // CHECK-VFP4-D16-DAG: "-target-feature" "+vfp4d16" // CHECK-VFP4-D16-DAG: "-target-feature" "-fp-armv8d16sp" // CHECK-VFP4-D16-DAG: "-target-feature" "+fp64" -// CHECK-VFP4-D16-NOT: "-target-feature" "+d32" +// CHECK-VFP4-D16-DAG: "-target-feature" "-d32" // CHECK-VFP4-D16-DAG: "-target-feature" "-neon" // RUN: %clang -target arm-linux-eabi -mfpu=fp4-sp-d16 %s -### -o %t.o 2>&1 \ @@ -175,8 +175,8 @@ // CHECK-FP4-SP-D16-DAG: "-target-feature" "+soft-float-abi" // CHECK-FP4-SP-D16-DAG: "-target-feature" "+vfp4d16sp" // CHECK-FP4-SP-D16-DAG: "-target-feature" "-fp-armv8d16sp" -// CHECK-FP4-SP-D16-NOT: "-target-feature" "+fp64" -// CHECK-FP4-SP-D16-NOT: "-target-feature" "+d32" +// CHECK-FP4-SP-D16-DAG: "-target-feature" "-fp64" +// CHECK-FP4-SP-D16-DAG: "-target-feature" "-d32" // CHECK-FP4-SP-D16-DAG: "-target-feature" "-neon" // RUN: %clang -target arm-linux-eabi -mfpu=fp5-sp-d16 %s -### -o %t.o 2>&1 \ @@ -189,8 +189,8 @@ // CHECK-FP5-SP-D16-DAG: "-target-feature" "+soft-float-abi" // CHECK-FP5-SP-D16-DAG: "-target-feature" "+fp-armv8d16sp" // CHECK-FP5-SP-D16-DAG: "-target-feature" "-neon" -// CHECK-FP5-SP-D16-NOT: "-target-feature" "+fp64" -// CHECK-FP5-SP-D16-NOT: "-target-feature" "+d32" +// CHECK-FP5-SP-D16-DAG: "-target-feature" "-fp64" +// CHECK-FP5-SP-D16-DAG: "-target-feature" "-d32" // CHECK-FP5-SP-D16-DAG: "-target-feature" "-crypto" // RUN: %clang -target arm-linux-eabi -mfpu=fp5-dp-d16 %s -### -o %t.o 2>&1 \ @@ -203,7 +203,7 @@ // CHECK-FP5-DP-D16-DAG: "-target-feature" "+soft-float-abi" // CHECK-FP5-DP-D16-DAG: "-target-feature" "+fp-armv8d16" // CHECK-FP5-DP-D16-DAG: "-target-feature" "+fp64" -// CHECK-FP5-DP-D16-NOT: "-target-feature" "+d32" +// CHECK-FP5-DP-D16-DAG: "-target-feature" "-d32" // CHECK-FP5-DP-D16-DAG: "-target-feature" "-neon" // CHECK-FP5-DP-D16-DAG: "-target-feature" "-crypto" // CHECK-SOFT-ABI-FP-5-DAG: "-target-feature" "+soft-float" @@ -323,8 +323,8 @@ // CHECK-NO-FP-DAG: "-target-feature" "-vfp3d16sp" // CHECK-NO-FP-DAG: "-target-feature" "-vfp4d16sp" // CHECK-NO-FP-DAG: "-target-feature" "-fp-armv8d16sp" -// CHECK-NO-FP-NOT: "-target-feature" "+fp64" -// CHECK-NO-FP-NOT: "-target-feature" "+d32" +// CHECK-NO-FP-DAG: "-target-feature" "-fp64" +// CHECK-NO-FP-DAG: "-target-feature" "-d32" // CHECK-NO-FP-DAG: "-target-feature" "-neon" // CHECK-NO-FP-DAG: "-target-feature" "-crypto" @@ -382,8 +382,8 @@ // CHECK-ARM7-ANDROID-FP-DEFAULT-NOT: "-target-feature" "+soft-float" // CHECK-ARM7-ANDROID-FP-DEFAULT-DAG: "-target-feature" "+soft-float-abi" // CHECK-ARM7-ANDROID-FP-DEFAULT-DAG: "-target-feature" "+vfp3" -// CHECK-ARM7-ANDROID-FP-DEFAULT-NOT: "-target-feature" "+vfp4" -// CHECK-ARM7-ANDROID-FP-DEFAULT-NOT: "-target-feature" "+fp-armv8" +// CHECK-ARM7-ANDROID-FP-DEFAULT-DAG: "-target-feature" "-vfp4" +// CHECK-ARM7-ANDROID-FP-DEFAULT-DAG: "-target-feature" "-fp-armv8" // CHECK-ARM7-ANDROID-FP-DEFAULT-DAG: "-target-feature" "+neon" // CHECK-ARM7-ANDROID-FP-DEFAULT-NOT: "-target-feature" "+crypto" @@ -391,7 +391,7 @@ // RUN: | FileCheck --check-prefix=CHECK-ARM7-ANDROID-FP-D16 %s // CHECK-ARM7-ANDROID-FP-D16-NOT: "-target-feature" "+soft-float" // CHECK-ARM7-ANDROID-FP-D16-DAG: "-target-feature" "+soft-float-abi" -// CHECK-ARM7-ANDROID-FP-D16-NOT: "-target-feature" "+d32" +// CHECK-ARM7-ANDROID-FP-D16-DAG: "-target-feature" "-d32" // CHECK-ARM7-ANDROID-FP-D16-DAG: "-target-feature" "+vfp3d16" // CHECK-ARM7-ANDROID-FP-D16-NOT: "-target-feature" "+vfp4" // CHECK-ARM7-ANDROID-FP-D16-NOT: "-target-feature" "+fp-armv8" @@ -403,3 +403,23 @@ // CHECK-SOFTFLOATABI-INHIBITS-MVE-NOT: "-target-feature" "+mve" // CHECK-SOFTFLOATABI-INHIBITS-MVE-DAG: "-target-feature" "-mve" // CHECK-SOFTFLOATABI-INHIBITS-MVE-DAG: "-target-feature" "-mve.fp" + +// RUN: %clang -target arm-none-none-eabi %s -march=armv8.1-m.main+mve.fp -mfpu=none -### -c 2>&1 \ +// RUN: | FileCheck --check-prefix=CHECK-MVEFP-FPUNONE %s +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-vfp2sp" +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-vfp3d16sp" +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-vfp4d16sp" +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-fp-armv8d16sp" +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-fp64" +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-d32" +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-neon" +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-crypto" +// CHECK-MVEFP-FPUNONE-DAG: "-target-feature" "-mve.fp" +// CHECK-MVEFP-FPUNONE-NOT: "-target-feature" "-fpregs" + + +// RUN: %clang -target arm-none-none-eabi %s -march=armv8.1-m.main+mve -mfpu=none -### -c 2>&1 \ +// RUN: | FileCheck --check-prefix=CHECK-MVEI-FPUNONE %s +// CHECK-MVEI-FPUNONE-DAG: "-target-feature" "-mve.fp" +// CHECK-MVEI-FPUNONE-DAG: "-target-feature" "+mve" +// CHECK-MVEI-FPUNONE-NOT: "-target-feature" "-fpregs" |

