diff --git a/clang/test/Driver/B-opt.c b/clang/test/Driver/B-opt.c index d230f96cd113a5..df85dee4b70407 100644 --- a/clang/test/Driver/B-opt.c +++ b/clang/test/Driver/B-opt.c @@ -5,23 +5,23 @@ // RUN: -B %S/Inputs/B_opt_tree/dir1 -fuse-ld=ld 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-B-OPT-TRIPLE %s // CHECK-B-OPT-TRIPLE-NOT: "{{.*}}/Inputs/B_opt_tree/dir1{{/|\\\\}}i386-unknown-linux-ld" - +// // RUN: %clang %s -### -o %t.o -target i386-unknown-linux \ // RUN: -B %S/Inputs/B_opt_tree/dir2 -fuse-ld=ld 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-B-OPT-DIR %s // CHECK-B-OPT-DIR: "{{.*}}/Inputs/B_opt_tree/dir2{{/|\\\\}}ld" - +// // RUN: %clang %s -### -o %t.o -target i386-unknown-linux \ // RUN: -B %S/Inputs/B_opt_tree/dir3/prefix- -fuse-ld=ld 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-B-OPT-PREFIX %s // CHECK-B-OPT-PREFIX: "{{.*}}/Inputs/B_opt_tree/dir3{{/|\\\\}}prefix-ld" - +// // RUN: %clang %s -### -o %t.o -target i386-unknown-linux \ // RUN: -B %S/Inputs/B_opt_tree/dir3/prefix- \ // RUN: -B %S/Inputs/B_opt_tree/dir2 2>&1 -fuse-ld=ld \ // RUN: | FileCheck --check-prefix=CHECK-B-OPT-MULT %s // CHECK-B-OPT-MULT: "{{.*}}/Inputs/B_opt_tree/dir3{{/|\\\\}}prefix-ld" - +// // RUN: %clang -B %S/Inputs/does_not_exist -print-search-dirs \ // RUN: -target aarch64-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-B-OPT-INVALID %s diff --git a/clang/test/Driver/Wp-args.c b/clang/test/Driver/Wp-args.c index 7e73b0827c94e1..587b7b83e4ca61 100644 --- a/clang/test/Driver/Wp-args.c +++ b/clang/test/Driver/Wp-args.c @@ -4,12 +4,12 @@ // RUN: %clang -target i386-pc-linux-gnu -### \ // RUN: -Wp,-MD,FOO.d -fsyntax-only %s 2> %t // RUN: FileCheck < %t %s - +// // CHECK: "-cc1" // CHECK-NOT: -MD // CHECK: "-dependency-file" "FOO.d" // CHECK: "-MT" - +// // PR4062 // RUN: %clang -target i386-pc-linux-gnu -### \ diff --git a/clang/test/Driver/XRay/xray-function-index-flags.cpp b/clang/test/Driver/XRay/xray-function-index-flags.cpp index 7a258debf76b33..f0d1a8a8c73721 100644 --- a/clang/test/Driver/XRay/xray-function-index-flags.cpp +++ b/clang/test/Driver/XRay/xray-function-index-flags.cpp @@ -1,7 +1,7 @@ // This test ensures that when we invoke the clang compiler, that the -cc1 // options respect the -fno-xray-function-index flag we provide in the // invocation. The default should be to *include* the function index. - +// // RUN: %clang -### -fxray-instrument -target x86_64 -c %s 2>&1 | FileCheck %s // RUN: %clang -### -fxray-instrument -target x86_64 -fxray-function-index -c %s 2>&1 | FileCheck %s diff --git a/clang/test/Driver/XRay/xray-ignore-loops-flags.cpp b/clang/test/Driver/XRay/xray-ignore-loops-flags.cpp index efb18f382fd81e..2c6ddb8b529764 100644 --- a/clang/test/Driver/XRay/xray-ignore-loops-flags.cpp +++ b/clang/test/Driver/XRay/xray-ignore-loops-flags.cpp @@ -1,9 +1,9 @@ // This test ensures that when we invoke the clang compiler, that the -cc1 // options include the -fxray-ignore-loops flag we provide in the // invocation. - +// // RUN: %clang -fxray-instrument -fxray-ignore-loops -target x86_64-linux- -### \ // RUN: -x c++ -emit-llvm -c -o - %s 2>&1 | FileCheck %s // CHECK: -fxray-ignore-loops - +// // REQUIRES: x86_64 || x86_64h diff --git a/clang/test/Driver/XRay/xray-instrumentation-bundles-flags.cpp b/clang/test/Driver/XRay/xray-instrumentation-bundles-flags.cpp index c4b3a217b4dfd0..4d311cc7d86c1a 100644 --- a/clang/test/Driver/XRay/xray-instrumentation-bundles-flags.cpp +++ b/clang/test/Driver/XRay/xray-instrumentation-bundles-flags.cpp @@ -1,10 +1,10 @@ // This test ensures that when we invoke the clang compiler, that the -cc1 // options include the -fxray-instrumentation-bundle= flag we provide in the // invocation. - +// // RUN: %clang -fxray-instrument -fxray-instrumentation-bundle=function -### \ // RUN: -c -o - %s 2>&1 | FileCheck %s // CHECK: -fxray-instrumentation-bundle=function - +// // REQUIRES: linux || freebsd // REQUIRES: amd64 || x86_64 || x86_64h || arm || aarch64 || arm64 diff --git a/clang/test/Driver/XRay/xray-mode-flags.cpp b/clang/test/Driver/XRay/xray-mode-flags.cpp index 67adae759990ab..e95053a4c684aa 100644 --- a/clang/test/Driver/XRay/xray-mode-flags.cpp +++ b/clang/test/Driver/XRay/xray-mode-flags.cpp @@ -14,9 +14,9 @@ // RUN: 2>&1 | FileCheck --check-prefixes FDR,BASIC %s // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none -### %s \ // RUN: 2>&1 | FileCheck --check-prefixes NONE %s - +// // We also should support overriding the modes in an additive manner. - +// // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none,xray-fdr \ // RUN: -### %s \ // RUN: 2>&1 | FileCheck --check-prefixes FDR %s @@ -26,16 +26,16 @@ // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none,all \ // RUN: -### %s \ // RUN: 2>&1 | FileCheck --check-prefixes FDR,BASIC %s - +// // We also should support having the individual modes be concatenated. - +// // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none \ // RUN: -fxray-modes=xray-fdr \ // RUN: -### %s \ // RUN: 2>&1 | FileCheck --check-prefixes FDR %s - +// // Order also matters. - +// // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=xray-fdr \ // RUN: -fxray-modes=none \ // RUN: -### %s \ diff --git a/clang/test/Driver/XRay/xray-shared-noxray.cpp b/clang/test/Driver/XRay/xray-shared-noxray.cpp index 367837d920ccfa..c279f93f3f3d84 100644 --- a/clang/test/Driver/XRay/xray-shared-noxray.cpp +++ b/clang/test/Driver/XRay/xray-shared-noxray.cpp @@ -4,10 +4,10 @@ // RUN: %clangxx -static -o /dev/null -v -fxray-instrument %s -### -DMAIN // RUN: %clangxx -static -o /dev/null -v -fxray-instrument %s -### 2>&1 -DMAIN \ // RUN: | FileCheck %s --check-prefix=STATIC - +// // SHARED-NOT: {{clang_rt\.xray-}} // STATIC: {{clang_rt\.xray-}} - +// // REQUIRES: linux, enable_shared int foo() { return 42; } diff --git a/clang/test/Driver/amdgpu-macros.cl b/clang/test/Driver/amdgpu-macros.cl index 5c7cfad85d9539..4fa782aa20495a 100644 --- a/clang/test/Driver/amdgpu-macros.cl +++ b/clang/test/Driver/amdgpu-macros.cl @@ -2,9 +2,9 @@ // Check that appropriate macros are defined for every supported AMDGPU // "-target" and "-mcpu" options. - +// // R600-based processors. - +// // RUN: %clang -E -dM -target r600 -mcpu=r600 %s 2>&1 | FileCheck --check-prefixes=ARCH-R600,R600 %s -DCPU=r600 // RUN: %clang -E -dM -target r600 -mcpu=rv630 %s 2>&1 | FileCheck --check-prefixes=ARCH-R600,R600 %s -DCPU=r600 @@ -63,9 +63,9 @@ // ARCH-R600-DAG: #define __[[CPU]]__ 1 - +// // AMDGCN-based processors. - +// // RUN: %clang -E -dM -target amdgcn -mcpu=gfx600 %s 2>&1 | FileCheck --check-prefixes=ARCH-GCN,FAST_FMAF %s -DWAVEFRONT_SIZE=64 -DCPU=gfx600 -DFAMILY=GFX6 // RUN: %clang -E -dM -target amdgcn -mcpu=tahiti %s 2>&1 | FileCheck --check-prefixes=ARCH-GCN,FAST_FMAF %s -DWAVEFRONT_SIZE=64 -DCPU=gfx600 -DFAMILY=GFX6 diff --git a/clang/test/Driver/amdgpu-mcpu.cl b/clang/test/Driver/amdgpu-mcpu.cl index 45f9d6b53a7a98..dfc7ab24927fce 100644 --- a/clang/test/Driver/amdgpu-mcpu.cl +++ b/clang/test/Driver/amdgpu-mcpu.cl @@ -1,8 +1,8 @@ // Check that -mcpu works for all supported GPUs. - +// // R600-based processors. - +// // RUN: %clang -### -target r600 -mcpu=r600 %s 2>&1 | FileCheck --check-prefix=R600 %s // RUN: %clang -### -target r600 -mcpu=rv630 %s 2>&1 | FileCheck --check-prefix=R600 %s @@ -48,9 +48,9 @@ // CAYMAN: "-target-cpu" "cayman" // TURKS: "-target-cpu" "turks" - +// // AMDGCN-based processors. - +// // RUN: %clang -### -target amdgcn %s 2>&1 | FileCheck --check-prefix=GCNDEFAULT %s // RUN: %clang -### -target amdgcn -mcpu=gfx600 %s 2>&1 | FileCheck --check-prefix=GFX600 %s diff --git a/clang/test/Driver/android-link.cpp b/clang/test/Driver/android-link.cpp index a9336ea6870f56..fa9cbc5d0c7a55 100644 --- a/clang/test/Driver/android-link.cpp +++ b/clang/test/Driver/android-link.cpp @@ -6,19 +6,19 @@ // RUN: %clang -target aarch64-none-linux-android \ // RUN: -### -v %s 2> %t // RUN: FileCheck -check-prefix=GENERIC-ARM < %t %s - +// // RUN: %clang -target aarch64-none-linux-android \ // RUN: -mcpu=cortex-a53 -### -v %s 2> %t // RUN: FileCheck -check-prefix=CORTEX-A53 < %t %s - +// // RUN: %clang -target aarch64-none-linux-android \ // RUN: -mcpu=cortex-a57 -### -v %s 2> %t // RUN: FileCheck -check-prefix=CORTEX-A57 < %t %s - +// // RUN: %clang -target aarch64-none-linux-android \ // RUN: -### -v %s 2> %t // RUN: FileCheck -check-prefix=MAX-PAGE-SIZE < %t %s - +// // GENERIC-ARM: --fix-cortex-a53-843419 // CORTEX-A53: --fix-cortex-a53-843419 // CORTEX-A57-NOT: --fix-cortex-a53-843419 diff --git a/clang/test/Driver/android-ndk-standalone.cpp b/clang/test/Driver/android-ndk-standalone.cpp index e6a6548f2458b6..aeb2678c9caae6 100644 --- a/clang/test/Driver/android-ndk-standalone.cpp +++ b/clang/test/Driver/android-ndk-standalone.cpp @@ -1,6 +1,6 @@ // Test header and library paths when Clang is used with Android standalone // toolchain. - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi21 \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ @@ -31,7 +31,7 @@ // CHECK-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/armv7-a/thumb" // CHECK-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/armv7-a" // CHECK-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/thumb" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi14 \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ @@ -39,7 +39,7 @@ // RUN: | FileCheck --check-prefix=CHECK-14 %s // CHECK-14: "-L{{.*}}/sysroot/usr/lib/arm-linux-androideabi/14" // CHECK-14: "-L{{.*}}/sysroot/usr/lib/arm-linux-androideabi" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi21 -stdlib=libstdc++ \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ @@ -73,7 +73,7 @@ // CHECK-STDCXX-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/armv7-a/thumb" // CHECK-STDCXX-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/armv7-a" // CHECK-STDCXX-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/thumb" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=armv7a-none-linux-androideabi21 \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ @@ -104,7 +104,7 @@ // CHECK-ARMV7-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/thumb" // CHECK-ARMV7-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/armv7-a/thumb" // CHECK-ARMV7-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib" - +// // Other flags that can trigger armv7 mode. // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi21 \ @@ -124,7 +124,7 @@ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ // RUN: --sysroot=%S/Inputs/basic_android_ndk_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-ARMV7 %s - +// // ARM thumb mode. // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi21 \ @@ -158,7 +158,7 @@ // CHECK-THUMB-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib/armv7/thumb" // CHECK-THUMB-NOT: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.9/../{{[^ ]*}}/lib" // CHECK-THUMB: "-L{{.*}}/sysroot/usr/lib" - +// // ARM V7 thumb mode. // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi21 \ @@ -205,14 +205,14 @@ // CHECK-ARM-MULTILIBS-NEXT: armv7-a/thumb;@march=armv7-a@mthumb // CHECK-ARM-MULTILIBS-NEXT: .; - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=armv7a-none-linux-androideabi21 \ // RUN: -mthumb \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ // RUN: --sysroot=%S/Inputs/basic_android_ndk_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-ARMV7THUMB %s - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=aarch64-linux-android21 \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ @@ -228,7 +228,7 @@ // CHECK-AARCH64: "-L{{.*}}/sysroot/usr/lib/aarch64-linux-android/21" // CHECK-AARCH64: "-L{{.*}}/sysroot/usr/lib/aarch64-linux-android" // CHECK-AARCH64: "-L{{.*}}/lib/gcc/aarch64-linux-android/4.9/../../../../aarch64-linux-android/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm64-linux-android21 \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ @@ -244,7 +244,7 @@ // CHECK-ARM64: "-L{{.*}}/sysroot/usr/lib/aarch64-linux-android/21" // CHECK-ARM64: "-L{{.*}}/sysroot/usr/lib/aarch64-linux-android" // CHECK-ARM64: "-L{{.*}}/lib/gcc/aarch64-linux-android/4.9/../../../../aarch64-linux-android/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-android21 \ // RUN: -mips32 \ @@ -260,7 +260,7 @@ // CHECK-MIPS: "-L{{.*}}/sysroot/usr/lib/mipsel-linux-android/21" // CHECK-MIPS: "-L{{.*}}/sysroot/usr/lib/mipsel-linux-android" // CHECK-MIPS: "-L{{.*}}/lib/gcc/mipsel-linux-android/4.9/../../../../mipsel-linux-android/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=i686-linux-android21 \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ @@ -276,7 +276,7 @@ // CHECK-I686: "-L{{.*}}/sysroot/usr/lib/i686-linux-android/21" // CHECK-I686: "-L{{.*}}/sysroot/usr/lib/i686-linux-android" // CHECK-I686: "-L{{.*}}/lib/gcc/i686-linux-android/4.9/../../../../i686-linux-android/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-linux-android21 \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_ndk_tree \ @@ -302,13 +302,13 @@ // RUN: %clang -v --target=i686-linux-android \ // RUN: 2>&1 | FileCheck --check-prefix=CHECK-I686-GCC-NOSYS %s - +// // CHECK-I686-GCC-NOSYS-NOT: Found candidate GCC installation: /usr{{.*}} - +// // RUN: %clang -v --target=i686-linux-android \ // RUN: --sysroot=%S/Inputs/basic_android_ndk_tree \ // RUN: 2>&1 | FileCheck --check-prefix=CHECK-I686-GCC %s - +// // CHECK-I686-GCC-NOT: Found candidate GCC installation: /usr{{.*}} // CHECK-I686-GCC: Found candidate GCC installation: {{.*}}i686-linux-android{{[/\\]}}4.9 // CHECK-I686-GCC-NEXT: Found candidate GCC installation: {{.*}}x86_64-linux-android{{[/\\]}}4.9 @@ -316,13 +316,13 @@ // RUN: %clang -v --target=x86_64-linux-android \ // RUN: 2>&1 | FileCheck --check-prefix=CHECK-X86_64-GCC-NOSYS %s - +// // CHECK-X86_64-GCC-NOSYS-NOT: Found candidate GCC installation: /usr{{.*}} // RUN: %clang -v --target=x86_64-linux-android \ // RUN: --sysroot=%S/Inputs/basic_android_ndk_tree \ // RUN: 2>&1 | FileCheck --check-prefix=CHECK-X86_64-GCC %s - +// // CHECK-X86_64-GCC-NOT: Found candidate GCC installation: /usr{{.*}} // CHECK-X86_64-GCC: Found candidate GCC installation: {{.*}}i686-linux-android{{[/\\]}}4.9 // CHECK-X86_64-GCC-NEXT: Found candidate GCC installation: {{.*}}x86_64-linux-android{{[/\\]}}4.9 diff --git a/clang/test/Driver/android-standalone.cpp b/clang/test/Driver/android-standalone.cpp index efb37c8e42e525..7363497c880a53 100644 --- a/clang/test/Driver/android-standalone.cpp +++ b/clang/test/Driver/android-standalone.cpp @@ -1,6 +1,6 @@ // Test header and library paths when Clang is used with Android standalone // toolchain. - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi -stdlib=libstdc++ \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_tree \ @@ -15,7 +15,7 @@ // CHECK: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.4.3" // CHECK: "-L{{.*}}/lib/gcc/arm-linux-androideabi/4.4.3/../../../../arm-linux-androideabi/lib" // CHECK: "-L{{.*}}/sysroot/usr/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=aarch64-linux-android -stdlib=libstdc++ \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_tree \ @@ -30,7 +30,7 @@ // CHECK-AARCH64: "-L{{.*}}/lib/gcc/aarch64-linux-android/4.8" // CHECK-AARCH64: "-L{{.*}}/lib/gcc/aarch64-linux-android/4.8/../../../../aarch64-linux-android/lib" // CHECK-AARCH64: "-L{{.*}}/sysroot/usr/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm64-linux-android -stdlib=libstdc++ \ // RUN: --gcc-toolchain=%S/Inputs/basic_android_tree \ @@ -45,7 +45,7 @@ // CHECK-ARM64: "-L{{.*}}/lib/gcc/aarch64-linux-android/4.8" // CHECK-ARM64: "-L{{.*}}/lib/gcc/aarch64-linux-android/4.8/../../../../aarch64-linux-android/lib" // CHECK-ARM64: "-L{{.*}}/sysroot/usr/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-android \ // RUN: -mips32 -stdlib=libstdc++ \ @@ -61,7 +61,7 @@ // CHECK-MIPS: "-L{{.*}}/lib/gcc/mipsel-linux-android/4.4.3" // CHECK-MIPS: "-L{{.*}}/lib/gcc/mipsel-linux-android/4.4.3/../../../../mipsel-linux-android/lib" // CHECK-MIPS: "-L{{.*}}/sysroot/usr/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-android \ // RUN: -march=mips32 -mips32r2 -stdlib=libstdc++ \ @@ -77,7 +77,7 @@ // CHECK-MIPSR2: "-L{{.*}}/lib/gcc/mipsel-linux-android/4.4.3/mips-r2" // CHECK-MIPSR2: "-L{{.*}}/lib/gcc/mipsel-linux-android/4.4.3/../../../../mipsel-linux-android/lib" // CHECK-MIPSR2: "-L{{.*}}/sysroot/usr/lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-android \ // RUN: -mips32 -march=mips32r2 -stdlib=libstdc++ \ diff --git a/clang/test/Driver/apple-arm64-arch.c b/clang/test/Driver/apple-arm64-arch.c index c6d75c68123567..a111260b38a6ba 100644 --- a/clang/test/Driver/apple-arm64-arch.c +++ b/clang/test/Driver/apple-arm64-arch.c @@ -1,6 +1,6 @@ // RUN: env SDKROOT="/" %clang -arch arm64 -c -### %s 2>&1 | \ // RUN: FileCheck %s - +// // REQUIRES: system-darwin - +// // CHECK: "-triple" "arm64-apple-macosx{{[0-9.]+}}" diff --git a/clang/test/Driver/apple-silicon-arch.c b/clang/test/Driver/apple-silicon-arch.c index 556afe59e5d79e..b1201fa2d7ddb3 100644 --- a/clang/test/Driver/apple-silicon-arch.c +++ b/clang/test/Driver/apple-silicon-arch.c @@ -1,6 +1,6 @@ // RUN: env SDKROOT="/" %clang -arch arm64 -c -### %s 2>&1 | \ // RUN: FileCheck %s - +// // REQUIRES: apple-silicon-mac - +// // CHECK: "-triple" "arm64-apple-macosx{{[0-9.]+}}" diff --git a/clang/test/Driver/arch-specific-libdir-rpath.c b/clang/test/Driver/arch-specific-libdir-rpath.c index 1ccf9eb4a433c6..1aa5bc88b72d53 100644 --- a/clang/test/Driver/arch-specific-libdir-rpath.c +++ b/clang/test/Driver/arch-specific-libdir-rpath.c @@ -1,13 +1,13 @@ // Test that the driver adds an arch-specific subdirectory in // {RESOURCE_DIR}/lib/linux to the linker search path and to '-rpath' - +// // Test the default behavior when neither -frtlib-add-rpath nor // -fno-rtlib-add-rpath is specified, which is to skip -rpath // RUN: %clang %s -### 2>&1 -target x86_64-linux \ // RUN: -fsanitize=address -shared-libasan \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,NO-RPATH-X86_64 %s - +// // Test that -rpath is not added under -fno-rtlib-add-rpath even if other // conditions are met. // RUN: %clang %s -### 2>&1 -target x86_64-linux \ @@ -15,60 +15,60 @@ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -fno-rtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,NO-RPATH-X86_64 %s - +// // Test that -rpath is added only under the right circumstance even if // -frtlib-add-rpath is specified. - +// // Add LIBPATH but no RPATH for -fsanitizer=address w/o -shared-libasan // RUN: %clang %s -### 2>&1 -target x86_64-linux -fsanitize=undefined \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -frtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,NO-RPATH-X86_64 %s - +// // Add LIBPATH but no RPATH for -fsanitizer=address w/o -shared-libasan // RUN: %clang %s -### 2>&1 -target x86_64-linux -fsanitize=undefined \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -frtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,NO-RPATH-X86_64 %s - +// // Add LIBPATH, RPATH for -fsanitize=address -shared-libasan // RUN: %clang %s -### 2>&1 -target x86_64-linux \ // RUN: -fsanitize=address -shared-libasan \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -frtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,RPATH-X86_64 %s - +// // Add LIBPATH, RPATH for -fsanitize=address -shared-libasan on aarch64 // RUN: %clang %s -### 2>&1 -target aarch64-linux \ // RUN: -fsanitize=address -shared-libasan \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -frtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-AARCH64,RPATH-AARCH64 %s - +// // Add LIBPATH, RPATH with -fsanitize=address for Android // RUN: %clang %s -### 2>&1 -target x86_64-linux-android -fsanitize=address \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -frtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,RPATH-X86_64 %s - +// // Add LIBPATH, RPATH for OpenMP // RUN: %clang %s -### 2>&1 -target x86_64-linux -fopenmp \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -frtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,RPATH-X86_64 %s - +// // Add LIBPATH but no RPATH for ubsan (or any other sanitizer) // RUN: %clang %s -### 2>&1 -fsanitize=undefined -target x86_64-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -frtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,NO-RPATH-X86_64 %s - +// // Add LIBPATH but no RPATH if no sanitizer or runtime is specified // RUN: %clang %s -### 2>&1 -target x86_64-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: -frtlib-add-rpath \ // RUN: | FileCheck --check-prefixes=RESDIR,LIBPATH-X86_64,NO-RPATH-X86_64 %s - +// // Do not add LIBPATH or RPATH if arch-specific subdir doesn't exist // RUN: %clang %s -### 2>&1 -target x86_64-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir \ @@ -76,15 +76,15 @@ // RUN: | FileCheck --check-prefixes=RESDIR,NO-LIBPATH,NO-RPATH %s // RESDIR: "-resource-dir" "[[RESDIR:[^"]*]]" - +// // LIBPATH-X86_64: -L[[RESDIR]]{{(/|\\\\)lib(/|\\\\)linux(/|\\\\)x86_64}} // RPATH-X86_64: "-rpath" "[[RESDIR]]{{(/|\\\\)lib(/|\\\\)linux(/|\\\\)x86_64}}" - +// // NO-LIBPATH-X86_64-NOT: -L[[RESDIR]]{{(/|\\\\)lib(/|\\\\)linux(/|\\\\)x86_64}} // NO-RPATH-X86_64-NOT: "-rpath" "[[RESDIR]]{{(/|\\\\)lib(/|\\\\)linux(/|\\\\)x86_64}}" - +// // LIBPATH-AARCH64: -L[[RESDIR]]{{(/|\\\\)lib(/|\\\\)linux(/|\\\\)aarch64}} // RPATH-AARCH64: "-rpath" "[[RESDIR]]{{(/|\\\\)lib(/|\\\\)linux(/|\\\\)aarch64}}" - +// // NO-LIBPATH-NOT: "-L{{[^"]*Inputs(/|\\\\)resource_dir}}" // NO-RPATH-NOT: "-rpath" {{.*(/|\\\\)Inputs(/|\\\\)resource_dir}} diff --git a/clang/test/Driver/arch-specific-libdir.c b/clang/test/Driver/arch-specific-libdir.c index 087d7a0da90ea3..519236858b02a6 100644 --- a/clang/test/Driver/arch-specific-libdir.c +++ b/clang/test/Driver/arch-specific-libdir.c @@ -1,53 +1,53 @@ // Test that the driver adds an arch-specific subdirectory in // {RESOURCE_DIR}/lib/linux to the search path. - +// // RUN: %clang %s -### 2>&1 -target i386-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: | FileCheck --check-prefixes=FILEPATH,ARCHDIR-i386 %s - +// // RUN: %clang %s -### 2>&1 -target i386-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefixes=FILEPATH,NO-ARCHDIR %s - +// // RUN: %clang %s -### 2>&1 -target i686-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: | FileCheck --check-prefixes=FILEPATH,ARCHDIR-i386 %s - +// // RUN: %clang %s -### 2>&1 -target i686-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefixes=FILEPATH,NO-ARCHDIR %s - +// // RUN: %clang %s -### 2>&1 -target x86_64-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: | FileCheck --check-prefixes=FILEPATH,ARCHDIR-x86_64 %s - +// // RUN: %clang %s -### 2>&1 -target x86_64-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefixes=FILEPATH,NO-ARCHDIR %s - +// // RUN: %clang %s -### 2>&1 -target arm-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: | FileCheck --check-prefixes=FILEPATH,ARCHDIR-arm %s - +// // RUN: %clang %s -### 2>&1 -target arm-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefixes=FILEPATH,NO-ARCHDIR %s - +// // RUN: %clang %s -### 2>&1 -target aarch64-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ // RUN: | FileCheck --check-prefixes=FILEPATH,ARCHDIR-aarch64 %s - +// // RUN: %clang %s -### 2>&1 -target aarch64-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefixes=FILEPATH,NO-ARCHDIR %s - - +// +// // FILEPATH: "-x" "c" "[[FILE_PATH:.*]]{{(/|\\\\).*}}.c" // ARCHDIR-i386: -L[[FILE_PATH]]{{(/|\\\\)Inputs(/|\\\\)resource_dir_with_arch_subdir(/|\\\\)lib(/|\\\\)linux(/|\\\\)i386}} // ARCHDIR-x86_64: -L[[FILE_PATH]]{{(/|\\\\)Inputs(/|\\\\)resource_dir_with_arch_subdir(/|\\\\)lib(/|\\\\)linux(/|\\\\)x86_64}} // ARCHDIR-arm: -L[[FILE_PATH]]{{(/|\\\\)Inputs(/|\\\\)resource_dir_with_arch_subdir(/|\\\\)lib(/|\\\\)linux(/|\\\\)arm}} // ARCHDIR-aarch64: -L[[FILE_PATH]]{{(/|\\\\)Inputs(/|\\\\)resource_dir_with_arch_subdir(/|\\\\)lib(/|\\\\)linux(/|\\\\)aarch64}} - +// // Have a stricter check for no-archdir - that the driver doesn't add any // subdirectory from the provided resource directory. // NO-ARCHDIR-NOT: -L[[FILE_PATH]]/Inputs/resource_dir diff --git a/clang/test/Driver/arm-cmse-cve-2021-35465.c b/clang/test/Driver/arm-cmse-cve-2021-35465.c index 17c2460dc9c45b..8a28085dbd17ee 100644 --- a/clang/test/Driver/arm-cmse-cve-2021-35465.c +++ b/clang/test/Driver/arm-cmse-cve-2021-35465.c @@ -1,45 +1,45 @@ // Disable the fix - +// // RUN: %clang --target=arm-arm-none-eabi -march=armv8-m.main %s -### \ // RUN: -mcmse -mno-fix-cmse-cve-2021-35465 2>&1 |\ // RUN: FileCheck %s --check-prefix=CHECK-NOFIX - +// // RUN: %clang --target=arm-arm-none-eabi -march=armv8.1-m.main %s -### \ // RUN: -mcmse -mno-fix-cmse-cve-2021-35465 2>&1 |\ // RUN: FileCheck %s --check-prefix=CHECK-NOFIX - +// // RUN: %clang --target=arm-arm-none-eabi -march=armv8-m.main %s -### \ // RUN: -mcmse -mfix-cmse-cve-2021-35465 -mno-fix-cmse-cve-2021-35465 2>&1 |\ // RUN: FileCheck %s --check-prefix=CHECK-NOFIX - +// // CHECK-NOFIX: "-target-feature" "-fix-cmse-cve-2021-35465" // Enable the fix - +// // RUN: %clang --target=arm-arm-none-eabi -march=armv8-m.main %s -### \ // RUN: -mcmse -mfix-cmse-cve-2021-35465 2>&1 |\ // RUN: FileCheck %s --check-prefix=CHECK-FIX - +// // RUN: %clang --target=arm-arm-none-eabi -march=armv8.1-m.main %s -### \ // RUN: -mcmse -mfix-cmse-cve-2021-35465 2>&1 |\ // RUN: FileCheck %s --check-prefix=CHECK-FIX - +// // RUN: %clang --target=arm-arm-none-eabi -march=armv8-m.main %s -### \ // RUN: -mcmse -mno-fix-cmse-cve-2021-35465 -mfix-cmse-cve-2021-35465 2>&1 |\ // RUN: FileCheck %s --check-prefix=CHECK-FIX - +// // CHECK-FIX: "-target-feature" "+fix-cmse-cve-2021-35465" // Diagnose the option when used without -mcmse - +// // RUN: %clang --target=arm-arm-none-eabi -march=armv8-m.main %s -### \ // RUN: -mfix-cmse-cve-2021-35465 2>&1 |\ // RUN: FileCheck %s --check-prefix=CHECK-DIAG - +// // RUN: %clang --target=arm-arm-none-eabi -march=armv8.1-m.main %s -### \ // RUN: -mno-fix-cmse-cve-2021-35465 2>&1 |\ // RUN: FileCheck %s --check-prefix=CHECK-DIAG - +// // CHECK-DIAG: error: option 'm{{.*}}fix-cmse-cve-2021-35465' cannot be specified without '-mcmse' diff --git a/clang/test/Driver/arm-cortex-cpus-1.c b/clang/test/Driver/arm-cortex-cpus-1.c index 750ceeabcd9f51..7b6c203b53b808 100644 --- a/clang/test/Driver/arm-cortex-cpus-1.c +++ b/clang/test/Driver/arm-cortex-cpus-1.c @@ -2,7 +2,7 @@ // across multiple files, to avoid excessive test times for large single // test files. // TODO: The files should be split up by categories, e.g. by architecture versions. - +// // ================== Check default CPU on each major architecture // RUN: %clang -target arm -mcpu=generic -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-GENERIC %s // CHECK-GENERIC: "-cc1"{{.*}} "-triple" "armv4t-{{.*}} "-target-cpu" "generic" diff --git a/clang/test/Driver/arm-cortex-cpus-2.c b/clang/test/Driver/arm-cortex-cpus-2.c index 1218c0bb2bd63a..beb3dbc3749b72 100644 --- a/clang/test/Driver/arm-cortex-cpus-2.c +++ b/clang/test/Driver/arm-cortex-cpus-2.c @@ -2,7 +2,7 @@ // multiple files, to avoid excessive test times for large single // test files. // TODO: The files should be split up by categories, e.g. by architecture versions. - +// // Once we have CPUs with optional v8.2-A FP16, we will need a way to turn it // on and off. Cortex-A53 is a placeholder for now. // RUN: %clang -target armv8a-linux-eabi -mcpu=cortex-a53+fp16 -### -c %s 2>&1 | FileCheck --check-prefix CHECK-CORTEX-A53-FP16 %s @@ -328,7 +328,7 @@ // RUN: %clang -target arm -mcpu=cortex-a57 -mlittle-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A %s // RUN: %clang -target arm -mcpu=cortex-a72 -mlittle-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A %s // RUN: %clang -target arm -mcpu=cortex-a73 -mlittle-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A %s - +// // RUN: %clang -target arm -mcpu=exynos-m3 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A %s // RUN: %clang -target arm -mcpu=exynos-m3 -mlittle-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A %s // CHECK-CPUV8A: "-cc1"{{.*}} "-triple" "armv8- @@ -343,7 +343,7 @@ // RUN: %clang -target arm -mcpu=cortex-a76 -mlittle-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A %s // RUN: %clang -target arm -mcpu=cortex-a76ae -mlittle-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A %s // RUN: %clang -target arm -mcpu=cortex-a77 -mlittle-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A %s - +// // RUN: %clang -target arm -mcpu=exynos-m4 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A %s // RUN: %clang -target arm -mcpu=exynos-m4 -mlittle-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A %s // RUN: %clang -target arm -mcpu=exynos-m5 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A %s @@ -362,7 +362,7 @@ // RUN: %clang -target arm -mcpu=cortex-a57 -mbig-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A %s // RUN: %clang -target arm -mcpu=cortex-a72 -mbig-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A %s // RUN: %clang -target arm -mcpu=cortex-a73 -mbig-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A %s - +// // RUN: %clang -target armeb -mcpu=exynos-m3 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A %s // RUN: %clang -target arm -mcpu=exynos-m3 -mbig-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A %s // CHECK-BE-CPUV8A: "-cc1"{{.*}} "-triple" "armebv8- @@ -377,7 +377,7 @@ // RUN: %clang -target arm -mcpu=cortex-a76 -mbig-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A %s // RUN: %clang -target arm -mcpu=cortex-a76ae -mbig-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A %s // RUN: %clang -target arm -mcpu=cortex-a77 -mbig-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A %s - +// // RUN: %clang -target armeb -mcpu=exynos-m4 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A %s // RUN: %clang -target arm -mcpu=exynos-m4 -mbig-endian -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A %s // RUN: %clang -target armeb -mcpu=exynos-m5 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A %s @@ -399,7 +399,7 @@ // RUN: %clang -target arm -mcpu=cortex-a57 -mlittle-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A-THUMB %s // RUN: %clang -target arm -mcpu=cortex-a72 -mlittle-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A-THUMB %s // RUN: %clang -target arm -mcpu=cortex-a73 -mlittle-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A-THUMB %s - +// // RUN: %clang -target arm -mcpu=exynos-m3 -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A-THUMB %s // RUN: %clang -target arm -mcpu=exynos-m3 -mlittle-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV8A-THUMB %s // CHECK-CPUV8A-THUMB: "-cc1"{{.*}} "-triple" "thumbv8- @@ -414,7 +414,7 @@ // RUN: %clang -target arm -mcpu=cortex-a76 -mlittle-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A-THUMB %s // RUN: %clang -target arm -mcpu=cortex-a76ae -mlittle-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A-THUMB %s // RUN: %clang -target arm -mcpu=cortex-a77 -mlittle-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A-THUMB %s - +// // RUN: %clang -target arm -mcpu=exynos-m4 -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A-THUMB %s // RUN: %clang -target arm -mcpu=exynos-m4 -mlittle-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A-THUMB %s // RUN: %clang -target arm -mcpu=exynos-m5 -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CPUV82A-THUMB %s @@ -433,7 +433,7 @@ // RUN: %clang -target arm -mcpu=cortex-a57 -mbig-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A-THUMB %s // RUN: %clang -target arm -mcpu=cortex-a72 -mbig-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A-THUMB %s // RUN: %clang -target arm -mcpu=cortex-a73 -mbig-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A-THUMB %s - +// // RUN: %clang -target armeb -mcpu=exynos-m3 -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A-THUMB %s // RUN: %clang -target arm -mcpu=exynos-m3 -mbig-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV8A-THUMB %s // CHECK-BE-CPUV8A-THUMB: "-cc1"{{.*}} "-triple" "thumbebv8- @@ -448,7 +448,7 @@ // RUN: %clang -target arm -mcpu=cortex-a76 -mbig-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A-THUMB %s // RUN: %clang -target arm -mcpu=cortex-a76ae -mbig-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A-THUMB %s // RUN: %clang -target arm -mcpu=cortex-a77 -mbig-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A-THUMB %s - +// // RUN: %clang -target armeb -mcpu=exynos-m4 -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A-THUMB %s // RUN: %clang -target arm -mcpu=exynos-m4 -mbig-endian -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A-THUMB %s // RUN: %clang -target armeb -mcpu=exynos-m5 -mthumb -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-BE-CPUV82A-THUMB %s diff --git a/clang/test/Driver/arm-features.c b/clang/test/Driver/arm-features.c index 2bedb31b381326..c07a36ca57dab6 100644 --- a/clang/test/Driver/arm-features.c +++ b/clang/test/Driver/arm-features.c @@ -19,19 +19,19 @@ // CHECK-NODSP: "-cc1"{{.*}} "-triple" "thumbv8m.main-{{.*}} "-target-cpu" "generic"{{.*}} "-target-feature" "-dsp" // Check that crypto means sha2 + aes: - +// // Check +sha2 +aes: - +// // RUN: %clang -target arm-arm-none-eabi -march=armv8.2a+sha2+aes -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-SHA2-AES %s // CHECK-SHA2-AES: "-cc1"{{.*}} "-triple" "armv8.2a-{{.*}} "-target-cpu" "generic"{{.*}} "-target-feature" "+sha2" "-target-feature" "+aes" - +// // Check -sha2 -aes: - +// // RUN: %clang -target arm-arm-none-eabi -march=armv8.2a+sha2+nosha2+aes+noaes -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NO-SHA2-AES %s // CHECK-NO-SHA2-AES: "-cc1"{{.*}} "-triple" "armv8.2a-{{.*}} "-target-cpu" "generic"{{.*}} "-target-feature" "-sha2" "-target-feature" "-aes" - +// // Check +crypto: - +// // RUN: %clang -target arm-arm-none-eabi -march=armv8a+crypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO2 %s // RUN: %clang -target arm-arm-none-eabi -march=armv8.1a+crypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO2 %s // RUN: %clang -target arm-arm-none-eabi -march=armv8.2a+crypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO2 %s @@ -39,40 +39,40 @@ // RUN: %clang -target arm-arm-none-eabi -march=armv8.4a+crypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO2 %s // RUN: %clang -target arm-arm-none-eabi -march=armv8.5a+crypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO2 %s // CHECK-CRYPTO2: "-cc1"{{.*}} "-target-cpu" "generic"{{.*}} "-target-feature" "+sha2" "-target-feature" "+aes" - +// // Check -crypto: - +// // RUN: %clang -target arm-arm-none-eabi -march=armv8.1a+nocrypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NOCRYPTO2 %s // RUN: %clang -target arm-arm-none-eabi -march=armv8.2a+nocrypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NOCRYPTO2 %s // RUN: %clang -target arm-arm-none-eabi -march=armv8.3a+nocrypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NOCRYPTO2 %s // RUN: %clang -target arm-arm-none-eabi -march=armv8.4a+nocrypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NOCRYPTO2 %s // RUN: %clang -target arm-arm-none-eabi -march=armv8.5a+nocrypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NOCRYPTO2 %s // CHECK-NOCRYPTO2: "-cc1"{{.*}} "-target-cpu" "generic"{{.*}} "-target-feature" "-sha2" "-target-feature" "-aes" - +// // RUN: %clang -target arm-arm-none-eabi -mcpu=cortex-a57+crypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO2-CPU %s // RUN: %clang -target arm-arm-none-eabi -mcpu=cortex-a57 -mfpu=crypto-neon-fp-armv8 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO2-CPU %s // CHECK-CRYPTO2-CPU: "-cc1"{{.*}} "-target-cpu" "cortex-a57"{{.*}} "-target-feature" "+sha2" "-target-feature" "+aes" - +// // RUN: %clang -target arm-arm-none-eabi -mcpu=cortex-a57+nocrypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NOCRYPTO2-CPU %s // RUN: %clang -target arm-arm-none-eabi -mcpu=cortex-a57 -mfpu=neon-fp-armv8 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NOCRYPTO2-CPU %s // CHECK-NOCRYPTO2-CPU: "-cc1"{{.*}} "-target-cpu" "cortex-a57"{{.*}} "-target-feature" "-sha2" "-target-feature" "-aes" - +// // Check +crypto -sha2 -aes: - +// // RUN: %clang -target arm-arm-none-eabi -march=armv8.1a+crypto+nosha2+noaes -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO3 %s // RUN: %clang -target arm-arm-none-eabi -mcpu=cortex-a57+crypto+nosha2+noaes -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO3 %s // RUN: %clang -target arm-arm-none-eabi -mcpu=cortex-a57+nosha2+noaes -mfpu=crypto-neon-fp-armv8 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO3 %s // CHECK-CRYPTO3: "-target-feature" "-sha2" "-target-feature" "-aes" - +// // Check -crypto +sha2 +aes: - +// // RUN: %clang -target arm-arm-none-eabi -march=armv8.1a+nocrypto+sha2+aes -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO4 %s // RUN: %clang -target arm-arm-none-eabi -mcpu=cortex-a57+nocrypto+sha2+aes -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO4 %s // RUN: %clang -target arm-arm-none-eabi -mcpu=cortex-a57+sha2+aes -mfpu=neon-fp-armv8 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO4 %s // CHECK-CRYPTO4: "-target-feature" "+sha2" "-target-feature" "+aes" - +// // Check +crypto for M and R profiles: - +// // RUN: %clang -target arm-arm-none-eabi -march=armv8-r+crypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-CRYPTO-R %s // CHECK-CRYPTO-R: "-cc1"{{.*}} "-target-cpu" "cortex-r52"{{.*}} "-target-feature" "+sha2" "-target-feature" "+aes" // RUN: %clang -target arm-arm-none-eabi -march=armv8-m.base+crypto -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NOCRYPTO5 %s @@ -81,7 +81,7 @@ // CHECK-NOCRYPTO5: warning: ignoring extension 'sha2' because the {{.*}} architecture does not support it // CHECK-NOCRYPTO5: warning: ignoring extension 'aes' because the {{.*}} architecture does not support it // CHECK-NOCRYPTO5: "-target-feature" "-sha2" "-target-feature" "-aes" - +// // Check +crypto does not affect -march=armv7a -mfpu=crypto-neon-fp-armv8, but it does warn that +crypto has no effect // RUN: %clang -target arm-none-none-eabi -fno-integrated-as -march=armv7a -mfpu=crypto-neon-fp-armv8 -### -c %s 2>&1 | FileCheck -check-prefixes=CHECK-WARNSHA,CHECK-WARNAES,CHECK-HASSHA,CHECK-HASAES %s // RUN: %clang -target arm-none-none-eabi -fno-integrated-as -march=armv7a+aes -mfpu=crypto-neon-fp-armv8 -### -c %s 2>&1 | FileCheck -check-prefixes=CHECK-WARNSHA,CHECK-WARNAES,CHECK-HASSHA,CHECK-HASAES %s @@ -96,4 +96,4 @@ // CHECK-HASAES-DAG: "-target-feature" "+aes" // CHECK-NOSHA-DAG: "-target-feature" "-sha2" // CHECK-NOAES-DAG: "-target-feature" "-aes" - +// diff --git a/clang/test/Driver/arm-fix-cortex-a57-aes-1742098.c b/clang/test/Driver/arm-fix-cortex-a57-aes-1742098.c index 2c4b898bd6798f..84e43cb55b4336 100644 --- a/clang/test/Driver/arm-fix-cortex-a57-aes-1742098.c +++ b/clang/test/Driver/arm-fix-cortex-a57-aes-1742098.c @@ -10,11 +10,11 @@ // This test checks that "-m(no-)fix-cortex-a57-aes-1742098" and // "-m(no-)fix-cortex-a72-aes-1655431" cause the "fix-cortex-a57-aes-1742098" // target feature to be passed to `clang -cc1`. - +// // This feature is also enabled in the backend for the two affected CPUs and the // "generic" cpu (used when only specifying -march), but that won't show up on // the `clang -cc1` command line. - +// // We do not check whether this option is correctly specified for the CPU: users // can specify the "-mfix-cortex-a57-aes-1742098" option with "-mcpu=cortex-a72" // and vice-versa, and will still get the fix, as the target feature and the fix diff --git a/clang/test/Driver/arm-target-as-march-mcpu.s b/clang/test/Driver/arm-target-as-march-mcpu.s index 634ab4d66c57fd..186b3a497e0b4d 100644 --- a/clang/test/Driver/arm-target-as-march-mcpu.s +++ b/clang/test/Driver/arm-target-as-march-mcpu.s @@ -2,7 +2,7 @@ /// via -Wa or -Xassembler are applied correctly to assembler inputs. /// Also we check that the same priority rules apply to compiler and /// assembler options. -/ +/// /// Note that the cortex-a8 is armv7-a, the cortex-a32 is armv8-a /// and clang's default Arm architecture is armv4t. diff --git a/clang/test/Driver/arm-thumb-only-cores.c b/clang/test/Driver/arm-thumb-only-cores.c index 075aeefa964875..dbc3a47afcbdc0 100644 --- a/clang/test/Driver/arm-thumb-only-cores.c +++ b/clang/test/Driver/arm-thumb-only-cores.c @@ -7,6 +7,6 @@ // RUN: not %clang -target armv7m-unknown-linux -mno-thumb %s -o /dev/null 2>&1 \ // RUN: | FileCheck --check-prefix ARMV7M %s // ARMV7M: error: architecture 'armv7m' does not support 'ARM' execution mode - +// // RUN: %clang -S -emit-llvm -target arm-unknown-linux -mcpu=cortex-m0 %s -o /dev/null 2>&1 // M-Profile CPUs default to Thumb mode even if arm triples are provided. diff --git a/clang/test/Driver/arm64-as.s b/clang/test/Driver/arm64-as.s index 58254b7950dee6..956ea938ee03a0 100644 --- a/clang/test/Driver/arm64-as.s +++ b/clang/test/Driver/arm64-as.s @@ -1,5 +1,5 @@ // Make sure the arm64 default on cyclone when compiling for apple. // RUN: %clang -target arm64-apple-ios -arch arm64 -### -c %s 2>&1 | FileCheck -check-prefix=TARGET %s - +// // TARGET: "-cc1as" // TARGET: "-target-cpu" "apple-a7" diff --git a/clang/test/Driver/arm64-markbti.S b/clang/test/Driver/arm64-markbti.S index 2ef1836eaff37a..8eeed74810d279 100644 --- a/clang/test/Driver/arm64-markbti.S +++ b/clang/test/Driver/arm64-markbti.S @@ -5,7 +5,7 @@ // RUN: %clang -target arm64-linux-none -DNOTE_PRESENT -c %s -o - | llvm-readobj -n - | FileCheck -check-prefix=CHECK -check-prefix=CHECK_PRESET %s // RUN: %clang -target arm64-linux-none -mmark-bti-property -DNOTE_PRESENT -c %s -o - | llvm-readobj -n - | FileCheck -check-prefix=CHECK -check-prefix=CHECK_PRESET %s // RUN: %clang -target arm64-linux-none -mmark-bti-property -DNOTE_PRESENT -c %s -o - 2>&1 | FileCheck -check-prefix=CHECK_WARNING %s - +// // CHECK_WARNING: The .note.gnu.property is not emitted because it is already present. // CHECK: Name: .note.gnu.property // CHECK: Type: NT_GNU_PROPERTY_TYPE_0 diff --git a/clang/test/Driver/attr-availability-fuchsia.c b/clang/test/Driver/attr-availability-fuchsia.c index 1b29a308a02b72..c59a4f176c78e8 100644 --- a/clang/test/Driver/attr-availability-fuchsia.c +++ b/clang/test/Driver/attr-availability-fuchsia.c @@ -12,7 +12,7 @@ // Check Fuchsia API level macro. // RUN: %clang -target x86_64-unknown-fuchsia -ffuchsia-api-level=15 -c %s -o %t // RUN: llvm-readobj --symbols %t | FileCheck %s --check-prefix=CHECK-F15 - +// // RUN: %clang -target x86_64-unknown-fuchsia -ffuchsia-api-level=16 -c %s -o %t // RUN: llvm-readobj --symbols %t | FileCheck %s --check-prefix=CHECK-F16 diff --git a/clang/test/Driver/autocomplete.c b/clang/test/Driver/autocomplete.c index 4fd52e373271a1..59055efac2cea1 100644 --- a/clang/test/Driver/autocomplete.c +++ b/clang/test/Driver/autocomplete.c @@ -119,7 +119,7 @@ // ANALYZER: unix.Malloc // RUN: %clang --autocomplete=-std= | FileCheck %s -check-prefix=STDVAL // STDVAL: c99 - +// // Clang shouldn't autocomplete CC1 options unless -cc1 or -Xclang were provided // RUN: %clang --autocomplete=-mrelocation-mode | FileCheck %s -check-prefix=MRELOCMODEL_CLANG // MRELOCMODEL_CLANG-NOT: -mrelocation-model diff --git a/clang/test/Driver/ccc-host-triple-no-integrated-as.c b/clang/test/Driver/ccc-host-triple-no-integrated-as.c index e3a5eee77ba76a..1677b717f70b91 100644 --- a/clang/test/Driver/ccc-host-triple-no-integrated-as.c +++ b/clang/test/Driver/ccc-host-triple-no-integrated-as.c @@ -5,12 +5,12 @@ // RUN: FileCheck -check-prefix=X86 < %t1 %s // RUN: %clang -### -c -target x86_64-pc-win32-macho -no-integrated-as %s 2> %t2 // RUN: FileCheck -check-prefix=X86_64 < %t2 %s - +// // X86: "-cc1" // X86-NOT: "-cc1as" // X86: "-arch" // X86: "i386" - +// // X86_64: "-cc1" // X86_64-NOT: "-cc1as" // X86_64: "-arch" diff --git a/clang/test/Driver/cl-options.c b/clang/test/Driver/cl-options.c index fb2d94ce11f6eb..a2e350a0a8355c 100644 --- a/clang/test/Driver/cl-options.c +++ b/clang/test/Driver/cl-options.c @@ -234,7 +234,7 @@ // /execution-charset: should warn on everything except UTF-8. // RUN: %clang_cl /execution-charset:utf-16 -### -- %s 2>&1 | FileCheck -check-prefix=execution-charset-utf-16 %s // execution-charset-utf-16: invalid value 'utf-16' in '/execution-charset:utf-16' - +// // RUN: %clang_cl /Umymacro -### -- %s 2>&1 | FileCheck -check-prefix=U %s // RUN: %clang_cl /U mymacro -### -- %s 2>&1 | FileCheck -check-prefix=U %s // U: "-U" "mymacro" diff --git a/clang/test/Driver/cl-pch.c b/clang/test/Driver/cl-pch.c index 9b3abc8a6bdc4a..36d83a11242dc6 100644 --- a/clang/test/Driver/cl-pch.c +++ b/clang/test/Driver/cl-pch.c @@ -1,8 +1,8 @@ // REQUIRES: system-windows - +// // RUN: rm -rf %t // RUN: mkdir %t - +// // Note: %s and %S must be preceded by --, otherwise it may be interpreted as a // command-line option, e.g. on Mac where %s is commonly under /Users. diff --git a/clang/test/Driver/cl-x86-flags.c b/clang/test/Driver/cl-x86-flags.c index efa88b73331ed7..51b16f0ce35463 100644 --- a/clang/test/Driver/cl-x86-flags.c +++ b/clang/test/Driver/cl-x86-flags.c @@ -7,7 +7,7 @@ // RUN: %clang_cl /Zs /WX -m32 -m64 -msse3 -msse4.1 -mavx -mno-avx \ // RUN: --target=i386-pc-win32 -### -- 2>&1 %s | FileCheck -check-prefix=MFLAGS %s // MFLAGS-NOT: invalid /arch: argument - +// // RUN: %clang_cl -m32 -arch:IA32 --target=i386-pc-windows /c /Fo%t.obj -Xclang -verify -DTEST_32_ARCH_IA32 -- %s #if defined(TEST_32_ARCH_IA32) diff --git a/clang/test/Driver/clang-c-as-cxx.c b/clang/test/Driver/clang-c-as-cxx.c index 1bd8b5d57d1f51..0e2817888d68f8 100644 --- a/clang/test/Driver/clang-c-as-cxx.c +++ b/clang/test/Driver/clang-c-as-cxx.c @@ -1,6 +1,6 @@ // RUN: %clangxx -### %s 2>&1 | FileCheck %s - +// // PR5803 - +// // CHECK: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated // CHECK: "-cc1" {{.*}} "-x" "c++" diff --git a/clang/test/Driver/clang-exception-flags.cpp b/clang/test/Driver/clang-exception-flags.cpp index 5fb0f3fc7ed99a..af63a0ab03be21 100644 --- a/clang/test/Driver/clang-exception-flags.cpp +++ b/clang/test/Driver/clang-exception-flags.cpp @@ -2,28 +2,28 @@ // exception handling is target dependent. // RUN: %clang -### -target unknown %s 2>&1 | FileCheck %s -check-prefix=DEFAULT // DEFAULT: "-cc1" {{.*}} "-fcxx-exceptions" "-fexceptions" - +// // RUN: %clang -### -fexceptions %s 2>&1 | FileCheck %s -check-prefix=ON1 // ON1: "-cc1" {{.*}} "-fcxx-exceptions" "-fexceptions" - +// // RUN: %clang -### -fno-exceptions -fcxx-exceptions %s 2>&1 | FileCheck %s -check-prefix=ON2 // ON2: "-cc1" {{.*}} "-fcxx-exceptions" "-fexceptions" - +// // RUN: %clang -### -fno-cxx-exceptions -fexceptions %s 2>&1 | FileCheck %s -check-prefix=ON3 // ON3: "-cc1" {{.*}} "-fcxx-exceptions" "-fexceptions" - +// // RUN: %clang -### -fno-exceptions %s 2>&1 | FileCheck %s -check-prefix=OFF1 // OFF1-NOT: "-cc1" {{.*}} "-fcxx-exceptions" - +// // RUN: %clang -### -fno-cxx-exceptions %s 2>&1 | FileCheck %s -check-prefix=OFF2 // OFF2-NOT: "-cc1" {{.*}} "-fcxx-exceptions" - +// // RUN: %clang -### -fcxx-exceptions -fno-exceptions %s 2>&1 | FileCheck %s -check-prefix=OFF3 // OFF3-NOT: "-cc1" {{.*}} "-fcxx-exceptions" - +// // RUN: %clang -### -fexceptions -fno-cxx-exceptions %s 2>&1 | FileCheck %s -check-prefix=OFF4 // OFF4-NOT: "-cc1" {{.*}} "-fcxx-exceptions" - +// // RUN: %clang -### -target x86_64-scei-ps4 %s 2>&1 | FileCheck %s -check-prefix=PS-OFF // RUN: %clang -### -target x86_64-sie-ps5 %s 2>&1 | FileCheck %s -check-prefix=PS-OFF // PS-OFF-NOT: "-cc1" {{.*}} "-f{{(cxx-)?}}exceptions" diff --git a/clang/test/Driver/clang-g-opts.c b/clang/test/Driver/clang-g-opts.c index 016b63aa3e1a07..d982b1070cae11 100644 --- a/clang/test/Driver/clang-g-opts.c +++ b/clang/test/Driver/clang-g-opts.c @@ -18,7 +18,7 @@ // These should be semantically the same as not having given 'g0' at all, // as the last 'g' option wins. - +// // RUN: %clang -### -S %s -g0 -g -target x86_64-linux-gnu 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-WITH-G %s // RUN: %clang -### -S %s -g0 -g -target x86_64-apple-darwin8 2>&1 \ diff --git a/clang/test/Driver/clang-offload-bundler-asserts-on.c b/clang/test/Driver/clang-offload-bundler-asserts-on.c index f840d34c8cab32..3a913ddac8f8b1 100644 --- a/clang/test/Driver/clang-offload-bundler-asserts-on.c +++ b/clang/test/Driver/clang-offload-bundler-asserts-on.c @@ -5,15 +5,15 @@ // Generate the file we can bundle. // RUN: %clang -O0 -target %itanium_abi_triple %s -c -o %t.o - +// // Generate a couple of files to bundle with. - +// // RUN: echo 'Content of device file 1' > %t.tgt1 // RUN: echo 'Content of device file 2' > %t.tgt2 - +// // Check code object compatibility for archive unbundling - +// // Create few code object bundles and archive them to create an input archive // RUN: clang-offload-bundler -type=o -targets=host-%itanium_abi_triple,openmp-amdgcn-amd-amdhsa-gfx906,openmp-amdgcn-amd-amdhsa--gfx908 -input=%t.o -input=%t.tgt1 -input=%t.tgt2 -output=%t.simple.bundle // RUN: clang-offload-bundler -type=o -targets=host-%itanium_abi_triple,openmp-amdgcn-amd-amdhsa--gfx903 -input=%t.o -input=%t.tgt1 -output=%t.simple1.bundle diff --git a/clang/test/Driver/clang-offload-bundler.c b/clang/test/Driver/clang-offload-bundler.c index 609da546e577ce..555029bd838ffa 100644 --- a/clang/test/Driver/clang-offload-bundler.c +++ b/clang/test/Driver/clang-offload-bundler.c @@ -2,9 +2,9 @@ // REQUIRES: powerpc-registered-target // UNSUPPORTED: darwin, aix - +// // Generate all the types of files we can bundle. - +// // RUN: %clang -O0 -target %itanium_abi_triple %s -E -o %t.i // RUN: %clangxx -O0 -target %itanium_abi_triple -x c++ %s -E -o %t.ii // RUN: %clang -O0 -target %itanium_abi_triple %s -S -emit-llvm -o %t.ll @@ -13,20 +13,20 @@ // RUN: %clang -O0 -target %itanium_abi_triple %s -c -o %t.o // RUN: %clang -O0 -target %itanium_abi_triple %s -emit-ast -o %t.ast - +// // Generate an empty file to help with the checks of empty files. - +// // RUN: touch %t.empty - +// // Generate a couple of files to bundle with. - +// // RUN: echo 'Content of device file 1' > %t.tgt1 // RUN: echo 'Content of device file 2' > %t.tgt2 - +// // Check help message. - +// // RUN: clang-offload-bundler --help | FileCheck %s --check-prefix CK-HELP // CK-HELP: {{.*}}OVERVIEW: A tool to bundle several input files of the specified type // CK-HELP: {{.*}}referring to the same source file but different targets into a single @@ -56,9 +56,9 @@ // CK-HELP: {{.*}}ast {{.*}}- clang AST file // CK-HELP: {{.*}}-unbundle {{.*}}- Unbundle bundled file into several output files. - +// // Check errors. - +// // RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.i -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle.i -unbundle 2>&1 | FileCheck %s --check-prefix CK-ERR1 // CK-ERR1: error: only one input file supported in unbundling mode @@ -118,9 +118,9 @@ // RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu -output=%t.i -outputs=%t.tgt1,%t.tgt2 -input=%t.bundle.i -unbundle 2>&1 | FileCheck %s --check-prefix CK-ERR11B // CK-ERR11B: error: -outputs and -output cannot be used together, use only -output instead - +// // Check text bundle. This is a readable format, so we check for the format we expect to find. - +// // RUN: clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.i -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.i // RUN: clang-offload-bundler -type=ii -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.ii -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.ii // RUN: clang-offload-bundler -type=ll -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.ll -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.ll @@ -176,9 +176,9 @@ // CK-TEXTS-UNORDERED: Content of device file 2 // CK-TEXTS-UNORDERED: # __CLANG_OFFLOAD_BUNDLE____END__ openmp-x86_64-pc-linux-gnu - +// // Check text unbundle. Check if we get the exact same content that we bundled before for each file. - +// // RUN: clang-offload-bundler -type=i -input=%t.bundle3.i -list | FileCheck -check-prefix=CKLST %s // RUN: clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -output=%t.res.i -output=%t.res.tgt1 -output=%t.res.tgt2 -input=%t.bundle3.i -unbundle // RUN: diff %t.i %t.res.i @@ -227,9 +227,9 @@ // RUN: not clang-offload-bundler -type=s -targets=host-x86_64-xxx-linux-gnu,openmp-powerpc64le-ibm-linux-gnu -output=%t.res.s -output=%t.res.tgt1 -input=%t.bundle3.s -unbundle -allow-missing-bundles 2>&1 | FileCheck %s --check-prefix CK-NO-HOST-BUNDLE // CK-NO-HOST-BUNDLE: error: Can't find bundle for the host target - +// // Check binary bundle/unbundle. The content that we have before bundling must be the same we have after unbundling. - +// // RUN: clang-offload-bundler -type=bc -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.bc -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.bc // RUN: clang-offload-bundler -type=gch -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.ast -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.gch // RUN: clang-offload-bundler -type=ast -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.ast -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.ast @@ -284,13 +284,13 @@ // RUN: diff %t.ast %t.res.ast // RUN: diff %t.tgt2 %t.res.tgt2 - +// // Check object bundle/unbundle. The content should be bundled into an ELF // section (we are using a PowerPC little-endian host which uses ELF). We // have an already bundled file to check the unbundle and do a dry run on the // bundling as it cannot be tested in all host platforms that will run these // tests. - +// // RUN: clang-offload-bundler -type=o -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.o -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.o -### 2>&1 \ // RUN: | FileCheck %s -DHOST=%itanium_abi_triple -DINOBJ1=%t.o -DINOBJ2=%t.tgt1 -DINOBJ3=%t.tgt2 -DOUTOBJ=%t.bundle3.o --check-prefix CK-OBJ-CMD @@ -324,9 +324,9 @@ // RUN: diff %t.empty %t.res.tgt1 // RUN: diff %t.empty %t.res.tgt2 - +// // Check -bundle-align option - +// // RUN: clang-offload-bundler -bundle-align=4096 -type=bc -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.bc -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.bc // RUN: clang-offload-bundler -type=bc -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -output=%t.res.bc -output=%t.res.tgt1 -output=%t.res.tgt2 -input=%t.bundle3.bc -unbundle @@ -334,9 +334,9 @@ // RUN: diff %t.tgt1 %t.res.tgt1 // RUN: diff %t.tgt2 %t.res.tgt2 - +// // Check error due to missing bundles - +// // RUN: clang-offload-bundler -type=bc -targets=host-%itanium_abi_triple,hip-amdgcn-amd-amdhsa--gfx900 -input=%t.bc -input=%t.tgt1 -output=%t.hip.bundle.bc // RUN: not clang-offload-bundler -type=bc -input=%t.hip.bundle.bc -output=%t.tmp.bc -unbundle \ // RUN: -targets=hip-amdgcn-amd-amdhsa--gfx906 \ @@ -354,18 +354,18 @@ // RUN: 2>&1 | FileCheck -check-prefix=MISS3 %s // MISS3: error: Can't find bundles for hip-amdgcn-amd-amdhsa--gfx1010, hip-amdgcn-amd-amdhsa--gfx803, and hip-amdgcn-amd-amdhsa--gfx906 - +// // Check error due to duplicate targets - +// // RUN: not clang-offload-bundler -type=bc -targets=host-%itanium_abi_triple,hip-amdgcn-amd-amdhsa--gfx900,hip-amdgcn-amd-amdhsa--gfx900 \ // RUN: -input=%t.bc -input=%t.tgt1 -input=%t.tgt1 -output=%t.hip.bundle.bc 2>&1 | FileCheck -check-prefix=DUP %s // RUN: not clang-offload-bundler -type=bc -input=%t.hip.bundle.bc -output=%t.tmp.bc -output=%t.tmp2.bc -unbundle \ // RUN: -targets=hip-amdgcn-amd-amdhsa--gfx906,hip-amdgcn-amd-amdhsa--gfx906 \ // RUN: 2>&1 | FileCheck -check-prefix=DUP %s // DUP: error: Duplicate targets are not allowed - +// // Check -list option - +// // RUN: clang-offload-bundler -bundle-align=4096 -type=bc -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.bc -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle3.bc // RUN: not clang-offload-bundler -type=bc -input=%t.bundle3.bc -unbundle -list 2>&1 | FileCheck -check-prefix=CKLST-ERR %s @@ -385,14 +385,14 @@ // CKLST2-NOT: openmp-powerpc64le-ibm-linux-gnu // CKLST2-NOT: openmp-x86_64-pc-linux-gnu - +// // Check unbundling archive for HIP. - +// // When the input to clang-offload-bundler is an archive of bundled bitcodes, // for each target, clang-offload-bundler extracts the bitcode from each // bundle and archives them. Therefore for each target, the output is an // archive of unbundled bitcodes. - +// // RUN: clang-offload-bundler -type=bc -targets=hip-amdgcn-amd-amdhsa--gfx900,hip-amdgcn-amd-amdhsa--gfx906 \ // RUN: -input=%t.tgt1 -input=%t.tgt2 -output=%T/hip_bundle1.bc // RUN: clang-offload-bundler -type=bc -targets=hip-amdgcn-amd-amdhsa--gfx900,hip-amdgcn-amd-amdhsa--gfx906 \ @@ -407,9 +407,9 @@ // HIP-AR-906-DAG: hip_bundle1-hip-amdgcn-amd-amdhsa--gfx906 // HIP-AR-906-DAG: hip_bundle2-hip-amdgcn-amd-amdhsa--gfx906 - +// // Check bundling without host target is allowed for HIP. - +// // RUN: clang-offload-bundler -type=bc -targets=hip-amdgcn-amd-amdhsa--gfx900,hip-amdgcn-amd-amdhsa--gfx906 \ // RUN: -input=%t.tgt1 -input=%t.tgt2 -output=%t.hip.bundle.bc // RUN: clang-offload-bundler -type=bc -list -input=%t.hip.bundle.bc | FileCheck -check-prefix=NOHOST %s @@ -417,12 +417,12 @@ // RUN: -output=%t.res.tgt1 -output=%t.res.tgt2 -input=%t.hip.bundle.bc -unbundle // RUN: diff %t.tgt1 %t.res.tgt1 // RUN: diff %t.tgt2 %t.res.tgt2 - +// // NOHOST-NOT: host- // NOHOST-DAG: hip-amdgcn-amd-amdhsa--gfx900 // NOHOST-DAG: hip-amdgcn-amd-amdhsa--gfx906 // Check archive unbundling - +// // Create few code object bundles and archive them to create an input archive // RUN: clang-offload-bundler -type=o -targets=host-%itanium_abi_triple,openmp-amdgcn-amd-amdhsa-gfx906,openmp-amdgcn-amd-amdhsa--gfx908 -input=%t.o -input=%t.tgt1 -input=%t.tgt2 -output=%t.simple.bundle // RUN: clang-offload-bundler -type=o -targets=host-%itanium_abi_triple,openmp-amdgcn-amd-amdhsa--gfx903 -input=%t.o -input=%t.tgt1 -output=%t.simple1.bundle diff --git a/clang/test/Driver/clang-offload-wrapper.c b/clang/test/Driver/clang-offload-wrapper.c index 58a4b75c2899e4..edc26e59781d30 100644 --- a/clang/test/Driver/clang-offload-wrapper.c +++ b/clang/test/Driver/clang-offload-wrapper.c @@ -1,8 +1,8 @@ // REQUIRES: x86-registered-target - +// // Check help message. - +// // RUN: clang-offload-wrapper --help | FileCheck %s --check-prefix CHECK-HELP // CHECK-HELP: {{.*}}OVERVIEW: A tool to create a wrapper bitcode for offload target binaries. Takes offload // CHECK-HELP: {{.*}}target binaries as input and produces bitcode file containing target binaries packaged @@ -11,14 +11,14 @@ // CHECK-HELP: {{.*}} -o= - Output filename // CHECK-HELP: {{.*}} --target= - Target triple for the output module - +// // Generate a file to wrap. - +// // RUN: echo 'Content of device file' > %t.tgt - +// // Check bitcode produced by the wrapper tool. - +// // RUN: clang-offload-wrapper -add-omp-offload-notes -target=x86_64-pc-linux-gnu -o %t.wrapper.bc %t.tgt 2>&1 | FileCheck %s --check-prefix ELF-WARNING // RUN: llvm-dis %t.wrapper.bc -o - | FileCheck %s --check-prefix CHECK-IR diff --git a/clang/test/Driver/clang-translation.c b/clang/test/Driver/clang-translation.c index 611b05803f5202..7d24d4c9d51c24 100644 --- a/clang/test/Driver/clang-translation.c +++ b/clang/test/Driver/clang-translation.c @@ -82,18 +82,18 @@ // RUN: %clang -target arm64-apple-ios10 -### -ffreestanding -S %s -arch arm64 2>&1 | \ // RUN: FileCheck -check-prefix=ARM64-FREESTANDING-APPLE %s - +// // RUN: %clang -target arm64-apple-ios10 -### -fno-unwind-tables -ffreestanding -S %s -arch arm64 2>&1 | \ // RUN: FileCheck -check-prefix=ARM64-FREESTANDING-APPLE %s - +// // ARM64-FREESTANDING-APPLE-NOT: -funwind-tables // RUN: %clang -target arm64-apple-ios10 -### -funwind-tables -S %s -arch arm64 2>&1 | \ // RUN: FileCheck -check-prefix=ARM64-EXPLICIT-UWTABLE-APPLE %s - +// // RUN: %clang -target arm64-apple-ios10 -### -ffreestanding -funwind-tables -S %s -arch arm64 2>&1 | \ // RUN: FileCheck -check-prefix=ARM64-EXPLICIT-UWTABLE-APPLE %s - +// // ARM64-EXPLICIT-UWTABLE-APPLE: -funwind-tables // RUN: %clang -target arm64-apple-ios10 -fno-exceptions -### -S %s -arch arm64 2>&1 | \ diff --git a/clang/test/Driver/clang_f_opts.c b/clang/test/Driver/clang_f_opts.c index a760be08c1f11b..d529f9ad5c4855 100644 --- a/clang/test/Driver/clang_f_opts.c +++ b/clang/test/Driver/clang_f_opts.c @@ -58,7 +58,7 @@ // RUN: %clang -### -S -fprofile-sample-use=%S/Inputs/file.prof %s 2>&1 | FileCheck -check-prefix=CHECK-SAMPLE-PROFILE %s // CHECK-SAMPLE-PROFILE: "-fprofile-sample-use={{.*}}/file.prof" - +// // RUN: %clang -### -x cuda -nocudainc -nocudalib \ // RUN: -c -fprofile-sample-use=%S/Inputs/file.prof %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-CUDA-SAMPLE-PROFILE %s @@ -446,7 +446,7 @@ // Test that an ignored optimization argument only prints 1 warning, // not both a warning about not claiming the arg, *and* about not supporting // the arg; and that adding -Wno-ignored-optimization silences the warning. - +// // RUN: %clang -### -fprofile-correction %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-WARNING3 %s // CHECK-NO-WARNING3: optimization flag '-fprofile-correction' is not supported diff --git a/clang/test/Driver/clang_wrapv_opts.c b/clang/test/Driver/clang_wrapv_opts.c index 837db661ca6aaf..826468e0678d0b 100644 --- a/clang/test/Driver/clang_wrapv_opts.c +++ b/clang/test/Driver/clang_wrapv_opts.c @@ -1,11 +1,11 @@ // RUN: %clang -### -S -fwrapv -fno-wrapv -fwrapv %s 2>&1 | FileCheck -check-prefix=CHECK1 %s // CHECK1: -fwrapv - +// // RUN: %clang -### -S -fstrict-overflow -fno-strict-overflow %s 2>&1 | FileCheck -check-prefix=CHECK2 %s // CHECK2: -fwrapv - +// // RUN: %clang -### -S -fwrapv -fstrict-overflow %s 2>&1 | FileCheck -check-prefix=CHECK3 %s // CHECK3: -fwrapv - +// // RUN: %clang -### -S -fno-wrapv -fno-strict-overflow %s 2>&1 | FileCheck -check-prefix=CHECK4 %s // CHECK4-NOT: -fwrapv diff --git a/clang/test/Driver/compilation_database_multiarch.c b/clang/test/Driver/compilation_database_multiarch.c index b6fc45d948485b..1540a8d29ec5cf 100644 --- a/clang/test/Driver/compilation_database_multiarch.c +++ b/clang/test/Driver/compilation_database_multiarch.c @@ -4,7 +4,7 @@ // RUN: %clang -fdriver-only -o %t/out %s -mtargetos=macos12 -arch arm64 -arch x86_64 -MJ %t/compilation_database.json // Let's run that again and verify we're not accumulating redundant entries in the same file. - +// // RUN: %clang -fdriver-only -o %t/out %s -mtargetos=macos12 -arch arm64 -arch x86_64 -MJ %t/compilation_database.json // RUN: echo EOF >> %t/compilation_database.json diff --git a/clang/test/Driver/compiler-rt-unwind.c b/clang/test/Driver/compiler-rt-unwind.c index 66a0dc10d0cebf..85c8db973de881 100644 --- a/clang/test/Driver/compiler-rt-unwind.c +++ b/clang/test/Driver/compiler-rt-unwind.c @@ -1,20 +1,20 @@ // General tests that the driver handles combinations of --rtlib=XXX and // --unwindlib=XXX properly. - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=libgcc --unwindlib=platform \ // RUN: --gcc-toolchain="" -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=RTLIB-GCC %s // RTLIB-GCC: "{{.*}}lgcc" // RTLIB-GCC: "{{.*}}lgcc_s" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=libgcc --unwindlib=libunwind \ // RUN: --gcc-toolchain="" -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=RTLIB-GCC-UNWINDLIB-COMPILER-RT %s // RTLIB-GCC-UNWINDLIB-COMPILER-RT: "{{.*}}lgcc" // RTLIB-GCC-UNWINDLIB-COMPILER-RT: "{{.*}}lunwind" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=libgcc --unwindlib=libunwind \ // RUN: -shared-libgcc \ @@ -22,7 +22,7 @@ // RUN: | FileCheck --check-prefix=RTLIB-GCC-SHARED-UNWINDLIB-COMPILER-RT %s // RTLIB-GCC-SHARED-UNWINDLIB-COMPILER-RT: "{{.*}}l:libunwind.so" // RTLIB-GCC-SHARED-UNWINDLIB-COMPILER-RT: "{{.*}}lgcc" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=libgcc --unwindlib=libunwind \ // RUN: -static-libgcc \ @@ -30,33 +30,33 @@ // RUN: | FileCheck --check-prefix=RTLIB-GCC-STATIC-UNWINDLIB-COMPILER-RT %s // RTLIB-GCC-STATIC-UNWINDLIB-COMPILER-RT: "{{.*}}lgcc" // RTLIB-GCC-STATIC-UNWINDLIB-COMPILER-RT: "{{.*}}l:libunwind.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=compiler-rt \ // RUN: --gcc-toolchain="" -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=RTLIB-COMPILER-RT %s // RTLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins-x86_64.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=compiler-rt --unwindlib=libgcc \ // RUN: --gcc-toolchain="" -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=RTLIB-COMPILER-RT-UNWINDLIB-GCC %s // RTLIB-COMPILER-RT-UNWINDLIB-GCC: "{{.*}}libclang_rt.builtins-x86_64.a" // RTLIB-COMPILER-RT-UNWINDLIB-GCC: "{{.*}}lgcc_s" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=compiler-rt --unwindlib=libgcc \ // RUN: -static --gcc-toolchain="" -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=RTLIB-COMPILER-RT-UNWINDLIB-GCC-STATIC %s // RTLIB-COMPILER-RT-UNWINDLIB-GCC-STATIC: "{{.*}}libclang_rt.builtins-x86_64.a" // RTLIB-COMPILER-RT-UNWINDLIB-GCC-STATIC: "{{.*}}lgcc_eh" - +// // RUN: not %clang %s 2> %t.err \ // RUN: --target=x86_64-unknown-linux -rtlib=libgcc --unwindlib=libunwind \ // RUN: --gcc-toolchain="" -resource-dir=%S/Inputs/resource_dir \ // RUN: FileCheck --input-file=%t.err --check-prefix=RTLIB-GCC-UNWINDLIB-COMPILER_RT %s // RTLIB-GCC-UNWINDLIB-COMPILER_RT: "{{[.|\\\n]*}}--rtlib=libgcc requires --unwindlib=libgcc" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-w64-mingw32 -rtlib=compiler-rt --unwindlib=libunwind \ // RUN: -shared-libgcc \ @@ -64,7 +64,7 @@ // RUN: | FileCheck --check-prefix=MINGW-RTLIB-COMPILER-RT-SHARED-UNWINDLIB-COMPILER-RT %s // MINGW-RTLIB-COMPILER-RT-SHARED-UNWINDLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins-x86_64.a" // MINGW-RTLIB-COMPILER-RT-SHARED-UNWINDLIB-COMPILER-RT: "{{.*}}l:libunwind.dll.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-w64-mingw32 -rtlib=compiler-rt --unwindlib=libunwind \ // RUN: -static-libgcc \ @@ -72,7 +72,7 @@ // RUN: | FileCheck --check-prefix=MINGW-RTLIB-COMPILER-RT-STATIC-UNWINDLIB-COMPILER-RT %s // MINGW-RTLIB-COMPILER-RT-STATIC-UNWINDLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins-x86_64.a" // MINGW-RTLIB-COMPILER-RT-STATIC-UNWINDLIB-COMPILER-RT: "{{.*}}l:libunwind.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-w64-mingw32 -rtlib=compiler-rt --unwindlib=libunwind \ // RUN: --gcc-toolchain="" \ diff --git a/clang/test/Driver/config-file-errs.c b/clang/test/Driver/config-file-errs.c index e6a0dadb66f3e4..8db2ea439298c8 100644 --- a/clang/test/Driver/config-file-errs.c +++ b/clang/test/Driver/config-file-errs.c @@ -1,46 +1,46 @@ //--- No more than one '--config' may be specified. - +// // RUN: not %clang --config 1.cfg --config 2.cfg 2>&1 | FileCheck %s -check-prefix CHECK-DUPLICATE // CHECK-DUPLICATE: no more than one option '--config' is allowed //--- '--config' must be followed by config file name. - +// // RUN: not %clang --config 2>&1 | FileCheck %s -check-prefix CHECK-MISSING-FILE // CHECK-MISSING-FILE: argument to '--config' is missing (expected 1 value) //--- '--config' must not be found in config files. - +// // RUN: not %clang --config %S/Inputs/config-6.cfg 2>&1 | FileCheck %s -check-prefix CHECK-NESTED // CHECK-NESTED: option '--config' is not allowed inside configuration file //--- Argument of '--config' must be existing file, if it is specified by path. - +// // RUN: not %clang --config somewhere/nonexistent-config-file 2>&1 | FileCheck %s -check-prefix CHECK-NONEXISTENT // CHECK-NONEXISTENT: configuration file '{{.*}}somewhere/nonexistent-config-file' does not exist //--- Argument of '--config' must exist somewhere in well-known directories, if it is specified by bare name. - +// // RUN: not %clang --config-system-dir= --config-user-dir= --config nonexistent-config-file 2>&1 | FileCheck %s -check-prefix CHECK-NOTFOUND0 // CHECK-NOTFOUND0: configuration file 'nonexistent-config-file.cfg' cannot be found // CHECK-NOTFOUND0-NEXT: was searched for in the directory: // CHECK-NOTFOUND0-NOT: was searched for in the directory: - +// // RUN: not %clang --config-system-dir= --config-user-dir=%S/Inputs/config2 --config nonexistent-config-file 2>&1 | FileCheck %s -check-prefix CHECK-NOTFOUND1 // CHECK-NOTFOUND1: configuration file 'nonexistent-config-file.cfg' cannot be found // CHECK-NOTFOUND1-NEXT: was searched for in the directory: {{.*}}/Inputs/config2 // CHECK-NOTFOUND1-NEXT: was searched for in the directory: // CHECK-NOTFOUND1-NOT: was searched for in the directory: - +// // RUN: not %clang --config-system-dir=%S/Inputs/config --config-user-dir= --config nonexistent-config-file 2>&1 | FileCheck %s -check-prefix CHECK-NOTFOUND2 // CHECK-NOTFOUND2: configuration file 'nonexistent-config-file.cfg' cannot be found // CHECK-NOTFOUND2-NEXT: was searched for in the directory: {{.*}}/Inputs/config // CHECK-NOTFOUND2-NEXT: was searched for in the directory: // CHECK-NOTFOUND2-NOT: was searched for in the directory: - +// // RUN: not %clang --config-system-dir=%S/Inputs/config --config-user-dir=%S/Inputs/config2 --config nonexistent-config-file 2>&1 | FileCheck %s -check-prefix CHECK-NOTFOUND3 // CHECK-NOTFOUND3: configuration file 'nonexistent-config-file.cfg' cannot be found // CHECK-NOTFOUND3-NEXT: was searched for in the directory: {{.*}}/Inputs/config2 @@ -49,6 +49,6 @@ //--- Argument in config file cannot cross the file boundary - +// // RUN: not %clang --config %S/Inputs/config-5.cfg x86_64-unknown-linux-gnu -c %s 2>&1 | FileCheck %s -check-prefix CHECK-CROSS // CHECK-CROSS: error: argument to '-target' is missing diff --git a/clang/test/Driver/config-file.c b/clang/test/Driver/config-file.c index e6e6606177a891..fde7260ecd73fd 100644 --- a/clang/test/Driver/config-file.c +++ b/clang/test/Driver/config-file.c @@ -1,12 +1,12 @@ //--- Config file search directories - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir=%S/Inputs/config2 -o /dev/null -v 2>&1 | FileCheck %s -check-prefix CHECK-DIRS // CHECK-DIRS: System configuration file directory: {{.*}}/Inputs/config // CHECK-DIRS: User configuration file directory: {{.*}}/Inputs/config2 //--- Config file (full path) in output of -### - +// // RUN: %clang --config %S/Inputs/config-1.cfg -S %s -### 2>&1 | FileCheck %s -check-prefix CHECK-HHH // CHECK-HHH: Configuration file: {{.*}}Inputs{{.}}config-1.cfg // CHECK-HHH: -Werror @@ -14,7 +14,7 @@ //--- Config file (full path) in output of -v - +// // RUN: %clang --config %S/Inputs/config-1.cfg -S %s -o /dev/null -v 2>&1 | FileCheck %s -check-prefix CHECK-V // CHECK-V: Configuration file: {{.*}}Inputs{{.}}config-1.cfg // CHECK-V: -Werror @@ -22,7 +22,7 @@ //--- Config file in output of -### - +// // RUN: %clang --config-system-dir=%S/Inputs --config-user-dir= --config config-1.cfg -S %s -### 2>&1 | FileCheck %s -check-prefix CHECK-HHH2 // CHECK-HHH2: Configuration file: {{.*}}Inputs{{.}}config-1.cfg // CHECK-HHH2: -Werror @@ -30,7 +30,7 @@ //--- Config file in output of -v - +// // RUN: %clang --config-system-dir=%S/Inputs --config-user-dir= --config config-1.cfg -S %s -o /dev/null -v 2>&1 | FileCheck %s -check-prefix CHECK-V2 // CHECK-V2: Configuration file: {{.*}}Inputs{{.}}config-1.cfg // CHECK-V2: -Werror @@ -38,7 +38,7 @@ //--- Nested config files - +// // RUN: %clang --config-system-dir=%S/Inputs --config-user-dir= --config config-2.cfg -S %s -### 2>&1 | FileCheck %s -check-prefix CHECK-NESTED // CHECK-NESTED: Configuration file: {{.*}}Inputs{{.}}config-2.cfg // CHECK-NESTED: -Wundefined-func-template @@ -60,14 +60,14 @@ //--- Unused options in config file do not produce warnings - +// // RUN: %clang --config %S/Inputs/config-4.cfg -S %s -o /dev/null -v 2>&1 | FileCheck %s -check-prefix CHECK-UNUSED // CHECK-UNUSED-NOT: argument unused during compilation: // CHECK-UNUSED-NOT: 'linker' input unused //--- User directory is searched first. - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir=%S/Inputs/config2 --config config-4 -S %s -o /dev/null -v 2>&1 | FileCheck %s -check-prefix CHECK-PRECEDENCE // CHECK-PRECEDENCE: Configuration file: {{.*}}Inputs{{.}}config2{{.}}config-4.cfg // CHECK-PRECEDENCE: -Wall diff --git a/clang/test/Driver/config-file2.c b/clang/test/Driver/config-file2.c index e72d095292251d..8b57a92e1e83e0 100644 --- a/clang/test/Driver/config-file2.c +++ b/clang/test/Driver/config-file2.c @@ -1,21 +1,21 @@ // REQUIRES: x86-registered-target //--- Invocation `clang --config x86_64-qqq -m32` loads `i386-qqq.cfg` if the latter exists. - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir= --config x86_64-qqq -m32 -c %s -### 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD // CHECK-RELOAD: Target: i386 // CHECK-RELOAD: Configuration file: {{.*}}Inputs{{.}}config{{.}}i386-qqq.cfg //--- Invocation `clang --config x86_64-qqq2 -m32` loads `i386.cfg` if the latter exists in another search directory. - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir=%S/Inputs/config2 --config x86_64-qqq2 -m32 -c %s -### 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD1 // CHECK-RELOAD1: Target: i386 // CHECK-RELOAD1: Configuration file: {{.*}}Inputs{{.}}config2{{.}}i386.cfg //--- Invocation `clang --config x86_64-qqq2 -m32` loads `x86_64-qqq2.cfg` if `i386-qqq2.cfg` and `i386.cfg` do not exist. - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir= --config x86_64-qqq2 -m32 -c %s -### 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD2 // note: target is overridden due to -m32 // CHECK-RELOAD2: Target: i386 @@ -23,21 +23,21 @@ //--- Invocation `clang --config i386-qqq3 -m64` loads `x86_64.cfg` if `x86_64-qqq3.cfg` does not exist. - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir= --config i386-qqq3 -m64 -c %s -### 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD3 // CHECK-RELOAD3: Target: x86_64 // CHECK-RELOAD3: Configuration file: {{.*}}Inputs{{.}}config{{.}}x86_64.cfg //--- Invocation `clang --config x86_64-qqq -target i386` loads `i386-qqq.cfg` if the latter exists. - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir= --config x86_64-qqq -target i386 -c %s -### 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD4 // CHECK-RELOAD4: Target: i386 // CHECK-RELOAD4: Configuration file: {{.*}}Inputs{{.}}config{{.}}i386-qqq.cfg //--- Invocation `clang --config x86_64-qqq2 -target i386` loads `x86_64-qqq2.cfg` if `i386-qqq2.cfg` and `i386.cfg` do not exist. - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir= --config x86_64-qqq2 -target i386 -c %s -### 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD5 // note: target is overridden due to -target i386 // CHECK-RELOAD5: Target: i386 @@ -45,7 +45,7 @@ //--- Invocation `clang --config x86_64-qqq -target i386 -m64` loads `x86_64-qqq.cfg`. - +// // RUN: %clang --config-system-dir=%S/Inputs/config --config-user-dir= --config x86_64-qqq -target i386 -m64 -c %s -### 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD6 // CHECK-RELOAD6: Target: x86_64 // CHECK-RELOAD6: Configuration file: {{.*}}Inputs{{.}}config{{.}}x86_64-qqq.cfg diff --git a/clang/test/Driver/config-file3.c b/clang/test/Driver/config-file3.c index 25736069ec23a8..8efe1e555a3c87 100644 --- a/clang/test/Driver/config-file3.c +++ b/clang/test/Driver/config-file3.c @@ -8,56 +8,56 @@ // RUN: mkdir -p %t/workdir/subdir // RUN: echo "@subdir/cfg-s2" > %t/workdir/cfg-1 // RUN: echo "-Wundefined-var-template" > %t/workdir/subdir/cfg-s2 - +// // RUN: ( cd %t && %clang --config workdir/cfg-1 -c -### %s 2>&1 | FileCheck %s -check-prefix CHECK-REL ) - +// // CHECK-REL: Configuration file: {{.*}}/workdir/cfg-1 // CHECK-REL: -Wundefined-var-template //--- Invocation qqq-clang-g++ tries to find config file qqq-clang-g++.cfg first. - +// // RUN: mkdir %t/testdmode // RUN: ln -s %clang %t/testdmode/qqq-clang-g++ // RUN: echo "-Wundefined-func-template" > %t/testdmode/qqq-clang-g++.cfg // RUN: echo "-Werror" > %t/testdmode/qqq.cfg // RUN: %t/testdmode/qqq-clang-g++ --config-system-dir= --config-user-dir= -c -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix FULL-NAME - +// // FULL-NAME: Configuration file: {{.*}}/testdmode/qqq-clang-g++.cfg // FULL-NAME: -Wundefined-func-template // FULL-NAME-NOT: -Werror - +// //--- Invocation qqq-clang-g++ tries to find config file qqq-clang-g++.cfg even without -no-canonical-prefixes. // (As the clang executable and symlink are in different directories, this // requires specifying the path via --config-*-dir= though.) - +// // RUN: %t/testdmode/qqq-clang-g++ --config-system-dir= --config-user-dir=%t/testdmode -c -### %s 2>&1 | FileCheck %s -check-prefix SYMLINK - +// // SYMLINK: Configuration file: {{.*}}/testdmode/qqq-clang-g++.cfg - +// //--- File specified by --config overrides config inferred from clang executable. - +// // RUN: %t/testdmode/qqq-clang-g++ --config-system-dir=%S/Inputs/config --config-user-dir= --config i386-qqq -c -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix CHECK-EXPLICIT - +// // CHECK-EXPLICIT: Configuration file: {{.*}}/Inputs/config/i386-qqq.cfg - +// //--- Invocation qqq-clang-g++ tries to find config file qqq.cfg if qqq-clang-g++.cfg is not found. - +// // RUN: rm %t/testdmode/qqq-clang-g++.cfg // RUN: %t/testdmode/qqq-clang-g++ --config-system-dir= --config-user-dir= -c -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix SHORT-NAME - +// // SHORT-NAME: Configuration file: {{.*}}/testdmode/qqq.cfg // SHORT-NAME: -Werror // SHORT-NAME-NOT: -Wundefined-func-template //--- Config files are searched for in binary directory as well. - +// // RUN: mkdir %t/testbin // RUN: ln -s %clang %t/testbin/clang // RUN: echo "-Werror" > %t/testbin/aaa.cfg // RUN: %t/testbin/clang --config-system-dir= --config-user-dir= --config aaa.cfg -c -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix CHECK-BIN - +// // CHECK-BIN: Configuration file: {{.*}}/testbin/aaa.cfg // CHECK-BIN: -Werror @@ -66,38 +66,38 @@ // reloading config file. //--- When reloading config file, x86_64-clang-g++ tries to find config i386-clang-g++.cfg first. - +// // RUN: mkdir %t/testreload // RUN: ln -s %clang %t/testreload/x86_64-clang-g++ // RUN: echo "-Wundefined-func-template" > %t/testreload/i386-clang-g++.cfg // RUN: echo "-Werror" > %t/testreload/i386.cfg // RUN: %t/testreload/x86_64-clang-g++ --config-system-dir= --config-user-dir= -c -m32 -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD - +// // CHECK-RELOAD: Configuration file: {{.*}}/testreload/i386-clang-g++.cfg // CHECK-RELOAD: -Wundefined-func-template // CHECK-RELOAD-NOT: -Werror //--- If config file is specified by --config and its name does not start with architecture, it is used without reloading. - +// // RUN: %t/testreload/x86_64-clang-g++ --config-system-dir=%S/Inputs --config-user-dir= --config config-3 -c -m32 -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD1a - +// // CHECK-RELOAD1a: Configuration file: {{.*}}/Inputs/config-3.cfg - +// // RUN: %t/testreload/x86_64-clang-g++ --config-system-dir=%S/Inputs --config-user-dir= --config config-3 -c --target=i386 -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD1b - +// // CHECK-RELOAD1b: Configuration file: {{.*}}/Inputs/config-3.cfg //--- If config file is specified by --config and its name starts with architecture, it is reloaded. - +// // RUN: %t/testreload/x86_64-clang-g++ --config-system-dir=%S/Inputs/config --config-user-dir= --config x86_64-qqq -c -m32 -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD1c - +// // CHECK-RELOAD1c: Configuration file: {{.*}}/Inputs/config/i386-qqq.cfg //--- x86_64-clang-g++ tries to find config i386.cfg if i386-clang-g++.cfg is not found. - +// // RUN: rm %t/testreload/i386-clang-g++.cfg // RUN: %t/testreload/x86_64-clang-g++ --config-system-dir= --config-user-dir= -c -m32 -no-canonical-prefixes -### %s 2>&1 | FileCheck %s -check-prefix CHECK-RELOAD1d - +// // CHECK-RELOAD1d: Configuration file: {{.*}}/testreload/i386.cfg // CHECK-RELOAD1d: -Werror // CHECK-RELOAD1d-NOT: -Wundefined-func-template diff --git a/clang/test/Driver/constructors.c b/clang/test/Driver/constructors.c index 3405b1c48d66c0..1561bc47ec4f4a 100644 --- a/clang/test/Driver/constructors.c +++ b/clang/test/Driver/constructors.c @@ -1,72 +1,72 @@ // Test whether or not the driver instructs the backend to use .init_array // sections for global constructors. - +// // CHECK-INIT-ARRAY-NOT: -fno-use-init-array // CHECK-NO-INIT-ARRAY: -fno-use-init-array - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=i386-unknown-linux \ // RUN: --sysroot=%S/Inputs/resource_dir \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=i386-unknown-linux \ // RUN: --sysroot=%S/Inputs/fake_install_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: -fno-use-init-array \ // RUN: --target=i386-unknown-linux \ // RUN: --sysroot=%S/Inputs/fake_install_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-NO-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: -fno-use-init-array -fuse-init-array \ // RUN: --target=i386-unknown-linux \ // RUN: --sysroot=%S/Inputs/fake_install_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=i386-unknown-linux \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: -fuse-init-array \ // RUN: --target=i386-unknown-linux \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=arm-unknown-linux-androideabi \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=mipsel-unknown-linux-android \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=i386-unknown-linux-android \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=aarch64-none-linux-gnu \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=aarch64-none-none-eabi \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s @@ -76,7 +76,7 @@ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=arm64-none-none-eabi \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s @@ -88,11 +88,11 @@ // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=i386-unknown-freebsd12 \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=sparc-sun-solaris2.11 \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=i386-pc-solaris2.11 \ // RUN: | FileCheck --check-prefix=CHECK-INIT-ARRAY %s diff --git a/clang/test/Driver/coverage-ld.c b/clang/test/Driver/coverage-ld.c index 36712a457f579c..7d6a48be8b0852 100644 --- a/clang/test/Driver/coverage-ld.c +++ b/clang/test/Driver/coverage-ld.c @@ -1,45 +1,45 @@ // Test coverage ld flags. - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=i386-unknown-linux -fprofile-arcs \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-I386 %s - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=i386-unknown-linux --coverage \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-I386 %s - +// // CHECK-LINUX-I386-NOT: "-u__llvm_profile_runtime" // CHECK-LINUX-I386: /Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-i386.a" // CHECK-LINUX-I386-NOT: "-u__llvm_profile_runtime" // CHECK-LINUX-I386: "-lc" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux --coverage -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-X86-64 %s - +// // CHECK-LINUX-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LINUX-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-x86_64.a" {{.*}} "-lc" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-freebsd --coverage -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_freebsd64_tree \ // RUN: | FileCheck --check-prefix=CHECK-FREEBSD-X86-64 %s - +// // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}freebsd{{/|\\\\}}libclang_rt.profile-x86_64.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi --coverage -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-ANDROID-ARM %s - +// // CHECK-ANDROID-ARM: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ANDROID-ARM: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-arm-android.a" diff --git a/clang/test/Driver/cross-linux.c b/clang/test/Driver/cross-linux.c index 35d9aa7cc8f93c..6bd7de52d4aa4d 100644 --- a/clang/test/Driver/cross-linux.c +++ b/clang/test/Driver/cross-linux.c @@ -5,7 +5,7 @@ // CHECK-I386: "-cc1" "-triple" "i386-unknown-linux-gnu" // CHECK-I386: "{{.*}}/Inputs/basic_cross_linux_tree/usr/lib/gcc/i386-unknown-linux-gnu/10.2.0/../../../../i386-unknown-linux-gnu/bin{{/|\\\\}}as" "--32" // CHECK-I386: "{{.*}}/Inputs/basic_cross_linux_tree/usr/lib/gcc/i386-unknown-linux-gnu/10.2.0/../../../../i386-unknown-linux-gnu/bin{{/|\\\\}}ld" {{.*}} "-m" "elf_i386" - +// // RUN: %clang -### -o %t %s 2>&1 -no-integrated-as -fuse-ld=ld \ // RUN: --gcc-toolchain=%S/Inputs/basic_cross_linux_tree/usr \ // RUN: --target=x86_64-unknown-linux-gnu \ @@ -13,7 +13,7 @@ // CHECK-X86-64: "-cc1" "-triple" "x86_64-unknown-linux-gnu" // CHECK-X86-64: "{{.*}}/Inputs/basic_cross_linux_tree/usr/lib/gcc/x86_64-unknown-linux-gnu/10.2.0/../../../../x86_64-unknown-linux-gnu/bin{{/|\\\\}}as" "--64" // CHECK-X86-64: "{{.*}}/Inputs/basic_cross_linux_tree/usr/lib/gcc/x86_64-unknown-linux-gnu/10.2.0/../../../../x86_64-unknown-linux-gnu/bin{{/|\\\\}}ld" {{.*}} "-m" "elf_x86_64" - +// // RUN: %clang -### -o %t %s 2>&1 -no-integrated-as -fuse-ld=ld \ // RUN: --gcc-toolchain=%S/Inputs/basic_cross_linux_tree/usr \ // RUN: --target=x86_64-unknown-linux-gnux32 \ @@ -21,12 +21,12 @@ // CHECK-X32: "-cc1" "-triple" "x86_64-unknown-linux-gnux32" // CHECK-X32: "{{.*}}/Inputs/basic_cross_linux_tree/usr/lib/gcc/x86_64-unknown-linux-gnu/10.2.0/../../../../x86_64-unknown-linux-gnu/bin{{/|\\\\}}as" "--x32" // CHECK-X32: "{{.*}}/Inputs/basic_cross_linux_tree/usr/lib/gcc/x86_64-unknown-linux-gnu/10.2.0/../../../../x86_64-unknown-linux-gnu/bin{{/|\\\\}}ld" {{.*}} "-m" "elf32_x86_64" - +// // RUN: %clang -### -o %t %s 2>&1 -no-integrated-as -fuse-ld=ld \ // RUN: --gcc-toolchain=%S/Inputs/basic_cross_linux_tree/usr \ // RUN: --target=x86_64-unknown-linux-gnu -m32 \ // RUN: | FileCheck --check-prefix=CHECK-I386 %s - +// // RUN: %clang -### -o %t %s 2>&1 -no-integrated-as -fuse-ld=ld \ // RUN: --gcc-toolchain=%S/Inputs/basic_cross_linux_tree/usr \ // RUN: --target=i386-unknown-linux-gnu -m64 \ diff --git a/clang/test/Driver/cspgo-lto.c b/clang/test/Driver/cspgo-lto.c index 588e92c14b2279..52d4f2487b0d04 100644 --- a/clang/test/Driver/cspgo-lto.c +++ b/clang/test/Driver/cspgo-lto.c @@ -1,5 +1,5 @@ // RUN: touch %t.o - +// // RUN: %clang -target x86_64-unknown-linux -### %t.o -flto=thin \ // RUN: -fprofile-use 2>&1 | FileCheck %s diff --git a/clang/test/Driver/cuda-arch-translation.cu b/clang/test/Driver/cuda-arch-translation.cu index 3319ff21991436..97efcf4e7fbca0 100644 --- a/clang/test/Driver/cuda-arch-translation.cu +++ b/clang/test/Driver/cuda-arch-translation.cu @@ -1,6 +1,6 @@ // Tests that "sm_XX" gets correctly converted to "compute_YY" when we invoke // fatbinary. - +// // REQUIRES: x86-registered-target // REQUIRES: nvptx-registered-target diff --git a/clang/test/Driver/cuda-bindings.cu b/clang/test/Driver/cuda-bindings.cu index 4383f670b65d09..6cc21251bfdd3d 100644 --- a/clang/test/Driver/cuda-bindings.cu +++ b/clang/test/Driver/cuda-bindings.cu @@ -12,10 +12,10 @@ // REQUIRES: powerpc-registered-target // REQUIRES: nvptx-registered-target - +// // Test single gpu architecture with complete compilation. // No intermediary device files should have "-device-cuda..." in the name. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings --cuda-gpu-arch=sm_30 %s 2>&1 \ // RUN: | FileCheck -check-prefix=BIN %s // BIN: # "nvptx64-nvidia-cuda" - "clang",{{.*}} output: @@ -28,17 +28,17 @@ // BIN-NOT: cuda-bindings-device-cuda-nvptx64 // BIN: # "powerpc64le-ibm-linux-gnu" - "GNU::Linker", inputs:{{.*}}, output: "a.out" - +// // Test single gpu architecture up to the assemble phase. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings --cuda-gpu-arch=sm_30 %s -S 2>&1 \ // RUN: | FileCheck -check-prefix=ASM %s // ASM-DAG: # "nvptx64-nvidia-cuda" - "clang",{{.*}} output: "cuda-bindings-cuda-nvptx64-nvidia-cuda-sm_30.s" // ASM-DAG: # "powerpc64le-ibm-linux-gnu" - "clang",{{.*}} output: "cuda-bindings.s" - +// // Test two gpu architectures with complete compilation. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s 2>&1 \ // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings --offload-arch=sm_30,sm_35 %s 2>&1 \ // RUN: | FileCheck -check-prefix=BIN2 %s @@ -56,9 +56,9 @@ // BIN2-NOT: cuda-bindings-device-cuda-nvptx64 // BIN2: # "powerpc64le-ibm-linux-gnu" - "GNU::Linker", inputs:{{.*}}, output: "a.out" - +// // Test two gpu architectures up to the assemble phase. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s -S 2>&1 \ // RUN: | FileCheck -check-prefix=ASM2 %s @@ -66,10 +66,10 @@ // ASM2-DAG: # "nvptx64-nvidia-cuda" - "clang",{{.*}} output: "cuda-bindings-cuda-nvptx64-nvidia-cuda-sm_35.s" // ASM2-DAG: # "powerpc64le-ibm-linux-gnu" - "clang",{{.*}} output: "cuda-bindings.s" - +// // Test one or more gpu architecture with complete compilation in host-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings \ // RUN: --cuda-gpu-arch=sm_30 %s --cuda-host-only 2>&1 \ // RUN: | FileCheck -check-prefix=HBIN %s @@ -80,10 +80,10 @@ // HBIN-NOT: cuda-bindings-device-cuda-nvptx64 // HBIN: # "powerpc64le-ibm-linux-gnu" - "GNU::Linker", inputs:{{.*}}, output: "a.out" - +// // Test one or more gpu architecture up to the assemble phase in host-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings \ // RUN: --cuda-gpu-arch=sm_30 %s --cuda-host-only -S 2>&1 \ // RUN: | FileCheck -check-prefix=HASM %s @@ -92,10 +92,10 @@ // RUN: | FileCheck -check-prefix=HASM %s // HASM: # "powerpc64le-ibm-linux-gnu" - "clang",{{.*}} output: "cuda-bindings.s" - +// // Test single gpu architecture with complete compilation in device-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings \ // RUN: --cuda-gpu-arch=sm_30 %s --cuda-device-only 2>&1 \ // RUN: | FileCheck -check-prefix=DBIN %s @@ -103,19 +103,19 @@ // DBIN-NOT: cuda-bindings-device-cuda-nvptx64 // DBIN: # "nvptx64-nvidia-cuda" - "NVPTX::Assembler",{{.*}} output: "cuda-bindings-cuda-nvptx64-nvidia-cuda-sm_30.o" - +// // Test single gpu architecture up to the assemble phase in device-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings \ // RUN: --cuda-gpu-arch=sm_30 %s --cuda-device-only -S 2>&1 \ // RUN: | FileCheck -check-prefix=DASM %s // DASM: # "nvptx64-nvidia-cuda" - "clang",{{.*}} output: "cuda-bindings-cuda-nvptx64-nvidia-cuda-sm_30.s" - +// // Test two gpu architectures with complete compilation in device-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s --cuda-device-only 2>&1 \ // RUN: | FileCheck -check-prefix=DBIN2 %s @@ -126,10 +126,10 @@ // DBIN2-NOT: cuda-bindings-device-cuda-nvptx64 // DBIN2: # "nvptx64-nvidia-cuda" - "NVPTX::Assembler",{{.*}} output: "cuda-bindings-cuda-nvptx64-nvidia-cuda-sm_35.o" - +// // Test two gpu architectures up to the assemble phase in device-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-bindings \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s --cuda-device-only -S 2>&1 \ // RUN: | FileCheck -check-prefix=DASM2 %s diff --git a/clang/test/Driver/cuda-detect.cu b/clang/test/Driver/cuda-detect.cu index 525254f653e015..9cc1465d139cb0 100644 --- a/clang/test/Driver/cuda-detect.cu +++ b/clang/test/Driver/cuda-detect.cu @@ -1,6 +1,6 @@ // REQUIRES: x86-registered-target // REQUIRES: nvptx-registered-target - +// // Check that we properly detect CUDA installation. // RUN: %clang -v --target=i386-unknown-linux \ // RUN: --sysroot=%S/no-cuda-there --cuda-path-ignore-env 2>&1 | FileCheck %s -check-prefix NOCUDA diff --git a/clang/test/Driver/cuda-dwarf-2.cu b/clang/test/Driver/cuda-dwarf-2.cu index fc960564959d06..eda9599fe79d4f 100644 --- a/clang/test/Driver/cuda-dwarf-2.cu +++ b/clang/test/Driver/cuda-dwarf-2.cu @@ -1,4 +1,4 @@ - +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 %s -g -O1 --no-cuda-noopt-device-debug 2>&1 | \ // RUN: FileCheck %s -check-prefix DEBUG_DIRECTIVES // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 %s -g -O3 2>&1 | \ diff --git a/clang/test/Driver/cuda-external-tools.cu b/clang/test/Driver/cuda-external-tools.cu index 0cff4bf2b29baf..198443e475bf94 100644 --- a/clang/test/Driver/cuda-external-tools.cu +++ b/clang/test/Driver/cuda-external-tools.cu @@ -1,6 +1,6 @@ // Tests that ptxas and fatbinary are invoked correctly during CUDA // compilation. - +// // REQUIRES: x86-registered-target // REQUIRES: nvptx-registered-target diff --git a/clang/test/Driver/cuda-macosx.cu b/clang/test/Driver/cuda-macosx.cu index 11b959cba33bfe..d01299f9f7d274 100644 --- a/clang/test/Driver/cuda-macosx.cu +++ b/clang/test/Driver/cuda-macosx.cu @@ -1,6 +1,6 @@ // REQUIRES: x86-registered-target // REQUIRES: nvptx-registered-target - +// // RUN: %clang -v --target=i386-apple-macosx \ // RUN: --sysroot=%S/Inputs/CUDA-macosx --cuda-path-ignore-env 2>&1 | FileCheck %s diff --git a/clang/test/Driver/cuda-march.cu b/clang/test/Driver/cuda-march.cu index 97086859dcbb76..a7abbfe4527010 100644 --- a/clang/test/Driver/cuda-march.cu +++ b/clang/test/Driver/cuda-march.cu @@ -1,7 +1,7 @@ // Checks that cuda compilation does the right thing when passed -march. // (Specifically, we want to pass it to host compilation, but not to device // compilation or ptxas!) - +// // REQUIRES: x86-registered-target // REQUIRES: nvptx-registered-target diff --git a/clang/test/Driver/cuda-no-pgo-or-coverage.cu b/clang/test/Driver/cuda-no-pgo-or-coverage.cu index 591ebe19e4ce1c..7045a2b18d09ea 100644 --- a/clang/test/Driver/cuda-no-pgo-or-coverage.cu +++ b/clang/test/Driver/cuda-no-pgo-or-coverage.cu @@ -1,28 +1,28 @@ // Check that profiling/coverage arguments doen't get passed down to device-side // compilation. - - +// +// // XRUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 \ // XRUN: -fprofile-generate %s 2>&1 | \ // XRUN: FileCheck --check-prefixes=CHECK,PROF %s - +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 \ // RUN: -fprofile-instr-generate %s 2>&1 | \ // RUN: FileCheck --check-prefixes=CHECK,PROF %s - +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 \ // RUN: -coverage %s 2>&1 | \ // RUN: FileCheck --check-prefixes=CHECK,GCOV %s - +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 \ // RUN: -ftest-coverage %s 2>&1 | \ // RUN: FileCheck --check-prefixes=CHECK,GCOV %s - +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 \ // RUN: -fprofile-instr-generate -fcoverage-mapping %s 2>&1 | \ // RUN: FileCheck --check-prefixes=CHECK,PROF %s - - +// +// // CHECK-NOT: error: unsupported option '-fprofile // CHECK-NOT: error: invalid argument // CHECK-DAG: "-fcuda-is-device" diff --git a/clang/test/Driver/cuda-no-sanitizers.cu b/clang/test/Driver/cuda-no-sanitizers.cu index 9a091836090676..fdd338755fc981 100644 --- a/clang/test/Driver/cuda-no-sanitizers.cu +++ b/clang/test/Driver/cuda-no-sanitizers.cu @@ -1,7 +1,7 @@ // Check that -fsanitize=foo doesn't get passed down to device-side // compilation. - - +// +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 -fsanitize=address %s 2>&1 | \ // RUN: FileCheck %s diff --git a/clang/test/Driver/cuda-no-stack-protector.cu b/clang/test/Driver/cuda-no-stack-protector.cu index 63ac5f1f7166d1..2bcf481855175b 100644 --- a/clang/test/Driver/cuda-no-stack-protector.cu +++ b/clang/test/Driver/cuda-no-stack-protector.cu @@ -1,19 +1,19 @@ // Check that -stack-protector doesn't get passed down to device-side // compilation. - - +// +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 \ // RUN: -fstack-protector-all %s 2>&1 | \ // RUN: FileCheck %s - +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 \ // RUN: -fstack-protector-strong %s 2>&1 | \ // RUN: FileCheck %s - +// // RUN: %clang -### -target x86_64-linux-gnu -c --cuda-gpu-arch=sm_20 \ // RUN: -fstack-protector %s 2>&1 | \ // RUN: FileCheck %s - +// // CHECK-NOT: error: unsupported option '-fstack-protector // CHECK-DAG: "-fcuda-is-device" // CHECK-NOT: "-stack-protector" diff --git a/clang/test/Driver/cuda-phases.cu b/clang/test/Driver/cuda-phases.cu index 386f32ec12229a..404db69dff7b06 100644 --- a/clang/test/Driver/cuda-phases.cu +++ b/clang/test/Driver/cuda-phases.cu @@ -6,14 +6,14 @@ // REQUIRES: powerpc-registered-target // REQUIRES: nvptx-registered-target - +// // Test single gpu architecture with complete compilation. - +// // Test CUDA NVPTX phases. // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 %s 2>&1 \ // RUN: | FileCheck -check-prefixes=BIN %s - +// // BIN-DAG: [[P0:[0-9]+]]: input, "{{.*}}cuda-phases.cu", [[T:cuda]], (host-[[T]]) // BIN-DAG: [[P1:[0-9]+]]: preprocessor, {[[P0]]}, [[T]]-cpp-output, (host-[[T]]) // BIN-DAG: [[P2:[0-9]+]]: compiler, {[[P1]]}, ir, (host-[[T]]) @@ -30,9 +30,9 @@ // BIN-DAG: [[P13:[0-9]+]]: assembler, {[[P12]]}, object, (host-[[T]]) // BIN-DAG: [[P14:[0-9]+]]: linker, {[[P13]]}, image, (host-[[T]]) - +// // Test single gpu architecture up to the assemble phase. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 %s -S 2>&1 \ // RUN: | FileCheck -check-prefixes=ASM %s @@ -46,9 +46,9 @@ // ASM-DAG: [[P7:[0-9]+]]: compiler, {[[P6]]}, ir, (host-[[T]]) // ASM-DAG: [[P8:[0-9]+]]: backend, {[[P7]]}, assembler, (host-[[T]]) - +// // Test two gpu architectures with complete compilation. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s 2>&1 \ // RUN: | FileCheck -check-prefixes=BIN2 %s @@ -75,9 +75,9 @@ // BIN2-DAG: [[P20:[0-9]+]]: assembler, {[[P19]]}, object, (host-[[T]]) // BIN2-DAG: [[P21:[0-9]+]]: linker, {[[P20]]}, image, (host-[[T]]) - +// // Test two gpu architecturess up to the assemble phase. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s -S 2>&1 \ // RUN: | FileCheck -check-prefixes=ASM2 %s @@ -96,10 +96,10 @@ // ASM2-DAG: [[P12:[0-9]+]]: compiler, {[[P11]]}, ir, (host-[[T]]) // ASM2-DAG: [[P13:[0-9]+]]: backend, {[[P12]]}, assembler, (host-[[T]]) - +// // Test single gpu architecture with complete compilation in host-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 %s --cuda-host-only 2>&1 \ // RUN: | FileCheck -check-prefixes=HBIN %s @@ -110,10 +110,10 @@ // HBIN-DAG: [[P4:[0-9]+]]: assembler, {[[P3]]}, object, (host-[[T]]) // HBIN-DAG: [[P5:[0-9]+]]: linker, {[[P4]]}, image, (host-[[T]]) // HBIN-NOT: device - +// // Test single gpu architecture up to the assemble phase in host-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 %s --cuda-host-only -S 2>&1 \ // RUN: | FileCheck -check-prefixes=HASM %s @@ -123,10 +123,10 @@ // HASM-DAG: [[P3:[0-9]+]]: backend, {[[P2]]}, assembler, (host-[[T]]) // HASM-NOT: device - +// // Test two gpu architectures with complete compilation in host-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s --cuda-host-only 2>&1 \ // RUN: | FileCheck -check-prefixes=HBIN2 %s @@ -138,10 +138,10 @@ // HBIN2-DAG: [[P5:[0-9]+]]: linker, {[[P4]]}, image, (host-[[T]]) // HBIN2-NOT: device - +// // Test two gpu architectures up to the assemble phase in host-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s --cuda-host-only -S \ // RUN: 2>&1 | FileCheck -check-prefixes=HASM2 %s @@ -151,10 +151,10 @@ // HASM2-DAG: [[P3:[0-9]+]]: backend, {[[P2]]}, assembler, (host-[[T]]) // HASM2-NOT: device - +// // Test single gpu architecture with complete compilation in device-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 %s --cuda-device-only 2>&1 \ // RUN: | FileCheck -check-prefixes=DBIN %s @@ -165,10 +165,10 @@ // DBIN-DAG: [[P4:[0-9]+]]: assembler, {[[P3]]}, object, (device-[[T]], [[ARCH]]) // DBIN-DAG: [[P5:[0-9]+]]: offload, "device-[[T]] (nvptx64-nvidia-cuda:[[ARCH]])" {[[P4]]}, object // DBIN-NOT: host - +// // Test single gpu architecture up to the assemble phase in device-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 %s --cuda-device-only -S 2>&1 \ // RUN: | FileCheck -check-prefixes=DASM %s @@ -179,10 +179,10 @@ // DASM-DAG: [[P4:[0-9]+]]: offload, "device-[[T]] ([[TRIPLE:nvptx64-nvidia-cuda]]:[[ARCH]])" {[[P3]]}, assembler // DASM-NOT: host - +// // Test two gpu architectures with complete compilation in device-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s --cuda-device-only 2>&1 \ // RUN: | FileCheck -check-prefixes=DBIN2 %s @@ -199,10 +199,10 @@ // DBIN2-DAG: [[P10:[0-9]+]]: assembler, {[[P9]]}, object, (device-[[T]], [[ARCH2]]) // DBIN2-DAG: [[P11:[0-9]+]]: offload, "device-[[T]] ([[TRIPLE]]:[[ARCH2]])" {[[P10]]}, object // DBIN2-NOT: host - +// // Test two gpu architectures up to the assemble phase in device-only // compilation mode. - +// // RUN: %clang -target powerpc64le-ibm-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=sm_30 --cuda-gpu-arch=sm_35 %s --cuda-device-only -S \ // RUN: 2>&1 | FileCheck -check-prefixes=DASM2 %s @@ -218,9 +218,9 @@ // DASM2-DAG: [[P9:[0-9]+]]: offload, "device-[[T]] ([[TRIPLE]]:[[ARCH2]])" {[[P8]]}, assembler // DASM2-NOT: host - +// // Test the phases generated when using the new offloading driver. - +// // RUN: %clang -### -target powerpc64le-ibm-linux-gnu -ccc-print-phases --offload-new-driver \ // RUN: --offload-arch=sm_52 --offload-arch=sm_70 %s 2>&1 | FileCheck --check-prefix=NEW_DRIVER %s // NEW_DRIVER: 0: input, "[[INPUT:.+]]", cuda diff --git a/clang/test/Driver/cuda-simple.cu b/clang/test/Driver/cuda-simple.cu index 9a4689d26d021d..cc5f6ea885f863 100644 --- a/clang/test/Driver/cuda-simple.cu +++ b/clang/test/Driver/cuda-simple.cu @@ -2,7 +2,7 @@ // http://llvm.org/PR22936 // RUN: %clang --cuda-path=%S/Inputs/CUDA/usr/local/cuda \ // RUN: -nocudainc -nocudalib -Werror -fsyntax-only -c %s - +// // Verify that we pass -x cuda-cpp-output to compiler after // preprocessing a CUDA file // RUN: %clang --cuda-path=%S/Inputs/CUDA/usr/local/cuda \ @@ -12,7 +12,7 @@ // CHECK: "-x" "cuda" // CHECK-LABEL: "-cc1" // CHECK: "-x" "cuda-cpp-output" - +// // Verify that compiler accepts CUDA syntax with "-x cuda-cpp-output". // RUN: %clang --cuda-path=%S/Inputs/CUDA/usr/local/cuda \ // RUN: -Werror -fsyntax-only -x cuda-cpp-output -c %s diff --git a/clang/test/Driver/cuda-windows.cu b/clang/test/Driver/cuda-windows.cu index fcf97e56d42700..02d6a55808d1c6 100644 --- a/clang/test/Driver/cuda-windows.cu +++ b/clang/test/Driver/cuda-windows.cu @@ -1,6 +1,6 @@ // REQUIRES: x86-registered-target // REQUIRES: nvptx-registered-target - +// // RUN: %clang -v --target=i386-pc-windows-msvc \ // RUN: --sysroot=%S/Inputs/CUDA-windows 2>&1 %s -### | FileCheck %s // RUN: %clang -v --target=i386-pc-windows-mingw32 \ diff --git a/clang/test/Driver/cxx-abi-flag.cpp b/clang/test/Driver/cxx-abi-flag.cpp index f2e6d1f760db0d..e6b13dbaf4e40d 100644 --- a/clang/test/Driver/cxx-abi-flag.cpp +++ b/clang/test/Driver/cxx-abi-flag.cpp @@ -5,7 +5,7 @@ // RUN: 2>&1 | FileCheck %s -check-prefix=FUCHSIA // RUN: %clang -### -fc++-abi=microsoft -target x86_64-unknown-windows-msvc %s \ // RUN: 2>&1 | FileCheck %s -check-prefix=MICROSOFT - +// // ITANIUM: -fc++-abi=itanium // FUCHSIA: -fc++-abi=fuchsia // MICROSOFT: -fc++-abi=microsoft diff --git a/clang/test/Driver/darwin-as.c b/clang/test/Driver/darwin-as.c index 278558ca94f646..e35391eea737e2 100644 --- a/clang/test/Driver/darwin-as.c +++ b/clang/test/Driver/darwin-as.c @@ -1,23 +1,23 @@ // RUN: %clang -target i386-apple-darwin10 -### -x assembler -c %s \ // RUN: -no-integrated-as -static -dynamic 2>%t // RUN: FileCheck -check-prefix=CHECK-STATIC_AND_DYNAMIC-32-DARWIN10 --input-file %t %s - +// // CHECK-STATIC_AND_DYNAMIC-32-DARWIN10: as{{(.exe)?}}" "-arch" "i386" "-force_cpusubtype_ALL" "-static" "-o" // RUN: %clang -target i386-apple-darwin11 -### -x assembler -c %s \ // RUN: -no-integrated-as -static -dynamic 2>%t // RUN: FileCheck -check-prefix=CHECK-STATIC_AND_DYNAMIC-32 --input-file %t %s - +// // CHECK-STATIC_AND_DYNAMIC-32: as{{(.exe)?}}" "-Q" "-arch" "i386" "-force_cpusubtype_ALL" "-static" "-o" // RUN: %clang -target x86_64-apple-darwin11 -### -x assembler -c %s \ // RUN: -no-integrated-as -static 2>%t // RUN: FileCheck -check-prefix=CHECK-STATIC-64 --input-file %t %s - +// // CHECK-STATIC-64: as{{(.exe)?}}" "-Q" "-arch" "x86_64" "-force_cpusubtype_ALL" "-o" // RUN: %clang -target x86_64-apple-darwin11 -### \ // RUN: -arch armv6 -no-integrated-as -x assembler -c %s 2>%t // RUN: FileCheck -check-prefix=CHECK-ARMV6 --input-file %t %s - +// // CHECK-ARMV6: as{{(.exe)?}}" "-Q" "-arch" "armv6" "-o" diff --git a/clang/test/Driver/darwin-dsymutil.c b/clang/test/Driver/darwin-dsymutil.c index 24027cbe3fc7c9..7a6e4940afeacc 100644 --- a/clang/test/Driver/darwin-dsymutil.c +++ b/clang/test/Driver/darwin-dsymutil.c @@ -1,9 +1,9 @@ // Check that we run dsymutil properly with multiple -arch options. - +// // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-phases \ // RUN: -arch i386 -arch x86_64 %s -g 2> %t // RUN: FileCheck -check-prefix=CHECK-MULTIARCH-ACTIONS < %t %s - +// // CHECK-MULTIARCH-ACTIONS: 0: input, "{{.*}}darwin-dsymutil.c", c // CHECK-MULTIARCH-ACTIONS: 1: preprocessor, {0}, cpp-output // CHECK-MULTIARCH-ACTIONS: 2: compiler, {1}, ir @@ -14,54 +14,54 @@ // CHECK-MULTIARCH-ACTIONS: 7: bind-arch, "x86_64", {5}, image // CHECK-MULTIARCH-ACTIONS: 8: lipo, {6, 7}, image // CHECK-MULTIARCH-ACTIONS: 9: dsymutil, {8}, dSYM - +// // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-bindings \ // RUN: -arch i386 -arch x86_64 %s -g 2> %t // RUN: FileCheck -check-prefix=CHECK-MULTIARCH-BINDINGS < %t %s - +// // CHECK-MULTIARCH-BINDINGS: "x86_64-apple-darwin10" - "darwin::Lipo", inputs: [{{.*}}, {{.*}}], output: "a.out" // CHECK-MULTIARCH-BINDINGS: # "x86_64-apple-darwin10" - "darwin::Dsymutil", inputs: ["a.out"], output: "a.out.dSYM" // Check output name derivation. - +// // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-bindings \ // RUN: -o foo %s -g 2> %t // RUN: FileCheck -Doutfile=foo -Ddsymfile=foo.dSYM \ // RUN: -check-prefix=CHECK-OUTPUT-NAME < %t %s - +// // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-bindings \ // RUN: -o bar/foo %s -g 2> %t // RUN: FileCheck -Doutfile=bar/foo -Ddsymfile=bar/foo.dSYM \ // RUN: -check-prefix=CHECK-OUTPUT-NAME < %t %s - +// // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-bindings \ // RUN: -o bar/foo -dsym-dir external %s -g 2> %t // RUN: FileCheck -Doutfile=bar/foo -Ddsymfile=external/foo.dSYM \ // RUN: -check-prefix=CHECK-OUTPUT-NAME < %t %s - +// // CHECK-OUTPUT-NAME: "x86_64-apple-darwin10" - "darwin::Linker", inputs: [{{.*}}], output: "[[outfile]]" // CHECK-OUTPUT-NAME: "x86_64-apple-darwin10" - "darwin::Dsymutil", inputs: ["[[outfile]]"], output: "[[dsymfile]]" // Check output name derivation for multiple -arch options. - +// // RUN: %clang -target x86_64-apple-darwin10 \ // RUN: -arch x86_64 -arch arm64 -ccc-print-bindings %s 2> %t // RUN: FileCheck --check-prefix=CHECK-MULTIARCH-OUTPUT-NAME < %t %s - +// // CHECK-MULTIARCH-OUTPUT-NAME: "x86_64-apple-darwin10" - "darwin::Linker", inputs: ["{{.*}}{{/|\\}}darwin-dsymutil-x86_64.o"], output: "{{.*}}{{/|\\}}darwin-dsymutil-x86_64.out" // CHECK-MULTIARCH-OUTPUT-NAME: "arm64-apple-darwin10" - "darwin::Linker", inputs: ["{{.*}}{{/|\\}}darwin-dsymutil-arm64.o"], output: "{{.*}}{{/|\\}}darwin-dsymutil-arm64.out" // CHECK-MULTIARCH-OUTPUT-NAME: "arm64-apple-darwin10" - "darwin::Lipo", inputs: ["{{.*}}{{/|\\}}darwin-dsymutil-x86_64.out", "{{.*}}{{/|\\}}darwin-dsymutil-arm64.out"], output: "a.out" - +// // RUN: %clang -target x86_64-apple-darwin10 \ // RUN: -Wl,-foo -arch x86_64 -arch arm64 -ccc-print-bindings %s 2> %t // RUN: FileCheck --check-prefix=CHECK-MULTIARCH-OUTPUT-NAME-WITH-ARG < %t %s - +// // CHECK-MULTIARCH-OUTPUT-NAME-WITH-ARG: "x86_64-apple-darwin10" - "darwin::Linker", inputs: [(input arg), "{{.*}}{{/|\\}}darwin-dsymutil-x86_64.o"], output: "{{.*}}{{/|\\}}darwin-dsymutil-x86_64.out" // CHECK-MULTIARCH-OUTPUT-NAME-WITH-ARG: "arm64-apple-darwin10" - "darwin::Linker", inputs: [(input arg), "{{.*}}{{/|\\}}darwin-dsymutil-arm64.o"], output: "{{.*}}{{/|\\}}darwin-dsymutil-arm64.out" // CHECK-MULTIARCH-OUTPUT-NAME-WITH-ARG: "arm64-apple-darwin10" - "darwin::Lipo", inputs: ["{{.*}}{{/|\\}}darwin-dsymutil-x86_64.out", "{{.*}}{{/|\\}}darwin-dsymutil-arm64.out"], output: "a.out" // Check that we only use dsymutil when needed. - +// // RUN: touch %t.o // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-bindings \ // RUN: -o foo %t.o -g 2> %t diff --git a/clang/test/Driver/darwin-header-search-libcxx.cpp b/clang/test/Driver/darwin-header-search-libcxx.cpp index 6971668d08e0dc..f1b6f39d84838b 100644 --- a/clang/test/Driver/darwin-header-search-libcxx.cpp +++ b/clang/test/Driver/darwin-header-search-libcxx.cpp @@ -5,7 +5,7 @@ // Check without a sysroot and without headers alongside the installation // (no include path should be added, and no warning or error). - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -stdlib=libc++ \ @@ -14,7 +14,7 @@ // CHECK-LIBCXX-NONE: "-cc1" // Check with only headers alongside the installation (those should be used). - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -stdlib=libc++ \ @@ -25,7 +25,7 @@ // CHECK-LIBCXX-TOOLCHAIN-1: "-cc1" // CHECK-LIBCXX-TOOLCHAIN-1: "-internal-isystem" "[[TOOLCHAIN]]/usr/bin/../include/c++/v1" // CHECK-LIBCXX-TOOLCHAIN-1-NOT: "-internal-isystem" "/usr/include/c++/v1" - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -stdlib=libc++ \ @@ -39,7 +39,7 @@ // CHECK-LIBCXX-TOOLCHAIN-2-NOT: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/v1" // Check with only headers in the sysroot (those should be used). - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -stdlib=libc++ \ @@ -56,7 +56,7 @@ // (the headers in the toolchain should be preferred over the headers). // Ensure that both -isysroot and --sysroot work, and that isysroot has precedence // over --sysroot. - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -stdlib=libc++ \ @@ -66,7 +66,7 @@ // RUN: | FileCheck -DSYSROOT=%S/Inputs/basic_darwin_sdk_usr_cxx_v1 \ // RUN: -DTOOLCHAIN=%S/Inputs/basic_darwin_toolchain \ // RUN: --check-prefix=CHECK-LIBCXX-SYSROOT_AND_TOOLCHAIN-1 %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -stdlib=libc++ \ @@ -76,7 +76,7 @@ // RUN: | FileCheck -DSYSROOT=%S/Inputs/basic_darwin_sdk_usr_cxx_v1 \ // RUN: -DTOOLCHAIN=%S/Inputs/basic_darwin_toolchain \ // RUN: --check-prefix=CHECK-LIBCXX-SYSROOT_AND_TOOLCHAIN-1 %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -stdlib=libc++ \ @@ -87,14 +87,14 @@ // RUN: | FileCheck -DSYSROOT=%S/Inputs/basic_darwin_sdk_usr_cxx_v1 \ // RUN: -DTOOLCHAIN=%S/Inputs/basic_darwin_toolchain \ // RUN: --check-prefix=CHECK-LIBCXX-SYSROOT_AND_TOOLCHAIN-1 %s - +// // CHECK-LIBCXX-SYSROOT_AND_TOOLCHAIN-1: "-cc1" // CHECK-LIBCXX-SYSROOT_AND_TOOLCHAIN-1: "-internal-isystem" "[[TOOLCHAIN]]/usr/bin/../include/c++/v1" // CHECK-LIBCXX-SYSROOT_AND_TOOLCHAIN-1-NOT: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/v1" // Make sure that using -nostdinc does not drop any C++ library include path. // This behavior is strange, but it is compatible with the legacy CC1 behavior. - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin16 \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain/usr/bin \ @@ -108,7 +108,7 @@ // CHECK-LIBCXX-NOSTDINC-1: "-cc1" // CHECK-LIBCXX-NOSTDINC-1-NOT: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/v1" // CHECK-LIBCXX-NOSTDINC-1: "-internal-isystem" "[[TOOLCHAIN]]/usr/bin/../include/c++/v1" - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin16 \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain/usr/bin \ @@ -125,7 +125,7 @@ // Make sure that using -nostdinc++ or -nostdlib will drop both the toolchain // C++ include path and the sysroot one. - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin16 \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain/usr/bin \ @@ -139,7 +139,7 @@ // CHECK-LIBCXX-NOSTDINCXX: "-cc1" // CHECK-LIBCXX-NOSTDINCXX-NOT: "-internal-isystem" "[[TOOLCHAIN]]/usr/bin/../include/c++/v1" // CHECK-LIBCXX-NOSTDINCXX-NOT: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/v1" - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin16 \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain/usr/bin \ @@ -156,7 +156,7 @@ // Make sure we explain that we considered a path but didn't add it when it // doesn't exist. - +// // RUN: %clang %s -fsyntax-only -v 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ @@ -165,7 +165,7 @@ // RUN: | FileCheck -DTOOLCHAIN=%S/Inputs/basic_darwin_toolchain_no_libcxx \ // RUN: --check-prefix=CHECK-LIBCXX-MISSING-TOOLCHAIN %s // CHECK-LIBCXX-MISSING-TOOLCHAIN: ignoring nonexistent directory "[[TOOLCHAIN]]/usr/bin/../include/c++/v1" - +// // RUN: %clang %s -fsyntax-only -v 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ diff --git a/clang/test/Driver/darwin-header-search-libstdcxx.cpp b/clang/test/Driver/darwin-header-search-libstdcxx.cpp index 578968efad66d6..070aa80b890580 100644 --- a/clang/test/Driver/darwin-header-search-libstdcxx.cpp +++ b/clang/test/Driver/darwin-header-search-libstdcxx.cpp @@ -4,7 +4,7 @@ // driver and passed to CC1 are correct on Darwin platforms. // Check x86 and x86_64 - +// // RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ // RUN: -target i686-apple-darwin \ // RUN: -stdlib=libstdc++ \ @@ -17,7 +17,7 @@ // CHECK-LIBSTDCXX-X86: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.0.0" // CHECK-LIBSTDCXX-X86: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.0.0/i686-apple-darwin8" // CHECK-LIBSTDCXX-X86: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.0.0/backward" - +// // RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ // RUN: -target x86_64-apple-darwin \ // RUN: -stdlib=libstdc++ \ @@ -32,7 +32,7 @@ // CHECK-LIBSTDCXX-X86_64: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.0.0/backward" // Check arm and thumb - +// // RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ // RUN: -target arm-apple-darwin \ // RUN: -stdlib=libstdc++ \ @@ -45,7 +45,7 @@ // CHECK-LIBSTDCXX-ARM: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.2.1" // CHECK-LIBSTDCXX-ARM: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.2.1/arm-apple-darwin10/v6" // CHECK-LIBSTDCXX-ARM: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.2.1/backward" - +// // RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ // RUN: -target arm-apple-darwin \ // RUN: -stdlib=libstdc++ \ @@ -60,7 +60,7 @@ // CHECK-LIBSTDCXX-THUMB: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.2.1/backward" // Check aarch64 - +// // RUN: %clang -no-canonical-prefixes %s -### -fsyntax-only 2>&1 \ // RUN: -target arm64-apple-darwin \ // RUN: -stdlib=libstdc++ \ @@ -72,20 +72,20 @@ // CHECK-LIBSTDCXX-AARCH64: "-internal-isystem" "[[SYSROOT]]/usr/include/c++/4.2.1/backward" // Make sure we issue a warning when we can't find the path - +// // RUN: %clang -no-canonical-prefixes %s -fsyntax-only 2>&1 \ // RUN: -target x86_64-apple-darwin \ // RUN: -stdlib=libstdc++ \ // RUN: -isysroot %S/Inputs/basic_darwin_sdk_no_libstdcxx \ // RUN: | FileCheck --check-prefix=CHECK-LIBSTDCXX-MISSING %s // CHECK-LIBSTDCXX-MISSING: clang: warning: include path for libstdc++ headers not found; pass '-stdlib=libc++' on the command line to use the libc++ standard library instead - +// // RUN: %clang %s -target x86_64-apple-darwin -fsyntax-only 2>&1 \ // RUN: -isysroot %S/Inputs/basic_darwin_sdk_no_libstdcxx \ // RUN: -stdlib=libc++ \ // RUN: | FileCheck -allow-empty --check-prefix=CHECK-LIBSTDCXX-MISSING-1 %s // CHECK-LIBSTDCXX-MISSING-1-NOT: warning - +// // RUN: %clang %s -target x86_64-apple-darwin16 -fsyntax-only 2>&1 \ // RUN: -isysroot %S/Inputs/basic_darwin_sdk_no_libstdcxx -stdlib=platform \ // RUN: | FileCheck -allow-empty --check-prefix=CHECK-LIBSTDCXX-MISSING-2 %s diff --git a/clang/test/Driver/darwin-header-search-system.cpp b/clang/test/Driver/darwin-header-search-system.cpp index c19b6c992c4bd7..590535fae354de 100644 --- a/clang/test/Driver/darwin-header-search-system.cpp +++ b/clang/test/Driver/darwin-header-search-system.cpp @@ -5,7 +5,7 @@ // Check system headers (everything below and ). Ensure // that both sysroot and isysroot are checked, and that isysroot has precedence. - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ @@ -14,7 +14,7 @@ // RUN: | FileCheck -DSYSROOT=%S/Inputs/basic_darwin_sdk_usr_and_usr_local \ // RUN: -DRESOURCE=%S/Inputs/resource_dir \ // RUN: --check-prefix=CHECK-SYSTEM %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ @@ -23,7 +23,7 @@ // RUN: | FileCheck -DSYSROOT=%S/Inputs/basic_darwin_sdk_usr_and_usr_local \ // RUN: -DRESOURCE=%S/Inputs/resource_dir \ // RUN: --check-prefix=CHECK-SYSTEM %s - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ @@ -33,14 +33,14 @@ // RUN: | FileCheck -DSYSROOT=%S/Inputs/basic_darwin_sdk_usr_and_usr_local \ // RUN: -DRESOURCE=%S/Inputs/resource_dir \ // RUN: --check-prefix=CHECK-SYSTEM %s - +// // CHECK-SYSTEM: "-cc1" // CHECK-SYSTEM: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-SYSTEM: "-internal-isystem" "[[RESOURCE]]/include" // CHECK-SYSTEM: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" // Make sure that using -nobuiltininc will drop resource headers - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ @@ -57,7 +57,7 @@ // Make sure that using -nostdlibinc will drop /usr/local/include and // /usr/include. - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ @@ -74,7 +74,7 @@ // Make sure that -nostdinc drops all the system include paths, including // /include. - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ @@ -90,7 +90,7 @@ // CHECK-NOSTDINC-NOT: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" // Check search paths without -isysroot - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-apple-darwin \ // RUN: -ccc-install-dir %S/Inputs/basic_darwin_toolchain_no_libcxx/usr/bin \ diff --git a/clang/test/Driver/darwin-infer-simulator-sdkroot.c b/clang/test/Driver/darwin-infer-simulator-sdkroot.c index bd4d19d091893e..519e6d27540e36 100644 --- a/clang/test/Driver/darwin-infer-simulator-sdkroot.c +++ b/clang/test/Driver/darwin-infer-simulator-sdkroot.c @@ -1,7 +1,7 @@ // Check that SDKROOT does not infer simulator on when it points to a regular // SDK. // REQUIRES: system-darwin && native - +// // RUN: rm -rf %t/SDKs/iPhoneOS8.0.0.sdk // RUN: mkdir -p %t/SDKs/iPhoneOS8.0.0.sdk // RUN: env SDKROOT=%t/SDKs/iPhoneOS8.0.0.sdk %clang -fuse-ld= %s -mlinker-version=400 -### 2>&1 \ @@ -13,99 +13,99 @@ // CHECK-IPHONE: -apple-ios8.0.0" // CHECK-IPHONE: ld // CHECK-IPHONE: "-iphoneos_version_min" "8.0.0" - - +// +// // RUN: rm -rf %t/SDKs/iPhoneSimulator8.0.sdk // RUN: mkdir -p %t/SDKs/iPhoneSimulator8.0.sdk // RUN: env SDKROOT=%t/SDKs/iPhoneSimulator8.0.sdk %clang -fuse-ld= -arch x86_64 %s -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-SIMULATOR %s - +// // CHECK-SIMULATOR: clang // CHECK-SIMULATOR: "-cc1" // CHECK-SIMULATOR: -apple-ios8.0.0-simulator" // CHECK-SIMULATOR: ld // CHECK-SIMULATOR: "-ios_simulator_version_min" "8.0.0" - - +// +// // RUN: rm -rf %t/SDKs/iPhoneSimulator14.0.sdk // RUN: mkdir -p %t/SDKs/iPhoneSimulator14.0.sdk // RUN: env SDKROOT=%t/SDKs/iPhoneSimulator14.0.sdk %clang -fuse-ld= -arch arm64 %s -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-SIMULATOR-ARM64 %s - +// // CHECK-SIMULATOR-ARM64: clang // CHECK-SIMULATOR-ARM64: "-cc1" // CHECK-SIMULATOR-ARM64: -apple-ios14.0.0-simulator" // CHECK-SIMULATOR-ARM64: ld // CHECK-SIMULATOR-ARM64: "-ios_simulator_version_min" "14.0.0" - - +// +// // RUN: rm -rf %t/SDKs/WatchOS3.0.sdk // RUN: mkdir -p %t/SDKs/WatchOS3.0.sdk // RUN: env SDKROOT=%t/SDKs/WatchOS3.0.sdk %clang %s -fuse-ld= -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-WATCH %s // RUN: env WATCHOS_DEPLOYMENT_TARGET=3.0 %clang %s -fuse-ld= -isysroot %t/SDKs/WatchOS3.0.sdk -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-WATCH %s - +// // CHECK-WATCH: clang // CHECK-WATCH: "-cc1" // CHECK-WATCH: -apple-watchos3.0.0" // CHECK-WATCH: ld // CHECK-WATCH: "-watchos_version_min" "3.0.0" - - +// +// // RUN: rm -rf %t/SDKs/WatchSimulator3.0.sdk // RUN: mkdir -p %t/SDKs/WatchSimulator3.0.sdk // RUN: env SDKROOT=%t/SDKs/WatchSimulator3.0.sdk %clang -fuse-ld= -arch x86_64 %s -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-WATCH-SIMULATOR %s - +// // CHECK-WATCH-SIMULATOR: clang // CHECK-WATCH-SIMULATOR: "-cc1" // CHECK-WATCH-SIMULATOR: -apple-watchos3.0.0-simulator" // CHECK-WATCH-SIMULATOR: ld // CHECK-WATCH-SIMULATOR: "-watchos_simulator_version_min" "3.0.0" - - +// +// // RUN: rm -rf %t/SDKs/WatchSimulator7.0.sdk // RUN: mkdir -p %t/SDKs/WatchSimulator7.0.sdk // RUN: env SDKROOT=%t/SDKs/WatchSimulator7.0.sdk %clang -fuse-ld= -arch arm64 %s -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-WATCH-SIMULATOR-ARM64 %s - +// // CHECK-WATCH-SIMULATOR-ARM64: clang // CHECK-WATCH-SIMULATOR-ARM64: "-cc1" // CHECK-WATCH-SIMULATOR-ARM64: -apple-watchos7.0.0-simulator" // CHECK-WATCH-SIMULATOR-ARM64: ld // CHECK-WATCH-SIMULATOR-ARM64: "-watchos_simulator_version_min" "7.0.0" - - +// +// // RUN: rm -rf %t/SDKs/AppleTVOS10.0.sdk // RUN: mkdir -p %t/SDKs/AppleTVOS10.0.sdk // RUN: env SDKROOT=%t/SDKs/AppleTVOS10.0.sdk %clang %s -fuse-ld= -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-TV %s - +// // CHECK-TV: clang // CHECK-TV: "-cc1" // CHECK-TV: -apple-tvos10.0.0" // CHECK-TV: ld // CHECK-TV: "-tvos_version_min" "10.0.0" - - +// +// // RUN: rm -rf %t/SDKs/AppleTVSimulator10.0.sdk // RUN: mkdir -p %t/SDKs/AppleTVSimulator10.0.sdk // RUN: env SDKROOT=%t/SDKs/AppleTVSimulator10.0.sdk %clang -fuse-ld= -arch x86_64 %s -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-TV-SIMULATOR %s - +// // CHECK-TV-SIMULATOR: clang // CHECK-TV-SIMULATOR: "-cc1" // CHECK-TV-SIMULATOR: -apple-tvos10.0.0-simulator" // CHECK-TV-SIMULATOR: ld // CHECK-TV-SIMULATOR: "-tvos_simulator_version_min" "10.0.0" - - +// +// // RUN: rm -rf %t/SDKs/AppleTVSimulator14.0.sdk // RUN: mkdir -p %t/SDKs/AppleTVSimulator14.0.sdk // RUN: env SDKROOT=%t/SDKs/AppleTVSimulator14.0.sdk %clang -fuse-ld= -arch arm64 %s -mlinker-version=400 -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-TV-SIMULATOR-ARM64 %s - +// // CHECK-TV-SIMULATOR-ARM64: clang // CHECK-TV-SIMULATOR-ARM64: "-cc1" // CHECK-TV-SIMULATOR-ARM64: -apple-tvos14.0.0-simulator" diff --git a/clang/test/Driver/darwin-ld-lto.c b/clang/test/Driver/darwin-ld-lto.c index 8287ed50dcf40a..efa28b6746fac6 100644 --- a/clang/test/Driver/darwin-ld-lto.c +++ b/clang/test/Driver/darwin-ld-lto.c @@ -8,7 +8,7 @@ // RUN: %clang -fuse-ld= -target x86_64-apple-darwin10 -### %s \ // RUN: -ccc-install-dir %t/bin -mlinker-version=133 2> %t.log // RUN: FileCheck -check-prefix=LINK_LTOLIB_PATH %s -input-file %t.log - +// // LINK_LTOLIB_PATH: {{ld(.exe)?"}} // LINK_LTOLIB_PATH: "-lto_library" diff --git a/clang/test/Driver/darwin-ld.c b/clang/test/Driver/darwin-ld.c index 914d0b2b24df72..3a836d4dd1f13d 100644 --- a/clang/test/Driver/darwin-ld.c +++ b/clang/test/Driver/darwin-ld.c @@ -69,27 +69,27 @@ // RUN: %clang -target i386-apple-darwin9 -### -fpie %t.o 2> %t.log // RUN: FileCheck -check-prefix=LINK_EXPLICIT_PIE %s < %t.log - +// // LINK_EXPLICIT_PIE: {{ld(.exe)?"}} // LINK_EXPLICIT_PIE: "-pie" // RUN: %clang -target i386-apple-darwin9 -### -fno-pie %t.o 2> %t.log // RUN: FileCheck -check-prefix=LINK_EXPLICIT_NO_PIE %s < %t.log - +// // LINK_EXPLICIT_NO_PIE: {{ld(.exe)?"}} // LINK_EXPLICIT_NO_PIE: "-no_pie" // RUN: %clang -target x86_64-apple-darwin10 -### %t.o \ // RUN: -fuse-ld= -mlinker-version=100 2> %t.log // RUN: FileCheck -check-prefix=LINK_NEWER_DEMANGLE %s < %t.log - +// // LINK_NEWER_DEMANGLE: {{ld(.exe)?"}} // LINK_NEWER_DEMANGLE: "-demangle" // RUN: %clang -target x86_64-apple-darwin10 -### %t.o \ // RUN: -fuse-ld= -mlinker-version=100 -Wl,--no-demangle 2> %t.log // RUN: FileCheck -check-prefix=LINK_NEWER_NODEMANGLE %s < %t.log - +// // LINK_NEWER_NODEMANGLE: {{ld(.exe)?"}} // LINK_NEWER_NODEMANGLE-NOT: "-demangle" // LINK_NEWER_NODEMANGLE: "-lSystem" @@ -97,7 +97,7 @@ // RUN: %clang -target x86_64-apple-darwin10 -### %t.o \ // RUN: -fuse-ld= -mlinker-version=95 2> %t.log // RUN: FileCheck -check-prefix=LINK_OLDER_NODEMANGLE %s < %t.log - +// // LINK_OLDER_NODEMANGLE: {{ld(.exe)?"}} // LINK_OLDER_NODEMANGLE-NOT: "-demangle" // LINK_OLDER_NODEMANGLE: "-lSystem" @@ -106,7 +106,7 @@ // RUN: -fuse-ld= -mlinker-version=117 -flto 2> %t.log // RUN: cat %t.log // RUN: FileCheck -check-prefix=LINK_OBJECT_LTO_PATH %s < %t.log - +// // LINK_OBJECT_LTO_PATH: {{ld(.exe)?"}} // LINK_OBJECT_LTO_PATH: "-object_path_lto" @@ -114,20 +114,20 @@ // RUN: -force_load a -force_load b 2> %t.log // RUN: cat %t.log // RUN: FileCheck -check-prefix=FORCE_LOAD %s < %t.log - +// // FORCE_LOAD: {{ld(.exe)?"}} // FORCE_LOAD: "-force_load" "a" "-force_load" "b" // RUN: %clang -target x86_64-apple-darwin10 -### %t.o \ // RUN: -lazy_framework Framework 2> %t.log - +// // RUN: FileCheck -check-prefix=LINK_LAZY_FRAMEWORK %s < %t.log // LINK_LAZY_FRAMEWORK: {{ld(.exe)?"}} // LINK_LAZY_FRAMEWORK: "-lazy_framework" "Framework" // RUN: %clang -target x86_64-apple-darwin10 -### %t.o \ // RUN: -lazy_library Library 2> %t.log - +// // RUN: FileCheck -check-prefix=LINK_LAZY_LIBRARY %s < %t.log // LINK_LAZY_LIBRARY: {{ld(.exe)?"}} // LINK_LAZY_LIBRARY: "-lazy_library" "Library" @@ -253,16 +253,16 @@ // RUN: %clang -target x86_64h-apple-darwin -### %t.o 2> %t.log // RUN: FileCheck -check-prefix=LINK_X86_64H_ARCH %s < %t.log - +// // LINK_X86_64H_ARCH: {{ld(.exe)?"}} // LINK_X86_64H_ARCH: "x86_64h" // RUN: %clang -target x86_64-apple-darwin -arch x86_64 -arch x86_64h -### %t.o 2> %t.log // RUN: FileCheck -check-prefix=LINK_X86_64H_MULTIARCH %s < %t.log - +// // LINK_X86_64H_MULTIARCH: {{ld(.exe)?"}} // LINK_X86_64H_MULTIARCH: "x86_64" - +// // LINK_X86_64H_MULTIARCH: {{ld(.exe)?"}} // LINK_X86_64H_MULTIARCH: "x86_64h" @@ -345,11 +345,11 @@ // RUN: %clang -target x86_64-apple-darwin12 -fprofile-instr-generate -Xlinker -exported_symbols_list -Xlinker /dev/null -### %t.o 2> %t.log // RUN: FileCheck -check-prefix=PROFILE_EXPORT %s < %t.log // PROFILE_EXPORT: "-exported_symbol" "___llvm_profile_filename" "-exported_symbol" "___llvm_profile_raw_version" - +// // RUN: %clang -target x86_64-apple-darwin12 -fprofile-instr-generate --coverage -### %t.o 2> %t.log // RUN: FileCheck -check-prefix=NO_PROFILE_EXPORT %s < %t.log // NO_PROFILE_EXPORT-NOT: "-exported_symbol" - +// // RUN: %clang -target x86_64-apple-darwin12 --coverage -exported_symbols_list /dev/null -### %t.o 2> %t.log // RUN: FileCheck -check-prefix=GCOV_EXPORT %s < %t.log // RUN: %clang -target x86_64-apple-darwin12 -fprofile-arcs -Wl,-exported_symbols_list,/dev/null -### %t.o 2> %t.log @@ -362,7 +362,7 @@ // RUN: FileCheck -check-prefix=GCOV_EXPORT %s < %t.log // GCOV_EXPORT: "-exported_symbol" "___gcov_dump" // GCOV_EXPORT: "-exported_symbol" "___gcov_reset" - +// // Check that we can pass the outliner down to the linker. // RUN: env IPHONEOS_DEPLOYMENT_TARGET=7.0 \ // RUN: %clang -target arm64-apple-darwin -moutline -### %t.o 2> %t.log diff --git a/clang/test/Driver/darwin-max-type-align.c b/clang/test/Driver/darwin-max-type-align.c index cfbc174f424623..bce0a7cb0d7212 100644 --- a/clang/test/Driver/darwin-max-type-align.c +++ b/clang/test/Driver/darwin-max-type-align.c @@ -1,6 +1,6 @@ // Check the -fmax-type-align=N flag // rdar://16254558 - +// // RUN: %clang --target=x86_64-apple-macosx10.7.0 %s -o - -### 2>&1 | \ // RUN: FileCheck -check-prefix=TEST0 %s // TEST0: -fmax-type-align=16 diff --git a/clang/test/Driver/darwin-multiarch-arm.c b/clang/test/Driver/darwin-multiarch-arm.c index b983c472120ebe..0ea5c4bf9a69a4 100644 --- a/clang/test/Driver/darwin-multiarch-arm.c +++ b/clang/test/Driver/darwin-multiarch-arm.c @@ -1,5 +1,5 @@ // Check that we compile correctly with multiple ARM -arch options. - +// // RUN: %clang -target arm7-apple-darwin10 -### \ // RUN: -arch armv7 -arch armv7s %s 2>&1 | FileCheck %s diff --git a/clang/test/Driver/darwin-opt-record-ld.c b/clang/test/Driver/darwin-opt-record-ld.c index cf09667989ea1e..83630ed01da8b5 100644 --- a/clang/test/Driver/darwin-opt-record-ld.c +++ b/clang/test/Driver/darwin-opt-record-ld.c @@ -1,7 +1,7 @@ // REQUIRES: system-darwin // RUN: touch %t.o - +// // Check that we're not passing -lto-pass-remarks-output if not requested // RUN: %clang -target x86_64-apple-darwin12 %t.o -### -o foo/bar.out 2> %t.log // RUN: FileCheck -check-prefix=NO_PASS_REMARKS_OUTPUT %s < %t.log @@ -27,7 +27,7 @@ // RUN: %clang -target x86_64-apple-darwin12 %t.o -fsave-optimization-record -foptimization-record-passes=inline -### -o foo/bar.out 2> %t.log // RUN: FileCheck -check-prefix=PASS_REMARKS_WITH_PASSES %s < %t.log // PASS_REMARKS_WITH_PASSES: "-mllvm" "-lto-pass-remarks-output" "-mllvm" "foo/bar.out.opt.yaml" "-mllvm" "-lto-pass-remarks-filter=inline" - +// // RUN: %clang -target x86_64-apple-darwin12 %t.o -fsave-optimization-record=some-format -### -o foo/bar.out 2> %t.log // RUN: FileCheck -check-prefix=PASS_REMARKS_WITH_FORMAT %s < %t.log // PASS_REMARKS_WITH_FORMAT: "-mllvm" "-lto-pass-remarks-output" "-mllvm" "foo/bar.out.opt.some-format" "-mllvm" "-lto-pass-remarks-format=some-format" @@ -40,7 +40,7 @@ // RUN: FileCheck -check-prefix=PASS_REMARKS_WITH_FAT %s < %t.log // PASS_REMARKS_WITH_FAT: "-arch" "x86_64"{{.*}}"-mllvm" "-lto-pass-remarks-output" // PASS_REMARKS_WITH_FAT-NEXT: "-arch" "x86_64h"{{.*}}"-mllvm" "-lto-pass-remarks-output" - +// // RUN: %clang -target x86_64-apple-darwin12 -arch x86_64 -arch x86_64h %t.o -foptimization-record-file=custom.opt.yaml -### -o foo/bar.out 2> %t.log // RUN: FileCheck -check-prefix=PASS_REMARKS_WITH_FILE_FAT %s < %t.log // PASS_REMARKS_WITH_FILE_FAT: error: cannot use '-foptimization-record-file' output with multiple -arch options diff --git a/clang/test/Driver/darwin-opt-record.c b/clang/test/Driver/darwin-opt-record.c index 4645179d396b5d..4a61932bc32e81 100644 --- a/clang/test/Driver/darwin-opt-record.c +++ b/clang/test/Driver/darwin-opt-record.c @@ -5,25 +5,25 @@ // RUN: %clang -target x86_64-apple-darwin10 -### -o FOO -fsave-optimization-record %s 2>&1 | FileCheck %s --check-prefix=CHECK-DSYMUTIL-NO-G // RUN: %clang -target x86_64-apple-darwin10 -### -o FOO -g0 -fsave-optimization-record %s 2>&1 | FileCheck %s --check-prefix=CHECK-DSYMUTIL-G0 // RUN: %clang -target x86_64-apple-darwin10 -### -o FOO -fsave-optimization-record=bitstream %s 2>&1 | FileCheck %s --check-prefix=CHECK-NO-G-PATH-BITSTREAM - +// // CHECK-MULTIPLE-ARCH: "-cc1" // CHECK-MULTIPLE-ARCH: "-opt-record-file" "FOO-x86_64.opt.yaml" // CHECK-MULTIPLE-ARCH: "-cc1" // CHECK-MULTIPLE-ARCH: "-opt-record-file" "FOO-x86_64h.opt.yaml" - +// // CHECK-MULTIPLE-ARCH-ERROR: cannot use '-foptimization-record-file' output with multiple -arch options - +// // CHECK-DSYMUTIL-NO-G: "-cc1" // CHECK-DSYMUTIL-NO-G: ld // CHECK-DSYMUTIL-NO-G: dsymutil - +// // Even in the presence of -g0, -fsave-optimization-record implies // -gline-tables-only and would need -fno-save-optimization-record to // completely disable it. // CHECK-DSYMUTIL-G0: "-cc1" // CHECK-DSYMUTIL-G0: ld // CHECK-DSYMUTIL-G0: dsymutil - +// // CHECK-NO-G-PATH-BITSTREAM: "-cc1" // CHECK-NO-G-PATH-BITSTREAM: "-opt-record-file" "[[OUTPATH:.*]].opt.bitstream" // CHECK-NO-G-PATH-BITSTREAM: "-o" "[[OUTPATH:.*]].o" diff --git a/clang/test/Driver/darwin-sdk-version.c b/clang/test/Driver/darwin-sdk-version.c index b3f391e76d6ff7..e95103b7cfb580 100644 --- a/clang/test/Driver/darwin-sdk-version.c +++ b/clang/test/Driver/darwin-sdk-version.c @@ -2,7 +2,7 @@ // RUN: | FileCheck %s // RUN: env SDKROOT=%S/Inputs/MacOSX10.14.sdk %clang -target x86_64-apple-macosx10.13 -c -### %s 2>&1 \ // RUN: | FileCheck %s - +// // RUN: rm -rf %t/SDKs/MacOSX10.10.sdk // RUN: mkdir -p %t/SDKs/MacOSX10.10.sdk // RUN: %clang -m64 -isysroot %t/SDKs/MacOSX10.10.sdk -c -### %s 2>&1 \ @@ -11,18 +11,18 @@ // RUN: %clang -m64 -isysroot %t/SDKs/MacOSX10.10.sdk -c -### %s 2>&1 \ // RUN: | FileCheck --check-prefix=INFER_DEPLOYMENT_TARGET_VERSION %s // REQUIRES: system-darwin && native - +// // RUN: rm -rf %t/SDKs/MacOSX10.14.sdk // RUN: mkdir -p %t/SDKs/MacOSX10.14.sdk // RUN: %clang -target x86_64-apple-macosx10.13 -isysroot %t/SDKs/MacOSX10.14.sdk -c -### %s 2>&1 \ // RUN: | FileCheck --check-prefix=NO_VERSION %s - +// // RUN: rm -rf %t/SDKs/MacOSX10.14.sdk // RUN: mkdir -p %t/SDKs/MacOSX10.14.sdk // RUN: echo '{broken json' > %t/SDKs/MacOSX10.14.sdk/SDKSettings.json // RUN: %clang -target x86_64-apple-macosx10.13 -isysroot %t/SDKs/MacOSX10.14.sdk -c -### %s 2>&1 \ // RUN: | FileCheck --check-prefixes=NO_VERSION,ERROR %s - +// // RUN: rm -rf %t/SDKs/MacOSX10.14.sdk // RUN: mkdir -p %t/SDKs/MacOSX10.14.sdk // RUN: echo '{"Version":1}' > %t/SDKs/MacOSX10.14.sdk/SDKSettings.json diff --git a/clang/test/Driver/darwin-sdk-with-prefix.c b/clang/test/Driver/darwin-sdk-with-prefix.c index 8d84fa4fb1651b..7619ded56b65a8 100644 --- a/clang/test/Driver/darwin-sdk-with-prefix.c +++ b/clang/test/Driver/darwin-sdk-with-prefix.c @@ -5,6 +5,6 @@ // RUN: mkdir -p %t.dir/prefix.iPhoneOS12.0.0.sdk // RUN: %clang -c -isysroot %t.dir/prefix.iPhoneOS12.0.0.sdk -target arm64-apple-darwin %s -### 2>&1 | FileCheck %s // RUN: env SDKROOT=%t.dir/prefix.iPhoneOS12.0.0.sdk %clang -c -target arm64-apple-darwin %s -### 2>&1 | FileCheck %s - +// // CHECK-NOT: warning: using sysroot for // CHECK: "-triple" "arm64-apple-ios12.0.0" diff --git a/clang/test/Driver/darwin-sdkroot.c b/clang/test/Driver/darwin-sdkroot.c index f19734c5abc91b..9cb0265a9bfb91 100644 --- a/clang/test/Driver/darwin-sdkroot.c +++ b/clang/test/Driver/darwin-sdkroot.c @@ -1,74 +1,74 @@ // Check that SDKROOT is used to define the default for -isysroot on Darwin. - +// // RUN: rm -rf %t.tmpdir // RUN: mkdir -p %t.tmpdir // RUN: env SDKROOT=%t.tmpdir %clang -target x86_64-apple-darwin10 --sysroot="" \ // RUN: -c %s -### 2> %t.log // RUN: FileCheck --check-prefix=CHECK-BASIC < %t.log %s - +// // CHECK-BASIC: clang // CHECK-BASIC: "-cc1" // CHECK-BASIC: "-isysroot" "{{.*tmpdir}}" // Check that we don't use SDKROOT as the default if it is not a valid path. - +// // RUN: rm -rf %t.nonpath // RUN: env SDKROOT=%t.nonpath %clang -target x86_64-apple-darwin10 --sysroot="" \ // RUN: -c %s -### 2> %t.log // RUN: FileCheck --check-prefix=CHECK-NONPATH < %t.log %s - +// // CHECK-NONPATH: clang // CHECK-NONPATH: "-cc1" // CHECK-NONPATH-NOT: "-isysroot" // Check that we don't use SDKROOT as the default if it is just "/" - +// // RUN: env SDKROOT=/ %clang -target x86_64-apple-darwin10 --sysroot="" \ // RUN: -c %s -### 2> %t.log // RUN: FileCheck --check-prefix=CHECK-NONROOT < %t.log %s - +// // CHECK-NONROOT: clang // CHECK-NONROOT: "-cc1" // CHECK-NONROOT-NOT: "-isysroot" - +// // This test fails with MSYS or MSYS2 env.exe, since it does not preserve // root, expanding / into C:/MINGW/MSYS/1.0 or c:/msys64. To reproduce the // problem, run: - +// // env SDKROOT=/ cmd //c echo %SDKROOT% - +// // This test do pass using GnuWin32 env.exe. // Check if clang set the correct deployment target from -sysroot - +// // RUN: rm -rf %t/SDKs/iPhoneOS8.0.0.sdk // RUN: mkdir -p %t/SDKs/iPhoneOS8.0.0.sdk // RUN: env SDKROOT=%t/SDKs/iPhoneOS8.0.0.sdk %clang -fuse-ld= -target arm64-apple-darwin -mlinker-version=400 --sysroot="" %s -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-IPHONE %s - +// // CHECK-IPHONE: clang // CHECK-IPHONE: "-cc1" // CHECK-IPHONE: "-triple" "arm64-apple-ios8.0.0" // CHECK-IPHONE: ld // CHECK-IPHONE: "-iphoneos_version_min" "8.0.0" - - +// +// // RUN: rm -rf %t/SDKs/iPhoneSimulator8.0.sdk // RUN: mkdir -p %t/SDKs/iPhoneSimulator8.0.sdk // RUN: env SDKROOT=%t/SDKs/iPhoneSimulator8.0.sdk %clang -fuse-ld= -target x86_64-apple-darwin -mlinker-version=400 --sysroot="" %s -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-SIMULATOR %s - +// // CHECK-SIMULATOR: clang // CHECK-SIMULATOR: "-cc1" // CHECK-SIMULATOR: "-triple" "x86_64-apple-ios8.0.0-simulator" // CHECK-SIMULATOR: ld // CHECK-SIMULATOR: "-ios_simulator_version_min" "8.0.0" - +// // RUN: rm -rf %t/SDKs/MacOSX10.10.0.sdk // RUN: mkdir -p %t/SDKs/MacOSX10.10.0.sdk // RUN: env SDKROOT=%t/SDKs/MacOSX10.10.0.sdk %clang -fuse-ld= -target x86_64-apple-darwin -mlinker-version=400 --sysroot="" %s -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MACOSX %s - +// // CHECK-MACOSX: clang // CHECK-MACOSX: "-cc1" // CHECK-MACOSX: "-triple" "x86_64-apple-macosx10.10.0" diff --git a/clang/test/Driver/darwin-verify-debug.c b/clang/test/Driver/darwin-verify-debug.c index a141eb805535ad..6b91290866a4be 100644 --- a/clang/test/Driver/darwin-verify-debug.c +++ b/clang/test/Driver/darwin-verify-debug.c @@ -1,32 +1,32 @@ // Check that we verify debug output properly with multiple -arch options. - +// // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-phases \ // RUN: --verify-debug-info -arch i386 -arch x86_64 %s -g 2> %t // RUN: FileCheck -check-prefix=CHECK-MULTIARCH-ACTIONS < %t %s - +// // CHECK-MULTIARCH-ACTIONS: 0: input, "{{.*}}darwin-verify-debug.c", c // CHECK-MULTIARCH-ACTIONS: 9: dsymutil, {8}, dSYM // CHECK-MULTIARCH-ACTIONS: 10: verify-debug-info, {9}, none - +// // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-bindings \ // RUN: --verify-debug-info -arch i386 -arch x86_64 %s -g 2> %t // RUN: FileCheck -check-prefix=CHECK-MULTIARCH-BINDINGS < %t %s - +// // CHECK-MULTIARCH-BINDINGS: # "x86_64-apple-darwin10" - "darwin::Dsymutil", inputs: ["a.out"], output: "a.out.dSYM" // CHECK-MULTIARCH-BINDINGS: # "x86_64-apple-darwin10" - "darwin::VerifyDebug", inputs: ["a.out.dSYM"], output: (nothing) // Check output name derivation. - +// // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-bindings \ // RUN: --verify-debug-info -o foo %s -g 2> %t // RUN: FileCheck -check-prefix=CHECK-OUTPUT-NAME < %t %s - +// // CHECK-OUTPUT-NAME: "x86_64-apple-darwin10" - "darwin::Linker", inputs: [{{.*}}], output: "foo" // CHECK-OUTPUT-NAME: "x86_64-apple-darwin10" - "darwin::Dsymutil", inputs: ["foo"], output: "foo.dSYM" // CHECK-OUTPUT-NAME: "x86_64-apple-darwin10" - "darwin::VerifyDebug", inputs: ["foo.dSYM"], output: (nothing) // Check that we only verify when needed. - +// // RUN: touch %t.o // RUN: %clang -target x86_64-apple-darwin10 -ccc-print-bindings \ // RUN: --verify-debug-info -o foo %t.o -g 2> %t diff --git a/clang/test/Driver/darwin-version.c b/clang/test/Driver/darwin-version.c index 27a670d1b78c83..8b66aef489c9b7 100644 --- a/clang/test/Driver/darwin-version.c +++ b/clang/test/Driver/darwin-version.c @@ -153,7 +153,7 @@ // RUN: %clang -target x86_64-apple-darwin -c %s -### 2>&1 | \ // RUN: FileCheck --check-prefix=CHECK-VERSION-DRIVERKIT %s // CHECK-VERSION-DRIVERKIT: "x86_64-apple-driverkit19.0.0" - +// // Make sure stdlib is not mistaken // RUN: env DRIVERKIT_DEPLOYMENT_TARGET=2.0 \ // RUN: %clang -target arm64-apple-darwin -c -x c++ %s -stdlib=libc++ -### 2>&1 diff --git a/clang/test/Driver/darwin-xarch.c b/clang/test/Driver/darwin-xarch.c index e2ea194310ad0c..2b9682a253d738 100644 --- a/clang/test/Driver/darwin-xarch.c +++ b/clang/test/Driver/darwin-xarch.c @@ -3,20 +3,20 @@ // RUN: -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 \ // RUN: -c %s 2> %t // RUN: FileCheck --check-prefix=CHECK-COMPILE < %t %s - +// // CHECK-COMPILE: "-cc1" "-triple" "i386-apple-macosx10.4.0" // CHECK-COMPILE: "-cc1" "-triple" "x86_64-apple-macosx10.5.0" // RUN: %clang --target=x86_64-apple-darwin10 -### \ // RUN: -arch i386 -Xarch_i386 -Wl,-some-linker-arg -filelist X 2> %t // RUN: FileCheck --check-prefix=CHECK-LINK < %t %s - +// // CHECK-LINK: ld{{.*}} "-arch" "i386"{{.*}} "-some-linker-arg" // RUN: %clang --target=x86_64-apple-darwin10 -### \ // RUN: -arch armv7 -Xarch_armv7 -Wl,-some-linker-arg -filelist X 2> %t // RUN: FileCheck --check-prefix=CHECK-ARMV7-LINK < %t %s - +// // CHECK-ARMV7-LINK: ld{{.*}} "-arch" "armv7"{{.*}} "-some-linker-arg" @@ -25,11 +25,11 @@ // RUN: -arch armv7s -Xarch_armv7s -DARMV7S=1 \ // RUN: -c %s 2> %t // RUN: FileCheck --check-prefix=CHECK-ARMV7S < %t %s - +// // CHECK-ARMV7S: "-cc1" "-triple" "thumbv7-apple-ios7.0.0" // CHECK-ARMV7S-NOT: "-D" "ARMV7S=1" // CHECK-ARMV7S-SAME: "-D" "ARMV7=1" - +// // CHECK-ARMV7S: "-cc1" "-triple" "thumbv7s-apple-ios7.0.0" // CHECK-ARMV7S-NOT: "-D" "ARMV7=1" // CHECK-ARMV7S-SAME: "-D" "ARMV7S=1" @@ -39,11 +39,11 @@ // RUN: -arch arm64e -Xarch_arm64e -DARM64E=1 \ // RUN: -c %s 2> %t // RUN: FileCheck --check-prefix=CHECK-ARM64 < %t %s - +// // CHECK-ARM64: "-cc1" "-triple" "arm64-apple-ios14.0.0" // CHECK-ARM64-NOT: "-D" "ARM64E=1" // CHECK-ARM64-SAME: "-D" "ARM64=1" - +// // CHECK-ARM64: "-cc1" "-triple" "arm64e-apple-ios14.0.0" // CHECK-ARM64-NOT: "-D" "ARM64=1" // CHECK-ARM64-SAME: "-D" "ARM64E=1" diff --git a/clang/test/Driver/debug-options-as.c b/clang/test/Driver/debug-options-as.c index 4ee7567b5f19f8..87268e8c5deaf4 100644 --- a/clang/test/Driver/debug-options-as.c +++ b/clang/test/Driver/debug-options-as.c @@ -3,7 +3,7 @@ // rdar://10383444 // RUN: %clang -### -c -save-temps -integrated-as -g %s 2>&1 \ // RUN: | FileCheck -check-prefix=SAVE %s - +// // SAVE: "-cc1"{{.*}}"-E"{{.*}}"-debug-info-kind= // SAVE: "-cc1"{{.*}}"-emit-llvm-bc"{{.*}}"-debug-info-kind= // SAVE: "-cc1"{{.*}}"-S"{{.*}}"-debug-info-kind= @@ -13,7 +13,7 @@ // Make sure that '-ggdb0' is not accidentally mistaken for '-g' // RUN: %clang -### -ggdb0 -c -integrated-as -x assembler %s 2>&1 \ // RUN: | FileCheck -check-prefix=GGDB0 %s - +// // GGDB0: "-cc1as" // GGDB0-NOT: -debug-info-kind= @@ -21,7 +21,7 @@ // rdar://9275556 // RUN: %clang -### -c -integrated-as -g -x assembler %s 2>&1 \ // RUN: | FileCheck %s - +// // CHECK: "-cc1as" // CHECK: "-debug-info-kind=constructor" @@ -29,7 +29,7 @@ // rdar://12955296 // RUN: %clang -### -c -integrated-as -g -x assembler %s 2>&1 \ // RUN: | FileCheck -check-prefix=P %s - +// // P: "-cc1as" // P: "-dwarf-debug-producer" @@ -56,7 +56,7 @@ // RUN: | FileCheck -check-prefix=GDWARF64_32ARCH %s // RUN: %clang -### -c -gdwarf64 -gdwarf-4 -target x86_64-apple-darwin %s 2>&1 \ // RUN: | FileCheck -check-prefix=GDWARF64_ELF %s - +// // GDWARF64_VER: error: invalid argument '-gdwarf64' only allowed with 'DWARFv3 or greater' // GDWARF64_32ARCH: error: invalid argument '-gdwarf64' only allowed with '64 bit architecture' // GDWARF64_ELF: error: invalid argument '-gdwarf64' only allowed with 'ELF platforms' diff --git a/clang/test/Driver/debug-options.c b/clang/test/Driver/debug-options.c index 05d83045a5833e..04004716aa5012 100644 --- a/clang/test/Driver/debug-options.c +++ b/clang/test/Driver/debug-options.c @@ -145,19 +145,19 @@ // RUN: %clang -### -c -gdwarf-2 %s 2>&1 \ // RUN: | FileCheck -check-prefix=G_ONLY_DWARF2 %s - +// // RUN: not %clang -### -c -gfoo %s 2>&1 | FileCheck -check-prefix=G_ERR %s // RUN: %clang -### -c -g -g0 %s 2>&1 | FileCheck -check-prefix=G_NO %s // RUN: %clang -### -c -ggdb0 %s 2>&1 | FileCheck -check-prefix=G_NO %s // RUN: %clang -### -c -glldb -g0 %s 2>&1 | FileCheck -check-prefix=G_NO %s // RUN: %clang -### -c -glldb -g1 %s 2>&1 \ // RUN: | FileCheck -check-prefix=GLTO_ONLY -check-prefix=G_LLDB %s - +// // PS4 defaults to sce; -ggdb0 changes tuning but turns off debug info, // then -g turns it back on without affecting tuning. // RUN: %clang -### -c -ggdb0 -g -target x86_64-scei-ps4 %s 2>&1 \ // RUN: | FileCheck -check-prefix=G_GDB %s - +// // RUN: %clang -### -c -g1 %s 2>&1 \ // RUN: | FileCheck -check-prefix=GLTO_ONLY %s // RUN: %clang -### -c -gmlt %s 2>&1 \ @@ -182,7 +182,7 @@ // RUN: | FileCheck -check-prefix=G_ONLY_DWARF2 %s // RUN: %clang -### -c -gline-tables-only -g0 %s 2>&1 \ // RUN: | FileCheck -check-prefix=GLTO_NO %s - +// // RUN: %clang -### -c -gline-directives-only %s -target x86_64-apple-darwin 2>&1 \ // RUN: | FileCheck -check-prefix=GLIO_ONLY %s // RUN: %clang -### -c -gline-directives-only %s -target i686-pc-openbsd 2>&1 \ @@ -201,7 +201,7 @@ // RUN: | FileCheck -check-prefix=G_ONLY_DWARF2 %s // RUN: %clang -### -c -gline-directives-only -g0 %s 2>&1 \ // RUN: | FileCheck -check-prefix=GLIO_NO %s - +// // RUN: %clang -### -c -grecord-gcc-switches %s 2>&1 \ // | FileCheck -check-prefix=GRECORD %s // RUN: %clang -### -c -gno-record-gcc-switches %s 2>&1 \ @@ -212,7 +212,7 @@ // | FileCheck -check-prefix=GRECORD_O %s // RUN: %clang -### -c -O3 -ffunction-sections -grecord-gcc-switches %s 2>&1 \ // | FileCheck -check-prefix=GRECORD_OPT %s - +// // RUN: %clang -### -c -grecord-command-line %s 2>&1 \ // | FileCheck -check-prefix=GRECORD %s // RUN: %clang -### -c -gno-record-command-line %s 2>&1 \ @@ -223,104 +223,104 @@ // | FileCheck -check-prefix=GRECORD_O %s // RUN: %clang -### -c -O3 -ffunction-sections -grecord-command-line %s 2>&1 \ // | FileCheck -check-prefix=GRECORD_OPT %s - +// // RUN: %clang -### -c -gstrict-dwarf -gno-strict-dwarf %s 2>&1 \ // RUN: | FileCheck -check-prefix=GIGNORE %s - +// // RUN: %clang -### -c -ggnu-pubnames %s 2>&1 | FileCheck -check-prefix=GPUB %s // RUN: %clang -### -c -ggdb %s 2>&1 | FileCheck -check-prefix=NOPUB %s // RUN: %clang -### -c -ggnu-pubnames -gno-gnu-pubnames %s 2>&1 | FileCheck -check-prefix=NOPUB %s // RUN: %clang -### -c -ggnu-pubnames -gno-pubnames %s 2>&1 | FileCheck -check-prefix=NOPUB %s - +// // RUN: %clang -### -c -gpubnames %s 2>&1 | FileCheck -check-prefix=PUB %s // RUN: %clang -### -c -ggdb %s 2>&1 | FileCheck -check-prefix=NOPUB %s // RUN: %clang -### -c -gpubnames -gno-gnu-pubnames %s 2>&1 | FileCheck -check-prefix=NOPUB %s // RUN: %clang -### -c -gpubnames -gno-pubnames %s 2>&1 | FileCheck -check-prefix=NOPUB %s - +// // RUN: %clang -### -c -gsplit-dwarf -g -gno-pubnames %s 2>&1 | FileCheck -check-prefix=NOPUB %s - +// // RUN: %clang -### -c -fdebug-ranges-base-address %s 2>&1 | FileCheck -check-prefix=RNGBSE %s // RUN: %clang -### -c %s 2>&1 | FileCheck -check-prefix=NORNGBSE %s // RUN: %clang -### -c -fdebug-ranges-base-address -fno-debug-ranges-base-address %s 2>&1 | FileCheck -check-prefix=NORNGBSE %s - +// // RUN: %clang -### -c -glldb %s 2>&1 | FileCheck -check-prefix=NOPUB %s // RUN: %clang -### -c -glldb -gno-pubnames %s 2>&1 | FileCheck -check-prefix=NOPUB %s - +// // RUN: %clang -### -c -gdwarf-aranges %s 2>&1 | FileCheck -check-prefix=GARANGE %s - +// // RUN: %clang -### -fdebug-types-section -target x86_64-unknown-linux %s 2>&1 \ // RUN: | FileCheck -check-prefix=FDTS %s - +// // RUN: %clang -### -fdebug-types-section -fno-debug-types-section -target x86_64-unknown-linux %s 2>&1 \ // RUN: | FileCheck -check-prefix=NOFDTS %s - +// // RUN: %clang -### -fdebug-types-section -target wasm32-unknown-unknown %s 2>&1 \ // RUN: | FileCheck -check-prefix=FDTS %s - +// // RUN: %clang -### -fdebug-types-section -target x86_64-apple-darwin %s 2>&1 \ // RUN: | FileCheck -check-prefix=FDTSE %s - +// // RUN: %clang -### -fdebug-types-section -fno-debug-types-section -target x86_64-apple-darwin %s 2>&1 \ // RUN: | FileCheck -check-prefix=NOFDTSE %s - +// // RUN: %clang -### -g -gno-column-info %s 2>&1 \ // RUN: | FileCheck -check-prefix=NOCI %s - +// // RUN: %clang -### -g -target x86_64-unknown-unknown %s 2>&1 \ // | FileCheck -check-prefix=CI %s - +// // RUN: %clang -### -gmodules %s 2>&1 \ // RUN: | FileCheck -check-prefix=GEXTREFS %s - +// // RUN: %clang -### -gmodules -g %s 2>&1 \ // RUN: | FileCheck -check-prefix=GEXTREFS %s - +// // RUN: %clang -### -gline-tables-only -gmodules %s 2>&1 \ // RUN: | FileCheck -check-prefix=GEXTREFS %s - +// // RUN: %clang -### -gmodules -gline-tables-only %s 2>&1 \ // RUN: | FileCheck -check-prefix=GLTO_ONLY %s - +// // RUN: %clang -### -target %itanium_abi_triple -gmodules -gline-directives-only %s 2>&1 \ // RUN: | FileCheck -check-prefix=GLIO_ONLY %s - +// // NOG_PS: "-cc1" // NOG_PS-NOT: "-dwarf-version= // NOG_PS: "-generate-arange-section" // NOG_PS-NOT: "-dwarf-version= - +// // G_ERR: error: unknown argument: - +// // G_NO: "-cc1" // G_NO-NOT: -debug-info-kind= - +// // GLTO_ONLY: "-cc1" // GLTO_ONLY-NOT: "-dwarf-ext-refs" // GLTO_ONLY: "-debug-info-kind=line-tables-only" // GLTO_ONLY-NOT: "-dwarf-ext-refs" - +// // GLTO_ONLY_DWARF2: "-cc1" // GLTO_ONLY_DWARF2: "-debug-info-kind=line-tables-only" // GLTO_ONLY_DWARF2: "-dwarf-version=2" - +// // GLIO_ONLY: "-cc1" // GLIO_ONLY-NOT: "-dwarf-ext-refs" // GLIO_ONLY: "-debug-info-kind=line-directives-only" // GLIO_ONLY-NOT: "-dwarf-ext-refs" - +// // GLIO_ONLY_DWARF2: "-cc1" // GLIO_ONLY_DWARF2: "-debug-info-kind=line-directives-only" // GLIO_ONLY_DWARF2: "-dwarf-version=2" - +// // G_ONLY: "-cc1" // G_ONLY: "-debug-info-kind=constructor" - +// // These tests assert that "-gline-tables-only" "-g" uses the latter, // but otherwise not caring about the DebugInfoKind. // G_ONLY_DWARF2: "-cc1" // G_ONLY_DWARF2: "-debug-info-kind={{standalone|constructor}}" // G_ONLY_DWARF2: "-dwarf-version=2" - +// // G_STANDALONE: "-cc1" // G_STANDALONE: "-debug-info-kind=standalone" // G_LIMITED: "-cc1" @@ -328,60 +328,60 @@ // G_DWARF2: "-dwarf-version=2" // G_DWARF4-DAG: "-dwarf-version=4" // G_DWARF5-DAG: "-dwarf-version=5" - +// // G_GDB: "-debugger-tuning=gdb" // G_LLDB: "-debugger-tuning=lldb" // G_SCE-DAG: "-debugger-tuning=sce" // G_DBX: "-debugger-tuning=dbx" - +// // STRICT: "-gstrict-dwarf" // NOSTRICT-NOT: "-gstrict-dwarf" - +// // G_NOTUNING: "-cc1" // G_NOTUNING-NOT: "-debugger-tuning=" - +// // This tests asserts that "-gline-tables-only" "-g0" disables debug info. // GLTO_NO: "-cc1" // GLTO_NO-NOT: -debug-info-kind= - +// // This tests asserts that "-gline-directives-only" "-g0" disables debug info. // GLIO_NO: "-cc1" // GLIO_NO-NOT: -debug-info-kind= - +// // GRECORD: "-dwarf-debug-flags" // GRECORD: -### -c -grecord-gcc-switches - +// // GNO_RECORD-NOT: "-dwarf-debug-flags" // GNO_RECORD-NOT: -### -c -grecord-gcc-switches - +// // GRECORD_O: "-dwarf-debug-flags" // GRECORD_O: -### -c -grecord-gcc-switches -o - - +// // GRECORD_OPT: -### -c -O3 -ffunction-sections -grecord-gcc-switches - +// // GIGNORE-NOT: "argument unused during compilation" - +// // GPUB: -ggnu-pubnames // NOPUB-NOT: -ggnu-pubnames // NOPUB-NOT: -gpubnames - +// // PUB: -gpubnames - +// // RNGBSE: -fdebug-ranges-base-address // NORNGBSE-NOT: -fdebug-ranges-base-address - +// // GARANGE-DAG: -generate-arange-section - +// // FDTS: "-mllvm" "-generate-type-units" // FDTSE: error: unsupported option '-fdebug-types-section' for target 'x86_64-apple-darwin' - +// // NOFDTS-NOT: "-mllvm" "-generate-type-units" // NOFDTSE-NOT: error: unsupported option '-fdebug-types-section' for target 'x86_64-apple-darwin' - +// // CI-NOT: "-gno-column-info" - +// // NOCI-DAG: "-gno-column-info" - +// // GEXTREFS: "-dwarf-ext-refs" "-fmodule-format=obj" // GEXTREFS: "-debug-info-kind={{standalone|constructor}}" @@ -395,17 +395,17 @@ // RUN: %clang -### %s 2>&1 | FileCheck -check-prefix=NOMACRO %s // MACRO: "-debug-info-macro" // NOMACRO-NOT: "-debug-info-macro" - +// // RUN: %clang -### -gdwarf-5 -gembed-source %s 2>&1 | FileCheck -check-prefix=GEMBED_5 %s // RUN: %clang -### -gdwarf-2 -gembed-source %s 2>&1 | FileCheck -check-prefix=GEMBED_2 %s // RUN: %clang -### -gdwarf-5 -gno-embed-source %s 2>&1 | FileCheck -check-prefix=NOGEMBED_5 %s // RUN: %clang -### -gdwarf-2 -gno-embed-source %s 2>&1 | FileCheck -check-prefix=NOGEMBED_2 %s - +// // GEMBED_5: "-gembed-source" // GEMBED_2: error: invalid argument '-gembed-source' only allowed with '-gdwarf-5' // NOGEMBED_5-NOT: "-gembed-source" // NOGEMBED_2-NOT: error: invalid argument '-gembed-source' only allowed with '-gdwarf-5' - +// // RUN: %clang -### -g -fno-eliminate-unused-debug-types -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=DEBUG_UNUSED_TYPES %s // DEBUG_UNUSED_TYPES: "-debug-info-kind=unused-types" @@ -416,7 +416,7 @@ // RUN: | FileCheck -check-prefix=NO_DEBUG_UNUSED_TYPES %s // NO_DEBUG_UNUSED_TYPES: "-debug-info-kind={{constructor|line-tables-only|standalone}}" // NO_DEBUG_UNUSED_TYPES-NOT: "-debug-info-kind=unused-types" - +// // RUN: %clang -### -c -gdwarf-5 -gdwarf64 -target x86_64 %s 2>&1 | FileCheck -check-prefix=GDWARF64_ON %s // RUN: %clang -### -c -gdwarf-4 -gdwarf64 -target x86_64 %s 2>&1 | FileCheck -check-prefix=GDWARF64_ON %s // RUN: %clang -### -c -gdwarf-3 -gdwarf64 -target x86_64 %s 2>&1 | FileCheck -check-prefix=GDWARF64_ON %s @@ -427,7 +427,7 @@ // RUN: | FileCheck -check-prefix=GDWARF64_32ARCH %s // RUN: %clang -### -c -gdwarf-4 -gdwarf64 -target x86_64-apple-darwin %s 2>&1 \ // RUN: | FileCheck -check-prefix=GDWARF64_ELF %s - +// // GDWARF64_ON: "-gdwarf64" // GDWARF64_VER: error: invalid argument '-gdwarf64' only allowed with 'DWARFv3 or greater' // GDWARF64_32ARCH: error: invalid argument '-gdwarf64' only allowed with '64 bit architecture' diff --git a/clang/test/Driver/debug-unsupported.c b/clang/test/Driver/debug-unsupported.c index d2c6f10956b08a..1804a9cc51b54a 100644 --- a/clang/test/Driver/debug-unsupported.c +++ b/clang/test/Driver/debug-unsupported.c @@ -9,5 +9,5 @@ // RUN: not %clang -c -gxcoff3 %s 2>&1 | FileCheck %s // RUN: not %clang -c -gvms0 %s 2>&1 | FileCheck %s // RUN: not %clang -c -gtoggle %s 2>&1 | FileCheck %s - +// // CHECK: error: unsupported option diff --git a/clang/test/Driver/disable-llvm.c b/clang/test/Driver/disable-llvm.c index 5e899556d00e05..3ac6b9e9193763 100644 --- a/clang/test/Driver/disable-llvm.c +++ b/clang/test/Driver/disable-llvm.c @@ -4,7 +4,7 @@ // DISABLED: -cc1 // DISABLED-NOT: "-mllvm" "-disable-llvm-passes" // DISABLED: "-disable-llvm-passes" - +// // We also support two alternative spellings for historical reasons. // RUN: %clang -O2 -Xclang -disable-llvm-optzns -### %s 2>&1 \ // RUN: | FileCheck --check-prefix=DISABLED-LEGACY %s @@ -13,7 +13,7 @@ // DISABLED-LEGACY: -cc1 // DISABLED-LEGACY-NOT: "-mllvm" "-disable-llvm-optzns" // DISABLED-LEGACY: "-disable-llvm-optzns" - +// // The main flag shouldn't be specially handled when used with '-mllvm'. // RUN: %clang -O2 -mllvm -disable-llvm-passes -### %s 2>&1 | FileCheck --check-prefix=MLLVM %s // MLLVM: -cc1 diff --git a/clang/test/Driver/driver-only.c b/clang/test/Driver/driver-only.c index 719d1d7338a156..067f174a3cf451 100644 --- a/clang/test/Driver/driver-only.c +++ b/clang/test/Driver/driver-only.c @@ -2,18 +2,18 @@ // RUN: mkdir %t // Check that -fdriver-only doesn't actually run the generated -cc1 job. - +// // RUN: %clang -c %s -o %t/a.o -fdriver-only // RUN: not cat %t/a.o // Check that -fdriver-only respects errors. - +// // RUN: not %clang -c %s -fdriver-only -target i386-apple-darwin9 -m32 -Xarch_i386 -o // Check that -fdriver-only respects -v. - +// // RUN: %clang -c %s -fdriver-only -v 2>&1 | FileCheck %s --check-prefix=CHECK-V // CHECK-V: {{.*}} "-cc1" - +// // RUN: %clang -c %s -fdriver-only 2>&1 | FileCheck %s --check-prefix=CHECK-NO-V --allow-empty // CHECK-NO-V-NOT: {{.*}} "-cc1" diff --git a/clang/test/Driver/embed-bitcode.c b/clang/test/Driver/embed-bitcode.c index 49540d4ba9934b..07e4378dc09401 100644 --- a/clang/test/Driver/embed-bitcode.c +++ b/clang/test/Driver/embed-bitcode.c @@ -15,7 +15,7 @@ // CHECK-BITCODE: -cc1 // CHECK-BITCODE: -emit-obj // CHECK-BITCODE: -fembed-bitcode=bitcode - +// // RUN: %clang %s -c -save-temps -fembed-bitcode -fintegrated-as 2>&1 -### | FileCheck %s -check-prefix=CHECK-SAVE-TEMP // CHECK-SAVE-TEMP: -cc1 // CHECK-SAVE-TEMP: -E diff --git a/clang/test/Driver/emulated-tls.cpp b/clang/test/Driver/emulated-tls.cpp index 5d69876d27f22e..20abad181128da 100644 --- a/clang/test/Driver/emulated-tls.cpp +++ b/clang/test/Driver/emulated-tls.cpp @@ -1,7 +1,7 @@ // Android, Cygwin and OpenBSD use emutls by default. // Clang should pass -femulated-tls or -fno-emulated-tls to cc1 if they are used, // and cc1 should set up EmulatedTLS and ExplicitEmulatedTLS to LLVM CodeGen. - +// // RUN: %clang -### -target arm-linux-androideabi %s 2>&1 \ // RUN: | FileCheck -check-prefix=DEFAULT %s // RUN: %clang -### -target arm-linux-gnu %s 2>&1 \ diff --git a/clang/test/Driver/env.c b/clang/test/Driver/env.c index f6718763f57a28..413b04e2cb6293 100644 --- a/clang/test/Driver/env.c +++ b/clang/test/Driver/env.c @@ -1,7 +1,7 @@ // These tests try to ensure that the driver operates reasonably when run with // a strange environment. Unfortunately, it requires a normal shell and the // 'env' command that understands arguments, unlike the LIT built-in env. - +// // REQUIRES: shell // The PATH variable is heavily used when trying to find a linker. // RUN: env -i LC_ALL=C LD_LIBRARY_PATH="$LD_LIBRARY_PATH" \ @@ -9,13 +9,13 @@ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: --rtlib=platform -no-pie \ // RUN: --gcc-toolchain="" 2>&1 | FileCheck --check-prefix=CHECK-LD-32 %s - +// // RUN: env -i LC_ALL=C PATH="" LD_LIBRARY_PATH="$LD_LIBRARY_PATH" \ // RUN: %clang %s -### -o %t.o --target=i386-unknown-linux \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: --rtlib=platform -no-pie \ // RUN: --gcc-toolchain="" 2>&1 | FileCheck --check-prefix=CHECK-LD-32 %s - +// // CHECK-LD-32-NOT: warning: // CHECK-LD-32: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]" // CHECK-LD-32: "{{.*}}/usr/lib/gcc/i386-unknown-linux/10.2.0{{/|\\\\}}crtbegin.o" diff --git a/clang/test/Driver/fast-math.c b/clang/test/Driver/fast-math.c index 4c54e52ab307ee..03099bbc011e89 100644 --- a/clang/test/Driver/fast-math.c +++ b/clang/test/Driver/fast-math.c @@ -3,9 +3,9 @@ // First, the GCC flags have many different and surprising effects. Second, // LLVM only supports three switches which is more coarse grained than GCC's // support. - +// // Both of them use gcc driver for as. - +// // RUN: %clang -### -fno-honor-infinities -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-INFS %s // infinites [sic] is a supported alternative spelling of infinities. @@ -13,62 +13,62 @@ // RUN: | FileCheck --check-prefix=CHECK-NO-INFS %s // CHECK-NO-INFS: "-cc1" // CHECK-NO-INFS: "-menable-no-infs" - +// // RUN: %clang -### -fno-fast-math -fno-honor-infinities -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-FAST-MATH-NO-INFS %s // CHECK-NO-FAST-MATH-NO-INFS: "-cc1" // CHECK-NO-FAST-MATH-NO-INFS: "-menable-no-infs" - +// // RUN: %clang -### -fno-honor-infinities -fno-fast-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-INFS-NO-FAST-MATH %s // CHECK-NO-INFS-NO-FAST-MATH: "-cc1" // CHECK-NO-INFS-NO-FAST-MATH-NOT: "-menable-no-infs" - +// // RUN: %clang -### -fno-signed-zeros -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-SIGNED-ZEROS %s // CHECK-NO-SIGNED-ZEROS: "-cc1" // CHECK-NO-SIGNED-ZEROS: "-fno-signed-zeros" - +// // RUN: %clang -### -fno-fast-math -fno-signed-zeros -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-FAST-MATH-NO-SIGNED-ZEROS %s // CHECK-NO-FAST-MATH-NO-SIGNED-ZEROS: "-cc1" // CHECK-NO-FAST-MATH-NO-SIGNED-ZEROS: "-fno-signed-zeros" - +// // RUN: %clang -### -fno-signed-zeros -fno-fast-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-SIGNED-ZEROS-NO-FAST-MATH %s // CHECK-NO-SIGNED-ZEROS-NO-FAST-MATH: "-cc1" // CHECK-NO-SIGNED-ZEROS-NO-FAST-MATH-NOT: "-fno-signed-zeros" - +// // RUN: %clang -### -freciprocal-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-RECIPROCAL-MATH %s // CHECK-RECIPROCAL-MATH: "-cc1" // CHECK-RECIPROCAL-MATH: "-freciprocal-math" - +// // RUN: %clang -### -fno-fast-math -freciprocal-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-FAST-MATH-RECIPROCAL-MATH %s // CHECK-NO-FAST-MATH-RECIPROCAL-MATH: "-cc1" // CHECK-NO-FAST-MATH-RECIPROCAL-MATH: "-freciprocal-math" - +// // RUN: %clang -### -freciprocal-math -fno-fast-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-RECIPROCAL-MATH-NO-FAST-MATH %s // CHECK-RECIPROCAL-MATH-NO-FAST-MATH: "-cc1" // CHECK-RECIPROCAL-MATH-NO-FAST-MATH-NOT: "-freciprocal-math" - +// // RUN: %clang -### -fno-honor-nans -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-NANS %s // CHECK-NO-NANS: "-cc1" // CHECK-NO-NANS: "-menable-no-nans" - +// // RUN: %clang -### -fno-fast-math -fno-honor-nans -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-FAST-MATH-NO-NANS %s // CHECK-NO-FAST-MATH-NO-NANS: "-cc1" // CHECK-NO-FAST-MATH-NO-NANS: "-menable-no-nans" - +// // RUN: %clang -### -fno-honor-nans -fno-fast-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-NANS-NO-FAST-MATH %s // CHECK-NO-NANS-NO-FAST-MATH: "-cc1" // CHECK-NO-NANS-NO-FAST-MATH-NOT: "-menable-no-nans" - +// // RUN: %clang -### -ffast-math -fno-approx-func -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-FAST-MATH-NO-APPROX-FUNC %s // CHECK-FAST-MATH-NO-APPROX-FUNC: "-cc1" @@ -80,27 +80,27 @@ // CHECK-FAST-MATH-NO-APPROX-FUNC: "-ffp-contract=fast" // CHECK-FAST-MATH-NO-APPROX-FUNC-NOT: "-ffast-math" // CHECK-FAST-MATH-NO-APPROX-FUNC-NOT: "-fapprox-func" - +// // RUN: %clang -### -fno-approx-func -ffast-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-APPROX-FUNC-FAST-MATH %s // CHECK-NO-APPROX-FUNC-FAST-MATH: "-cc1" // CHECK-NO-APPROX-FUNC-FAST-MATH: "-ffast-math" - +// // RUN: %clang -### -fapprox-func -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-APPROX-FUNC %s // CHECK-APPROX-FUNC: "-cc1" // CHECK-APPROX-FUNC: "-fapprox-func" - +// // RUN: %clang -### -fmath-errno -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MATH-ERRNO %s // CHECK-MATH-ERRNO: "-cc1" // CHECK-MATH-ERRNO: "-fmath-errno" - +// // RUN: %clang -### -fmath-errno -fno-math-errno -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-MATH-ERRNO %s // CHECK-NO-MATH-ERRNO: "-cc1" // CHECK-NO-MATH-ERRNO-NOT: "-fmath-errno" - +// // Target defaults for -fmath-errno (reusing the above checks). // RUN: %clang -### -target i686-unknown-linux -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MATH-ERRNO %s @@ -126,7 +126,7 @@ // RUN: | FileCheck --check-prefix=CHECK-NO-MATH-ERRNO %s // RUN: %clang -### -target amdgcn-mesa-mesa3d -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-MATH-ERRNO %s - +// // Check that -ffast-math disables -fmath-errno, and -fno-fast-math merely // preserves the target default. Also check various flag set operations between // the two flags. (Resuses above checks.) @@ -146,14 +146,14 @@ // RUN: | FileCheck --check-prefix=CHECK-NO-MATH-ERRNO %s // RUN: %clang -### -fno-fast-math -fno-math-errno -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-MATH-ERRNO %s - +// // RUN: %clang -### -fno-math-errno -fassociative-math -freciprocal-math \ // RUN: -fno-signed-zeros -fno-trapping-math -fapprox-func -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-UNSAFE-MATH %s // CHECK-UNSAFE-MATH: "-cc1" // CHECK-UNSAFE-MATH: "-menable-unsafe-fp-math" // CHECK-UNSAFE-MATH: "-mreassociate" - +// // RUN: %clang -### -fno-fast-math -fno-math-errno -fassociative-math -freciprocal-math \ // RUN: -fno-signed-zeros -fno-trapping-math -fapprox-func -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-FAST-MATH-UNSAFE-MATH %s @@ -169,7 +169,7 @@ // CHECK-UNSAFE-MATH-NO-FAST-MATH: "-cc1" // CHECK-UNSAFE-MATH-NO-FAST-MATH-NOT: "-menable-unsafe-fp-math" // CHECK-UNSAFE-MATH-NO-FAST-MATH-NOT: "-mreassociate" - +// // Check that various umbrella flags also enable these frontend options. // RUN: %clang -### -ffast-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-INFS %s @@ -183,7 +183,7 @@ // RUN: | FileCheck --check-prefix=CHECK-NO-NANS %s // RUN: %clang -### -funsafe-math-optimizations -fno-math-errno -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-UNSAFE-MATH %s - +// // One umbrella flag is *really* weird and also changes the semantics of the // program by adding a special preprocessor macro. Check that the frontend flag // modeling this semantic change is provided. Also check that the flag is not @@ -202,7 +202,7 @@ // CHECK-FAST-MATH: "-cc1" // CHECK-FAST-MATH: "-ffast-math" // CHECK-FAST-MATH: "-ffinite-math-only" - +// // RUN: %clang -### -ffast-math -fno-fast-math -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-FAST-MATH %s // RUN: %clang -### -ffast-math -fno-finite-math-only -c %s 2>&1 \ @@ -216,7 +216,7 @@ // CHECK-NO-FAST-MATH: "-cc1" // CHECK-NO-FAST-MATH-NOT: "-ffast-math" // CHECK-ASSOC-MATH-NOT: "-mreassociate" - +// // Check various means of disabling these flags, including disabling them after // they've been enabled via an umbrella flag. // RUN: %clang -### -fno-honor-infinities -fhonor-infinities -c %s 2>&1 \ @@ -233,7 +233,7 @@ // CHECK-NO-NO-INFS-NOT: "-menable-no-infs" // CHECK-NO-NO-INFS-NOT: "-ffinite-math-only" // CHECK-NO-NO-INFS: "-o" - +// // RUN: %clang -### -fno-honor-nans -fhonor-nans -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-NO-NANS %s // RUN: %clang -### -ffinite-math-only -fhonor-nans -c %s 2>&1 \ diff --git a/clang/test/Driver/fbasic-block-sections.c b/clang/test/Driver/fbasic-block-sections.c index c0e5f7fabae183..60889fb11530df 100644 --- a/clang/test/Driver/fbasic-block-sections.c +++ b/clang/test/Driver/fbasic-block-sections.c @@ -13,7 +13,7 @@ // RUN: %clang -### -x cuda -nocudainc -nocudalib -target x86_64 -fbasic-block-sections=all %s -c 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-CUDA %s - +// // CHECK-NOOPT-NOT: -fbasic-block-sections= // CHECK-OPT-NONE: "-fbasic-block-sections=none" // CHECK-OPT-ALL: "-fbasic-block-sections=all" diff --git a/clang/test/Driver/fcomment-block-commands.c b/clang/test/Driver/fcomment-block-commands.c index 40412e8a513942..d83662ae67be02 100644 --- a/clang/test/Driver/fcomment-block-commands.c +++ b/clang/test/Driver/fcomment-block-commands.c @@ -1,8 +1,8 @@ // Check that we pass -fcomment-block-commands to frontend. - +// // RUN: %clang -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-ARG // RUN: %clang -c %s -fcomment-block-commands=Foo -### 2>&1 | FileCheck %s --check-prefix=CHECK-ARG - +// // CHECK-ARG: -fcomment-block-commands=Foo - +// // CHECK-NO-ARG-NOT: -fcomment-block-commands= diff --git a/clang/test/Driver/fembed-bitcode.c b/clang/test/Driver/fembed-bitcode.c index bef75c3cbe3c96..970500525a5039 100644 --- a/clang/test/Driver/fembed-bitcode.c +++ b/clang/test/Driver/fembed-bitcode.c @@ -30,7 +30,7 @@ // RUN: | FileCheck --check-prefix=CHECK-HEXAGON %s // CHECK-HEXAGON: "-target-feature" // CHECK-HEXAGON: "+reserved-r19" - +// // RUN: %clang -target wasm32-unknown-unknown -fembed-bitcode=all -pthread -c %s -o /dev/null -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-WASM %s diff --git a/clang/test/Driver/fgnuc-version.c b/clang/test/Driver/fgnuc-version.c index 951a6abd657a6b..dea82bbaae0af9 100644 --- a/clang/test/Driver/fgnuc-version.c +++ b/clang/test/Driver/fgnuc-version.c @@ -1,6 +1,6 @@ - +// // Verify -fgnuc-version parsing - +// // RUN: %clang -c %s -target i686-linux -### 2>&1 | FileCheck %s -check-prefix GNUC-DEFAULT // GNUC-DEFAULT: "-fgnuc-version=4.2.1" diff --git a/clang/test/Driver/fopenmp.c b/clang/test/Driver/fopenmp.c index 090aa70c75cdb4..aadade101125e0 100644 --- a/clang/test/Driver/fopenmp.c +++ b/clang/test/Driver/fopenmp.c @@ -23,144 +23,144 @@ // RUN: %clang_cl --target=x86_64-windows-msvc /clang:-fopenmp=libgomp /openmp:experimental -### -- %s 2>&1 | FileCheck %s --check-prefix=CHECK-CC1-NO-OPENMP // RUN: %clang_cl --target=x86_64-windows-msvc /clang:-fopenmp=libiomp5 /openmp:experimental -### -- %s 2>&1 | FileCheck %s --check-prefix=CHECK-CC1-OPENMP // RUN: %clang_cl --target=x86_64-windows-msvc /openmp- -### -- %s 2>&1 | FileCheck --check-prefix=CHECK-CC1-NO-OPENMP %s - +// // CHECK-CC1-OPENMP: "-cc1" // CHECK-CC1-OPENMP: "-fopenmp" - +// // CHECK-CC1-NO-OPENMP: "-cc1" // CHECK-CC1-NO-OPENMP-NOT: "-fopenmp" - +// // RUN: %clang -target x86_64-linux-gnu -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-OMP // RUN: %clang -target x86_64-linux-gnu -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-GOMP --check-prefix=CHECK-LD-GOMP-RT // RUN: %clang -target x86_64-linux-gnu -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-IOMP5 - +// // RUN: %clang -target x86_64-linux-gnu -fopenmp=libomp -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-OMP // RUN: %clang -target x86_64-linux-gnu -fopenmp=libgomp -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-GOMP --check-prefix=CHECK-LD-STATIC-GOMP-RT // RUN: %clang -target x86_64-linux-gnu -fopenmp=libiomp5 -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-IOMP5 // RUN: %clang -target x86_64-linux-gnu -fopenmp=libiomp5 -static -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-IOMP5-NO-BDYNAMIC - +// // RUN: %clang -nostdlib -target x86_64-linux-gnu -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OMP // RUN: %clang -nostdlib -target x86_64-linux-gnu -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-GOMP // RUN: %clang -nostdlib -target x86_64-linux-gnu -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-IOMP5 - +// // RUN: %clang -target x86_64-darwin -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-OMP // RUN: %clang -target x86_64-darwin -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-GOMP --check-prefix=CHECK-LD-GOMP-NO-RT // RUN: %clang -target x86_64-darwin -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-IOMP5 - +// // RUN: %clang -nostdlib -target x86_64-darwin -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OMP // RUN: %clang -nostdlib -target x86_64-darwin -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-GOMP // RUN: %clang -nostdlib -target x86_64-darwin -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-IOMP5 - +// // RUN: %clang -target x86_64-freebsd -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-OMP // RUN: %clang -target x86_64-freebsd -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-GOMP --check-prefix=CHECK-LD-GOMP-NO-RT // RUN: %clang -target x86_64-freebsd -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-IOMP5 - +// // RUN: %clang -target x86_64-freebsd -fopenmp=libomp -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-OMP // RUN: %clang -target x86_64-freebsd -fopenmp=libgomp -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-GOMP --check-prefix=CHECK-LD-STATIC-GOMP-NO-RT // RUN: %clang -target x86_64-freebsd -fopenmp=libiomp5 -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-IOMP5 // RUN: %clang -target x86_64-freebsd -fopenmp=libiomp5 -static -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-IOMP5-NO-BDYNAMIC - +// // RUN: %clang -nostdlib -target x86_64-freebsd -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OMP // RUN: %clang -nostdlib -target x86_64-freebsd -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-GOMP // RUN: %clang -nostdlib -target x86_64-freebsd -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-IOMP5 - +// // RUN: %clang -target x86_64-netbsd -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-OMP // RUN: %clang -target x86_64-netbsd -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-GOMP --check-prefix=CHECK-LD-GOMP-NO-RT // RUN: %clang -target x86_64-netbsd -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-IOMP5 - +// // RUN: %clang -target x86_64-netbsd -fopenmp=libomp -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-OMP // RUN: %clang -target x86_64-netbsd -fopenmp=libgomp -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-GOMP --check-prefix=CHECK-LD-STATIC-GOMP-NO-RT // RUN: %clang -target x86_64-netbsd -fopenmp=libiomp5 -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-IOMP5 // RUN: %clang -target x86_64-netbsd -fopenmp=libiomp5 -static -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-IOMP5-NO-BDYNAMIC - +// // RUN: %clang -nostdlib -target x86_64-netbsd -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OMP // RUN: %clang -nostdlib -target x86_64-netbsd -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-GOMP // RUN: %clang -nostdlib -target x86_64-netbsd -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-IOMP5 - +// // RUN: %clang -target x86_64-openbsd -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-OMP // RUN: %clang -target x86_64-openbsd -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-GOMP --check-prefix=CHECK-LD-GOMP-NO-RT // RUN: %clang -target x86_64-openbsd -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-IOMP5 - +// // RUN: %clang -target x86_64-openbsd -fopenmp=libomp -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-OMP // RUN: %clang -target x86_64-openbsd -fopenmp=libgomp -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-GOMP --check-prefix=CHECK-LD-STATIC-GOMP-NO-RT // RUN: %clang -target x86_64-openbsd -fopenmp=libiomp5 -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-IOMP5 // RUN: %clang -target x86_64-openbsd -fopenmp=libiomp5 -static -static-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-STATIC-IOMP5-NO-BDYNAMIC - +// // RUN: %clang -nostdlib -target x86_64-openbsd -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OMP // RUN: %clang -nostdlib -target x86_64-openbsd -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-GOMP // RUN: %clang -nostdlib -target x86_64-openbsd -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-IOMP5 - +// // RUN: %clang -target x86_64-windows-gnu -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-OMP // RUN: %clang -target x86_64-windows-gnu -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-GOMP --check-prefix=CHECK-LD-GOMP-NO-RT // RUN: %clang -target x86_64-windows-gnu -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-IOMP5MD - +// // RUN: %clang -nostdlib -target x86_64-windows-gnu -fopenmp=libomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OMP // RUN: %clang -nostdlib -target x86_64-windows-gnu -fopenmp=libgomp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-GOMP // RUN: %clang -nostdlib -target x86_64-windows-gnu -fopenmp=libiomp5 %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-IOMP5MD - +// // CHECK-LD-OMP: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-OMP: "-lomp" - +// // CHECK-LD-GOMP: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-GOMP: "-lgomp" // CHECK-LD-GOMP-RT: "-lrt" // CHECK-LD-GOMP-NO-RT-NOT: "-lrt" - +// // CHECK-LD-IOMP5: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-IOMP5: "-liomp5" - +// // CHECK-LD-IOMP5MD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-IOMP5MD: "-liomp5md" - +// // CHECK-NO-OMP: "{{.*}}ld{{(.exe)?}}" // CHECK-NO-OMP-NOT: "-lomp" - +// // CHECK-NO-GOMP: "{{.*}}ld{{(.exe)?}}" // CHECK-NO-GOMP-NOT: "-lgomp" - +// // CHECK-NO-IOMP5: "{{.*}}ld{{(.exe)?}}" // CHECK-NO-IOMP5-NOT: "-liomp5" - +// // CHECK-NO-IOMP5MD: "{{.*}}ld{{(.exe)?}}" // CHECK-NO-IOMP5MD-NOT: "-liomp5md" - +// // CHECK-LD-STATIC-OMP: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-STATIC-OMP: "-Bstatic" "-lomp" "-Bdynamic" - +// // CHECK-LD-STATIC-GOMP: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-STATIC-GOMP: "-Bstatic" "-lgomp" "-Bdynamic" // CHECK-LD-STATIC-GOMP-RT: "-lrt" // CHECK-LD-STATIC-GOMP-NO-RT-NOT: "-lrt" - +// // CHECK-LD-STATIC-IOMP5: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-STATIC-IOMP5: "-Bstatic" "-liomp5" "-Bdynamic" - +// // CHECK-LD-STATIC-IOMP5-NO-BDYNAMIC: "{{.*}}ld{{(.exe)?}}" // For x86 Gnu, the driver passes -static, while FreeBSD, NetBSD and OpenBSD pass -Bstatic // CHECK-LD-STATIC-IOMP5-NO-BDYNAMIC: "-{{B?}}static" {{.*}} "-liomp5" // CHECK-LD-STATIC-IOMP5-NO-BDYNAMIC-NOT: "-Bdynamic" - +// // RUN: %clang -target x86_64-linux-gnu -fopenmp -fopenmp-enable-irbuilder -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-CC1-OPENMPIRBUILDER - +// // CHECK-CC1-OPENMPIRBUILDER: "-cc1" // CHECK-CC1-OPENMPIRBUILDER-SAME: "-fopenmp" // CHECK-CC1-OPENMPIRBUILDER-SAME: "-fopenmp-enable-irbuilder" - +// // We'd like to check that the default is sane, but until we have the ability // to *always* semantically analyze OpenMP without always generating runtime // calls (in the event of an unsupported runtime), we don't have a good way to // test the CC1 invocation. Instead, just ensure we do eventually link *some* // OpenMP runtime. - +// // RUN: %clang -target x86_64-linux-gnu -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANY // RUN: %clang -target x86_64-darwin -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANY // RUN: %clang -target x86_64-freebsd -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANY // RUN: %clang -target x86_64-netbsd -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANY // RUN: %clang -target x86_64-openbsd -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANY // RUN: %clang -target x86_64-windows-gnu -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANYMD - +// // CHECK-LD-ANY: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-ANY: "-l{{(omp|gomp|iomp5)}}" - +// // CHECK-LD-ANYMD: "{{.*}}ld{{(.exe)?}}" // CHECK-LD-ANYMD: "-l{{(omp|gomp|iomp5md)}}" diff --git a/clang/test/Driver/fp-model.c b/clang/test/Driver/fp-model.c index 1a993d6b6b4223..af809712a56808 100644 --- a/clang/test/Driver/fp-model.c +++ b/clang/test/Driver/fp-model.c @@ -1,6 +1,6 @@ // Test that incompatible combinations of -ffp-model= options // and other floating point options get a warning diagnostic. - +// // RUN: %clang -### -ffp-model=fast -ffp-contract=off -c %s 2>&1 \ // RUN: | FileCheck --check-prefix=WARN %s diff --git a/clang/test/Driver/fparse-all-comments.c b/clang/test/Driver/fparse-all-comments.c index 9cf2e902db928e..5f825d0429a51f 100644 --- a/clang/test/Driver/fparse-all-comments.c +++ b/clang/test/Driver/fparse-all-comments.c @@ -1,5 +1,5 @@ // Check that we pass -fparse-all-comments to frontend. - +// // RUN: %clang -c %s -fparse-all-comments -### 2>&1 | FileCheck %s --check-prefix=CHECK-ARG - +// // CHECK-ARG: -fparse-all-comments diff --git a/clang/test/Driver/freebsd-mips-as.c b/clang/test/Driver/freebsd-mips-as.c index 79832f07df2c7c..a053c2180e52ca 100644 --- a/clang/test/Driver/freebsd-mips-as.c +++ b/clang/test/Driver/freebsd-mips-as.c @@ -1,90 +1,90 @@ // Check passing options to the assembler for MIPS targets. - +// // RUN: %clang -target mips-unknown-freebsd -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EB-AS %s // MIPS32-EB-AS: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB" // MIPS32-EB-AS-NOT: "-KPIC" - +// // RUN: %clang -target mips-unknown-freebsd -### \ // RUN: -no-integrated-as -fPIC -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EB-PIC %s // MIPS32-EB-PIC: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB" // MIPS32-EB-PIC: "-KPIC" - +// // RUN: %clang -target mips-unknown-freebsd -### \ // RUN: -no-integrated-as -fpic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EB-PIC-SMALL %s // MIPS32-EB-PIC-SMALL: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB" // MIPS32-EB-PIC-SMALL: "-KPIC" - +// // RUN: %clang -target mips-unknown-freebsd -### \ // RUN: -no-integrated-as -fPIE -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EB-PIE %s // MIPS32-EB-PIE: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB" // MIPS32-EB-PIE: "-KPIC" - +// // RUN: %clang -target mips-unknown-freebsd -### \ // RUN: -no-integrated-as -fpie -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EB-PIE-SMALL %s // MIPS32-EB-PIE-SMALL: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EB" // MIPS32-EB-PIE-SMALL: "-KPIC" - +// // RUN: %clang -target mipsel-unknown-freebsd -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-DEF-EL-AS %s // MIPS32-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EL" - +// // RUN: %clang -target mips64-unknown-freebsd -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64-EB-AS %s // MIPS64-EB-AS: as{{(.exe)?}}" "-march" "mips3" "-mabi" "64" "-EB" - +// // RUN: %clang -target mips64el-unknown-freebsd -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64-DEF-EL-AS %s // MIPS64-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips3" "-mabi" "64" "-EL" - +// // RUN: %clang -target mips64-unknown-freebsd -mabi=n32 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-N32 %s // MIPS-N32: as{{(.exe)?}}" "-march" "mips3" "-mabi" "n32" "-EB" - +// // RUN: %clang -target mipsel-unknown-freebsd -mabi=32 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EL-AS %s // MIPS32-EL-AS: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-EL" - +// // RUN: %clang -target mips64el-unknown-freebsd -mabi=64 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64-EL-AS %s // MIPS64-EL-AS: as{{(.exe)?}}" "-march" "mips3" "-mabi" "64" "-EL" - +// // RUN: %clang -target mips-linux-freebsd -march=mips32r2 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-32R2 %s // MIPS-32R2: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EB" - +// // RUN: %clang -target mips-unknown-freebsd -mips32 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-32 %s // MIPS-ALIAS-32: as{{(.exe)?}}" "-march" "mips32" "-mabi" "32" "-EB" - +// // RUN: %clang -target mips-unknown-freebsd -mips32r2 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-32R2 %s // MIPS-ALIAS-32R2: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-EB" - +// // RUN: %clang -target mips64-unknown-freebsd -mips64 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64 %s // MIPS-ALIAS-64: as{{(.exe)?}}" "-march" "mips64" "-mabi" "64" "-EB" - +// // RUN: %clang -target mips64-unknown-freebsd -mips64r2 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64R2 %s // MIPS-ALIAS-64R2: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-EB" - +// // RUN: %clang -target mips-unknown-freebsd -### \ // RUN: -no-integrated-as -G0 -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EB-AS-G0 %s diff --git a/clang/test/Driver/freebsd.c b/clang/test/Driver/freebsd.c index 46984bdc5104a0..6c2d0c6ed6a807 100644 --- a/clang/test/Driver/freebsd.c +++ b/clang/test/Driver/freebsd.c @@ -5,7 +5,7 @@ // CHECK-ARM64: "-cc1" "-triple" "aarch64-pc-freebsd11" // CHECK-ARM64: ld{{.*}}" "--sysroot=[[SYSROOT:[^"]+]]" // CHECK-ARM64: "--eh-frame-hdr" "-dynamic-linker" "{{.*}}ld-elf{{.*}}" "-o" "a.out" "{{.*}}crt1.o" "{{.*}}crti.o" "{{.*}}crtbegin.o" "-L[[SYSROOT]]/usr/lib" "{{.*}}.o" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "{{.*}}crtend.o" "{{.*}}crtn.o" - +// // RUN: %clang \ // RUN: --target=powerpc-pc-freebsd8 %s \ // RUN: --sysroot=%S/Inputs/basic_freebsd_tree -### 2>&1 \ @@ -13,7 +13,7 @@ // CHECK-PPC: "-cc1" "-triple" "powerpc-pc-freebsd8" // CHECK-PPC: ld{{.*}}" "--sysroot=[[SYSROOT:[^"]+]]" // CHECK-PPC: "--eh-frame-hdr" "-dynamic-linker" "{{.*}}ld-elf{{.*}}" "-o" "a.out" "{{.*}}crt1.o" "{{.*}}crti.o" "{{.*}}crtbegin.o" "-L[[SYSROOT]]/usr/lib" "{{.*}}.o" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "{{.*}}crtend.o" "{{.*}}crtn.o" - +// // RUN: %clang \ // RUN: --target=powerpc64-pc-freebsd8 %s \ // RUN: --sysroot=%S/Inputs/basic_freebsd64_tree -### 2>&1 \ @@ -30,28 +30,28 @@ // CHECK-PPC64LE: ld{{.*}}" "--sysroot=[[SYSROOT:[^"]+]]" // CHECK-PPC64LE: "--eh-frame-hdr" "-dynamic-linker" "{{.*}}ld-elf{{.*}}" "-o" "a.out" "{{.*}}crt1.o" "{{.*}}crti.o" "{{.*}}crtbegin.o" "-L[[SYSROOT]]/usr/lib" "{{.*}}.o" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "{{.*}}crtend.o" "{{.*}}crtn.o" - +// // Check that -m32 properly adjusts the toolchain flags. - +// // RUN: %clang --target=x86_64-pc-freebsd8 -m32 %s \ // RUN: --sysroot=%S/Inputs/multiarch_freebsd64_tree -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-LIB32 %s // CHECK-LIB32: "-cc1" "-triple" "i386-pc-freebsd8" // CHECK-LIB32: ld{{.*}}" {{.*}} "-m" "elf_i386_fbsd" - +// // RUN: %clang --target=x86_64-pc-freebsd8 -m32 %s 2>&1 \ // RUN: --sysroot=%S/Inputs/multiarch_freebsd64_tree -print-search-dirs 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-LIB32PATHS %s // CHECK-LIB32PATHS: libraries: ={{.*:?}}/usr/lib32 - +// // Check that O32 MIPS uses /usr/lib32 on a 64-bit tree. - +// // RUN: %clang --target=mips-freebsd12 %s \ // RUN: --sysroot=%S/Inputs/multiarch_freebsd64_tree -print-search-dirs 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-LIB32PATHS %s - +// // Check that MIPS passes the correct linker emulation. - +// // RUN: %clang --target=mips-freebsd -### %s %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS-LD %s // CHECK-MIPS-LD: ld{{.*}}" {{.*}} "-m" "elf32btsmip_fbsd" @@ -70,16 +70,16 @@ // RUN: %clang --target=mips64el-freebsd -mabi=n32 -### %s %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MIPSN32EL-LD %s // CHECK-MIPSN32EL-LD: ld{{.*}}" {{.*}} "-m" "elf32ltsmipn32_fbsd" - +// // Check that RISC-V passes the correct linker emulation. - +// // RUN: %clang --target=riscv32-freebsd -### %s %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-RV32I-LD %s // CHECK-RV32I-LD: ld{{.*}}" {{.*}} "-m" "elf32lriscv" // RUN: %clang --target=riscv64-freebsd -### %s %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-RV64I-LD %s // CHECK-RV64I-LD: ld{{.*}}" {{.*}} "-m" "elf64lriscv" - +// // Check that the new linker flags are passed to FreeBSD // RUN: %clang --target=x86_64-pc-freebsd8 -m32 %s \ // RUN: --sysroot=%S/Inputs/multiarch_freebsd64_tree -### 2>&1 \ @@ -94,7 +94,7 @@ // CHECK-LDFLAGS8: --enable-new-dtags // CHECK-LDFLAGS9: --hash-style=both // CHECK-LDFLAGS9: --enable-new-dtags - +// // Check that we do not pass --hash-style=gnu and --hash-style=both to linker // and provide correct path to the dynamic linker for MIPS platforms. // Also verify that we tell the assembler to target the right ISA and ABI. diff --git a/clang/test/Driver/fsanitize-object-size.c b/clang/test/Driver/fsanitize-object-size.c index 3cfd01c6854515..50c67838df39a4 100644 --- a/clang/test/Driver/fsanitize-object-size.c +++ b/clang/test/Driver/fsanitize-object-size.c @@ -1,5 +1,5 @@ // Check that the object size check is disabled at -O0. - +// // RUN: %clang -target x86_64-linux-gnu -fsanitize=object-size %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OSIZE // RUN: %clang -target x86_64-linux-gnu -fsanitize=object-size %s -O0 -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OSIZE // RUN: %clang -target x86_64-linux-gnu -fsanitize=null,object-size %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OSIZE @@ -7,7 +7,7 @@ // RUN: %clang -target x86_64-linux-gnu -fsanitize=undefined %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-OSIZE-NO-WARNING // Check that the object size check is enabled at other optimization levels. - +// // RUN: %clang -target x86_64-linux-gnu -fsanitize=undefined -O1 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-HAS-OSIZE // RUN: %clang -target x86_64-linux-gnu -fsanitize=object-size -O2 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-HAS-OSIZE // RUN: %clang -target x86_64-linux-gnu -fsanitize=object-size -O3 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-HAS-OSIZE @@ -18,7 +18,7 @@ // RUN: %clang -target x86_64-linux-gnu -fsanitize=object-size -Og %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-HAS-OSIZE // Use of trap mode shouldn't affect the object size check. - +// // RUN: %clang -target x86_64-linux-gnu -fsanitize=undefined -fsanitize-trap=undefined -O1 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-HAS-OSIZE // RUN: %clang -target x86_64-linux-gnu -fsanitize=undefined-trap -O1 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-HAS-OSIZE // RUN: %clang -target x86_64-linux-gnu -fsanitize=undefined-trap -fsanitize-undefined-trap-on-error -O1 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-HAS-OSIZE diff --git a/clang/test/Driver/fsanitize.c b/clang/test/Driver/fsanitize.c index aa077586a4a5d4..1d97e99058b9ec 100644 --- a/clang/test/Driver/fsanitize.c +++ b/clang/test/Driver/fsanitize.c @@ -903,7 +903,7 @@ // CHECK-SCUDO-TSAN: error: invalid argument '-fsanitize=scudo' not allowed with '-fsanitize=thread' // RUN: %clang -target x86_64-linux-gnu -fsanitize=scudo,hwaddress %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-SCUDO-HWASAN // CHECK-SCUDO-HWASAN: error: invalid argument '-fsanitize=scudo' not allowed with '-fsanitize=hwaddress' - +// // RUN: %clang -target x86_64-linux-gnu -fsanitize=scudo,kernel-memory %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-SCUDO-KMSAN // CHECK-SCUDO-KMSAN: error: invalid argument '-fsanitize=kernel-memory' not allowed with '-fsanitize=scudo' diff --git a/clang/test/Driver/fsemantic-interposition.c b/clang/test/Driver/fsemantic-interposition.c index b5d1c5b20bfd2c..e2713de80f690a 100644 --- a/clang/test/Driver/fsemantic-interposition.c +++ b/clang/test/Driver/fsemantic-interposition.c @@ -26,5 +26,5 @@ // RUN: %clang -target ppc64le %s -Werror -fPIC -fno-semantic-interposition -c -### 2>&1 | FileCheck --check-prefix=HALF %s // RUN: %clang -target x86_64 %s -Werror -fPIC -c -### 2>&1 | FileCheck --check-prefix=HALF %s - +// // HALF: "-fhalf-no-semantic-interposition" diff --git a/clang/test/Driver/function-sections.c b/clang/test/Driver/function-sections.c index 3047d2bcdd3129..bfb6cc6920bd4b 100644 --- a/clang/test/Driver/function-sections.c +++ b/clang/test/Driver/function-sections.c @@ -1,5 +1,5 @@ // Test handling of -f(no-)function-sections and -f(no-)data-sections - +// // CHECK-FS: -ffunction-sections // CHECK-NOFS-NOT: -ffunction-sections // CHECK-DS: -fdata-sections diff --git a/clang/test/Driver/fuzzer.c b/clang/test/Driver/fuzzer.c index 13985221b8b0a7..de1d51d0d88ef9 100644 --- a/clang/test/Driver/fuzzer.c +++ b/clang/test/Driver/fuzzer.c @@ -1,7 +1,7 @@ // Test flags inserted by -fsanitize=fuzzer. // RUN: %clang -fsanitize=fuzzer %s -target x86_64-apple-darwin14 -### 2>&1 | FileCheck --check-prefixes=CHECK-FUZZER-LIB,CHECK-COVERAGE %s - +// // CHECK-COVERAGE: -fsanitize-coverage-indirect-calls // CHECK-COVERAGE-SAME: -fsanitize-coverage-trace-cmp // CHECK-COVERAGE-SAME: -fsanitize-coverage-inline-8bit-counters @@ -9,11 +9,11 @@ // CHECK-FUZZER-LIB: libclang_rt.fuzzer // RUN: %clang -fsanitize=fuzzer -target i386-unknown-linux -stdlib=platform %s -### 2>&1 | FileCheck --check-prefixes=CHECK-LIBCXX-LINUX %s - +// // CHECK-LIBCXX-LINUX: -lstdc++ // RUN: %clang -target x86_64-apple-darwin14 -fsanitize=fuzzer %s -### 2>&1 | FileCheck --check-prefixes=CHECK-LIBCXX-DARWIN %s - +// // CHECK-LIBCXX-DARWIN: -lc++ @@ -31,18 +31,18 @@ // Check that we respect whether thes tandard library should be linked // statically. - +// // RUN: %clang -fsanitize=fuzzer -target i386-unknown-linux -stdlib=libstdc++ %s -### 2>&1 | FileCheck --check-prefixes=CHECK-LIBSTDCXX-DYNAMIC %s // CHECK-LIBSTDCXX-DYNAMIC-NOT: -Bstatic // CHECK-LIBSTDCXX-DYNAMIC: -lstdc++ - +// // RUN: %clang -fsanitize=fuzzer -target i386-unknown-linux -stdlib=libstdc++ -static-libstdc++ %s -### 2>&1 | FileCheck --check-prefixes=CHECK-LIBSTDCXX-STATIC %s // CHECK-LIBSTDCXX-STATIC: "-Bstatic" "-lstdc++" - +// // RUN: %clang -fsanitize=fuzzer -target i386-unknown-linux -stdlib=libc++ %s -### 2>&1 | FileCheck --check-prefixes=CHECK-LIBCXX-DYNAMIC %s // CHECK-LIBCXX-DYNAMIC-NOT: -Bstatic // CHECK-LIBCXX-DYNAMIC: -lc++ - +// // RUN: %clang -fsanitize=fuzzer -target i386-unknown-linux -stdlib=libc++ -static-libstdc++ %s -### 2>&1 | FileCheck --check-prefixes=CHECK-LIBCXX-STATIC %s // CHECK-LIBCXX-STATIC: "-Bstatic" "-lc++" diff --git a/clang/test/Driver/gcc-toolchain.cpp b/clang/test/Driver/gcc-toolchain.cpp index 8e8861d6ce37b2..d81e682a4daad4 100644 --- a/clang/test/Driver/gcc-toolchain.cpp +++ b/clang/test/Driver/gcc-toolchain.cpp @@ -1,16 +1,16 @@ // Test that gcc-toolchain option is working correctly - +// /// Without --rtlib=libgcc the driver may pick clang_rt.crtbegin.o if /// -DCLANG_DEFAULT_RTLIB=compiler-rt. // RUN: %clangxx %s -### --target=x86_64-linux-gnu --sysroot= \ // RUN: --gcc-toolchain=%S/Inputs/ubuntu_14.04_multiarch_tree/usr -stdlib=libstdc++ --rtlib=libgcc -no-pie 2>&1 | \ // RUN: FileCheck %s - +// // Additionally check that the legacy spelling of the flag works. // RUN: %clangxx %s -### --target=x86_64-linux-gnu --sysroot= \ // RUN: --gcc-toolchain=%S/Inputs/ubuntu_14.04_multiarch_tree/usr -stdlib=libstdc++ --rtlib=libgcc -no-pie 2>&1 | \ // RUN: FileCheck %s - +// // Test for header search toolchain detection. // CHECK: "-internal-isystem" // CHECK: "[[TOOLCHAIN:[^"]+]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8" @@ -18,7 +18,7 @@ // CHECK: "[[TOOLCHAIN]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8" // CHECK: "-internal-isystem" // CHECK: "[[TOOLCHAIN]]/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/backward" - +// // Test for linker toolchain detection. Note that only the '-L' flags will use // the same precise formatting of the path as the '-internal-system' flags // above, so we just blanket wildcard match the 'crtbegin.o'. diff --git a/clang/test/Driver/gcc_forward.c b/clang/test/Driver/gcc_forward.c index e113e8f10b2cba..9e512d134b3e7e 100644 --- a/clang/test/Driver/gcc_forward.c +++ b/clang/test/Driver/gcc_forward.c @@ -6,7 +6,7 @@ // Check that we don't try to forward -Xclang or -mlinker-version to GCC. // PR12920 -- Check also we may not forward W_Group options to GCC. - +// // RUN: %clang -target powerpc-unknown-unknown \ // RUN: %s \ // RUN: -Wall -Wdocumentation \ @@ -14,12 +14,12 @@ // RUN: -pie -march=x86-64 \ // RUN: -mlinker-version=10 -### 2> %t // RUN: FileCheck < %t %s - +// // clang -cc1 // CHECK: clang // CHECK: "-Wall" "-Wdocumentation" // CHECK: "-o" "{{[^"]+}}.o" - +// // gcc as ld. // CHECK: gcc{{[^"]*}}" "-pie" // CHECK-NOT: "-mlinker-version=10" diff --git a/clang/test/Driver/gold-lto-samplepgo.c b/clang/test/Driver/gold-lto-samplepgo.c index 6bef3a99974568..ee4b51c4085f03 100644 --- a/clang/test/Driver/gold-lto-samplepgo.c +++ b/clang/test/Driver/gold-lto-samplepgo.c @@ -1,5 +1,5 @@ // RUN: touch %t.o - +// // RUN: %clang -target x86_64-unknown-linux -### %t.o -flto 2>&1 \ // RUN: -Wl,-plugin-opt=foo -O3 \ // RUN: -fprofile-sample-use=%s \ diff --git a/clang/test/Driver/gold-lto-sections.c b/clang/test/Driver/gold-lto-sections.c index fd1469d6db633b..83d72cf7f97b81 100644 --- a/clang/test/Driver/gold-lto-sections.c +++ b/clang/test/Driver/gold-lto-sections.c @@ -1,5 +1,5 @@ // RUN: touch %t.o - +// // RUN: %clang -target x86_64-unknown-linux -### %t.o -flto 2>&1 \ // RUN: -Wl,-plugin-opt=foo -O3 \ // RUN: -ffunction-sections -fdata-sections \ diff --git a/clang/test/Driver/header-module.cpp b/clang/test/Driver/header-module.cpp index 54d0ba95932f36..9a6ba5b108fc57 100644 --- a/clang/test/Driver/header-module.cpp +++ b/clang/test/Driver/header-module.cpp @@ -1,7 +1,7 @@ // Check compiling a header module to a .pcm file. - +// // RUN: %clang -fmodules-ts -fmodule-name=foobar -x c++-header --precompile %S/Inputs/header1.h %S/Inputs/header2.h %S/Inputs/header3.h -o %t.pcm -v 2>&1 | FileCheck %s --check-prefix=CHECK-PRECOMPILE - +// // CHECK-PRECOMPILE: -cc1 {{.*}} -emit-header-module // CHECK-PRECOMPILE-SAME: -fmodules-ts // CHECK-PRECOMPILE-SAME: -fno-implicit-modules @@ -11,7 +11,7 @@ // CHECK-PRECOMPILE-SAME: header1.h // CHECK-PRECOMPILE-SAME: header2.h // CHECK-PRECOMPILE-SAME: header3.h - +// // RUN: %clang -fmodules-ts -fmodule-name=foobar -x c++-header -fsyntax-only %S/Inputs/header1.h %S/Inputs/header2.h %S/Inputs/header3.h -v 2>&1 | FileCheck %s --check-prefix=CHECK-SYNTAX-ONLY // CHECK-SYNTAX-ONLY: -cc1 {{.*}} -fsyntax-only // CHECK-SYNTAX-ONLY-SAME: -fmodules-ts diff --git a/clang/test/Driver/hip-autolink.hip b/clang/test/Driver/hip-autolink.hip index 5a3b6a8975bb9b..12bc9001891179 100644 --- a/clang/test/Driver/hip-autolink.hip +++ b/clang/test/Driver/hip-autolink.hip @@ -1,6 +1,6 @@ // REQUIRES: x86-registered-target // REQUIRES: amdgpu-registered-target - +// // RUN: %clang --target=i386-pc-windows-msvc --cuda-gpu-arch=gfx906 -nogpulib \ // RUN: --cuda-device-only %s -### 2>&1 | FileCheck --check-prefix=DEV %s // RUN: %clang --target=i386-pc-windows-msvc --cuda-gpu-arch=gfx906 -nogpulib \ diff --git a/clang/test/Driver/hip-options.hip b/clang/test/Driver/hip-options.hip index 95f2ce3a1472ba..2d6ed77cf4d7fe 100644 --- a/clang/test/Driver/hip-options.hip +++ b/clang/test/Driver/hip-options.hip @@ -4,7 +4,7 @@ // RUN: %clang -### -x hip --gpu-max-threads-per-block=1024 %s 2>&1 | FileCheck %s // Check that there are commands for both host- and device-side compilations. - +// // CHECK: "-cc1" {{.*}} "-fcuda-is-device" // CHECK-SAME: "--gpu-max-threads-per-block=1024" @@ -82,7 +82,7 @@ // HIPTHINLTO: lld{{.*}}"-plugin-opt=mcpu=gfx906" "-plugin-opt=thinlto" "-plugin-opt=-force-import-all" // Check that -flto=thin is handled correctly, particularly with -fwhole-program-vtables. - +// // RUN: %clang -### --target=x86_64-unknown-linux-gnu -nogpuinc -nogpulib \ // RUN: --cuda-gpu-arch=gfx906 -flto=thin -fwhole-program-vtables %s 2>&1 \ // RUN: | FileCheck -check-prefix=THINLTO %s diff --git a/clang/test/Driver/hip-phases.hip b/clang/test/Driver/hip-phases.hip index 157ad0dd896d7f..808a1372d652ec 100644 --- a/clang/test/Driver/hip-phases.hip +++ b/clang/test/Driver/hip-phases.hip @@ -6,17 +6,17 @@ // REQUIRES: x86-registered-target // REQUIRES: amdgpu-registered-target - +// // Test single gpu architecture with complete compilation. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 %s 2>&1 \ // RUN: | FileCheck -check-prefixes=BIN,NRD %s - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 -fgpu-rdc %s 2>&1 \ // RUN: | FileCheck -check-prefixes=BIN,RDC %s - +// // BIN-DAG: [[P0:[0-9]+]]: input, "{{.*}}hip-phases.hip", [[T:hip]], (host-[[T]]) // BIN-DAG: [[P1:[0-9]+]]: preprocessor, {[[P0]]}, [[T]]-cpp-output, (host-[[T]]) // BIN-DAG: [[P2:[0-9]+]]: compiler, {[[P1]]}, ir, (host-[[T]]) @@ -41,9 +41,9 @@ // NRD-DAG: [[P14:[0-9]+]]: linker, {[[P13]]}, image, (host-[[T]]) // RDC-DAG: [[P14:[0-9]+]]: linker, {[[P13]], [[P11]]}, image, (host-[[T]]) - +// // Test single gpu architecture up to the assemble phase. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 %s -S 2>&1 \ // RUN: | FileCheck -check-prefixes=ASM %s @@ -56,9 +56,9 @@ // ASM-DAG: [[P7:[0-9]+]]: compiler, {[[P6]]}, ir, (host-[[T]]) // ASM-DAG: [[P8:[0-9]+]]: backend, {[[P7]]}, assembler, (host-[[T]]) - +// // Test two gpu architectures with complete compilation with -fno-gpu-rdc. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s 2>&1 \ // RUN: | FileCheck -check-prefixes=NRD2,NCL2 %s @@ -92,9 +92,9 @@ // NRD2-DAG: [[P20:[0-9]+]]: assembler, {[[P19]]}, object, (host-[[T]]) // NCL2-DAG: [[P21:[0-9]+]]: linker, {[[P20]]}, image, (host-[[T]]) - +// // Test two gpu architectures with complete compilation with -fgpu-rdc. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s -fgpu-rdc 2>&1 \ // RUN: | FileCheck -check-prefixes=RDC2,RCL2 %s @@ -136,9 +136,9 @@ // RCL2-DAG: [[P23:[0-9]+]]: linker, {[[P20]], [[P22]]}, image, (host-[[T]]) // RC2-DAG: [[P23:[0-9]+]]: clang-offload-bundler, {[[P9]], [[P16]], [[P20]]}, object, (host-[[T]]) - +// // Test two gpu architecturess up to the assemble phase. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s -S 2>&1 \ // RUN: | FileCheck -check-prefixes=ASM2 %s @@ -153,10 +153,10 @@ // ASM2-DAG: [[P12:[0-9]+]]: compiler, {[[P11]]}, ir, (host-[[T]]) // ASM2-DAG: [[P13:[0-9]+]]: backend, {[[P12]]}, assembler, (host-[[T]]) - +// // Test single gpu architecture with complete compilation in host-only // compilation mode. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 %s --cuda-host-only 2>&1 \ // RUN: | FileCheck -check-prefixes=HBIN %s @@ -167,10 +167,10 @@ // HBIN-DAG: [[P4:[0-9]+]]: assembler, {[[P3]]}, object, (host-[[T]]) // HBIN-DAG: [[P5:[0-9]+]]: linker, {[[P4]]}, image, (host-[[T]]) // HBIN-NOT: device - +// // Test single gpu architecture up to the assemble phase in host-only // compilation mode. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 %s --cuda-host-only -S 2>&1 \ // RUN: | FileCheck -check-prefixes=HASM %s @@ -180,10 +180,10 @@ // HASM-DAG: [[P3:[0-9]+]]: backend, {[[P2]]}, assembler, (host-[[T]]) // HASM-NOT: device - +// // Test two gpu architectures with complete compilation in host-only // compilation mode. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s --cuda-host-only 2>&1 \ // RUN: | FileCheck -check-prefixes=HBIN2 %s @@ -195,10 +195,10 @@ // HBIN2-DAG: [[P5:[0-9]+]]: linker, {[[P4]]}, image, (host-[[T]]) // HBIN2-NOT: device - +// // Test two gpu architectures up to the assemble phase in host-only // compilation mode. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s --cuda-host-only -S \ // RUN: 2>&1 | FileCheck -check-prefixes=HASM2 %s @@ -208,10 +208,10 @@ // HASM2-DAG: [[P3:[0-9]+]]: backend, {[[P2]]}, assembler, (host-[[T]]) // HASM2-NOT: device - +// // Test single gpu architecture with complete compilation in device-only // compilation mode. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 %s --cuda-device-only 2>&1 \ // RUN: | FileCheck -check-prefixes=DBIN %s @@ -225,10 +225,10 @@ // DBIN-DAG: [[P7:[0-9]+]]: linker, {[[P6]]}, hip-fatbin, (device-hip, ) // DBIN-DAG: [[P8:[0-9]+]]: offload, "device-[[T]] (amdgcn-amd-amdhsa:)" {[[P7]]}, hip-fatbin // DBIN-NOT: host - +// // Test single gpu architecture up to the assemble phase in device-only // compilation mode. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 %s --cuda-device-only -S --no-gpu-bundle-output 2>&1 \ // RUN: | FileCheck -check-prefixes=DASM %s @@ -240,10 +240,10 @@ // DASM-NOT: clang-offload-bundler // DASM-NOT: host - +// // Test two gpu architectures with complete compilation in device-only // compilation mode. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu -ccc-print-phases \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s --cuda-device-only \ // RUN: 2>&1 | FileCheck -check-prefixes=DBIN2 %s @@ -264,10 +264,10 @@ // DBIN2-DAG: [[P14:[0-9]+]]: linker, {[[P6]], [[P13]]}, hip-fatbin, (device-hip, ) // DBIN2-DAG: [[P15:[0-9]+]]: offload, "device-[[T]] (amdgcn-amd-amdhsa:)" {[[P14]]}, hip-fatbin // DBIN2-NOT: host - +// // Test two gpu architectures up to the assemble phase in device-only // compilation mode. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu \ // RUN: -ccc-print-phases --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s \ // RUN: --cuda-device-only -S -o %t.s 2>&1 \ @@ -298,20 +298,20 @@ // DASM2-NOBUNDLE-NOT: clang-offload-bundler, {[[P4]], [[P9]]}, assembler, (device-hip, ) // DASM2-NOT: host - +// // Test linking two objects with two gpu architectures. - +// // RUN: touch %T/obj1.o // RUN: touch %T/obj2.o - +// // RUN: %clang -target x86_64-unknown-linux-gnu -ccc-print-phases --hip-link \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %T/obj1.o %T/obj2.o 2>&1 \ // RUN: | FileCheck -check-prefixes=L2,NL2 %s - +// // RUN: %clang -target x86_64-unknown-linux-gnu -ccc-print-phases --hip-link \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %T/obj1.o %T/obj2.o \ // RUN: -fgpu-rdc 2>&1 | FileCheck -check-prefixes=L2,RL2,RL2-EM %s - +// // RUN: %clang -target x86_64-unknown-linux-gnu -ccc-print-phases --hip-link \ // RUN: --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %T/obj1.o %T/obj2.o \ // RUN: -fgpu-rdc --cuda-device-only 2>&1 | FileCheck -check-prefixes=L2,RL2,RL2-DEV %s @@ -343,7 +343,7 @@ // Test one gpu architectures up to the preprocessor expansion output phase in device-only // compilation mode. no bundle. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu \ // RUN: -ccc-print-phases --cuda-gpu-arch=gfx803 %s \ // RUN: --cuda-device-only -E 2>&1 \ @@ -385,7 +385,7 @@ // Test one gpu architectures up to the LLVM IR output phase in device-only // compilation mode. no bundle. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu \ // RUN: -ccc-print-phases --cuda-gpu-arch=gfx803 %s \ // RUN: --cuda-device-only -c -emit-llvm 2>&1 \ @@ -393,7 +393,7 @@ // Test two gpu architectures up to the LLVM IR output phase in device-only // compilation mode. bundle. - +// // RUN: %clang -x hip -target x86_64-unknown-linux-gnu \ // RUN: -ccc-print-phases --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s \ // RUN: --cuda-device-only -c -emit-llvm -o %t.bc --gpu-bundle-output 2>&1 \ @@ -401,7 +401,7 @@ // Test two gpu architectures up to the LLVM IR output phase in device-only // compilation mode with bundled preprocessor expansion as input. bundle. - +// // RUN: %clang -x hip-cpp-output -target x86_64-unknown-linux-gnu \ // RUN: -ccc-print-phases --cuda-gpu-arch=gfx803 --cuda-gpu-arch=gfx900 %s \ // RUN: --cuda-device-only -c -emit-llvm -o %t.bc --gpu-bundle-output 2>&1 \ diff --git a/clang/test/Driver/hip-syntax-only.hip b/clang/test/Driver/hip-syntax-only.hip index 92ce81095f6f48..71bc46fa86e89a 100644 --- a/clang/test/Driver/hip-syntax-only.hip +++ b/clang/test/Driver/hip-syntax-only.hip @@ -4,7 +4,7 @@ // RUN: %clang -### -nogpulib --target=x86_64 -fsyntax-only %s 2>&1 | FileCheck %s // Check that there are commands for both host- and device-side compilations. - +// // CHECK-DAG: "-cc1" {{.*}} "-fcuda-is-device" // CHECK-DAG: "-cc1" "-triple" "x86_64" // CHECK-NOT: clang-offload-bundler" diff --git a/clang/test/Driver/hip-toolchain-no-rdc.hip b/clang/test/Driver/hip-toolchain-no-rdc.hip index d1ff1b08807dd6..0d8756d8f3a815 100644 --- a/clang/test/Driver/hip-toolchain-no-rdc.hip +++ b/clang/test/Driver/hip-toolchain-no-rdc.hip @@ -29,9 +29,9 @@ // RUN: %T/a.o %T/b.o \ // RUN: 2>&1 | FileCheck -check-prefixes=LKONLY %s - +// // Compile device code in a.cu to code object for gfx803. - +// // CHECK: [[CLANG:".*clang.*"]] "-cc1" "-triple" "amdgcn-amd-amdhsa" // CHECK-SAME: "-aux-triple" "x86_64-unknown-linux-gnu" @@ -52,9 +52,9 @@ // CHECK: [[LLD: ".*lld.*"]] "-flavor" "gnu" "--no-undefined" "-shared" // CHECK-SAME: "-o" "[[IMG_DEV_A_803:.*out]]" [[OBJ_DEV_A_803]] - +// // Compile device code in a.cu to code object for gfx900. - +// // CHECK: [[CLANG:".*clang.*"]] "-cc1" "-triple" "amdgcn-amd-amdhsa" // CHECK-SAME: "-aux-triple" "x86_64-unknown-linux-gnu" @@ -75,9 +75,9 @@ // CHECK: [[LLD]] "-flavor" "gnu" "--no-undefined" "-shared" // CHECK-SAME: "-o" "[[IMG_DEV_A_900:.*out]]" [[OBJ_DEV_A_900]] - +// // Bundle and embed device code in host object for a.cu. - +// // CHECK: [[BUNDLER:".*clang-offload-bundler"]] "-type=o" // CHECK-SAME: "-bundle-align=4096" @@ -92,9 +92,9 @@ // CHECK-SAME: {{.*}} "-o" [[A_OBJ_HOST:".*o"]] "-x" "hip" // CHECK-SAME: {{.*}} [[A_SRC]] - +// // Compile device code in b.hip to code object for gfx803. - +// // CHECK: [[CLANG:".*clang.*"]] "-cc1" "-triple" "amdgcn-amd-amdhsa" // CHECK-SAME: "-aux-triple" "x86_64-unknown-linux-gnu" @@ -115,9 +115,9 @@ // CHECK: [[LLD]] "-flavor" "gnu" "--no-undefined" "-shared" // CHECK-SAME: "-o" "[[IMG_DEV_B_803:.*out]]" [[OBJ_DEV_B_803]] - +// // Compile device code in b.hip to code object for gfx900. - +// // CHECK: [[CLANG:".*clang.*"]] "-cc1" "-triple" "amdgcn-amd-amdhsa" // CHECK-SAME: "-aux-triple" "x86_64-unknown-linux-gnu" @@ -138,9 +138,9 @@ // CHECK: [[LLD]] "-flavor" "gnu" "--no-undefined" "-shared" // CHECK-SAME: "-o" "[[IMG_DEV_B_900:.*out]]" [[OBJ_DEV_B_900]] - +// // Bundle and embed device code in host object for b.hip. - +// // CHECK: [[BUNDLER:".*clang-offload-bundler"]] "-type=o" // CHECK-SAME: "-bundle-align=4096" @@ -155,9 +155,9 @@ // CHECK-SAME: {{.*}} "-o" [[B_OBJ_HOST:".*o"]] "-x" "hip" // CHECK-SAME: {{.*}} [[B_SRC]] - +// // Link host objects. - +// // LINK-NOT: {{".*/llvm-link"}} // LINK-NOT: {{".*/opt"}} diff --git a/clang/test/Driver/instrprof-ld.c b/clang/test/Driver/instrprof-ld.c index bed2b90f5928a6..d1b070ed59c3f4 100644 --- a/clang/test/Driver/instrprof-ld.c +++ b/clang/test/Driver/instrprof-ld.c @@ -1,153 +1,153 @@ // Test instrumented profiling ld flags. - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=i386-unknown-linux -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-I386 %s - +// // CHECK-LINUX-I386: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LINUX-I386: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-i386.a" {{.*}} "-lc" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-X86-64 %s - +// // CHECK-LINUX-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LINUX-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-x86_64.a" {{.*}} "-lc" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -fprofile-instr-generate -nostdlib -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-NOSTDLIB-X86-64 %s - +// // CHECK-LINUX-NOSTDLIB-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LINUX-NOSTDLIB-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-x86_64.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-freebsd -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_freebsd64_tree \ // RUN: | FileCheck --check-prefix=CHECK-FREEBSD-X86-64 %s - +// // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}freebsd{{/|\\\\}}libclang_rt.profile-x86_64.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: -shared \ // RUN: --target=i386-unknown-linux -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-I386-SHARED %s - +// // CHECK-LINUX-I386-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LINUX-I386-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-i386.a" {{.*}} "-lc" - +// // RUN: %clang -### %s 2>&1 \ // RUN: -shared \ // RUN: --target=x86_64-unknown-linux -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-X86-64-SHARED %s - +// // CHECK-LINUX-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LINUX-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-x86_64.a" {{.*}} "-lc" - +// // RUN: %clang -### %s 2>&1 \ // RUN: -shared \ // RUN: --target=x86_64-unknown-freebsd -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_freebsd64_tree \ // RUN: | FileCheck --check-prefix=CHECK-FREEBSD-X86-64-SHARED %s - +// // CHECK-FREEBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-FREEBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}freebsd{{/|\\\\}}libclang_rt.profile-x86_64.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-apple-darwin14 -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-DARWIN-X86-64 %s - +// // CHECK-DARWIN-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-DARWIN-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}darwin{{/|\\\\}}libclang_rt.profile_osx.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-apple-darwin14 -fprofile-instr-generate -nostdlib -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-DARWIN-NOSTDLIB-X86-64 %s - +// // CHECK-DARWIN-NOSTDLIB-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-DARWIN-NOSTDLIB-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}darwin{{/|\\\\}}libclang_rt.profile_osx.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm64-apple-ios -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-DARWIN-ARM64 %s - +// // CHECK-DARWIN-ARM64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-DARWIN-ARM64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}darwin{{/|\\\\}}libclang_rt.profile_ios.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=armv7-apple-darwin -mtvos-version-min=8.3 -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-TVOS-ARMV7 %s - +// // CHECK-TVOS-ARMV7: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-TVOS-ARMV7: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}darwin{{/|\\\\}}libclang_rt.profile_tvos.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=armv7s-apple-darwin10 -mwatchos-version-min=2.0 -arch armv7k -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-WATCHOS-ARMV7 %s - +// // CHECK-WATCHOS-ARMV7: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-WATCHOS-ARMV7: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}darwin{{/|\\\\}}libclang_rt.profile_watchos.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: -target x86_64-apple-driverkit19.0 -arch x86_64 -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-DRIVERKIT-X86_64 %s - +// // CHECK-DRIVERKIT-X86_64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-DRIVERKIT-X86_64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}darwin{{/|\\\\}}libclang_rt.profile_driverkit.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=i386-pc-win32 -fprofile-instr-generate \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-WINDOWS-I386 %s - +// // CHECK-WINDOWS-I386: "{{.*}}link{{(.exe)?}}" // CHECK-WINDOWS-I386: "{{.*}}clang_rt.profile{{(-i386)?}}.lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-pc-win32 -fprofile-instr-generate \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-WINDOWS-X86-64 %s - +// // CHECK-WINDOWS-X86-64: "{{.*}}link{{(.exe)?}}" // CHECK-WINDOWS-X86-64: "{{.*}}clang_rt.profile{{(-x86_64)?}}.lib" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-mingw32 -fprofile-instr-generate -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: | FileCheck --check-prefix=CHECK-MINGW-X86-64 %s - +// // CHECK-MINGW-X86-64: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-MINGW-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}windows{{/|\\\\}}libclang_rt.profile-x86_64.a" // Test instrumented profiling dependent-lib flags - +// // RUN: %clang -### %s --target=x86_64-pc-win32 \ // RUN: -fprofile-instr-generate 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-WINDOWS-X86-64-DEPENDENT-LIB %s - +// // CHECK-WINDOWS-X86-64-DEPENDENT-LIB: "--dependent-lib={{[^"]*}}clang_rt.profile{{[^"]*}}.lib" - +// // RUN: %clang -### %s --target=x86_64-mingw32 \ // RUN: -fprofile-instr-generate 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MINGW-X86-64-DEPENDENT-LIB %s - +// // CHECK-MINGW-X86-64-DEPENDENT-LIB-NOT: "--dependent-lib={{[^"]*}}clang_rt.profile-{{[^"]*}}.a" diff --git a/clang/test/Driver/invalid-offload-options.cpp b/clang/test/Driver/invalid-offload-options.cpp index e12e427e70fc07..54ee6a08013623 100644 --- a/clang/test/Driver/invalid-offload-options.cpp +++ b/clang/test/Driver/invalid-offload-options.cpp @@ -12,7 +12,7 @@ // In the future we should be able to specify multiple targets for HIP // compilation but currently it is not supported. - +// // RUN: %clang -### -x hip -target x86_64-linux-gnu --offload=foo,bar \ // RUN: --hip-path=%S/Inputs/hipspv -nogpuinc -nogpulib %s \ // RUN: 2>&1 | FileCheck --check-prefix=TOO-MANY-TARGETS %s diff --git a/clang/test/Driver/ios-simulator-arcruntime.c b/clang/test/Driver/ios-simulator-arcruntime.c index ad2d3656c81973..dbe306e4467b79 100644 --- a/clang/test/Driver/ios-simulator-arcruntime.c +++ b/clang/test/Driver/ios-simulator-arcruntime.c @@ -1,6 +1,6 @@ // RUN: %clang -### -x objective-c -target i386-apple-darwin10 -arch i386 -mios-simulator-version-min=4.2.1 -fobjc-arc -fsyntax-only %s 2>&1 | FileCheck -check-prefix=CHECK-OPTIONS1 %s // RUN: %clang -### -x objective-c -target i386-apple-darwin10 -arch i386 -mios-simulator-version-min=5.0.0 -fobjc-arc -fsyntax-only %s 2>&1 | FileCheck -check-prefix=CHECK-OPTIONS2 %s - +// // CHECK-OPTIONS1: i386-apple-ios4.2.1 // CHECK-OPTIONS1: -fobjc-runtime=ios-4.2.1 diff --git a/clang/test/Driver/linker-opts.c b/clang/test/Driver/linker-opts.c index c9dec8f05ef65a..e3c4e00ea0c757 100644 --- a/clang/test/Driver/linker-opts.c +++ b/clang/test/Driver/linker-opts.c @@ -1,6 +1,6 @@ // RUN: rm -rf %t // RUN: mkdir %t - +// // RUN: env LIBRARY_PATH=%t/test1 %clang -target %itanium_abi_triple %s -la -### 2>&1 | FileCheck %s // CHECK: "-L{{.*}}/test1" // CHECK: "{{[^"]+}}.o" @@ -12,12 +12,12 @@ // Make sure that LIBRARY_PATH works for both i386 and x86_64 on Darwin. // RUN: env LIBRARY_PATH=%t/test1 %clang -target x86_64-apple-darwin %s -la -### 2>&1 | FileCheck %s // RUN: env LIBRARY_PATH=%t/test1 %clang -target i386-apple-darwin %s -la -### 2>&1 | FileCheck %s - +// // Make sure that we don't warn on unused compiler arguments. // RUN: %clang -Xclang -I. -x c %s -c -o %t/tmp.o // RUN: %clang -Xclang -I. %t/tmp.o -o %t/tmp -### 2>&1 | FileCheck %s --check-prefix=NO-UNUSED // NO-UNUSED-NOT: warning:{{.*}}unused - +// // Make sure that we do warn in other cases. // RUN: %clang %s -lfoo -c -o %t/tmp2.o -### 2>&1 | FileCheck %s --check-prefix=UNUSED // UNUSED: warning:{{.*}}unused diff --git a/clang/test/Driver/linux-as.c b/clang/test/Driver/linux-as.c index 4b3f34993cf617..7a4d3657dc5de2 100644 --- a/clang/test/Driver/linux-as.c +++ b/clang/test/Driver/linux-as.c @@ -1,168 +1,168 @@ // Check passing options to the assembler for various linux targets. - +// // RUN: %clang -target arm-linux -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM %s // CHECK-ARM: as{{(.exe)?}}" "-EL" "-mfloat-abi=soft" - +// // RUN: %clang -target arm-linux -mcpu=cortex-a8 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-MCPU %s // CHECK-ARM-MCPU: as{{(.exe)?}}" "-EL" "-mfloat-abi=soft" "-mcpu=cortex-a8" - +// // RUN: %clang -target arm-linux -mfpu=neon -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-MFPU %s // CHECK-ARM-MFPU: as{{(.exe)?}}" "-EL" "-mfloat-abi=soft" "-mfpu=neon" - +// // RUN: %clang -target arm-linux -march=armv7-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-MARCH %s // CHECK-ARM-MARCH: as{{(.exe)?}}" "-EL" "-mfloat-abi=soft" "-march=armv7-a" - +// // RUN: %clang -target armeb-linux -mlittle-endian -mcpu=cortex-a8 -mfpu=neon -march=armv7-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-ALL %s // CHECK-ARM-ALL: as{{(.exe)?}}" "-EL" "-mfloat-abi=soft" "-march=armv7-a" "-mcpu=cortex-a8" "-mfpu=neon" - +// // RUN: %clang -target arm-linux -mcpu=cortex-a8 -mfpu=neon -march=armv7-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-ALL %s - +// // RUN: %clang -target armeb-linux -mlittle-endian -mcpu=cortex-a8 -mfpu=neon -march=armv7-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-ALL %s - +// // RUN: %clang -target armeb-linux -mcpu=cortex-a8 -mfpu=neon -march=armebv7-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARMEB-ALL %s // CHECK-ARMEB-ALL: as{{(.exe)?}}" "-EB" "-mfloat-abi=soft" "-march=armebv7-a" "-mcpu=cortex-a8" "-mfpu=neon" - +// // RUN: %clang -target arm-linux -mcpu=cortex-a8 -mfpu=neon -march=armebv7-a -mbig-endian -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARMEB-ALL %s - +// // RUN: %clang -target thumb-linux -mcpu=cortex-a8 -mfpu=neon -march=thumbv7-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-THUMB-ALL %s // CHECK-THUMB-ALL: as{{(.exe)?}}" "-EL" "-mfloat-abi=soft" "-march=thumbv7-a" "-mcpu=cortex-a8" "-mfpu=neon" - +// // RUN: %clang -target thumbeb-linux -mcpu=cortex-a8 -mfpu=neon -march=thumbv7-a -mlittle-endian -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-THUMB-ALL %s - +// // RUN: %clang -target thumbeb-linux -mcpu=cortex-a8 -mfpu=neon -march=thumbebv7-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-THUMBEB-ALL %s // CHECK-THUMBEB-ALL: as{{(.exe)?}}" "-EB" "-mfloat-abi=soft" "-march=thumbebv7-a" "-mcpu=cortex-a8" "-mfpu=neon" - +// // RUN: %clang -target thumb-linux -mcpu=cortex-a8 -mfpu=neon -march=thumbebv7-a -mbig-endian -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-THUMBEB-ALL %s - +// // RUN: %clang -target armv7-linux -mcpu=cortex-a8 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-TARGET %s // CHECK-ARM-TARGET: as{{(.exe)?}}" "-EL" "-mfpu=neon" "-mfloat-abi=soft" "-mcpu=cortex-a8" - +// // RUN: %clang -target armebv7-linux -mcpu=cortex-a8 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARMEB-TARGET %s // CHECK-ARMEB-TARGET: as{{(.exe)?}}" "-EB" "-mfpu=neon" "-mfloat-abi=soft" "-mcpu=cortex-a8" - +// // RUN: %clang -target thumbv7-linux -mcpu=cortex-a8 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-THUMB-TARGET %s // CHECK-THUMB-TARGET: as{{(.exe)?}}" "-EL" "-mfpu=neon" "-mfloat-abi=soft" "-mcpu=cortex-a8" - +// // RUN: %clang -target thumbebv7-linux -mcpu=cortex-a8 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-THUMBEB-TARGET %s // CHECK-THUMBEB-TARGET: as{{(.exe)?}}" "-EB" "-mfpu=neon" "-mfloat-abi=soft" "-mcpu=cortex-a8" - +// // RUN: %clang -target armv8-linux -mcpu=cortex-a53 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-TARGET-V8 %s // CHECK-ARM-TARGET-V8: as{{(.exe)?}}" "-EL" "-mfpu=crypto-neon-fp-armv8" "-mfloat-abi=soft" "-mcpu=cortex-a53" - +// // RUN: %clang -target armebv8-linux -mcpu=cortex-a53 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARMEB-TARGET-V8 %s // CHECK-ARMEB-TARGET-V8: as{{(.exe)?}}" "-EB" "-mfpu=crypto-neon-fp-armv8" "-mfloat-abi=soft" "-mcpu=cortex-a53" - +// // RUN: %clang -target thumbv8-linux -mcpu=cortex-a53 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-THUMB-TARGET-V8 %s // CHECK-THUMB-TARGET-V8: as{{(.exe)?}}" "-EL" "-mfpu=crypto-neon-fp-armv8" "-mfloat-abi=soft" "-mcpu=cortex-a53" - +// // RUN: %clang -target thumbebv8-linux -mcpu=cortex-a53 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-THUMBEB-TARGET-V8 %s // CHECK-THUMBEB-TARGET-V8: as{{(.exe)?}}" "-EB" "-mfpu=crypto-neon-fp-armv8" "-mfloat-abi=soft" "-mcpu=cortex-a53" - +// // RUN: %clang -target arm-linux -mfloat-abi=hard -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-MFLOAT-ABI %s // CHECK-ARM-MFLOAT-ABI: as{{(.exe)?}}" "-EL" "-mfloat-abi=hard" - +// // RUN: %clang -target arm-linux-androideabi -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-ANDROID %s // CHECK-ARM-ANDROID: as{{(.exe)?}}" "-EL" "-mfloat-abi=soft" - +// // RUN: %clang -target arm-linux-androideabi -march=armv7-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-ANDROID-SOFTFP %s // CHECK-ARM-ANDROID-SOFTFP: as{{(.exe)?}}" "-EL" "-mfloat-abi=softfp" "-march=armv7-a" - +// // RUN: %clang -target arm-linux-eabi -mhard-float -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM-HARDFP %s // CHECK-ARM-HARDFP: as{{(.exe)?}}" "-EL" "-mfloat-abi=hard" - +// // RUN: %clang -target aarch64-linux-gnu -mcpu=cortex-a53 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM64-MCPU %s // CHECK-ARM64-MCPU: as{{(.exe)?}}" "-EL" "-mcpu=cortex-a53" - +// // RUN: %clang -target aarch64-linux-gnu -march=armv8-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM64-MARCH %s // CHECK-ARM64-MARCH: as{{(.exe)?}}" "-EL" "-march=armv8-a" - +// // RUN: %clang -target aarch64-linux-gnu -mcpu=cortex-a53 -march=armv8-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM64-ALL %s // CHECK-ARM64-ALL: as{{(.exe)?}}" "-EL" "-march=armv8-a" "-mcpu=cortex-a53" - +// // RUN: %clang -target aarch64_be-linux-gnu -mcpu=cortex-a53 -march=armv8-a -mlittle-endian -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM64-ALL %s - +// // RUN: %clang -target aarch64_be-linux-gnu -mcpu=cortex-a53 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM64BE-MCPU %s // CHECK-ARM64BE-MCPU: as{{(.exe)?}}" "-EB" "-mcpu=cortex-a53" - +// // RUN: %clang -target aarch64_be-linux-gnu -march=armv8-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM64BE-MARCH %s // CHECK-ARM64BE-MARCH: as{{(.exe)?}}" "-EB" "-march=armv8-a" - +// // RUN: %clang -target aarch64_be-linux-gnu -mcpu=cortex-a53 -march=armv8-a -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM64BE-ALL %s // CHECK-ARM64BE-ALL: as{{(.exe)?}}" "-EB" "-march=armv8-a" "-mcpu=cortex-a53" - +// // RUN: %clang -target aarch64-linux-gnu -mcpu=cortex-a53 -march=armv8-a -mbig-endian -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-ARM64BE-ALL %s - +// // RUN: %clang -target ppc-linux -mcpu=invalid-cpu -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-PPC-NO-MCPU %s // CHECK-PPC-NO-MCPU-NOT: as{{.*}} "-mcpu=invalid-cpu" - +// // RUN: %clang -target sparc64-linux -mcpu=invalid-cpu -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-SPARCV9 %s @@ -171,7 +171,7 @@ // CHECK-SPARCV9: -Av9a // CHECK-SPARCV9-NOT: -KPIC // CHECK-SPARCV9: -o - +// // RUN: %clang -target sparc64-linux -mcpu=invalid-cpu -### \ // RUN: -no-integrated-as -fpic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-SPARCV9PIC %s @@ -180,7 +180,7 @@ // CHECK-SPARCV9PIC: -Av9a // CHECK-SPARCV9PIC: -KPIC // CHECK-SPARCV9PIC: -o - +// // RUN: %clang -target sparc-linux -mcpu=invalid-cpu -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-SPARCV8 %s @@ -188,7 +188,7 @@ // CHECK-SPARCV8: -32 // CHECK-SPARCV8: -Av8 // CHECK-SPARCV8: -o - +// // RUN: %clang -target sparcel-linux -mcpu=invalid-cpu -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-SPARCV8EL %s @@ -196,26 +196,26 @@ // CHECK-SPARCV8EL: -32 // CHECK-SPARCV8EL: -Av8 // CHECK-SPARCV8EL: -o - +// // RUN: %clang -target s390x-linux -### -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-Z-DEFAULT-ARCH %s // CHECK-Z-DEFAULT-ARCH: as{{.*}} "-march=z10" - +// // RUN: %clang -target s390x-linux -march=z196 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-Z-ARCH-Z196 %s // CHECK-Z-ARCH-Z196: as{{.*}} "-march=z196" - +// // RUN: %clang -target powerpc64le-linux -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-PPC64LE %s // CHECK-PPC64LE: as{{.*}} "-mpower8" - +// // RUN: %clang -target powerpc64-linux -mcpu=pwr7 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-PPC64 %s // CHECK-PPC64: as{{.*}} "-mpower7" - +// // RUN: %clang -target powerpc-linux -mcpu=pwr9 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-PPC32 %s diff --git a/clang/test/Driver/linux-header-search.cpp b/clang/test/Driver/linux-header-search.cpp index 011477eec42775..91e4f8825e49a9 100644 --- a/clang/test/Driver/linux-header-search.cpp +++ b/clang/test/Driver/linux-header-search.cpp @@ -1,6 +1,6 @@ // General tests that the header search paths detected by the driver and passed // to CC1 are sane. - +// // Test a simulated installation of libc++ on Linux, both through sysroot and // the installation path of Clang. // RUN: %clang -### %s -fsyntax-only 2>&1 \ @@ -45,7 +45,7 @@ // CHECK-BASIC-LIBCXX-INSTALL: "-internal-isystem" "[[SYSROOT]]/usr/bin/../include/x86_64-unknown-linux-gnu/c++/v1" // CHECK-BASIC-LIBCXX-INSTALL: "-internal-isystem" "[[SYSROOT]]/usr/bin/../include/c++/v1" // CHECK-BASIC-LIBCXX-INSTALL: "-internal-isystem" "[[SYSROOT]]/usr/local/include" - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-unknown-linux-gnu \ // RUN: -stdlib=libc++ \ @@ -148,7 +148,7 @@ // CHECK-GENTOO-4-9-3: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-GENTOO-4-9-3: "-internal-externc-isystem" "[[SYSROOT]]/include" // CHECK-GENTOO-4-9-3: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" - +// // Test support for Gentoo's gcc-config -- clang should prefer the older // (4.9.3) version over the newer (5.4.0) due to preference specified // in /etc/env.d/gcc/x86_64-pc-linux-gnu. @@ -157,7 +157,7 @@ // RUN: --sysroot=%S/Inputs/gentoo_linux_gcc_multi_version_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-GENTOO-4-9-3 %s - +// // Test that gcc-config support does not break multilib. // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-unknown-linux-gnux32 -stdlib=libstdc++ \ @@ -174,7 +174,7 @@ // CHECK-GENTOO-4-9-3-X32: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-GENTOO-4-9-3-X32: "-internal-externc-isystem" "[[SYSROOT]]/include" // CHECK-GENTOO-4-9-3-X32: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=i386-unknown-linux-gnu -stdlib=libstdc++ \ // RUN: --sysroot=%S/Inputs/gentoo_linux_gcc_multi_version_tree \ @@ -190,7 +190,7 @@ // CHECK-GENTOO-4-9-3-32: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-GENTOO-4-9-3-32: "-internal-externc-isystem" "[[SYSROOT]]/include" // CHECK-GENTOO-4-9-3-32: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" - +// // Test support for parsing Gentoo's gcc-config -- clang should parse the // /etc/env.d/gcc/config-x86_64-pc-linux-gnu file to find CURRENT gcc used. // Then should pick the multilibs from version 4.9.x specified in @@ -200,7 +200,7 @@ // RUN: --sysroot=%S/Inputs/gentoo_linux_gcc_4.9.x_tree \ // RUN: --gcc-toolchain="" \ // RUN: | FileCheck --check-prefix=CHECK-GENTOO-4-9-X %s - +// // CHECK-GENTOO-4-9-X: "-cc1" // CHECK-GENTOO-4-9-X: "-resource-dir" "[[RESOURCE_DIR:[^"]+]]" // CHECK-GENTOO-4-9-X: "-isysroot" "[[SYSROOT:[^"]+]]" @@ -211,7 +211,7 @@ // CHECK-GENTOO-4-9-X: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-GENTOO-4-9-X: "-internal-externc-isystem" "[[SYSROOT]]/include" // CHECK-GENTOO-4-9-X: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=x86_64-unknown-linux-gnux32 -stdlib=libstdc++ \ // RUN: --sysroot=%S/Inputs/gentoo_linux_gcc_4.9.x_tree \ @@ -227,7 +227,7 @@ // CHECK-GENTOO-4-9-X-X32: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-GENTOO-4-9-X-X32: "-internal-externc-isystem" "[[SYSROOT]]/include" // CHECK-GENTOO-4-9-X-X32: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" - +// // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=i386-unknown-linux-gnu -stdlib=libstdc++ \ // RUN: --sysroot=%S/Inputs/gentoo_linux_gcc_4.9.x_tree \ @@ -243,7 +243,7 @@ // CHECK-GENTOO-4-9-X-32: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-GENTOO-4-9-X-32: "-internal-externc-isystem" "[[SYSROOT]]/include" // CHECK-GENTOO-4-9-X-32: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" - +// // Check header search on Debian 6 / MIPS64 // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=mips64-unknown-linux-gnuabi64 -stdlib=libstdc++ \ @@ -261,7 +261,7 @@ // CHECK-MIPS64-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/usr/include/mips64-linux-gnuabi64" // CHECK-MIPS64-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/include" // CHECK-MIPS64-GNUABI: "-internal-externc-isystem" "[[SYSROOT]]/usr/include" - +// // Check header search on Debian 6 / MIPS64 // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=mips64el-unknown-linux-gnuabi64 -stdlib=libstdc++ \ diff --git a/clang/test/Driver/linux-ld.c b/clang/test/Driver/linux-ld.c index 049884dde09dcb..d7c58431fa76f3 100644 --- a/clang/test/Driver/linux-ld.c +++ b/clang/test/Driver/linux-ld.c @@ -1,7 +1,7 @@ // UNSUPPORTED: system-windows // General tests that ld invocations on Linux targets sane. Note that we use // sysroot to make these tests independent of the host system. - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=i386-unknown-linux -rtlib=platform \ // RUN: --gcc-toolchain="" \ @@ -14,7 +14,7 @@ // CHECK-LD-32: "-L[[SYSROOT]]/usr/lib/gcc/i386-unknown-linux/10.2.0/../../../../i386-unknown-linux/lib" // CHECK-LD-32: "-L[[SYSROOT]]/lib" // CHECK-LD-32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -33,7 +33,7 @@ // CHECK-LD-64: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" // CHECK-LD-64: "-lc" // CHECK-LD-64: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux-gnux32 -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -47,7 +47,7 @@ // CHECK-LD-X32: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" // CHECK-LD-X32: "-lc" // CHECK-LD-X32: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir \ @@ -70,7 +70,7 @@ // CHECK-LD-RT: "-lc" // CHECK-LD-RT: libclang_rt.builtins-x86_64.a" // CHECK-LD-RT: "[[RESDIR]]{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}clang_rt.crtend-x86_64.o" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=i686-unknown-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir \ @@ -93,7 +93,7 @@ // CHECK-LD-RT-I686: "-lc" // CHECK-LD-RT-I686: libclang_rt.builtins-i386.a" // CHECK-LD-RT-I686: "[[RESDIR]]{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}clang_rt.crtend-i386.o" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-linux-androideabi \ // RUN: --gcc-toolchain="" \ @@ -108,7 +108,7 @@ // CHECK-LD-RT-ANDROID: libclang_rt.builtins-arm-android.a" // CHECK-LD-RT-ANDROID: "-lc" // CHECK-LD-RT-ANDROID: libclang_rt.builtins-arm-android.a" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -127,7 +127,7 @@ // CHECK-LD-GCC: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" // CHECK-LD-GCC: "-lc" // CHECK-LD-GCC: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: -static-libgcc \ @@ -147,7 +147,7 @@ // CHECK-LD-64-STATIC-LIBGCC: "-lgcc" "-lgcc_eh" // CHECK-LD-64-STATIC-LIBGCC: "-lc" // CHECK-LD-64-STATIC-LIBGCC: "-lgcc" "-lgcc_eh" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -157,7 +157,7 @@ // CHECK-CLANG-NO-LIBGCC: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" // CHECK-CLANG-NO-LIBGCC: "-lc" // CHECK-CLANG-NO-LIBGCC: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" - +// // RUN: %clangxx -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -167,7 +167,7 @@ // CHECK-CLANGXX-NO-LIBGCC: "-lgcc_s" "-lgcc" // CHECK-CLANGXX-NO-LIBGCC: "-lc" // CHECK-CLANGXX-NO-LIBGCC: "-lgcc_s" "-lgcc" - +// // RUN: %clang -static -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -175,7 +175,7 @@ // RUN: | FileCheck --check-prefix=CHECK-CLANG-NO-LIBGCC-STATIC %s // CHECK-CLANG-NO-LIBGCC-STATIC: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]" // CHECK-CLANG-NO-LIBGCC-STATIC: "--start-group" "-lgcc" "-lgcc_eh" "-lc" "--end-group" - +// // RUN: %clang -static-pie -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -190,7 +190,7 @@ // CHECK-CLANG-LD-STATIC-PIE: "-m" "elf_x86_64" // CHECK-CLANG-LD-STATIC-PIE: "{{.*}}rcrt1.o" // CHECK-CLANG-LD-STATIC-PIE: "--start-group" "-lgcc" "-lgcc_eh" "-lc" "--end-group" - +// // RUN: %clang -static-pie -pie -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -205,7 +205,7 @@ // CHECK-CLANG-LD-STATIC-PIE-PIE: "-m" "elf_x86_64" // CHECK-CLANG-LD-STATIC-PIE-PIE: "{{.*}}rcrt1.o" // CHECK-CLANG-LD-STATIC-PIE-PIE: "--start-group" "-lgcc" "-lgcc_eh" "-lc" "--end-group" - +// // RUN: %clang -static-pie -static -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -220,14 +220,14 @@ // CHECK-CLANG-LD-STATIC-PIE-STATIC: "-m" "elf_x86_64" // CHECK-CLANG-LD-STATIC-PIE-STATIC: "{{.*}}rcrt1.o" // CHECK-CLANG-LD-STATIC-PIE-STATIC: "--start-group" "-lgcc" "-lgcc_eh" "-lc" "--end-group" - +// // RUN: %clang -static-pie -nopie -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform \ // RUN: --gcc-toolchain="" \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-CLANG-LD-STATIC-PIE-NOPIE %s // CHECK-CLANG-LD-STATIC-PIE-NOPIE: error: cannot specify 'nopie' along with 'static-pie' - +// // RUN: %clang -dynamic -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -237,7 +237,7 @@ // CHECK-CLANG-NO-LIBGCC-DYNAMIC: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" // CHECK-CLANG-NO-LIBGCC-DYNAMIC: "-lc" // CHECK-CLANG-NO-LIBGCC-DYNAMIC: "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" - +// // RUN: %clang -static-libgcc -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -247,7 +247,7 @@ // CHECK-CLANG-STATIC-LIBGCC: "-lgcc" "-lgcc_eh" // CHECK-CLANG-STATIC-LIBGCC: "-lc" // CHECK-CLANG-STATIC-LIBGCC: "-lgcc" "-lgcc_eh" - +// // RUN: %clang -static-libgcc -dynamic -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -257,7 +257,7 @@ // CHECK-CLANG-STATIC-LIBGCC-DYNAMIC: "-lgcc" "-lgcc_eh" // CHECK-CLANG-STATIC-LIBGCC-DYNAMIC: "-lc" // CHECK-CLANG-STATIC-LIBGCC-DYNAMIC: "-lgcc" "-lgcc_eh" - +// // RUN: %clang -shared-libgcc -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -267,7 +267,7 @@ // CHECK-CLANG-SHARED-LIBGCC: "-lgcc_s" "-lgcc" // CHECK-CLANG-SHARED-LIBGCC: "-lc" // CHECK-CLANG-SHARED-LIBGCC: "-lgcc_s" "-lgcc" - +// // RUN: %clang -shared-libgcc -dynamic -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -276,7 +276,7 @@ // CHECK-CLANG-SHARED-LIBGCC-DYNAMIC: "-lgcc_s" "-lgcc" // CHECK-CLANG-SHARED-LIBGCC-DYNAMIC: "-lc" // CHECK-CLANG-SHARED-LIBGCC-DYNAMIC: "-lgcc_s" "-lgcc" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=aarch64-linux-android -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -284,7 +284,7 @@ // RUN: | FileCheck --check-prefix=CHECK-CLANG-ANDROID-NONE %s // CHECK-CLANG-ANDROID-NONE: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]" // CHECK-CLANG-ANDROID-NONE: "-l:libunwind.a" "-ldl" "-lc" - +// // RUN: %clang -shared -### %s -no-pie 2>&1 \ // RUN: --target=aarch64-linux-android -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -292,7 +292,7 @@ // RUN: | FileCheck --check-prefix=CHECK-CLANG-ANDROID-SHARED %s // CHECK-CLANG-ANDROID-SHARED: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]" // CHECK-CLANG-ANDROID-SHARED: "-l:libunwind.a" "-ldl" "-lc" - +// // RUN: %clang -static -### %s -no-pie 2>&1 \ // RUN: --target=aarch64-linux-android -rtlib=platform --unwindlib=platform \ // RUN: --gcc-toolchain="" \ @@ -300,7 +300,7 @@ // RUN: | FileCheck --check-prefix=CHECK-CLANG-ANDROID-STATIC %s // CHECK-CLANG-ANDROID-STATIC: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]" // CHECK-CLANG-ANDROID-STATIC: "--start-group" "{{[^"]*}}{{/|\\\\}}libclang_rt.builtins-aarch64-android.a" "-l:libunwind.a" "-lc" "--end-group" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \ // RUN: -static \ @@ -333,7 +333,7 @@ // RUN: --gcc-toolchain="" \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LD-64-STATIC %s - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=i386-unknown-linux -rtlib=platform -m32 \ // RUN: --gcc-toolchain="" \ @@ -349,7 +349,7 @@ // CHECK-32-TO-32: "-L[[SYSROOT]]/usr/lib/gcc/i386-unknown-linux/10.2.0/../../../../i386-unknown-linux/lib" // CHECK-32-TO-32: "-L[[SYSROOT]]/lib" // CHECK-32-TO-32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=i386-unknown-linux -rtlib=platform -m64 \ // RUN: --gcc-toolchain="" \ @@ -365,7 +365,7 @@ // CHECK-32-TO-64: "-L[[SYSROOT]]/usr/lib/gcc/i386-unknown-linux/10.2.0/../../../../i386-unknown-linux/lib" // CHECK-32-TO-64: "-L[[SYSROOT]]/lib" // CHECK-32-TO-64: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform -m64 \ // RUN: --gcc-toolchain="" \ @@ -381,7 +381,7 @@ // CHECK-64-TO-64: "-L[[SYSROOT]]/usr/lib/gcc/x86_64-unknown-linux/10.2.0/../../../../x86_64-unknown-linux/lib" // CHECK-64-TO-64: "-L[[SYSROOT]]/lib" // CHECK-64-TO-64: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=plaform -m32 \ // RUN: --gcc-toolchain="" \ @@ -397,7 +397,7 @@ // CHECK-64-TO-32: "-L[[SYSROOT]]/usr/lib/gcc/x86_64-unknown-linux/10.2.0/../../../../x86_64-unknown-linux/lib" // CHECK-64-TO-32: "-L[[SYSROOT]]/lib" // CHECK-64-TO-32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux-gnux32 -rtlib=platform \ // RUN: --gcc-toolchain="" \ @@ -413,7 +413,7 @@ // CHECK-X32: "-L[[SYSROOT]]/usr/lib/gcc/x86_64-unknown-linux/10.2.0/../../../../x86_64-unknown-linux/lib" // CHECK-X32: "-L[[SYSROOT]]/lib" // CHECK-X32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform -mx32 \ // RUN: --gcc-toolchain="" \ @@ -429,7 +429,7 @@ // CHECK-64-TO-X32: "-L[[SYSROOT]]/usr/lib/gcc/x86_64-unknown-linux/10.2.0/../../../../x86_64-unknown-linux/lib" // CHECK-64-TO-X32: "-L[[SYSROOT]]/lib" // CHECK-64-TO-X32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=i386-unknown-linux -rtlib=platform -mx32 \ // RUN: --gcc-toolchain="" \ @@ -445,7 +445,7 @@ // CHECK-32-TO-X32: "-L[[SYSROOT]]/usr/lib/gcc/x86_64-unknown-linux/10.2.0/../../../../x86_64-unknown-linux/lib" // CHECK-32-TO-X32: "-L[[SYSROOT]]/lib" // CHECK-32-TO-X32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux-gnux32 -rtlib=platform -m64 \ // RUN: --gcc-toolchain="" \ @@ -461,7 +461,7 @@ // CHECK-X32-TO-64: "-L[[SYSROOT]]/usr/lib/gcc/x86_64-unknown-linux/10.2.0/../../../../x86_64-unknown-linux/lib" // CHECK-X32-TO-64: "-L[[SYSROOT]]/lib" // CHECK-X32-TO-64: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux-gnux32 -rtlib=platform -m32 \ // RUN: --gcc-toolchain="" \ @@ -477,7 +477,7 @@ // CHECK-X32-TO-32: "-L[[SYSROOT]]/usr/lib/gcc/x86_64-unknown-linux/10.2.0/../../../../x86_64-unknown-linux/lib" // CHECK-X32-TO-32: "-L[[SYSROOT]]/lib" // CHECK-X32-TO-32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=x86_64-unknown-linux -rtlib=platform -m32 \ // RUN: --gcc-toolchain=%S/Inputs/multilib_64bit_linux_tree/usr \ @@ -490,7 +490,7 @@ // CHECK-64-TO-32-SYSROOT: "-L[[SYSROOT]]/usr/lib/../lib32" // CHECK-64-TO-32-SYSROOT: "-L[[SYSROOT]]/lib" // CHECK-64-TO-32-SYSROOT: "-L[[SYSROOT]]/usr/lib" - +// // Check that we support unusual patch version formats, including missing that // component. // RUN: %clang -### %s -no-pie 2>&1 \ @@ -530,7 +530,7 @@ // CHECK-BASIC-LIBCXX-INSTALL: "-internal-isystem" "[[SYSROOT]]/usr/bin/../include/c++/v1" // CHECK-BASIC-LIBCXX-INSTALL: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-BASIC-LIBCXX-INSTALL: "--sysroot=[[SYSROOT]]" - +// // Test that we can use -stdlib=libc++ in a build system even when it // occasionally links C code instead of C++ code. // RUN: %clang -x c -### %s -no-pie 2>&1 \ @@ -546,7 +546,7 @@ // CHECK-BASIC-LIBCXX-C-LINK-NOT: "-internal-isystem" "[[SYSROOT]]/usr/bin/../include/c++/v1" // CHECK-BASIC-LIBCXX-C-LINK: "-internal-isystem" "[[SYSROOT]]/usr/local/include" // CHECK-BASIC-LIBCXX-C-LINK: "--sysroot=[[SYSROOT]]" - +// // Check multi arch support on Ubuntu 12.04 LTS. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-unknown-linux-gnueabihf -rtlib=platform \ @@ -562,7 +562,7 @@ // CHECK-UBUNTU-12-04-ARM-HF: "-L[[SYSROOT]]/usr/lib/arm-linux-gnueabihf" // CHECK-UBUNTU-12-04-ARM-HF: "{{.*}}/usr/lib/gcc/arm-linux-gnueabihf/4.6.3{{/|\\\\}}crtend.o" // CHECK-UBUNTU-12-04-ARM-HF: "{{.*}}/usr/lib/arm-linux-gnueabihf{{/|\\\\}}crtn.o" - +// // Check Ubuntu 13.10 on x86-64 targeting arm-linux-gnueabihf. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-linux-gnueabihf -rtlib=platform \ @@ -581,7 +581,7 @@ // CHECK-X86-64-UBUNTU-13-10-ARM-HF: "-L[[SYSROOT]]/usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/../../../../arm-linux-gnueabihf/lib" // CHECK-X86-64-UBUNTU-13-10-ARM-HF: "{{.*}}/usr/lib/gcc-cross/arm-linux-gnueabihf/4.8{{/|\\\\}}crtend.o" // CHECK-X86-64-UBUNTU-13-10-ARM-HF: "{{.*}}/usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/../../../../arm-linux-gnueabihf/lib/../lib{{/|\\\\}}crtn.o" - +// // Check Ubuntu 13.10 on x86-64 targeting arm-linux-gnueabi. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-linux-gnueabi -rtlib=platform \ @@ -600,7 +600,7 @@ // CHECK-X86-64-UBUNTU-13-10-ARM: "-L[[SYSROOT]]/usr/lib/gcc-cross/arm-linux-gnueabi/4.7/../../../../arm-linux-gnueabi/lib" // CHECK-X86-64-UBUNTU-13-10-ARM: "{{.*}}/usr/lib/gcc-cross/arm-linux-gnueabi/4.7{{/|\\\\}}crtend.o" // CHECK-X86-64-UBUNTU-13-10-ARM: "{{.*}}/usr/lib/gcc-cross/arm-linux-gnueabi/4.7/../../../../arm-linux-gnueabi/lib/../lib{{/|\\\\}}crtn.o" - +// // Check Ubuntu 14.04 on powerpc64le. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc64le-unknown-linux-gnu -rtlib=platform \ @@ -616,7 +616,7 @@ // CHECK-UBUNTU-14-04-PPC64LE: "-L[[SYSROOT]]/usr/lib/powerpc64le-linux-gnu" // CHECK-UBUNTU-14-04-PPC64LE: "{{.*}}/usr/lib/gcc/powerpc64le-linux-gnu/4.8{{/|\\\\}}crtend.o" // CHECK-UBUNTU-14-04-PPC64LE: "{{.*}}/usr/lib/powerpc64le-linux-gnu{{/|\\\\}}crtn.o" - +// // Check Ubuntu 14.04 on x32. // "/usr/lib/gcc/x86_64-linux-gnu/4.8/x32/crtend.o" "/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../libx32/crtn.o" // RUN: %clang -### %s -no-pie 2>&1 \ @@ -634,7 +634,7 @@ // CHECK-UBUNTU-14-04-X32-SAME: {{^}} "-L[[SYSROOT]]/usr/lib/../libx32" // CHECK-UBUNTU-14-04-X32: "{{.*}}/usr/lib/gcc/x86_64-linux-gnu/4.8/x32{{/|\\\\}}crtend.o" // CHECK-UBUNTU-14-04-X32: "{{.*}}/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../libx32{{/|\\\\}}crtn.o" - +// // Check fedora 18 on arm. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=armv7-unknown-linux-gnueabihf -rtlib=platform \ @@ -649,7 +649,7 @@ // CHECK-FEDORA-18-ARM-HF: "-L[[SYSROOT]]/usr/lib/gcc/armv7hl-redhat-linux-gnueabi/4.7.2/../../../../lib" // CHECK-FEDORA-18-ARM-HF: "{{.*}}/usr/lib/gcc/armv7hl-redhat-linux-gnueabi/4.7.2{{/|\\\\}}crtend.o" // CHECK-FEDORA-18-ARM-HF: "{{.*}}/usr/lib/gcc/armv7hl-redhat-linux-gnueabi/4.7.2/../../../../lib{{/|\\\\}}crtn.o" - +// // Check Fedora 21 on AArch64. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm64-unknown-linux-gnu -rtlib=platform \ @@ -669,7 +669,7 @@ // CHECK-FEDORA-21-AARCH64: "-L[[SYSROOT]]/usr/lib/gcc/aarch64-redhat-linux/4.9.0/../../../../lib64" // CHECK-FEDORA-21-AARCH64: "{{.*}}/usr/lib/gcc/aarch64-redhat-linux/4.9.0{{/|\\\\}}crtend.o" // CHECK-FEDORA-21-AARCH64: "{{.*}}/usr/lib/gcc/aarch64-redhat-linux/4.9.0/../../../../lib64{{/|\\\\}}crtn.o" - +// // Check Fedora 31 on riscv64. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=riscv64-redhat-linux -rtlib=platform \ @@ -684,7 +684,7 @@ // CHECK-FEDORA-31-RISCV64: "-L[[SYSROOT]]/usr/lib/gcc/riscv64-redhat-linux/9/../../../../lib64" // CHECK-FEDORA-31-RISCV64: "{{.*}}/usr/lib/gcc/riscv64-redhat-linux/9{{/|\\\\}}crtend.o" // CHECK-FEDORA-31-RISCV64: "{{.*}}/usr/lib/gcc/riscv64-redhat-linux/9{{/|\\\\}}crtn.o" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-unknown-linux-gnueabi -rtlib=platform \ // RUN: --gcc-toolchain="" \ @@ -699,7 +699,7 @@ // CHECK-UBUNTU-12-04-ARM: "-L[[SYSROOT]]/usr/lib/arm-linux-gnueabi" // CHECK-UBUNTU-12-04-ARM: "{{.*}}/usr/lib/gcc/arm-linux-gnueabi/4.6.1{{/|\\\\}}crtend.o" // CHECK-UBUNTU-12-04-ARM: "{{.*}}/usr/lib/arm-linux-gnueabi{{/|\\\\}}crtn.o" - +// // Test the setup that shipped in SUSE 10.3 on ppc64. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc64-suse-linux -rtlib=platform \ @@ -712,7 +712,7 @@ // CHECK-SUSE-10-3-PPC64: "-L[[SYSROOT]]/usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib64" // CHECK-SUSE-10-3-PPC64: "-L[[SYSROOT]]/lib/../lib64" // CHECK-SUSE-10-3-PPC64: "-L[[SYSROOT]]/usr/lib/../lib64" - +// // Check openSuse Leap 42.2 on AArch64 // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm64-unknown-linux-gnu -rtlib=platform \ @@ -732,7 +732,7 @@ // CHECK-OPENSUSE-42-2-AARCH64: "-L[[SYSROOT]]/usr/lib64/gcc/aarch64-suse-linux/4.8/../../../../lib64" // CHECK-OPENSUSE-42-2-AARCH64: "{{.*}}/usr/lib64/gcc/aarch64-suse-linux/4.8{{/|\\\\}}crtend.o" // CHECK-OPENSUSE-42-2-AARCH64: "{{.*}}/usr/lib64/gcc/aarch64-suse-linux/4.8/../../../../lib64{{/|\\\\}}crtn.o" - +// // Check openSUSE Tumbleweed on armv6hl // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=armv6hl-suse-linux-gnueabi -rtlib=platform \ @@ -752,7 +752,7 @@ // CHECK-OPENSUSE-TW-ARMV6HL: "-L[[SYSROOT]]/usr/lib/gcc/armv6hl-suse-linux-gnueabi/5/../../../../lib" // CHECK-OPENSUSE-TW-ARMV6HL: "{{.*}}/usr/lib/gcc/armv6hl-suse-linux-gnueabi/5{{/|\\\\}}crtend.o" // CHECK-OPENSUSE-TW-ARMV6HL: "{{.*}}/usr/lib/gcc/armv6hl-suse-linux-gnueabi/5/../../../../lib{{/|\\\\}}crtn.o" - +// // Check openSUSE Tumbleweed on armv7hl // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=armv7hl-suse-linux-gnueabi -rtlib=platform \ @@ -772,7 +772,7 @@ // CHECK-OPENSUSE-TW-ARMV7HL: "-L[[SYSROOT]]/usr/lib/gcc/armv7hl-suse-linux-gnueabi/5/../../../../lib" // CHECK-OPENSUSE-TW-ARMV7HL: "{{.*}}/usr/lib/gcc/armv7hl-suse-linux-gnueabi/5{{/|\\\\}}crtend.o" // CHECK-OPENSUSE-TW-ARMV7HL: "{{.*}}/usr/lib/gcc/armv7hl-suse-linux-gnueabi/5/../../../../lib{{/|\\\\}}crtn.o" - +// // Check openSUSE Tumbleweed on riscv64 // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=riscv64-suse-linux -rtlib=platform \ @@ -792,7 +792,7 @@ // CHECK-OPENSUSE-TW-RISCV64: "-L[[SYSROOT]]/usr/lib64/gcc/riscv64-suse-linux/9/../../../../lib64" // CHECK-OPENSUSE-TW-RISCV64: "{{.*}}/usr/lib64/gcc/riscv64-suse-linux/9{{/|\\\\}}crtend.o" // CHECK-OPENSUSE-TW-RISCV64: "{{.*}}/usr/lib64/gcc/riscv64-suse-linux/9/../../../../lib64{{/|\\\\}}crtn.o" - +// // Check openSUSE Tumbleweed on ppc // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc-unknown-linux-gnu -rtlib=platform \ @@ -806,7 +806,7 @@ // CHECK-OPENSUSE-TW-PPC: "-L[[SYSROOT]]/usr/lib/gcc/powerpc64-suse-linux/9" // CHECK-OPENSUSE-TW-PPC: "{{.*}}/usr/lib/gcc/powerpc64-suse-linux/9{{/|\\\\}}crtend.o" // CHECK-OPENSUSE-TW-PPC: "{{.*}}/usr/lib/crtn.o" - +// // Check dynamic-linker for different archs // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-linux-gnueabi \ @@ -814,63 +814,63 @@ // CHECK-ARM: "{{.*}}ld{{(.exe)?}}" // CHECK-ARM: "-m" "armelf_linux_eabi" // CHECK-ARM: "-dynamic-linker" "{{.*}}/lib/ld-linux.so.3" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-linux-gnueabi -mfloat-abi=hard \ // RUN: | FileCheck --check-prefix=CHECK-ARM-ABIHF %s // CHECK-ARM-ABIHF: "{{.*}}ld{{(.exe)?}}" // CHECK-ARM-ABIHF: "-m" "armelf_linux_eabi" // CHECK-ARM-ABIHF: "-dynamic-linker" "{{.*}}/lib/ld-linux-armhf.so.3" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-linux-gnueabihf \ // RUN: | FileCheck --check-prefix=CHECK-ARM-HF %s // CHECK-ARM-HF: "{{.*}}ld{{(.exe)?}}" // CHECK-ARM-HF: "-m" "armelf_linux_eabi" // CHECK-ARM-HF: "-dynamic-linker" "{{.*}}/lib/ld-linux-armhf.so.3" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc64-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-PPC64 %s // CHECK-PPC64: "{{.*}}ld{{(.exe)?}}" // CHECK-PPC64: "-m" "elf64ppc" // CHECK-PPC64: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld64.so.1" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc64-linux-gnu -mabi=elfv1 \ // RUN: | FileCheck --check-prefix=CHECK-PPC64-ELFv1 %s // CHECK-PPC64-ELFv1: "{{.*}}ld{{(.exe)?}}" // CHECK-PPC64-ELFv1: "-m" "elf64ppc" // CHECK-PPC64-ELFv1: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld64.so.1" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc64-linux-gnu -mabi=elfv2 \ // RUN: | FileCheck --check-prefix=CHECK-PPC64-ELFv2 %s // CHECK-PPC64-ELFv2: "{{.*}}ld{{(.exe)?}}" // CHECK-PPC64-ELFv2: "-m" "elf64ppc" // CHECK-PPC64-ELFv2: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld64.so.2" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc64le-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-PPC64LE %s // CHECK-PPC64LE: "{{.*}}ld{{(.exe)?}}" // CHECK-PPC64LE: "-m" "elf64lppc" // CHECK-PPC64LE: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld64.so.2" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc64le-linux-gnu -mabi=elfv1 \ // RUN: | FileCheck --check-prefix=CHECK-PPC64LE-ELFv1 %s // CHECK-PPC64LE-ELFv1: "{{.*}}ld{{(.exe)?}}" // CHECK-PPC64LE-ELFv1: "-m" "elf64lppc" // CHECK-PPC64LE-ELFv1: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld64.so.1" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc64le-linux-gnu -mabi=elfv2 \ // RUN: | FileCheck --check-prefix=CHECK-PPC64LE-ELFv2 %s // CHECK-PPC64LE-ELFv2: "{{.*}}ld{{(.exe)?}}" // CHECK-PPC64LE-ELFv2: "-m" "elf64lppc" // CHECK-PPC64LE-ELFv2: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld64.so.2" - +// // Check that we do not pass --hash-style=gnu or --hash-style=both to // hexagon linux linker // RUN: %clang -### %s -no-pie 2>&1 \ @@ -878,7 +878,7 @@ // RUN: | FileCheck --check-prefix=CHECK-HEXAGON %s // CHECK-HEXAGON: "{{.*}}{{hexagon-link|ld}}{{(.exe)?}}" // CHECK-HEXAGON-NOT: "--hash-style={{gnu|both}}" - +// // Check that we do not pass --hash-style=gnu and --hash-style=both to linker // and provide correct path to the dynamic linker and emulation mode when build // for MIPS platforms. @@ -889,7 +889,7 @@ // CHECK-MIPS: "-m" "elf32btsmip" // CHECK-MIPS: "-dynamic-linker" "{{.*}}/lib/ld.so.1" // CHECK-MIPS-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mipsel-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-MIPSEL %s @@ -897,21 +897,21 @@ // CHECK-MIPSEL: "-m" "elf32ltsmip" // CHECK-MIPSEL: "-dynamic-linker" "{{.*}}/lib/ld.so.1" // CHECK-MIPSEL-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 --target=mipsel-linux-gnu -mnan=2008 \ // RUN: | FileCheck --check-prefix=CHECK-MIPSEL-NAN2008 %s // CHECK-MIPSEL-NAN2008: "{{.*}}ld{{(.exe)?}}" // CHECK-MIPSEL-NAN2008: "-m" "elf32ltsmip" // CHECK-MIPSEL-NAN2008: "-dynamic-linker" "{{.*}}/lib/ld-linux-mipsn8.so.1" // CHECK-MIPSEL-NAN2008-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 --target=mipsel-linux-gnu -mcpu=mips32r6 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS32R6EL %s // CHECK-MIPS32R6EL: "{{.*}}ld{{(.exe)?}}" // CHECK-MIPS32R6EL: "-m" "elf32ltsmip" // CHECK-MIPS32R6EL: "-dynamic-linker" "{{.*}}/lib/ld-linux-mipsn8.so.1" // CHECK-MIPS32R6EL-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-MIPS64 %s @@ -919,7 +919,7 @@ // CHECK-MIPS64: "-m" "elf64btsmip" // CHECK-MIPS64: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld.so.1" // CHECK-MIPS64-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64el-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-MIPS64EL %s @@ -927,21 +927,21 @@ // CHECK-MIPS64EL: "-m" "elf64ltsmip" // CHECK-MIPS64EL: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld.so.1" // CHECK-MIPS64EL-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 --target=mips64el-linux-gnu -mnan=2008 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS64EL-NAN2008 %s // CHECK-MIPS64EL-NAN2008: "{{.*}}ld{{(.exe)?}}" // CHECK-MIPS64EL-NAN2008: "-m" "elf64ltsmip" // CHECK-MIPS64EL-NAN2008: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld-linux-mipsn8.so.1" // CHECK-MIPS64EL-NAN2008-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 --target=mips64el-linux-gnu -mcpu=mips64r6 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS64R6EL %s // CHECK-MIPS64R6EL: "{{.*}}ld{{(.exe)?}}" // CHECK-MIPS64R6EL: "-m" "elf64ltsmip" // CHECK-MIPS64R6EL: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld-linux-mipsn8.so.1" // CHECK-MIPS64R6EL-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64-linux-gnu -mabi=n32 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS64-N32 %s @@ -949,7 +949,7 @@ // CHECK-MIPS64-N32: "-m" "elf32btsmipn32" // CHECK-MIPS64-N32: "-dynamic-linker" "{{.*}}/lib{{(32)?}}/ld.so.1" // CHECK-MIPS64-N32-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64el-linux-gnu -mabi=n32 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS64EL-N32 %s @@ -957,14 +957,14 @@ // CHECK-MIPS64EL-N32: "-m" "elf32ltsmipn32" // CHECK-MIPS64EL-N32: "-dynamic-linker" "{{.*}}/lib{{(32)?}}/ld.so.1" // CHECK-MIPS64EL-N32-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 --target=mips64el-linux-gnu -mabi=n32 \ // RUN: -mnan=2008 | FileCheck --check-prefix=CHECK-MIPS64EL-N32-NAN2008 %s // CHECK-MIPS64EL-N32-NAN2008: "{{.*}}ld{{(.exe)?}}" // CHECK-MIPS64EL-N32-NAN2008: "-m" "elf32ltsmipn32" // CHECK-MIPS64EL-N32-NAN2008: "-dynamic-linker" "{{.*}}/lib{{(32)?}}/ld-linux-mipsn8.so.1" // CHECK-MIPS64EL-N32-NAN2008-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 --target=mips64el-redhat-linux \ // RUN: | FileCheck --check-prefix=CHECK-MIPS64EL-REDHAT %s // CHECK-MIPS64EL-REDHAT: "{{.*}}ld{{(.exe)?}}" @@ -980,7 +980,7 @@ // RUN: | FileCheck --check-prefix=CHECK-ANDROID-HASH-STYLE-L %s // CHECK-ANDROID-HASH-STYLE-L: "{{.*}}ld{{(.exe)?}}" // CHECK-ANDROID-HASH-STYLE-L: "--hash-style=both" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=armv7-linux-android23 \ // RUN: | FileCheck --check-prefix=CHECK-ANDROID-HASH-STYLE-M %s @@ -993,28 +993,28 @@ // CHECK-MIPS64EL-GNUABIN32: "-m" "elf32btsmipn32" // CHECK-MIPS64EL-GNUABIN32: "-dynamic-linker" "{{.*}}/lib{{(32)?}}/ld.so.1" // CHECK-MIPS64EL-GNUABIN32-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 --target=mips64-linux-gnuabi64 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS64EL-GNUABI64 %s // CHECK-MIPS64EL-GNUABI64: "{{.*}}ld{{(.exe)?}}" // CHECK-MIPS64EL-GNUABI64: "-m" "elf64btsmip" // CHECK-MIPS64EL-GNUABI64: "-dynamic-linker" "{{.*}}/lib{{(64)?}}/ld.so.1" // CHECK-MIPS64EL-GNUABI64-NOT: "--hash-style={{gnu|both}}" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=sparc-unknown-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-SPARCV8 %s // CHECK-SPARCV8: "{{.*}}ld{{(.exe)?}}" // CHECK-SPARCV8: "-m" "elf32_sparc" // CHECK-SPARCV8: "-dynamic-linker" "{{(/usr/sparc-unknown-linux-gnu)?}}/lib/ld-linux.so.2" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=sparcel-unknown-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-SPARCV8EL %s // CHECK-SPARCV8EL: "{{.*}}ld{{(.exe)?}}" // CHECK-SPARCV8EL: "-m" "elf32_sparc" // CHECK-SPARCV8EL: "-dynamic-linker" "{{(/usr/sparcel-unknown-linux-gnu)?}}/lib/ld-linux.so.2" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=sparcv9-unknown-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-SPARCV9 %s @@ -1289,7 +1289,7 @@ // RUN: | FileCheck --check-prefix=CHECK-ANDROID-64 %s // CHECK-ANDROID-32: "-dynamic-linker" "/system/bin/linker" // CHECK-ANDROID-64: "-dynamic-linker" "/system/bin/linker64" - +// // Test that -pthread does not add -lpthread on Android. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=arm-linux-androideabi -pthread \ @@ -1379,14 +1379,14 @@ // RUN: -shared \ // RUN: | FileCheck --check-prefix=CHECK-ANDROID-PTHREAD %s // CHECK-ANDROID-PTHREAD-NOT: -lpthread - +// // RUN: %clang %t.o -no-pie -### -o %t 2>&1 \ // RUN: --target=arm-linux-androideabi -pthread \ // RUN: --gcc-toolchain="" \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-ANDROID-PTHREAD-LINK %s // CHECK-ANDROID-PTHREAD-LINK-NOT: argument unused during compilation: '-pthread' - +// // Check linker invocation on Debian 6 MIPS 32/64-bit. // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mipsel-linux-gnu -rtlib=platform \ @@ -1403,7 +1403,7 @@ // CHECK-DEBIAN-ML-MIPSEL: "-L[[SYSROOT]]/usr/lib/../lib" // CHECK-DEBIAN-ML-MIPSEL: "-L[[SYSROOT]]/lib" // CHECK-DEBIAN-ML-MIPSEL: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64el-linux-gnu -rtlib=platform \ // RUN: --gcc-toolchain="" \ @@ -1419,7 +1419,7 @@ // CHECK-DEBIAN-ML-MIPS64EL: "-L[[SYSROOT]]/usr/lib/../lib64" // CHECK-DEBIAN-ML-MIPS64EL: "-L[[SYSROOT]]/lib" // CHECK-DEBIAN-ML-MIPS64EL: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64el-linux-gnu -rtlib=platform -mabi=n32 \ // RUN: --gcc-toolchain="" \ @@ -1435,7 +1435,7 @@ // CHECK-DEBIAN-ML-MIPS64EL-N32: "-L[[SYSROOT]]/usr/lib/../lib32" // CHECK-DEBIAN-ML-MIPS64EL-N32: "-L[[SYSROOT]]/lib" // CHECK-DEBIAN-ML-MIPS64EL-N32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64el-linux-gnuabi64 -rtlib=platform -mabi=32 \ // RUN: --gcc-toolchain="" \ @@ -1451,7 +1451,7 @@ // CHECK-DEBIAN-ML-MIPS64EL-O32: "-L[[SYSROOT]]/usr/libo32" // CHECK-DEBIAN-ML-MIPS64EL-O32: "-L[[SYSROOT]]/lib" // CHECK-DEBIAN-ML-MIPS64EL-O32: "-L[[SYSROOT]]/usr/lib" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64-unknown-linux-gnu --rtlib=platform \ // RUN: --gcc-toolchain="" \ @@ -1473,7 +1473,7 @@ // CHECK-DEBIAN-ML-MIPS64-GNUABI: "-L[[SYSROOT]]/usr/lib" // CHECK-DEBIAN-ML-MIPS64-GNUABI: "{{.*}}/usr/lib/gcc/mips64-linux-gnuabi64/4.9{{/|\\\\}}crtend.o" // CHECK-DEBIAN-ML-MIPS64-GNUABI: "{{.*}}/usr/lib/mips64-linux-gnuabi64{{/|\\\\}}crtn.o" - +// // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=mips64el-unknown-linux-gnu -rtlib=platform \ // RUN: --gcc-toolchain="" \ @@ -1495,7 +1495,7 @@ // CHECK-DEBIAN-ML-MIPS64EL-GNUABI: "-L[[SYSROOT]]/usr/lib" // CHECK-DEBIAN-ML-MIPS64EL-GNUABI: "{{.*}}/usr/lib/gcc/mips64el-linux-gnuabi64/4.9{{/|\\\\}}crtend.o" // CHECK-DEBIAN-ML-MIPS64EL-GNUABI: "{{.*}}/usr/lib/mips64el-linux-gnuabi64{{/|\\\\}}crtn.o" - +// // Test linker invocation for Freescale SDK (OpenEmbedded). // RUN: %clang -### %s -no-pie 2>&1 \ // RUN: --target=powerpc-fsl-linux -rtlib=platform \ @@ -1516,7 +1516,7 @@ // CHECK-FSL-PPC64: "-m" "elf64ppc" // CHECK-FSL-PPC64: "{{.*}}{{/|\\\\}}crt1.o" // CHECK-FSL-PPC64: "{{.*}}{{/|\\\\}}crtbegin.o" - +// // Check that crtfastmath.o is linked with -ffast-math and with -Ofast. // RUN: %clang --target=x86_64-unknown-linux -no-pie -### %s \ // RUN: --gcc-toolchain="" \ diff --git a/clang/test/Driver/lto-dwo.c b/clang/test/Driver/lto-dwo.c index a009067e174ca4..486ace43f01a48 100644 --- a/clang/test/Driver/lto-dwo.c +++ b/clang/test/Driver/lto-dwo.c @@ -2,5 +2,5 @@ // RUN: %clang -target x86_64-unknown-linux -### %s -flto=thin -gsplit-dwarf -o a.out 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-DWO-DIR-DEFAULT < %t %s - +// // CHECK-LINK-DWO-DIR-DEFAULT: "-plugin-opt=dwo_dir=a.out_dwo" diff --git a/clang/test/Driver/lto-jobs.c b/clang/test/Driver/lto-jobs.c index 1464522630fb79..c28d0ad300f4e8 100644 --- a/clang/test/Driver/lto-jobs.c +++ b/clang/test/Driver/lto-jobs.c @@ -2,10 +2,10 @@ // RUN: %clang -target x86_64-unknown-linux -### %s -flto=thin -flto-jobs=5 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-THIN-JOBS-ACTION < %t %s - +// // CHECK-LINK-THIN-JOBS-ACTION: "-plugin-opt=jobs=5" // RUN: %clang -target x86_64-apple-darwin13.3.0 -### %s -flto=thin -flto-jobs=5 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-THIN-JOBS2-ACTION < %t %s - +// // CHECK-LINK-THIN-JOBS2-ACTION: "-mllvm" "-threads={{[0-9]+}}" diff --git a/clang/test/Driver/lto.c b/clang/test/Driver/lto.c index 4614391b266f44..b1d729a1ece70b 100644 --- a/clang/test/Driver/lto.c +++ b/clang/test/Driver/lto.c @@ -1,13 +1,13 @@ // -flto causes a switch to llvm-bc object files. // RUN: %clang -ccc-print-phases -c %s -flto 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILE-ACTIONS < %t %s - +// // CHECK-COMPILE-ACTIONS: 2: compiler, {1}, ir // CHECK-COMPILE-ACTIONS: 3: backend, {2}, lto-bc // RUN: %clang -ccc-print-phases %s -flto 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILELINK-ACTIONS < %t %s - +// // CHECK-COMPILELINK-ACTIONS: 0: input, "{{.*}}lto.c", c // CHECK-COMPILELINK-ACTIONS: 1: preprocessor, {0}, cpp-output // CHECK-COMPILELINK-ACTIONS: 2: compiler, {1}, ir @@ -18,7 +18,7 @@ // (unfortunately). // RUN: %clang %s -flto -save-temps -### 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILELINK-SUFFIXES < %t %s - +// // CHECK-COMPILELINK-SUFFIXES: "-o" "{{.*}}lto.i" "-x" "c" "{{.*}}lto.c" // CHECK-COMPILELINK-SUFFIXES: "-o" "{{.*}}lto.bc" {{.*}}"{{.*}}lto.i" // CHECK-COMPILELINK-SUFFIXES: "-o" "{{.*}}lto.o" {{.*}}"{{.*}}lto.bc" @@ -26,7 +26,7 @@ // RUN: %clang %s -flto -S -### 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILE-SUFFIXES < %t %s - +// // CHECK-COMPILE-SUFFIXES: "-o" "{{.*}}lto.s" "-x" "c" "{{.*}}lto.c" // RUN: not %clang %s -emit-llvm 2>&1 | FileCheck --check-prefix=LLVM-LINK %s @@ -74,17 +74,17 @@ // RUN: FileCheck -check-prefix=CHECK-TUNING-LLDB < %t %s // RUN: %clang -target x86_64-unknown-linux -### %s -flto -g 2> %t // RUN: FileCheck -check-prefix=CHECK-NO-TUNING < %t %s - +// // CHECK-TUNING-LLDB: "-plugin-opt=-debugger-tune=lldb" // CHECK-NO-TUNING-NOT: "-plugin-opt=-debugger-tune - +// // -flto=auto and -flto=jobserver pass along -flto=full // RUN: %clang -target x86_64-unknown-linux -### %s -flto=auto 2>&1 | FileCheck --check-prefix=FLTO-AUTO %s // RUN: %clang -target x86_64-unknown-linux -### %s -flto=jobserver 2>&1 | FileCheck --check-prefix=FLTO-JOBSERVER %s - +// // FLTO-AUTO: -flto=full // FLTO-JOBSERVER: -flto=full - +// // Pass the last -flto argument. // RUN: %clang -target x86_64-unknown-linux -### %s -flto=thin -flto 2>&1 | \ @@ -95,11 +95,11 @@ // RUN: 2>&1 | FileCheck --check-prefix=FLTO-THIN %s // RUN: %clang -target x86_64-unknown-linux -### %s -flto -flto=thin 2>&1 | \ // RUN: FileCheck --check-prefix=FLTO-THIN %s - +// // FLTO-FULL-NOT: -flto=thin // FLTO-FULL: -flto=full // FLTO-FULL-NOT: -flto=thin - +// // FLTO-THIN-NOT: -flto=full // FLTO-THIN-NOT: "-flto" // FLTO-THIN: -flto=thin diff --git a/clang/test/Driver/lto.cu b/clang/test/Driver/lto.cu index fbc373d36eb275..cc96f12d4029e4 100644 --- a/clang/test/Driver/lto.cu +++ b/clang/test/Driver/lto.cu @@ -4,14 +4,14 @@ // -flto causes a switch to llvm-bc object files. // RUN: %clangxx -nocudainc -nocudalib -ccc-print-phases -c %s -flto 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILE-ACTIONS < %t %s - +// // CHECK-COMPILE-ACTIONS: 2: compiler, {1}, ir, (host-cuda) // CHECK-COMPILE-ACTIONS-NOT: lto-bc // CHECK-COMPILE-ACTIONS: 12: backend, {11}, lto-bc, (host-cuda) // RUN: %clangxx -nocudainc -nocudalib -ccc-print-phases %s -flto 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILELINK-ACTIONS < %t %s - +// // CHECK-COMPILELINK-ACTIONS: 0: input, "{{.*}}lto.cu", cuda, (host-cuda) // CHECK-COMPILELINK-ACTIONS: 1: preprocessor, {0}, cuda-cpp-output // CHECK-COMPILELINK-ACTIONS: 2: compiler, {1}, ir, (host-cuda) @@ -31,7 +31,7 @@ // (unfortunately). // RUN: %clangxx %s -nocudainc -nocudalib -flto -save-temps -### 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILELINK-SUFFIXES < %t %s - +// // CHECK-COMPILELINK-SUFFIXES: "-o" "[[CPP:.*lto-host.*\.cui]]" "-x" "cuda" "{{.*}}lto.cu" // CHECK-COMPILELINK-SUFFIXES: "-o" "[[BC:.*lto-host.*\.bc]]" {{.*}}[[CPP]]" // CHECK-COMPILELINK-SUFFIXES: "-o" "[[OBJ:.*lto-host.*\.o]]" {{.*}}[[BC]]" @@ -39,7 +39,7 @@ // RUN: %clangxx %s -nocudainc -nocudalib -flto -S -### 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILE-SUFFIXES < %t %s - +// // CHECK-COMPILE-SUFFIXES: "-o" "{{.*}}lto.s" "-x" "cuda" "{{.*}}lto.cu" // RUN: not %clangxx -nocudainc -nocudalib %s -emit-llvm 2>&1 \ @@ -51,7 +51,7 @@ // RUN: -fuse-ld=bfd -flto=thin -### 2>&1 | FileCheck --check-prefix=LLVMGOLD %s // RUN: %clangxx -nocudainc -nocudalib -target x86_64-unknown-linux-gnu --sysroot %S/Inputs/basic_cross_linux_tree %s \ // RUN: -fuse-ld=gold -flto=full -### 2>&1 | FileCheck --check-prefix=LLVMGOLD %s - +// // LLVMGOLD: "-plugin" "{{.*}}{{[/\\]}}LLVMgold.{{dll|dylib|so}}" /// lld does not need LLVMgold. @@ -59,7 +59,7 @@ // RUN: -fuse-ld=lld -flto=full -### 2>&1 | FileCheck --check-prefix=NO-LLVMGOLD %s // RUN: %clangxx -nocudainc -nocudalib -target x86_64-unknown-linux-gnu --sysroot %S/Inputs/basic_cross_linux_tree %s \ // RUN: -fuse-ld=gold -flto=full -fno-lto -### 2>&1 | FileCheck --check-prefix=NO-LLVMGOLD %s - +// // NO-LLVMGOLD-NOT: "-plugin" "{{.*}}{{[/\\]}}LLVMgold.{{dll|dylib|so}}" // -flto passes along an explicit debugger tuning argument. @@ -69,6 +69,6 @@ // RUN: %clangxx -nocudainc -nocudalib \ // RUN: -target x86_64-unknown-linux -### %s -flto -g 2> %t // RUN: FileCheck -check-prefix=CHECK-NO-TUNING < %t %s - +// // CHECK-TUNING-LLDB: "-plugin-opt=-debugger-tune=lldb" // CHECK-NO-TUNING-NOT: "-plugin-opt=-debugger-tune diff --git a/clang/test/Driver/miamcu-opt.c b/clang/test/Driver/miamcu-opt.c index 5614255cd93ad4..e668b6ad828fec 100644 --- a/clang/test/Driver/miamcu-opt.c +++ b/clang/test/Driver/miamcu-opt.c @@ -1,5 +1,5 @@ // REQUIRES: x86-registered-target - +// // RUN: %clang -miamcu -rtlib=platform -### %s 2>&1 | FileCheck %s // RUN: %clang -miamcu -rtlib=platform -m32 -### %s 2>&1 | FileCheck %s // RUN: %clang -miamcu -rtlib=platform --target=x86_64-unknown-linux-gnu -### %s 2>&1 | FileCheck %s diff --git a/clang/test/Driver/mips-abi.c b/clang/test/Driver/mips-abi.c index 241a02c023c408..f0f678b42f6080 100644 --- a/clang/test/Driver/mips-abi.c +++ b/clang/test/Driver/mips-abi.c @@ -1,21 +1,21 @@ // Check passing Mips ABI options to the backend. - +// // REQUIRES: mips-registered-target - +// // RUN: %clang -target mips-linux-gnu -### -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32R2-O32 %s // RUN: %clang -target mips64-linux-gnu -mips32r2 -mabi=32 -### -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32R2-O32 %s // MIPS32R2-O32: "-target-cpu" "mips32r2" // MIPS32R2-O32: "-target-abi" "o32" - +// // FIXME: This is a valid combination of options but we reject it at the moment // because the backend can't handle it. // RUN: not %clang -target mips-linux-gnu -c %s \ // RUN: -march=mips64r2 -mabi=32 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R2-O32 %s // MIPS64R2-O32: error: ABI 'o32' is not supported on CPU 'mips64r2' - +// // RUN: %clang -target mips64-linux-gnu -### -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R2-N64 %s // RUN: %clang -target mips-img-linux-gnu -mips64r2 -### -c %s 2>&1 \ @@ -26,7 +26,7 @@ // RUN: | FileCheck -check-prefix=MIPS64R2-N64 %s // MIPS64R2-N64: "-target-cpu" "mips64r2" // MIPS64R2-N64: "-target-abi" "n64" - +// // RUN: %clang -target mips64-linux-gnu -### -mips64r3 -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R3-N64 %s // RUN: %clang -target mips-img-linux-gnu -mips64r3 -### -c %s 2>&1 \ @@ -35,135 +35,135 @@ // RUN: | FileCheck -check-prefix=MIPS64R3-N64 %s // MIPS64R3-N64: "-target-cpu" "mips64r3" // MIPS64R3-N64: "-target-abi" "n64" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mabi=32 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ABI-32 %s // MIPS-ABI-32: "-target-cpu" "mips32r2" // MIPS-ABI-32: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mabi=o32 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ABI-O32 %s // MIPS-ABI-O32: "-target-cpu" "mips32r2" // MIPS-ABI-O32: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mabi=n32 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ABI-N32 %s // MIPS-ABI-N32: "-target-cpu" "mips64r2" // MIPS-ABI-N32: "-target-abi" "n32" - +// // RUN: %clang -target mips64-linux-gnu -### -c %s \ // RUN: -mabi=64 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ABI-64 %s // MIPS-ABI-64: "-target-cpu" "mips64r2" // MIPS-ABI-64: "-target-abi" "n64" - +// // RUN: %clang -target mips64-linux-gnu -### -c %s \ // RUN: -mabi=n64 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ABI-N64 %s // MIPS-ABI-N64: "-target-cpu" "mips64r2" // MIPS-ABI-N64: "-target-abi" "n64" - +// // RUN: not %clang -target mips64-linux-gnu -c %s \ // RUN: -mabi=o64 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ABI-O64 %s // MIPS-ABI-O64: error: unknown target ABI 'o64' - +// // RUN: not %clang -target mips-linux-gnu -c %s \ // RUN: -mabi=unknown 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ABI-UNKNOWN %s // MIPS-ABI-UNKNOWN: error: unknown target ABI 'unknown' - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=mips1 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-1 %s // MIPS-ARCH-1: "-target-cpu" "mips1" // MIPS-ARCH-1: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=mips2 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-2 %s // MIPS-ARCH-2: "-target-cpu" "mips2" // MIPS-ARCH-2: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=mips3 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-3 %s // MIPS-ARCH-3: "-target-cpu" "mips3" // MIPS-ARCH-3: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=mips4 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-4 %s // MIPS-ARCH-4: "-target-cpu" "mips4" // MIPS-ARCH-4: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=mips5 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-5 %s // MIPS-ARCH-5: "-target-cpu" "mips5" // MIPS-ARCH-5: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=mips32 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-32 %s // MIPS-ARCH-32: "-target-cpu" "mips32" // MIPS-ARCH-32: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=mips32r2 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-32R2 %s // MIPS-ARCH-32R2: "-target-cpu" "mips32r2" // MIPS-ARCH-32R2: "-target-abi" "o32" - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=p5600 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-P5600 %s // MIPS-ARCH-P5600: "-target-cpu" "p5600" // MIPS-ARCH-P5600: "-target-abi" "o32" - +// // RUN: not %clang -target mips-linux-gnu -c %s \ // RUN: -march=p5600 -mabi=64 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-P5600-N64 %s // MIPS-ARCH-P5600-N64: error: ABI 'n64' is not supported on CPU 'p5600' - +// // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -march=mips64 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-3264 %s // MIPS-ARCH-3264: "-target-cpu" "mips64" // MIPS-ARCH-3264: "-target-abi" "o32" - +// // RUN: %clang -target mips64-linux-gnu -### -c %s \ // RUN: -march=mips64 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-64 %s // MIPS-ARCH-64: "-target-cpu" "mips64" // MIPS-ARCH-64: "-target-abi" "n64" - +// // RUN: %clang -target mips64-linux-gnu -### -c %s \ // RUN: -march=mips64r2 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-64R2 %s // MIPS-ARCH-64R2: "-target-cpu" "mips64r2" // MIPS-ARCH-64R2: "-target-abi" "n64" - +// // RUN: %clang -target mips64-linux-gnu -### -c %s \ // RUN: -march=octeon 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-OCTEON %s // MIPS-ARCH-OCTEON: "-target-cpu" "octeon" // MIPS-ARCH-OCTEON: "-target-abi" "n64" - +// // RUN: %clang -target mips64-linux-gnu -### -c %s \ // RUN: -march=octeon+ 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-OCTEONP %s // MIPS-ARCH-OCTEONP: "-target-cpu" "octeon+" // MIPS-ARCH-OCTEONP: "-target-abi" "n64" - +// // RUN: not %clang -target mips64-linux-gnu -c %s \ // RUN: -march=mips32 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-6432 %s // MIPS-ARCH-6432: error: ABI 'n64' is not supported on CPU 'mips32' - +// // RUN: not %clang -target mips-linux-gnu -c %s \ // RUN: -march=unknown 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ARCH-UNKNOWN %s diff --git a/clang/test/Driver/mips-as.c b/clang/test/Driver/mips-as.c index b63c59af4aab01..f4add636e9e891 100644 --- a/clang/test/Driver/mips-as.c +++ b/clang/test/Driver/mips-as.c @@ -1,5 +1,5 @@ // Check passing options to the assembler for MIPS targets. - +// // RUN: %clang -target mips-linux-gnu -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32R2-EB-AS %s @@ -8,48 +8,48 @@ // RUN: | FileCheck -check-prefix=MIPS32R2-EB-AS %s // MIPS32R2-EB-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" // MIPS32R2-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC" - +// // RUN: %clang -target mips-linux-gnu -### \ // RUN: -no-integrated-as -fPIC -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32R2-EB-PIC %s // MIPS32R2-EB-PIC: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-call_nonpic" "-EB" // MIPS32R2-EB-PIC: "-KPIC" - +// // RUN: %clang -target mipsel-linux-gnu -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32R2-DEF-EL-AS %s // MIPS32R2-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EL" - +// // RUN: %clang -target mips64-linux-gnu -### \ // RUN: -no-integrated-as -fno-pic -mno-abicalls -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R2-EB-AS %s // MIPS64R2-EB-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-mno-shared" "-EB" - +// // RUN: %clang -target mips64-linux-gnu -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R2-EB-AS-PIC %s // MIPS64R2-EB-AS-PIC: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64el-linux-gnu -### \ // RUN: -no-integrated-as -fno-pic -c -fno-pic -mno-abicalls %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R2-DEF-EL-AS %s // MIPS64R2-DEF-EL-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-mno-shared" "-EL" - +// // RUN: %clang -target mips64el-linux-gnu -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R2-DEF-EL-AS-PIC %s // MIPS64R2-DEF-EL-AS-PIC: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-EL" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -mabi=n32 -### \ // RUN: -no-integrated-as -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-N32-PIC %s // MIPS-N32-PIC: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "n32" "-call_nonpic" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -mabi=n32 -### \ // RUN: -no-integrated-as -fno-pic -c %s -fno-pic 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-N32 %s // MIPS-N32: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "n32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mipsel-linux-gnu -mabi=32 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32R2-EL-AS %s @@ -57,223 +57,223 @@ // RUN: -no-integrated-as -fno-pic -c %s -EL 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32R2-EL-AS %s // MIPS32R2-EL-AS: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EL" - +// // RUN: %clang -target mips64el-linux-gnu -mabi=64 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R2-EL-AS-PIC %s // MIPS64R2-EL-AS-PIC: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-EL" "-KPIC" - +// // RUN: %clang -target mips64el-linux-gnu -mabi=64 -### \ // RUN: -no-integrated-as -fno-pic -c %s -fno-pic -mno-abicalls 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64R2-EL-AS %s // MIPS64R2-EL-AS: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-mno-shared" "-EL" - +// // RUN: %clang -target mips-linux-gnu -march=mips32r2 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-32R2 %s // MIPS-32R2: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -march=p5600 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-P5600 %s // MIPS-P5600: as{{(.exe)?}}" "-march" "p5600" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips64-linux-gnu -march=octeon -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-OCTEON-PIC %s // MIPS-OCTEON-PIC: as{{(.exe)?}}" "-march" "octeon" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -march=octeon -### \ // RUN: -no-integrated-as -fno-pic -c %s -fno-pic -mno-abicalls 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-OCTEON %s // MIPS-OCTEON: as{{(.exe)?}}" "-march" "octeon" "-mabi" "64" "-mno-shared" "-EB" - +// // RUN: %clang -target mips64-linux-gnu -march=octeon+ -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-OCTEONP-PIC %s // MIPS-OCTEONP-PIC: as{{(.exe)?}}" "-march" "octeon+" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -march=octeon+ -### \ // RUN: -no-integrated-as -fno-pic -c %s -fno-pic -mno-abicalls 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-OCTEONP %s // MIPS-OCTEONP: as{{(.exe)?}}" "-march" "octeon+" "-mabi" "64" "-mno-shared" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips1 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-1 %s // MIPS-ALIAS-1: as{{(.exe)?}}" "-march" "mips1" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips2 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-2 %s // MIPS-ALIAS-2: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips3 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-3 %s // MIPS-ALIAS-3: as{{(.exe)?}}" "-march" "mips3" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips4 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-4 %s // MIPS-ALIAS-4: as{{(.exe)?}}" "-march" "mips4" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips5 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-5 %s // MIPS-ALIAS-5: as{{(.exe)?}}" "-march" "mips5" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips32 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-32 %s // MIPS-ALIAS-32: as{{(.exe)?}}" "-march" "mips32" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips32r2 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-32R2 %s // MIPS-ALIAS-32R2: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips32r3 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-32R3 %s // MIPS-ALIAS-32R3: as{{(.exe)?}}" "-march" "mips32r3" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips32r5 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-32R5 %s // MIPS-ALIAS-32R5: as{{(.exe)?}}" "-march" "mips32r5" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mips32r6 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-32R6 %s // MIPS-ALIAS-32R6: as{{(.exe)?}}" "-march" "mips32r6" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" - +// // RUN: %clang -target mips64-linux-gnu -mips64 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64-PIC %s // MIPS-ALIAS-64-PIC: as{{(.exe)?}}" "-march" "mips64" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -mips64 -### \ // RUN: -no-integrated-as -fno-pic -c -fno-pic -mno-abicalls %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64 %s // MIPS-ALIAS-64: as{{(.exe)?}}" "-march" "mips64" "-mabi" "64" "-mno-shared" "-EB" - +// // RUN: %clang -target mips64-linux-gnu -mips64r2 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64R2-PIC %s // MIPS-ALIAS-64R2-PIC: as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -mips64r3 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64R3-PIC %s // MIPS-ALIAS-64R3-PIC: as{{(.exe)?}}" "-march" "mips64r3" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -mips64r3 -### \ // RUN: -no-integrated-as -fno-pic -c %s -fno-pic -mno-abicalls 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64R3 %s // MIPS-ALIAS-64R3: as{{(.exe)?}}" "-march" "mips64r3" "-mabi" "64" "-mno-shared" "-EB" - +// // RUN: %clang -target mips64-linux-gnu -mips64r5 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64R5-PIC %s // MIPS-ALIAS-64R5-PIC: as{{(.exe)?}}" "-march" "mips64r5" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -mips64r5 -### \ // RUN: -no-integrated-as -fno-pic -c %s -fno-pic -mno-abicalls 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64R5 %s // MIPS-ALIAS-64R5: as{{(.exe)?}}" "-march" "mips64r5" "-mabi" "64" "-mno-shared" "-EB" - +// // RUN: %clang -target mips64-linux-gnu -mips64r6 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64R6-PIC %s // MIPS-ALIAS-64R6-PIC: as{{(.exe)?}}" "-march" "mips64r6" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -mips64r6 -### \ // RUN: -no-integrated-as -fno-pic -c %s -fno-pic -mno-abicalls 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-ALIAS-64R6 %s // MIPS-ALIAS-64R6: as{{(.exe)?}}" "-march" "mips64r6" "-mabi" "64" "-mno-shared" "-EB" - +// // RUN: %clang -target mips-linux-gnu -mno-mips16 -mips16 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-16 %s // MIPS-16: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mips16" - +// // RUN: %clang -target mips-linux-gnu -mips16 -mno-mips16 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-N16 %s // MIPS-N16: as{{(.exe)?}}" // MIPS-N16: -no-mips16 - +// // RUN: %clang -target mips-linux-gnu -mno-micromips -mmicromips -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-MICRO %s // MIPS-MICRO: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mmicromips" - +// // RUN: %clang -target mips-linux-gnu -mmicromips -mno-micromips -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-NMICRO %s // MIPS-NMICRO: as{{(.exe)?}}" // MIPS-NMICRO-NOT: {{[A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mmicromips" - +// // RUN: %clang -target mips-linux-gnu -mno-dsp -mdsp -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-DSP %s // MIPS-DSP: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mdsp" - +// // RUN: %clang -target mips-linux-gnu -mdsp -mno-dsp -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-NDSP %s // MIPS-NDSP: as{{(.exe)?}}" // MIPS-NDSP-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mdsp" - +// // RUN: %clang -target mips-linux-gnu -mno-dspr2 -mdspr2 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-DSPR2 %s // MIPS-DSPR2: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mdspr2" - +// // RUN: %clang -target mips-linux-gnu -mdspr2 -mno-dspr2 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-NDSPR2 %s // MIPS-NDSPR2: as{{(.exe)?}}" // MIPS-NDSPR2-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mdspr2" - +// // RUN: %clang -target mips-linux-gnu -mnan=legacy -mnan=2008 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-NAN2008 %s // MIPS-NAN2008: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mnan=2008" - +// // RUN: %clang -target mips-linux-gnu -mnan=2008 -mnan=legacy -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-NAN-LEGACY %s // MIPS-NAN-LEGACY: as{{(.exe)?}}" // MIPS-NAN-LEGACY-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mnan={{.*}}" - +// // RUN: %clang -target mips-linux-gnu -mfp64 -mfpxx -mfp32 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-MFP32 %s // MIPS-MFP32: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mfp32" - +// // RUN: %clang -target mips-linux-gnu -mfp32 -mfp64 -mfpxx -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-MFPXX %s // MIPS-MFPXX: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mfpxx" - +// // RUN: %clang -target mips-linux-gnu -mfpxx -mfp32 -mfp64 -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-MFP64 %s // MIPS-MFP64: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mfp64" - +// // RUN: %clang -target mips-linux-gnu -mno-msa -mmsa -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-MSA %s // MIPS-MSA: as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" "-mmsa" - +// // RUN: %clang -target mips-linux-gnu -mmsa -mno-msa -### \ // RUN: -no-integrated-as -fno-pic -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS-NMSA %s // MIPS-NMSA: as{{(.exe)?}}" // MIPS-NMSA-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-mmsa" - +// // We've already tested MIPS32r2 and MIPS64r2 thoroughly. Do minimal tests on // the remaining CPU's since it was possible to pass on a -mabi with no value // when the CPU name is absent from a StringSwitch in getMipsCPUAndABI() @@ -281,132 +281,132 @@ // RUN: 2>&1 | FileCheck -check-prefix=MIPS1-EB-AS %s // MIPS1-EB-AS: as{{(.exe)?}}" "-march" "mips1" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" // MIPS1-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC" - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -fno-pic -c %s -mcpu=mips2 \ // RUN: 2>&1 | FileCheck -check-prefix=MIPS2-EB-AS %s // MIPS2-EB-AS: as{{(.exe)?}}" "-march" "mips2" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" // MIPS2-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -fno-pic -c %s -mcpu=mips3 \ // RUN: 2>&1 | FileCheck -check-prefix=MIPS3-EB-AS %s // MIPS3-EB-AS: as{{(.exe)?}}" "-march" "mips3" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -fno-pic -c %s -mcpu=mips4 \ // RUN: 2>&1 | FileCheck -check-prefix=MIPS4-EB-AS %s // MIPS4-EB-AS: as{{(.exe)?}}" "-march" "mips4" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -fno-pic -c %s -mcpu=mips5 \ // RUN: 2>&1 | FileCheck -check-prefix=MIPS5-EB-AS %s // MIPS5-EB-AS: as{{(.exe)?}}" "-march" "mips5" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -fno-pic -c %s -mcpu=mips32 \ // RUN: 2>&1 | FileCheck -check-prefix=MIPS32-EB-AS %s // MIPS32-EB-AS: as{{(.exe)?}}" "-march" "mips32" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" // MIPS32-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC" - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -fno-pic -c %s -mcpu=mips32r6 \ // RUN: 2>&1 | FileCheck -check-prefix=MIPS32R6-EB-AS %s // MIPS32R6-EB-AS: as{{(.exe)?}}" "-march" "mips32r6" "-mabi" "32" "-mno-shared" "-call_nonpic" "-EB" // MIPS32R6-EB-AS-NOT: "{{[ A-Za-z\\\/]*}}as{{(.exe)?}}{{.*}}"-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -fno-pic -c %s -mcpu=mips64 \ // RUN: 2>&1 | FileCheck -check-prefix=MIPS64-EB-AS %s // MIPS64-EB-AS: as{{(.exe)?}}" "-march" "mips64" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips64-linux-gnu -### -no-integrated-as -fno-pic -c %s -mcpu=mips64r6 \ // RUN: 2>&1 | FileCheck -check-prefix=MIPS64R6-EB-AS %s // MIPS64R6-EB-AS: as{{(.exe)?}}" "-march" "mips64r6" "-mabi" "64" "-EB" "-KPIC" - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msoft-float -mhard-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=HARDFLOAT --implicit-check-not=-msoft-float %s // HARDFLOAT: as{{(.exe)?}}" // HARDFLOAT: -mhard-float - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -mhard-float -msoft-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=SOFTFLOAT --implicit-check-not=-mhard-float %s // SOFTFLOAT: as{{(.exe)?}}" // SOFTFLOAT: -msoft-float - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -mno-odd-spreg -modd-spreg -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=ODDSPREG --implicit-check-not=-mno-odd-spreg %s // ODDSPREG: as{{(.exe)?}}" // ODDSPREG: -modd-spreg - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -modd-spreg -mno-odd-spreg -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=NOODDSPREG --implicit-check-not=-modd-spreg %s // NOODDSPREG: as{{(.exe)?}}" // NOODDSPREG: -mno-odd-spreg - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -mdouble-float -msingle-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=SINGLEFLOAT --implicit-check-not=-mdouble-float %s // SINGLEFLOAT: as{{(.exe)?}}" // SINGLEFLOAT: -msingle-float - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msingle-float -mdouble-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=DOUBLEFLOAT --implicit-check-not=-msingle-float %s // DOUBLEFLOAT: as{{(.exe)?}}" // DOUBLEFLOAT: -mdouble-float - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msoft-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=SOFTFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s // SOFTFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}" // SOFTFLOAT-IMPLICIT-FPXX: -msoft-float - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msoft-float -mfpxx -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=SOFTFLOAT-EXPLICIT-FPXX %s // SOFTFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}" // SOFTFLOAT-EXPLICIT-FPXX: -mfpxx // SOFTFLOAT-EXPLICIT-FPXX: -msoft-float - +// // RUN: %clang -target mips-mti-linux-gnu -### -no-integrated-as -msoft-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MTI-SOFTFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s // MTI-SOFTFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}" // MTI-SOFTFLOAT-IMPLICIT-FPXX: -msoft-float - +// // RUN: %clang -target mips-mti-linux-gnu -### -no-integrated-as -msoft-float -mfpxx -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MTI-SOFTFLOAT-EXPLICIT-FPXX %s // MTI-SOFTFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}" // MTI-SOFTFLOAT-EXPLICIT-FPXX: -mfpxx // MTI-SOFTFLOAT-EXPLICIT-FPXX: -msoft-float - +// // RUN: %clang -target mips-img-linux-gnu -### -no-integrated-as -msoft-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=IMG-SOFTFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s // IMG-SOFTFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}" // IMG-SOFTFLOAT-IMPLICIT-FPXX: -msoft-float - +// // RUN: %clang -target mips-img-linux-gnu -### -no-integrated-as -msoft-float -mfpxx -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=IMG-SOFTFLOAT-EXPLICIT-FPXX %s // IMG-SOFTFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}" // IMG-SOFTFLOAT-EXPLICIT-FPXX: -mfpxx // IMG-SOFTFLOAT-EXPLICIT-FPXX: -msoft-float - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msingle-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=SINGLEFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s // SINGLEFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}" // SINGLEFLOAT-IMPLICIT-FPXX: -msingle-float - +// // RUN: %clang -target mips-linux-gnu -### -no-integrated-as -msingle-float -mfpxx -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=SINGLEFLOAT-EXPLICIT-FPXX %s // SINGLEFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}" // SINGLEFLOAT-EXPLICIT-FPXX: -mfpxx // SINGLEFLOAT-EXPLICIT-FPXX: -msingle-float - +// // RUN: %clang -target mips-mti-linux-gnu -### -no-integrated-as -msingle-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MTI-SINGLEFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s // MTI-SINGLEFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}" // MTI-SINGLEFLOAT-IMPLICIT-FPXX: -msingle-float - +// // RUN: %clang -target mips-mti-linux-gnu -### -no-integrated-as -msingle-float -mfpxx -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=MTI-SINGLEFLOAT-EXPLICIT-FPXX %s // MTI-SINGLEFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}" // MTI-SINGLEFLOAT-EXPLICIT-FPXX: -mfpxx // MTI-SINGLEFLOAT-EXPLICIT-FPXX: -msingle-float - +// // RUN: %clang -target mips-img-linux-gnu -### -no-integrated-as -msingle-float -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=IMG-SINGLEFLOAT-IMPLICIT-FPXX --implicit-check-not=-mfpxx %s // IMG-SINGLEFLOAT-IMPLICIT-FPXX: as{{(.exe)?}}" // IMG-SINGLEFLOAT-IMPLICIT-FPXX: -msingle-float - +// // RUN: %clang -target mips-img-linux-gnu -### -no-integrated-as -msingle-float -mfpxx -c %s 2>&1 \ // RUN: | FileCheck -check-prefix=IMG-SINGLEFLOAT-EXPLICIT-FPXX %s // IMG-SINGLEFLOAT-EXPLICIT-FPXX: as{{(.exe)?}}" diff --git a/clang/test/Driver/mips-cs.cpp b/clang/test/Driver/mips-cs.cpp index 74ba5afefdc264..a585d068f681cb 100644 --- a/clang/test/Driver/mips-cs.cpp +++ b/clang/test/Driver/mips-cs.cpp @@ -1,7 +1,7 @@ // REQUIRES: mips-registered-target - +// // Check frontend and linker invocations on Mentor Graphics MIPS toolchain. - +// // = Big-endian, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -no-pie \ @@ -29,7 +29,7 @@ // CHECK-BE-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/usr/lib" // CHECK-BE-HF-32: "[[TC]]{{/|\\\\}}crtend.o" // CHECK-BE-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, hard float, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -muclibc -no-pie \ @@ -58,7 +58,7 @@ // CHECK-BE-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/lib/../lib" // CHECK-BE-UC-HF-32: "[[TC]]/uclibc{{/|\\\\}}crtend.o" // CHECK-BE-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, hard float, mips16 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -mips16 -no-pie \ @@ -87,7 +87,7 @@ // CHECK-BE-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr/lib/../lib" // CHECK-BE-HF-16: "[[TC]]/mips16{{/|\\\\}}crtend.o" // CHECK-BE-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, hard float, mmicromips // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -mmicromips -no-pie \ @@ -116,7 +116,7 @@ // CHECK-BE-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr/lib/../lib" // CHECK-BE-HF-MICRO: "[[TC]]/micromips{{/|\\\\}}crtend.o" // CHECK-BE-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, hard float, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -mnan=2008 -no-pie \ @@ -145,7 +145,7 @@ // CHECK-BE-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr/lib/../lib" // CHECK-BE-HF-NAN: "[[TC]]/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, hard float, uclibc, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -muclibc -mnan=2008 -no-pie \ @@ -174,7 +174,7 @@ // CHECK-BE-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr/lib/../lib" // CHECK-BE-UC-HF-NAN: "[[TC]]/uclibc/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -msoft-float -no-pie \ @@ -203,7 +203,7 @@ // CHECK-BE-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib" // CHECK-BE-SF-32: "[[TC]]/soft-float{{/|\\\\}}crtend.o" // CHECK-BE-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, soft float, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -muclibc -msoft-float -no-pie \ @@ -232,7 +232,7 @@ // CHECK-BE-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr/lib/../lib" // CHECK-BE-UC-SF-32: "[[TC]]/uclibc/soft-float{{/|\\\\}}crtend.o" // CHECK-BE-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, soft float, mips16 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -msoft-float -mips16 -no-pie \ @@ -261,7 +261,7 @@ // CHECK-BE-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr/lib/../lib" // CHECK-BE-SF-16: "[[TC]]/mips16/soft-float{{/|\\\\}}crtend.o" // CHECK-BE-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, soft float, micromips // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-linux-gnu -msoft-float -mmicromips -no-pie \ @@ -290,7 +290,7 @@ // CHECK-BE-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr/lib/../lib" // CHECK-BE-SF-MICRO: "[[TC]]/micromips/soft-float{{/|\\\\}}crtend.o" // CHECK-BE-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, hard float, 64-bit // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-linux-gnu -no-pie \ @@ -319,7 +319,7 @@ // CHECK-BE-HF-64-NOT: "-L[[TC]]" // CHECK-BE-HF-64: "{{.*}}/lib/gcc/mips-linux-gnu/4.6.3/64{{/|\\\\}}crtend.o" // CHECK-BE-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/usr/lib/../lib64{{/|\\\\}}crtn.o" - +// // = Big-endian, soft float, 64-bit // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-linux-gnu -msoft-float -no-pie \ @@ -348,7 +348,7 @@ // CHECK-BE-SF-64-NOT: "-L[[TC]]" // CHECK-BE-SF-64: "[[TC]]/soft-float/64{{/|\\\\}}crtend.o" // CHECK-BE-SF-64: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/usr/lib/../lib64{{/|\\\\}}crtn.o" - +// // = Little-endian, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mhard-float -no-pie \ @@ -377,7 +377,7 @@ // CHECK-EL-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib" // CHECK-EL-HF-32: "[[TC]]/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, hard float, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mhard-float -muclibc -no-pie \ @@ -406,7 +406,7 @@ // CHECK-EL-UC-HF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr/lib/../lib" // CHECK-EL-UC-HF-32: "[[TC]]/uclibc/el{{/|\\\\}}crtend.o" // CHECK-EL-UC-HF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, hard float, mips16 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mips16 -no-pie \ @@ -435,7 +435,7 @@ // CHECK-EL-HF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr/lib/../lib" // CHECK-EL-HF-16: "[[TC]]/mips16/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, hard float, micromips // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mmicromips -no-pie \ @@ -464,7 +464,7 @@ // CHECK-EL-HF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr/lib/../lib" // CHECK-EL-HF-MICRO: "[[TC]]/micromips/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, hard float, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mnan=2008 -no-pie \ @@ -493,7 +493,7 @@ // CHECK-EL-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr/lib/../lib" // CHECK-EL-HF-NAN: "[[TC]]/nan2008/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/nan2008/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, hard float, uclibc, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -muclibc -mnan=2008 -no-pie \ @@ -522,7 +522,7 @@ // CHECK-EL-UC-HF-NAN: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr/lib/../lib" // CHECK-EL-UC-HF-NAN: "[[TC]]/uclibc/nan2008/el{{/|\\\\}}crtend.o" // CHECK-EL-UC-HF-NAN: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/nan2008/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mfloat-abi=soft -no-pie \ @@ -551,7 +551,7 @@ // CHECK-EL-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib" // CHECK-EL-SF-32: "[[TC]]/soft-float/el{{/|\\\\}}crtend.o" // CHECK-EL-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/soft-float/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, soft float, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mfloat-abi=soft -muclibc -no-pie \ @@ -580,7 +580,7 @@ // CHECK-EL-UC-SF-32: "-L[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr/lib/../lib" // CHECK-EL-UC-SF-32: "[[TC]]/uclibc/soft-float/el{{/|\\\\}}crtend.o" // CHECK-EL-UC-SF-32: "[[TC]]/../../../../mips-linux-gnu/libc/uclibc/soft-float/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, soft float, mips16 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mips16 -msoft-float -no-pie \ @@ -609,7 +609,7 @@ // CHECK-EL-SF-16: "-L[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr/lib/../lib" // CHECK-EL-SF-16: "[[TC]]/mips16/soft-float/el{{/|\\\\}}crtend.o" // CHECK-EL-SF-16: "[[TC]]/../../../../mips-linux-gnu/libc/mips16/soft-float/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, soft float, micromips // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-linux-gnu -mmicromips -msoft-float -no-pie \ @@ -638,7 +638,7 @@ // CHECK-EL-SF-MICRO: "-L[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr/lib/../lib" // CHECK-EL-SF-MICRO: "[[TC]]/micromips/soft-float/el{{/|\\\\}}crtend.o" // CHECK-EL-SF-MICRO: "[[TC]]/../../../../mips-linux-gnu/libc/micromips/soft-float/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, hard float, 64-bit // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-linux-gnu -no-pie \ @@ -667,7 +667,7 @@ // CHECK-EL-HF-64-NOT: "-L[[TC]]" // CHECK-EL-HF-64: "[[TC]]/el/64{{/|\\\\}}crtend.o" // CHECK-EL-HF-64: "[[TC]]/../../../../mips-linux-gnu/libc/el/usr/lib/../lib64{{/|\\\\}}crtn.o" - +// // = Little-endian, soft float, 64-bit // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-linux-gnu -msoft-float -no-pie \ diff --git a/clang/test/Driver/mips-eleb.c b/clang/test/Driver/mips-eleb.c index 42d4ce15744e24..37236984ab10a0 100644 --- a/clang/test/Driver/mips-eleb.c +++ b/clang/test/Driver/mips-eleb.c @@ -1,5 +1,5 @@ // Check that -EL/-EB options adjust the toolchain flags. - +// // RUN: %clang --target=mips-unknown-linux-gnu -### \ // RUN: -EL -no-integrated-as %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EL %s @@ -7,7 +7,7 @@ // MIPS32-EL: "{{.*}}as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" // MIPS32-EL: "-EL" // MIPS32-EL: "{{.*}}ld{{(.exe)?}}" {{.*}} "-m" "elf32ltsmip" - +// // RUN: %clang --target=mips64-unknown-linux-gnu -### \ // RUN: -EL -no-integrated-as %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64-EL %s @@ -15,7 +15,7 @@ // MIPS64-EL: "{{.*}}as{{(.exe)?}}" "-march" "mips64r2" "-mabi" "64" // MIPS64-EL: "-EL" // MIPS64-EL: "{{.*}}ld{{(.exe)?}}" {{.*}} "-m" "elf64ltsmip" - +// // RUN: %clang --target=mipsel-unknown-linux-gnu -### \ // RUN: -EB -no-integrated-as %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS32-EB %s @@ -23,7 +23,7 @@ // MIPS32-EB: "{{.*}}as{{(.exe)?}}" "-march" "mips32r2" "-mabi" "32" // MIPS32-EB: "-EB" // MIPS32-EB: "{{.*}}ld{{(.exe)?}}" {{.*}} "-m" "elf32btsmip" - +// // RUN: %clang --target=mips64el-unknown-linux-gnu -### \ // RUN: -EB -no-integrated-as %s 2>&1 \ // RUN: | FileCheck -check-prefix=MIPS64-EB %s diff --git a/clang/test/Driver/mips-features.c b/clang/test/Driver/mips-features.c index f3a35c960ac034..5ae566774959f1 100644 --- a/clang/test/Driver/mips-features.c +++ b/clang/test/Driver/mips-features.c @@ -1,377 +1,377 @@ // Check handling MIPS specific features options. - +// // -mabicalls // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mabicalls 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MABICALLS %s // CHECK-MABICALLS: "-target-feature" "-noabicalls" - +// // -mno-abicalls // RUN: %clang -target mips-linux-gnu -### -c %s -mabicalls -mno-abicalls 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MNOABICALLS %s // CHECK-MNOABICALLS: "-target-feature" "+noabicalls" - +// // -mno-abicalls non-PIC N64 // RUN: %clang -target mips64-linux-gnu -### -c -fno-PIC -mno-abicalls %s 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MNOABICALLS-N64NPIC %s // CHECK-MNOABICALLS-N64NPIC: "-target-feature" "+noabicalls" - +// // -mgpopt // RUN: %clang -target mips-linux-gnu -### -c %s -mno-gpopt -mgpopt -Wno-unsupported-gpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MGPOPT-DEF-ABICALLS %s // CHECK-MGPOPT-DEF-ABICALLS-NOT: "-mllvm" "-mgpopt" - +// // -mabicalls -mgpopt // RUN: %clang -target mips-linux-gnu -### -c %s -mabicalls -mno-gpopt -mgpopt -Wno-unsupported-gpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MGPOPT-EXPLICIT-ABICALLS %s // CHECK-MGPOPT-EXPLICIT-ABICALLS-NOT: "-mllvm" "-mgpopt" - +// // -mno-abicalls -mgpopt // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mno-gpopt -mgpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MGPOPT %s // CHECK-MGPOPT: "-mllvm" "-mgpopt" - +// // -mno-abicalls -mno-gpopt // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mgpopt -mno-gpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MNOGPOPT %s // CHECK-MNOGPOPT-NOT: "-mllvm" "-mgpopt" - +// // -mno-abicalls // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MGPOPTDEF %s // CHECK-MGPOPTDEF: "-mllvm" "-mgpopt" - +// // -mgpopt -mno-abicalls -mlocal-sdata // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mno-gpopt -mgpopt -mno-local-sdata -mlocal-sdata 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MLOCALSDATA %s // CHECK-MLOCALSDATA: "-mllvm" "-mlocal-sdata=1" - +// // -mgpopt -mno-abicalls -mno-local-sdata // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mno-gpopt -mgpopt -mlocal-sdata -mno-local-sdata 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MNOLOCALSDATA %s // CHECK-MNOLOCALSDATA: "-mllvm" "-mlocal-sdata=0" - +// // -mgpopt -mno-abicalls // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mgpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MLOCALSDATADEF %s // CHECK-MLOCALSDATADEF-NOT: "-mllvm" "-mlocal-sdata" - +// // -mno-abicalls -mgpopt -mextern-sdata // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mgpopt -mno-extern-sdata -mextern-sdata 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MEXTERNSDATA %s // CHECK-MEXTERNSDATA: "-mllvm" "-mextern-sdata=1" - +// // -mno-abicalls -mgpopt -mno-extern-sdata // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mgpopt -mextern-sdata -mno-extern-sdata 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MNOEXTERNSDATA %s // CHECK-MNOEXTERNSDATA: "-mllvm" "-mextern-sdata=0" - +// // -mno-abicalls -mgpopt // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mgpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MEXTERNSDATADEF %s // CHECK-MEXTERNSDATADEF-NOT: "-mllvm" "-mextern-sdata" - +// // -mno-abicalls -mgpopt -membedded-data // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mgpopt -mno-embedded-data -membedded-data 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MEMBEDDEDDATA %s // CHECK-MEMBEDDEDDATA: "-mllvm" "-membedded-data=1" - +// // -mno-abicalls -mgpopt -mno-embedded-data // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mgpopt -membedded-data -mno-embedded-data 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MNOEMBEDDEDDATA %s // CHECK-MNOEMBEDDEDDATA: "-mllvm" "-membedded-data=0" - +// // -mno-abicalls -mgpopt // RUN: %clang -target mips-linux-gnu -### -c %s -mno-abicalls -mgpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MEMBEDDEDDATADEF %s // CHECK-MEMBEDDEDDATADEF-NOT: "-mllvm" "-membedded-data" - +// // MIPS64 + N64: -fno-pic -> -mno-abicalls -mgpopt // RUN: %clang -target mips64-mti-elf -mabi=64 -### -c %s -fno-pic -mno-abicalls 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-N64-GPOPT %s // CHECK-N64-GPOPT: "-target-feature" "+noabicalls" // CHECK-N64-GPOPT: "-mllvm" "-mgpopt" - +// // MIPS64 + N64: -fno-pic -mno-gpopt // RUN: %clang -target mips64-mti-elf -mabi=64 -### -c %s -fno-pic -mno-abicalls -mno-gpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-N64-MNO-GPOPT %s // CHECK-N64-MNO-GPOPT: "-target-feature" "+noabicalls" // CHECK-N64-MNO-GPOPT-NOT: "-mllvm" "-mgpopt" - +// // MIPS64 + N64: -mgpopt (-fpic is implicit) // RUN: %clang -target mips64-mti-linux-gnu -mabi=64 -### -c %s -mgpopt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-N64-PIC-GPOPT %s // CHECK-N64-PIC-GPOPT-NOT: "-mllvm" "-mgpopt" // CHECK-N64-PIC-GPOPT: ignoring '-mgpopt' option as it cannot be used with the implicit usage of -mabicalls - +// // -mips16 // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-mips16 -mips16 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS16 %s // CHECK-MIPS16: "-target-feature" "+mips16" - +// // -mno-mips16 // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mips16 -mno-mips16 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOMIPS16 %s // CHECK-NOMIPS16: "-target-feature" "-mips16" - +// // -mmicromips // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-micromips -mmicromips 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MICROMIPS %s // CHECK-MICROMIPS: "-target-feature" "+micromips" - +// // -mno-micromips // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mmicromips -mno-micromips 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOMICROMIPS %s // CHECK-NOMICROMIPS: "-target-feature" "-micromips" - +// // -mdsp // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-dsp -mdsp 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MDSP %s // CHECK-MDSP: "-target-feature" "+dsp" - +// // -mno-dsp // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mdsp -mno-dsp 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOMDSP %s // CHECK-NOMDSP: "-target-feature" "-dsp" - +// // -mdspr2 // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-dspr2 -mdspr2 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MDSPR2 %s // CHECK-MDSPR2: "-target-feature" "+dspr2" - +// // -mno-dspr2 // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mdspr2 -mno-dspr2 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOMDSPR2 %s // CHECK-NOMDSPR2: "-target-feature" "-dspr2" - +// // -mmsa // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-msa -mmsa 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MMSA %s // CHECK-MMSA: "-target-feature" "+msa" - +// // -mno-msa // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mmsa -mno-msa 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOMMSA %s // CHECK-NOMMSA: "-target-feature" "-msa" - +// // -mmt // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-mt -mmt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MMT %s // CHECK-MMT: "-target-feature" "+mt" - +// // -mno-mt // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mmt -mno-mt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOMMT %s // CHECK-NOMMT: "-target-feature" "-mt" - +// // -modd-spreg // RUN: %clang -target mips-linux-gnu -### -c %s -mno-odd-spreg -modd-spreg 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MODDSPREG %s // CHECK-MODDSPREG: "-target-feature" "-nooddspreg" - +// // -mno-odd-spreg // RUN: %clang -target mips-linux-gnu -### -c %s -modd-spreg -mno-odd-spreg 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOMODDSPREG %s // CHECK-NOMODDSPREG: "-target-feature" "+nooddspreg" - +// // -mfpxx // RUN: %clang -target mips-linux-gnu -### -c %s -mfpxx 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MFPXX %s // CHECK-MFPXX: "-target-feature" "+fpxx" // CHECK-MFPXX: "-target-feature" "+nooddspreg" - +// // -mfpxx -modd-spreg // RUN: %clang -target mips-linux-gnu -### -c %s -mfpxx -modd-spreg 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MFPXX-ODDSPREG %s // CHECK-MFPXX-ODDSPREG: "-target-feature" "+fpxx" // CHECK-MFPXX-ODDSPREG: "-target-feature" "-nooddspreg" - +// // -mfp64 // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mfp32 -mfp64 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MFP64 %s // CHECK-MFP64: "-target-feature" "+fp64" - +// // -mfp32 // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mfp64 -mfp32 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOMFP64 %s // CHECK-NOMFP64: "-target-feature" "-fp64" - +// // -mnan=2008 // RUN: %clang -target mips-linux-gnu -march=mips32r3 -### -c %s \ // RUN: -mnan=legacy -mnan=2008 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NAN2008 %s // CHECK-NAN2008: "-target-feature" "+nan2008" - +// // -mnan=legacy // RUN: %clang -target mips-linux-gnu -march=mips32r3 -### -c %s \ // RUN: -mnan=2008 -mnan=legacy 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NANLEGACY %s // CHECK-NANLEGACY: "-target-feature" "-nan2008" - +// // -mabs=2008 on pre R2 // RUN: %clang -target mips-linux-gnu -march=mips32 -### -c %s \ // RUN: -mabs=2008 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-ABSLEGACY %s - +// // -mabs=2008 // RUN: %clang -target mips-linux-gnu -march=mips32r3 -### -c %s \ // RUN: -mabs=2008 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-ABS2008 %s - +// // -mabs=legacy // RUN: %clang -target mips-linux-gnu -march=mips32r3 -### -c %s \ // RUN: -mabs=legacy 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-ABSLEGACY %s - +// // -mabs=legacy on R6 // RUN: %clang -target mips-linux-gnu -march=mips32r6 -### -c %s \ // RUN: -mabs=legacy 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-ABS2008 %s - +// // CHECK-ABSLEGACY: "-target-feature" "-abs2008" // CHECK-ABSLEGACY-NOT: "-target-feature" "+abs2008" // CHECK-ABS2008: "-target-feature" "+abs2008" // CHECK-ABS2008-NOT: "-target-feature" "-abs2008" - +// // -mcompact-branches=never // RUN: %clang -target mips-linux-gnu -march=mips32r6 -### -c %s \ // RUN: -mcompact-branches=never 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-CBNEVER %s // CHECK-CBNEVER: "-mllvm" "-mips-compact-branches=never" - +// // -mcompact-branches=optimal // RUN: %clang -target mips-linux-gnu -march=mips32r6 -### -c %s \ // RUN: -mcompact-branches=optimal 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-CBOPTIMAL %s // CHECK-CBOPTIMAL: "-mllvm" "-mips-compact-branches=optimal" - +// // -mcompact-branches=always // RUN: %clang -target mips-linux-gnu -march=mips32r6 -### -c %s \ // RUN: -mcompact-branches=always 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-CBALWAYS %s // CHECK-CBALWAYS: "-mllvm" "-mips-compact-branches=always" - +// // -mxgot // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-xgot -mxgot 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-XGOT %s // CHECK-XGOT: "-target-feature" "+xgot" - +// // -mno-xgot // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mxgot -mno-xgot 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOXGOT %s // CHECK-NOXGOT: "-target-feature" "-xgot" - +// // -mldc1-sdc1 // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-ldc1-sdc1 -mldc1-sdc1 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-LDC1SDC1 %s // CHECK-LDC1SDC1-NOT: "-mllvm" "-mno-ldc1-sdc1" - +// // -mno-ldc1-sdc1 // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mldc1-sdc1 -mno-ldc1-sdc1 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOLDC1SDC1 %s // CHECK-NOLDC1SDC1: "-mllvm" "-mno-ldc1-sdc1" - +// // -mcheck-zero-division // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mno-check-zero-division -mcheck-zero-division 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-ZERODIV %s // CHECK-ZERODIV-NOT: "-mllvm" "-mno-check-zero-division" - +// // -mno-check-zero-division // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -mcheck-zero-division -mno-check-zero-division 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NOZERODIV %s // CHECK-NOZERODIV: "-mllvm" "-mno-check-zero-division" - +// // -G // RUN: %clang -target mips-linux-gnu -### -c %s \ // RUN: -G 16 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS-G %s // CHECK-MIPS-G: "-mllvm" "-mips-ssection-threshold=16" - +// // -msoft-float (unknown vendor) // RUN: %clang -target mips-linux-gnu -### -c %s -msoft-float 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-SOFTFLOAT %s // CHECK-SOFTFLOAT: "-target-feature" "+soft-float" // CHECK-SOFTFLOAT-NOT: "-target-feature" "+fpxx" - +// // -msoft-float -mfpxx (unknown vendor) // RUN: %clang -target mips-linux-gnu -### -c %s -msoft-float -mfpxx 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-SOFTFLOAT-FPXX %s // CHECK-SOFTFLOAT-FPXX: "-target-feature" "+soft-float" // CHECK-SOFTFLOAT-FPXX: "-target-feature" "+fpxx" - +// // -msoft-float (MTI) // RUN: %clang -target mips-mti-linux-gnu -### -c %s -msoft-float 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MTI-SOFTFLOAT %s // CHECK-MTI-SOFTFLOAT: "-target-feature" "+soft-float" // CHECK-MTI-SOFTFLOAT-NOT: "-target-feature" "+fpxx" - +// // -msoft-float -mfpxx (MTI) // RUN: %clang -target mips-mti-linux-gnu -### -c %s -msoft-float -mfpxx 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MTI-SOFTFLOAT-FPXX %s // CHECK-MTI-SOFTFLOAT-FPXX: "-target-feature" "+soft-float" // CHECK-MTI-SOFTFLOAT-FPXX: "-target-feature" "+fpxx" - +// // -msoft-float (IMG) // RUN: %clang -target mips-img-linux-gnu -### -c %s -msoft-float 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-IMG-SOFTFLOAT %s // CHECK-IMG-SOFTFLOAT: "-target-feature" "+soft-float" // CHECK-IMG-SOFTFLOAT-NOT: "-target-feature" "+fpxx" - +// // -msoft-float -mfpxx (IMG) // RUN: %clang -target mips-img-linux-gnu -### -c %s -msoft-float -mfpxx 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-IMG-SOFTFLOAT-FPXX %s // CHECK-IMG-SOFTFLOAT-FPXX: "-target-feature" "+soft-float" // CHECK-IMG-SOFTFLOAT-FPXX: "-target-feature" "+fpxx" - +// // -msingle-float (unknown vendor) // RUN: %clang -target mips-linux-gnu -### -c %s -msingle-float 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-SINGLEFLOAT %s // CHECK-SINGLEFLOAT: "-target-feature" "+single-float" // CHECK-SINGLEFLOAT-NOT: "-target-feature" "+fpxx" - +// // -msingle-float -mfpxx (unknown vendor) // RUN: %clang -target mips-linux-gnu -### -c %s -msingle-float -mfpxx 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-SINGLEFLOAT-FPXX %s // CHECK-SINGLEFLOAT-FPXX: "-target-feature" "+single-float" // CHECK-SINGLEFLOAT-FPXX: "-target-feature" "+fpxx" - +// // -msingle-float (MTI) // RUN: %clang -target mips-mti-linux-gnu -### -c %s -msingle-float 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MTI-SINGLEFLOAT %s // CHECK-MTI-SINGLEFLOAT: "-target-feature" "+single-float" // CHECK-MTI-SINGLEFLOAT-NOT: "-target-feature" "+fpxx" - +// // -msingle-float -mfpxx (MTI) // RUN: %clang -target mips-mti-linux-gnu -### -c %s -msingle-float -mfpxx 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MTI-SINGLEFLOAT-FPXX %s // CHECK-MTI-SINGLEFLOAT-FPXX: "-target-feature" "+single-float" // CHECK-MTI-SINGLEFLOAT-FPXX: "-target-feature" "+fpxx" - +// // -msingle-float (IMG) // RUN: %clang -target mips-img-linux-gnu -### -c %s -msingle-float 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-IMG-SINGLEFLOAT %s // CHECK-IMG-SINGLEFLOAT: "-target-feature" "+single-float" // CHECK-IMG-SINGLEFLOAT-NOT: "-target-feature" "+fpxx" - +// // -msingle-float -mfpxx (IMG) // RUN: %clang -target mips-img-linux-gnu -### -c %s -msingle-float -mfpxx 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-IMG-SINGLEFLOAT-FPXX %s @@ -392,12 +392,12 @@ // LONG-CALLS-ON: "-target-feature" "+long-calls" // LONG-CALLS-OFF: "-target-feature" "-long-calls" // LONG-CALLS-DEF-NOT: "long-calls" - +// // -mbranch-likely // RUN: %clang -target -mips-mti-linux-gnu -### -c %s -mbranch-likely 2>&1 \ // RUN: | FileCheck --check-prefix=BRANCH-LIKELY %s // BRANCH-LIKELY: argument unused during compilation: '-mbranch-likely' - +// // -mno-branch-likely // RUN: %clang -target -mips-mti-linux-gnu -### -c %s -mno-branch-likely 2>&1 \ // RUN: | FileCheck --check-prefix=NO-BRANCH-LIKELY %s @@ -408,49 +408,49 @@ // RUN: -mindirect-jump=hazard 2>&1 \ // RUN: | FileCheck --check-prefix=INDIRECT-BH %s // INDIRECT-BH: "-target-feature" "+use-indirect-jump-hazard" - +// // -mcrc // RUN: %clang -target mips-unknown-linux-gnu -### -c %s \ // RUN: -mno-crc -mcrc 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-CRC %s // CHECK-CRC: "-target-feature" "+crc" - +// // -mno-crc // RUN: %clang -target mips-unknown-linux-gnu -### -c %s \ // RUN: -mcrc -mno-crc 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-CRC %s // CHECK-NO-CRC: "-target-feature" "-crc" - +// // -mvirt // RUN: %clang -target mips-unknown-linux-gnu -### -c %s \ // RUN: -mno-virt -mvirt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-VIRT %s // CHECK-VIRT: "-target-feature" "+virt" - +// // -mno-virt // RUN: %clang -target mips-unknown-linux-gnu -### -c %s \ // RUN: -mvirt -mno-virt 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-VIRT %s // CHECK-NO-VIRT: "-target-feature" "-virt" - +// // -mginv // RUN: %clang -target mips-unknown-linux-gnu -### -c %s \ // RUN: -mno-ginv -mginv 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-GINV %s // CHECK-GINV: "-target-feature" "+ginv" - +// // -mno-ginv // RUN: %clang -target mips-unknown-linux-gnu -### -c %s \ // RUN: -mginv -mno-ginv 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-NO-GINV %s // CHECK-NO-GINV: "-target-feature" "-ginv" - +// // -mrelax-pic-calls // RUN: %clang -target mips-unknown-linux-gnu -### -c %s \ // RUN: -mno-relax-pic-calls -mrelax-pic-calls 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-RELAX-PIC-CALLS %s // CHECK-RELAX-PIC-CALLS-NOT: "-mllvm" "-mips-jalr-reloc=0" - +// // -mno-relax-pic-calls // RUN: %clang -target mips-unknown-linux-gnu -### -c %s \ // RUN: -mrelax-pic-calls -mno-relax-pic-calls 2>&1 \ diff --git a/clang/test/Driver/mips-float.c b/clang/test/Driver/mips-float.c index 7d9527133cfa48..2f1b813a153224 100644 --- a/clang/test/Driver/mips-float.c +++ b/clang/test/Driver/mips-float.c @@ -1,12 +1,12 @@ // Check handling -mhard-float / -msoft-float / -mfloat-abi options // when build for MIPS platforms. - +// // Default // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-DEF %s // CHECK-DEF: "-mfloat-abi" "hard" - +// // Default on FreeBSD // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-freebsd12 \ @@ -14,13 +14,13 @@ // DEF-FREEBSD: "-target-feature" "+soft-float" // DEF-FREEBSD: "-msoft-float" // DEF-FREEBSD: "-mfloat-abi" "soft" - +// // -mhard-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -mhard-float \ // RUN: | FileCheck --check-prefix=CHECK-HARD %s // CHECK-HARD: "-mfloat-abi" "hard" - +// // -msoft-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -msoft-float \ @@ -28,13 +28,13 @@ // CHECK-SOFT: "-target-feature" "+soft-float" // CHECK-SOFT: "-msoft-float" // CHECK-SOFT: "-mfloat-abi" "soft" - +// // -mfloat-abi=hard // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -mfloat-abi=hard \ // RUN: | FileCheck --check-prefix=CHECK-ABI-HARD %s // CHECK-ABI-HARD: "-mfloat-abi" "hard" - +// // -mfloat-abi=soft // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -mfloat-abi=soft \ @@ -42,42 +42,42 @@ // CHECK-ABI-SOFT: "-target-feature" "+soft-float" // CHECK-ABI-SOFT: "-msoft-float" // CHECK-ABI-SOFT: "-mfloat-abi" "soft" - +// // -mdouble-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -msingle-float -mdouble-float \ // RUN: | FileCheck --check-prefix=CHECK-ABI-DOUBLE %s // CHECK-ABI-DOUBLE: "-mfloat-abi" "hard" // CHECK-ABI-DOUBLE-NOT: "+single-float" - +// // -msingle-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -mdouble-float -msingle-float \ // RUN: | FileCheck --check-prefix=CHECK-ABI-SINGLE %s // CHECK-ABI-SINGLE: "-target-feature" "+single-float" // CHECK-ABI-SINGLE: "-mfloat-abi" "hard" - +// // -msoft-float -msingle-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -msoft-float -msingle-float \ // RUN: | FileCheck --check-prefix=CHECK-ABI-SOFT-SINGLE %s // CHECK-ABI-SOFT-SINGLE: "-target-feature" "+single-float" // CHECK-ABI-SOFT-SINGLE: "-mfloat-abi" "soft" - +// // Default -mips16 // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -mips16 \ // RUN: | FileCheck --check-prefix=CHECK-DEF-MIPS16 %s // CHECK-DEF-MIPS16: "-target-feature" "+mips16" // CHECK-DEF-MIPS16: "-mfloat-abi" "hard" - +// // -mhard-float -mips16 // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -mhard-float -mips16 \ // RUN: | FileCheck --check-prefix=CHECK-HARD-MIPS16 %s // CHECK-HARD-MIPS16: "-target-feature" "+mips16" // CHECK-HARD-MIPS16: "-mfloat-abi" "hard" - +// // -msoft-float -mips16 // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -msoft-float -mips16 \ @@ -86,14 +86,14 @@ // CHECK-SOFT-MIPS16: "-target-feature" "+mips16" // CHECK-SOFT-MIPS16: "-msoft-float" // CHECK-SOFT-MIPS16: "-mfloat-abi" "soft" - +// // -mfloat-abi=hard -mips16 // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -mfloat-abi=hard -mips16 \ // RUN: | FileCheck --check-prefix=CHECK-ABI-HARD-MIPS16 %s // CHECK-ABI-HARD-MIPS16: "-target-feature" "+mips16" // CHECK-ABI-HARD-MIPS16: "-mfloat-abi" "hard" - +// // -mfloat-abi=soft -mips16 // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target mips-linux-gnu -mfloat-abi=soft -mips16 \ diff --git a/clang/test/Driver/mips-fsf.cpp b/clang/test/Driver/mips-fsf.cpp index 44054ada2d3329..58c7a1b96f55b2 100644 --- a/clang/test/Driver/mips-fsf.cpp +++ b/clang/test/Driver/mips-fsf.cpp @@ -1,7 +1,7 @@ // REQUIRES: mips-registered-target // Check frontend and linker invocations on FSF MIPS toolchain. - +// // = Big-endian, mips32, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mhard-float -no-pie \ @@ -28,7 +28,7 @@ // CHECK-BE-HF-32: "-L[[TC]]/../../../../sysroot/mips32/usr/lib/../lib" // CHECK-BE-HF-32: "[[TC]]/mips32{{/|\\\\}}crtend.o" // CHECK-BE-HF-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32, hard float, fp64 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mfp64 -mhard-float -no-pie \ @@ -55,7 +55,7 @@ // CHECK-BE-HF64-32: "-L[[TC]]/../../../../sysroot/mips32/usr/lib/../lib" // CHECK-BE-HF64-32: "[[TC]]/mips32{{/|\\\\}}crtend.o" // CHECK-BE-HF64-32: "[[TC]]/../../../../sysroot/mips32/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -msoft-float -no-pie \ @@ -82,7 +82,7 @@ // CHECK-BE-SF-32: "-L[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib" // CHECK-BE-SF-32: "[[TC]]/mips32/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-32: "[[TC]]/../../../../sysroot/mips32/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips16 / mips32, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -mhard-float -no-pie \ @@ -109,7 +109,7 @@ // CHECK-BE-HF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib" // CHECK-BE-HF-16: "[[TC]]/mips32/mips16{{/|\\\\}}crtend.o" // CHECK-BE-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips16 / mips32, hard float, fp64 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -mfp64 -mhard-float -no-pie \ @@ -136,7 +136,7 @@ // CHECK-BE-HF64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib" // CHECK-BE-HF64-16: "[[TC]]/mips32/mips16{{/|\\\\}}crtend.o" // CHECK-BE-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips16 / mips32, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -msoft-float -no-pie \ @@ -163,7 +163,7 @@ // CHECK-BE-SF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib" // CHECK-BE-SF-16: "[[TC]]/mips32/mips16/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32 / mips16, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -mnan=2008 -no-pie \ @@ -190,7 +190,7 @@ // CHECK-BE-NAN-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib" // CHECK-BE-NAN-16: "[[TC]]/mips32/mips16/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32 / mips16, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mips16 -mfp64 -mnan=2008 -no-pie \ @@ -217,7 +217,7 @@ // CHECK-BE-NAN64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib" // CHECK-BE-NAN64-16: "[[TC]]/mips32/mips16/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mnan=2008 -no-pie \ @@ -244,7 +244,7 @@ // CHECK-BE-NAN-32: "-L[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib" // CHECK-BE-NAN-32: "[[TC]]/mips32/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32 -mfp64 -mnan=2008 -no-pie \ @@ -271,7 +271,7 @@ // CHECK-BE-NAN64-32: "-L[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib" // CHECK-BE-NAN64-32: "[[TC]]/mips32/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-32: "[[TC]]/../../../../sysroot/mips32/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mhard-float -no-pie \ @@ -298,7 +298,7 @@ // CHECK-BE-HF-32R2: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" // CHECK-BE-HF-32R2: "[[TC]]{{/|\\\\}}crtend.o" // CHECK-BE-HF-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2, hard float, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mhard-float -muclibc -no-pie \ @@ -325,7 +325,7 @@ // CHECK-BE-UC-HF-32R2: "-L[[TC]]/../../../../sysroot/uclibc/usr/lib/../lib" // CHECK-BE-UC-HF-32R2: "[[TC]]/uclibc{{/|\\\\}}crtend.o" // CHECK-BE-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mfp64 -mhard-float -no-pie \ @@ -352,7 +352,7 @@ // CHECK-BE-HF64-32R2: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" // CHECK-BE-HF64-32R2: "[[TC]]{{/|\\\\}}crtend.o" // CHECK-BE-HF64-32R2: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -msoft-float -no-pie \ @@ -379,7 +379,7 @@ // CHECK-BE-SF-32R2: "-L[[TC]]/../../../../sysroot/sof/usr/lib/../lib" // CHECK-BE-SF-32R2: "[[TC]]/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-32R2: "[[TC]]/../../../../sysroot/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2, soft float, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -msoft-float -muclibc -no-pie \ @@ -406,7 +406,7 @@ // CHECK-BE-UC-SF-32R2: "-L[[TC]]/../../../../sysroot/uclibc/sof/usr/lib/../lib" // CHECK-BE-UC-SF-32R2: "[[TC]]/uclibc/sof{{/|\\\\}}crtend.o" // CHECK-BE-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2 / mips16, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -mhard-float -no-pie \ @@ -433,7 +433,7 @@ // CHECK-BE-HF-16R2: "-L[[TC]]/../../../../sysroot/mips16/usr/lib/../lib" // CHECK-BE-HF-16R2: "[[TC]]/mips16{{/|\\\\}}crtend.o" // CHECK-BE-HF-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2 / mips16, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -mfp64 -mhard-float -no-pie \ @@ -460,7 +460,7 @@ // CHECK-BE-HF64-16R2: "-L[[TC]]/../../../../sysroot/mips16/usr/lib/../lib" // CHECK-BE-HF64-16R2: "[[TC]]/mips16{{/|\\\\}}crtend.o" // CHECK-BE-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2 / mips16, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -msoft-float -no-pie \ @@ -487,7 +487,7 @@ // CHECK-BE-SF-16R2: "-L[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib" // CHECK-BE-SF-16R2: "[[TC]]/mips16/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-16R2: "[[TC]]/../../../../sysroot/mips16/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2 / mips16, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -mnan=2008 -no-pie \ @@ -514,7 +514,7 @@ // CHECK-BE-NAN-16R2: "-L[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib" // CHECK-BE-NAN-16R2: "[[TC]]/mips16/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2 / mips16, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mips16 -mfp64 -mnan=2008 -no-pie \ @@ -541,7 +541,7 @@ // CHECK-BE-NAN64-16R2: "-L[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib" // CHECK-BE-NAN64-16R2: "[[TC]]/mips16/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mnan=2008 -no-pie \ @@ -568,7 +568,7 @@ // CHECK-BE-NAN-32R2: "-L[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib" // CHECK-BE-NAN-32R2: "[[TC]]/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2, nan2008, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mnan=2008 -muclibc -no-pie \ @@ -595,7 +595,7 @@ // CHECK-BE-UC-NAN-32R2: "-L[[TC]]/../../../../sysroot/uclibc/nan2008/usr/lib/../lib" // CHECK-BE-UC-NAN-32R2: "[[TC]]/uclibc/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r2, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r2 -mfp64 -mnan=2008 -no-pie \ @@ -622,7 +622,7 @@ // CHECK-BE-NAN64-32R2: "-L[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib" // CHECK-BE-NAN64-32R2: "[[TC]]/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-32R2: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, default (mips32r2), fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mfp64 -mnan=2008 -no-pie \ @@ -649,7 +649,7 @@ // CHECK-BE-NAN64-32R2-DEF: "-L[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib" // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, micromips, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mmicromips -mhard-float -no-pie \ @@ -676,7 +676,7 @@ // CHECK-BE-HF-MM: "-L[[TC]]/../../../../sysroot/micromips/usr/lib/../lib" // CHECK-BE-HF-MM: "[[TC]]/micromips{{/|\\\\}}crtend.o" // CHECK-BE-HF-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, micromips, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mmicromips -mfp64 -mhard-float -no-pie \ @@ -703,7 +703,7 @@ // CHECK-BE-HF64-MM: "-L[[TC]]/../../../../sysroot/micromips/usr/lib/../lib" // CHECK-BE-HF64-MM: "[[TC]]/micromips{{/|\\\\}}crtend.o" // CHECK-BE-HF64-MM: "[[TC]]/../../../../sysroot/micromips/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, micromips, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mmicromips -msoft-float -no-pie \ @@ -730,7 +730,7 @@ // CHECK-BE-SF-MM: "-L[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib" // CHECK-BE-SF-MM: "[[TC]]/micromips/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-MM: "[[TC]]/../../../../sysroot/micromips/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, micromips, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mmicromips -mnan=2008 -no-pie \ @@ -757,7 +757,7 @@ // CHECK-BE-NAN-MM: "-L[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib" // CHECK-BE-NAN-MM: "[[TC]]/micromips/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, micromips, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mmicromips -mfp64 -mnan=2008 -no-pie \ @@ -784,7 +784,7 @@ // CHECK-BE-NAN64-MM: "-L[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib" // CHECK-BE-NAN64-MM: "[[TC]]/micromips/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI n32, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -mhard-float -no-pie \ @@ -811,7 +811,7 @@ // CHECK-BE-HF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/usr/lib" // CHECK-BE-HF-64-N32: "[[TC]]/mips64{{/|\\\\}}crtend.o" // CHECK-BE-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI n32, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -mfp64 -mhard-float -no-pie \ @@ -838,7 +838,7 @@ // CHECK-BE-HF64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/usr/lib" // CHECK-BE-HF64-64-N32: "[[TC]]/mips64{{/|\\\\}}crtend.o" // CHECK-BE-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI n32, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -msoft-float -no-pie \ @@ -865,7 +865,7 @@ // CHECK-BE-SF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/sof/usr/lib" // CHECK-BE-SF-64-N32: "[[TC]]/mips64/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/sof/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI n32, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -mnan=2008 -no-pie \ @@ -892,7 +892,7 @@ // CHECK-BE-NAN-64-N32: "-L[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib" // CHECK-BE-NAN-64-N32: "[[TC]]/mips64/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI n32, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=n32 -mfp64 -mnan=2008 -no-pie \ @@ -919,7 +919,7 @@ // CHECK-BE-NAN64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib" // CHECK-BE-NAN64-64-N32: "[[TC]]/mips64/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI 64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -mhard-float -no-pie \ @@ -946,7 +946,7 @@ // CHECK-BE-HF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/usr/lib" // CHECK-BE-HF-64-64: "[[TC]]/mips64/64{{/|\\\\}}crtend.o" // CHECK-BE-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI 64, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -mfp64 -mhard-float -no-pie \ @@ -973,7 +973,7 @@ // CHECK-BE-HF64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/usr/lib" // CHECK-BE-HF64-64-64: "[[TC]]/mips64/64{{/|\\\\}}crtend.o" // CHECK-BE-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI 64, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -msoft-float -no-pie \ @@ -1000,7 +1000,7 @@ // CHECK-BE-SF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib" // CHECK-BE-SF-64-64: "[[TC]]/mips64/64/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/sof/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI 64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -mnan=2008 -no-pie \ @@ -1027,7 +1027,7 @@ // CHECK-BE-NAN-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib" // CHECK-BE-NAN-64-64: "[[TC]]/mips64/64/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64, ABI 64, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64 -mabi=64 -mfp64 -mnan=2008 -no-pie \ @@ -1054,7 +1054,7 @@ // CHECK-BE-NAN64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib" // CHECK-BE-NAN64-64-64: "[[TC]]/mips64/64/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI n32, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -mhard-float -no-pie \ @@ -1081,7 +1081,7 @@ // CHECK-BE-HF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/usr/lib" // CHECK-BE-HF-64R2-N32: "[[TC]]/mips64r2{{/|\\\\}}crtend.o" // CHECK-BE-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI n32, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mhard-float -no-pie \ @@ -1108,7 +1108,7 @@ // CHECK-BE-HF64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/usr/lib" // CHECK-BE-HF64-64R2-N32: "[[TC]]/mips64r2{{/|\\\\}}crtend.o" // CHECK-BE-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI n32, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -msoft-float -no-pie \ @@ -1135,7 +1135,7 @@ // CHECK-BE-SF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib" // CHECK-BE-SF-64R2-N32: "[[TC]]/mips64r2/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/sof/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI n32, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -mnan=2008 -no-pie \ @@ -1162,7 +1162,7 @@ // CHECK-BE-NAN-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib" // CHECK-BE-NAN-64R2-N32: "[[TC]]/mips64r2/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI n32, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mnan=2008 -no-pie \ @@ -1189,7 +1189,7 @@ // CHECK-BE-NAN64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib" // CHECK-BE-NAN64-64R2-N32: "[[TC]]/mips64r2/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI 64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -mhard-float -no-pie \ @@ -1216,7 +1216,7 @@ // CHECK-BE-HF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/usr/lib" // CHECK-BE-HF-64R2-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtend.o" // CHECK-BE-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI 64, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -mfp64 -mhard-float -no-pie \ @@ -1243,7 +1243,7 @@ // CHECK-BE-HF64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/usr/lib" // CHECK-BE-HF64-64R2-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtend.o" // CHECK-BE-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI 64, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -msoft-float -no-pie \ @@ -1270,7 +1270,7 @@ // CHECK-BE-SF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib" // CHECK-BE-SF-64R2-64: "[[TC]]/mips64r2/64/sof{{/|\\\\}}crtend.o" // CHECK-BE-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/sof/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI 64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -mnan=2008 -no-pie \ @@ -1297,7 +1297,7 @@ // CHECK-BE-NAN-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib" // CHECK-BE-NAN-64R2-64: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r2, ABI 64, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r2 -mabi=64 -mfp64 -mnan=2008 -no-pie \ @@ -1324,7 +1324,7 @@ // CHECK-BE-NAN64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib" // CHECK-BE-NAN64-64R2-64: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, default (mips64r2), ABI 64, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mabi=64 -mfp64 -mnan=2008 -no-pie \ @@ -1351,7 +1351,7 @@ // CHECK-BE-NAN64-64R2-64-DEF: "-L[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib" // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/mips64r2/64/nan2008{{/|\\\\}}crtend.o" // CHECK-BE-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/mips64r2/64/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mhard-float -no-pie \ @@ -1378,7 +1378,7 @@ // CHECK-EL-HF-32: "-L[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib" // CHECK-EL-HF-32: "[[TC]]/mips32/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mfp64 -mhard-float -no-pie \ @@ -1405,7 +1405,7 @@ // CHECK-EL-HF64-32: "-L[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib" // CHECK-EL-HF64-32: "[[TC]]/mips32/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-32: "[[TC]]/../../../../sysroot/mips32/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -msoft-float -no-pie \ @@ -1432,7 +1432,7 @@ // CHECK-EL-SF-32: "-L[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib" // CHECK-EL-SF-32: "[[TC]]/mips32/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-32: "[[TC]]/../../../../sysroot/mips32/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32 / mips16, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -mhard-float -no-pie \ @@ -1459,7 +1459,7 @@ // CHECK-EL-HF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib" // CHECK-EL-HF-16: "[[TC]]/mips32/mips16/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32 / mips16, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -mfp64 -mhard-float -no-pie \ @@ -1486,7 +1486,7 @@ // CHECK-EL-HF64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib" // CHECK-EL-HF64-16: "[[TC]]/mips32/mips16/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32 / mips16, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -msoft-float -no-pie \ @@ -1513,7 +1513,7 @@ // CHECK-EL-SF-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib" // CHECK-EL-SF-16: "[[TC]]/mips32/mips16/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32 / mips16, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -mnan=2008 -no-pie \ @@ -1540,7 +1540,7 @@ // CHECK-EL-NAN-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN-16: "[[TC]]/mips32/mips16/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32 / mips16, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mips16 -mfp64 -mnan=2008 -no-pie \ @@ -1567,7 +1567,7 @@ // CHECK-EL-NAN64-16: "-L[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN64-16: "[[TC]]/mips32/mips16/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-16: "[[TC]]/../../../../sysroot/mips32/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mnan=2008 -no-pie \ @@ -1594,7 +1594,7 @@ // CHECK-EL-NAN-32: "-L[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN-32: "[[TC]]/mips32/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32 -mfp64 -mnan=2008 -no-pie \ @@ -1621,7 +1621,7 @@ // CHECK-EL-NAN64-32: "-L[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN64-32: "[[TC]]/mips32/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-32: "[[TC]]/../../../../sysroot/mips32/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mhard-float -no-pie \ @@ -1648,7 +1648,7 @@ // CHECK-EL-HF-32R2: "-L[[TC]]/../../../../sysroot/el/usr/lib/../lib" // CHECK-EL-HF-32R2: "[[TC]]/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2, hard float, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mhard-float -muclibc -no-pie \ @@ -1675,7 +1675,7 @@ // CHECK-EL-UC-HF-32R2: "-L[[TC]]/../../../../sysroot/uclibc/el/usr/lib/../lib" // CHECK-EL-UC-HF-32R2: "[[TC]]/uclibc/el{{/|\\\\}}crtend.o" // CHECK-EL-UC-HF-32R2: "[[TC]]/../../../../sysroot/uclibc/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mfp64 -mhard-float -no-pie \ @@ -1702,7 +1702,7 @@ // CHECK-EL-HF64-32R2: "-L[[TC]]/../../../../sysroot/el/usr/lib/../lib" // CHECK-EL-HF64-32R2: "[[TC]]/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-32R2: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -msoft-float -no-pie \ @@ -1729,7 +1729,7 @@ // CHECK-EL-SF-32R2: "-L[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib" // CHECK-EL-SF-32R2: "[[TC]]/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-32R2: "[[TC]]/../../../../sysroot/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2, soft float, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -msoft-float -muclibc -no-pie \ @@ -1756,7 +1756,7 @@ // CHECK-EL-UC-SF-32R2: "-L[[TC]]/../../../../sysroot/uclibc/el/sof/usr/lib/../lib" // CHECK-EL-UC-SF-32R2: "[[TC]]/uclibc/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-UC-SF-32R2: "[[TC]]/../../../../sysroot/uclibc/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2 / mips16, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -mhard-float -no-pie \ @@ -1783,7 +1783,7 @@ // CHECK-EL-HF-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib" // CHECK-EL-HF-16R2: "[[TC]]/mips16/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2 / mips16, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -mfp64 -mhard-float -no-pie \ @@ -1810,7 +1810,7 @@ // CHECK-EL-HF64-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib" // CHECK-EL-HF64-16R2: "[[TC]]/mips16/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-16R2: "[[TC]]/../../../../sysroot/mips16/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2 / mips16, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -msoft-float -no-pie \ @@ -1837,7 +1837,7 @@ // CHECK-EL-SF-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib" // CHECK-EL-SF-16R2: "[[TC]]/mips16/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-16R2: "[[TC]]/../../../../sysroot/mips16/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2 / mips16, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -mnan=2008 -no-pie \ @@ -1864,7 +1864,7 @@ // CHECK-EL-NAN-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN-16R2: "[[TC]]/mips16/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2 / mips16, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mips16 -mfp64 -mnan=2008 -no-pie \ @@ -1891,7 +1891,7 @@ // CHECK-EL-NAN64-16R2: "-L[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN64-16R2: "[[TC]]/mips16/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-16R2: "[[TC]]/../../../../sysroot/mips16/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mnan=2008 -no-pie \ @@ -1918,7 +1918,7 @@ // CHECK-EL-NAN-32R2: "-L[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN-32R2: "[[TC]]/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2, nan2008, uclibc // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mnan=2008 -muclibc -no-pie \ @@ -1945,7 +1945,7 @@ // CHECK-EL-UC-NAN-32R2: "-L[[TC]]/../../../../sysroot/uclibc/el/nan2008/usr/lib/../lib" // CHECK-EL-UC-NAN-32R2: "[[TC]]/uclibc/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-UC-NAN-32R2: "[[TC]]/../../../../sysroot/uclibc/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r2, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mips32r2 -mfp64 -mnan=2008 -no-pie \ @@ -1972,7 +1972,7 @@ // CHECK-EL-NAN64-32R2: "-L[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN64-32R2: "[[TC]]/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-32R2: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, default (mips32r2), fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mfp64 -mnan=2008 -no-pie \ @@ -1999,7 +1999,7 @@ // CHECK-EL-NAN64-32R2-DEF: "-L[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-32R2-DEF: "[[TC]]/../../../../sysroot/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, micromips, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mmicromips -mhard-float -no-pie \ @@ -2026,7 +2026,7 @@ // CHECK-EL-HF-MM: "-L[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib" // CHECK-EL-HF-MM: "[[TC]]/micromips/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, micromips, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mmicromips -mfp64 -mhard-float -no-pie \ @@ -2053,7 +2053,7 @@ // CHECK-EL-HF64-MM: "-L[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib" // CHECK-EL-HF64-MM: "[[TC]]/micromips/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-MM: "[[TC]]/../../../../sysroot/micromips/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, micromips, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mmicromips -msoft-float -no-pie \ @@ -2080,7 +2080,7 @@ // CHECK-EL-SF-MM: "-L[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib" // CHECK-EL-SF-MM: "[[TC]]/micromips/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-MM: "[[TC]]/../../../../sysroot/micromips/el/sof/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, micromips, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mmicromips -mnan=2008 -no-pie \ @@ -2107,7 +2107,7 @@ // CHECK-EL-NAN-MM: "-L[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN-MM: "[[TC]]/micromips/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, micromips, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mipsel-mti-linux-gnu -mmicromips -mfp64 -mnan=2008 -no-pie \ @@ -2134,7 +2134,7 @@ // CHECK-EL-NAN64-MM: "-L[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib" // CHECK-EL-NAN64-MM: "[[TC]]/micromips/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-MM: "[[TC]]/../../../../sysroot/micromips/el/nan2008/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI n32, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -mhard-float -no-pie \ @@ -2161,7 +2161,7 @@ // CHECK-EL-HF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/usr/lib" // CHECK-EL-HF-64-N32: "[[TC]]/mips64/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI n32, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -mfp64 -mhard-float -no-pie \ @@ -2188,7 +2188,7 @@ // CHECK-EL-HF64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/usr/lib" // CHECK-EL-HF64-64-N32: "[[TC]]/mips64/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI n32, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -msoft-float -no-pie \ @@ -2215,7 +2215,7 @@ // CHECK-EL-SF-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib" // CHECK-EL-SF-64-N32: "[[TC]]/mips64/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-64-N32: "[[TC]]/../../../../sysroot/mips64/el/sof/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI n32, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -mnan=2008 -no-pie \ @@ -2242,7 +2242,7 @@ // CHECK-EL-NAN-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib" // CHECK-EL-NAN-64-N32: "[[TC]]/mips64/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI n32, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=n32 -mfp64 -mnan=2008 -no-pie \ @@ -2269,7 +2269,7 @@ // CHECK-EL-NAN64-64-N32: "-L[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib" // CHECK-EL-NAN64-64-N32: "[[TC]]/mips64/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-64-N32: "[[TC]]/../../../../sysroot/mips64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI 64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -mhard-float -no-pie \ @@ -2296,7 +2296,7 @@ // CHECK-EL-HF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/usr/lib" // CHECK-EL-HF-64-64: "[[TC]]/mips64/64/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI 64, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -mfp64 -mhard-float -no-pie \ @@ -2323,7 +2323,7 @@ // CHECK-EL-HF64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/usr/lib" // CHECK-EL-HF64-64-64: "[[TC]]/mips64/64/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI 64, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -msoft-float -no-pie \ @@ -2350,7 +2350,7 @@ // CHECK-EL-SF-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib" // CHECK-EL-SF-64-64: "[[TC]]/mips64/64/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/sof/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI 64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -mnan=2008 -no-pie \ @@ -2377,7 +2377,7 @@ // CHECK-EL-NAN-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib" // CHECK-EL-NAN-64-64: "[[TC]]/mips64/64/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64, ABI 64, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64 -mabi=64 -mfp64 -mnan=2008 -no-pie \ @@ -2404,7 +2404,7 @@ // CHECK-EL-NAN64-64-64: "-L[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib" // CHECK-EL-NAN64-64-64: "[[TC]]/mips64/64/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-64-64: "[[TC]]/../../../../sysroot/mips64/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI n32, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -mhard-float -no-pie \ @@ -2431,7 +2431,7 @@ // CHECK-EL-HF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/usr/lib" // CHECK-EL-HF-64R2-N32: "[[TC]]/mips64r2/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI n32, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mhard-float -no-pie \ @@ -2458,7 +2458,7 @@ // CHECK-EL-HF64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/usr/lib" // CHECK-EL-HF64-64R2-N32: "[[TC]]/mips64r2/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI n32, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -msoft-float -no-pie \ @@ -2485,7 +2485,7 @@ // CHECK-EL-SF-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib" // CHECK-EL-SF-64R2-N32: "[[TC]]/mips64r2/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/sof/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI n32, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -mnan=2008 -no-pie \ @@ -2512,7 +2512,7 @@ // CHECK-EL-NAN-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib" // CHECK-EL-NAN-64R2-N32: "[[TC]]/mips64r2/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI n32, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=n32 -mfp64 -mnan=2008 -no-pie \ @@ -2539,7 +2539,7 @@ // CHECK-EL-NAN64-64R2-N32: "-L[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib" // CHECK-EL-NAN64-64R2-N32: "[[TC]]/mips64r2/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-64R2-N32: "[[TC]]/../../../../sysroot/mips64r2/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI 64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -mhard-float -no-pie \ @@ -2566,7 +2566,7 @@ // CHECK-EL-HF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib" // CHECK-EL-HF-64R2-64: "[[TC]]/mips64r2/64/el{{/|\\\\}}crtend.o" // CHECK-EL-HF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI 64, fp64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -mfp64 -mhard-float -no-pie \ @@ -2593,7 +2593,7 @@ // CHECK-EL-HF64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib" // CHECK-EL-HF64-64R2-64: "[[TC]]/mips64r2/64/el{{/|\\\\}}crtend.o" // CHECK-EL-HF64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI 64, soft float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -msoft-float -no-pie \ @@ -2620,7 +2620,7 @@ // CHECK-EL-SF-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib" // CHECK-EL-SF-64R2-64: "[[TC]]/mips64r2/64/el/sof{{/|\\\\}}crtend.o" // CHECK-EL-SF-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/sof/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI 64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -mnan=2008 -no-pie \ @@ -2647,7 +2647,7 @@ // CHECK-EL-NAN-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib" // CHECK-EL-NAN-64R2-64: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r2, ABI 64, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mips64r2 -mabi=64 -mfp64 -mnan=2008 -no-pie \ @@ -2674,7 +2674,7 @@ // CHECK-EL-NAN64-64R2-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib" // CHECK-EL-NAN64-64R2-64: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-64R2-64: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, default (mips64r2), ABI 64, fp64, nan2008 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64el-mti-linux-gnu -mabi=64 -mfp64 -mnan=2008 -no-pie \ @@ -2701,9 +2701,9 @@ // CHECK-EL-NAN64-64R2-64-DEF: "-L[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib" // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/mips64r2/64/el/nan2008{{/|\\\\}}crtend.o" // CHECK-EL-NAN64-64R2-64-DEF: "[[TC]]/../../../../sysroot/mips64r2/64/el/nan2008/usr/lib{{/|\\\\}}crtn.o" - +// // Check that mips32r3 and mips32r5 are equal to mips32r2 - +// // = Big-endian, mips32r3, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r3 -mhard-float -no-pie \ @@ -2730,7 +2730,7 @@ // CHECK-BE-HF-32R3: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" // CHECK-BE-HF-32R3: "[[TC]]{{/|\\\\}}crtend.o" // CHECK-BE-HF-32R3: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips32r5, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-mti-linux-gnu -mips32r5 -mhard-float -no-pie \ @@ -2757,7 +2757,7 @@ // CHECK-BE-HF-32R5: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" // CHECK-BE-HF-32R5: "[[TC]]{{/|\\\\}}crtend.o" // CHECK-BE-HF-32R5: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r3, ABI 64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r3 -mabi=64 -mhard-float -no-pie \ @@ -2784,7 +2784,7 @@ // CHECK-BE-HF-64R3-64: "-L[[TC]]/../../../../sysroot/mips64r2/64/usr/lib" // CHECK-BE-HF-64R3-64: "[[TC]]/mips64r2/64{{/|\\\\}}crtend.o" // CHECK-BE-HF-64R3-64: "[[TC]]/../../../../sysroot/mips64r2/64/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r5, ABI 64, hard float // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-mti-linux-gnu -mips64r5 -mabi=64 -mhard-float -no-pie \ diff --git a/clang/test/Driver/mips-img.cpp b/clang/test/Driver/mips-img.cpp index 4bf4eb8517ba1a..3dd3dec09cf86b 100644 --- a/clang/test/Driver/mips-img.cpp +++ b/clang/test/Driver/mips-img.cpp @@ -1,7 +1,7 @@ // REQUIRES: mips-registered-target // Check frontend and linker invocations on the IMG MIPS toolchain. - +// // = Big-endian, mips32r6 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-img-linux-gnu -mips32r6 -no-pie \ @@ -28,7 +28,7 @@ // CHECK-BE-32R6: "-L[[TC]]/../../../../sysroot/usr/lib/../lib" // CHECK-BE-32R6: "[[TC]]{{/|\\\\}}crtend.o" // CHECK-BE-32R6: "[[TC]]/../../../../sysroot/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips32r6 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips-img-linux-gnu -mips32r6 -EL -no-pie \ @@ -55,7 +55,7 @@ // CHECK-LE-32R6: "-L[[TC]]/../../../../sysroot/el/usr/lib/../lib" // CHECK-LE-32R6: "[[TC]]/el{{/|\\\\}}crtend.o" // CHECK-LE-32R6: "[[TC]]/../../../../sysroot/el/usr/lib/../lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r6, N32 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-img-linux-gnu -mips64r6 -mabi=n32 -no-pie \ @@ -82,7 +82,7 @@ // CHECK-BE-64R6-N32: "-L[[TC]]/../../../../sysroot/mips64r6/usr/lib" // CHECK-BE-64R6-N32: "[[TC]]/mips64r6{{/|\\\\}}crtend.o" // CHECK-BE-64R6-N32: "[[TC]]/../../../../sysroot/mips64r6/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r6, N32 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-img-linux-gnu -mips64r6 -EL -mabi=n32 -no-pie \ @@ -109,7 +109,7 @@ // CHECK-LE-64R6-N32: "-L[[TC]]/../../../../sysroot/mips64r6/el/usr/lib" // CHECK-LE-64R6-N32: "[[TC]]/mips64r6/el{{/|\\\\}}crtend.o" // CHECK-LE-64R6-N32: "[[TC]]/../../../../sysroot/mips64r6/el/usr/lib{{/|\\\\}}crtn.o" - +// // = Big-endian, mips64r6, N64 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-img-linux-gnu -mips64r6 -mabi=64 -no-pie \ @@ -136,7 +136,7 @@ // CHECK-BE-64R6-N64: "-L[[TC]]/../../../../sysroot/mips64r6/64/usr/lib" // CHECK-BE-64R6-N64: "[[TC]]/mips64r6/64{{/|\\\\}}crtend.o" // CHECK-BE-64R6-N64: "[[TC]]/../../../../sysroot/mips64r6/64/usr/lib{{/|\\\\}}crtn.o" - +// // = Little-endian, mips64r6, N64 // RUN: %clang -### %s 2>&1 \ // RUN: --target=mips64-img-linux-gnu -mips64r6 -EL -mabi=64 -no-pie \ diff --git a/clang/test/Driver/mips-integrated-as.s b/clang/test/Driver/mips-integrated-as.s index d9e67099187ab1..46ce5b6871f4e9 100644 --- a/clang/test/Driver/mips-integrated-as.s +++ b/clang/test/Driver/mips-integrated-as.s @@ -24,7 +24,7 @@ // because of the triple. // RUN: %clang -target mips64-linux-gnu -### -fintegrated-as -c %s -mips64 2>&1 | \ // RUN: FileCheck -check-prefix=ABI-N64 %s - +// // RUN: %clang -target mips-linux-gnu -### -fintegrated-as -c %s -mips64 -mabi=64 2>&1 | \ // RUN: FileCheck -check-prefix=ABI-N64 %s // RUN: %clang -target mips-linux-gnu -### -fintegrated-as -c %s -mips64 -mabi=n64 2>&1 | \ diff --git a/clang/test/Driver/mips-mti-linux.c b/clang/test/Driver/mips-mti-linux.c index dd6534983c289b..ebcbff95a7c0ea 100644 --- a/clang/test/Driver/mips-mti-linux.c +++ b/clang/test/Driver/mips-mti-linux.c @@ -1,5 +1,5 @@ // Check frontend and linker invocations on GPL-free MIPS toolchain. - +// // FIXME: Using --sysroot with this toolchain/triple isn't supported. We use // it here to test that we are producing the correct paths/flags. // Ideally, we'd like to have an --llvm-toolchain option similar to @@ -12,7 +12,7 @@ // RUN: -rtlib=platform -fuse-ld=ld \ // RUN: --sysroot=%S/Inputs/mips_mti_linux/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-BE-HF-32R2 %s - +// // CHECK-BE-HF-32R2: "{{[^"]*}}clang{{[^"]*}}" {{.*}} "-triple" "mips-mti-linux" // CHECK-BE-HF-32R2-SAME: "-target-cpu" "mips32r2" // CHECK-BE-HF-32R2-SAME: "-isysroot" "{{.*}}mips_mti_linux/sysroot" @@ -31,7 +31,7 @@ // RUN: -rtlib=platform -fuse-ld=ld \ // RUN: --sysroot=%S/Inputs/mips_mti_linux/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-LE-HF-32R2 %s - +// // CHECK-LE-HF-32R2: "{{[^"]*}}clang{{[^"]*}}" {{.*}} "-triple" "mipsel-mti-linux" // CHECK-LE-HF-32R2-SAME: "-target-cpu" "mips32r2" // CHECK-LE-HF-32R2-SAME: "-isysroot" "{{.*}}mips_mti_linux/sysroot" diff --git a/clang/test/Driver/modules-ts.cpp b/clang/test/Driver/modules-ts.cpp index efa96c3368b91e..80eef081371fa8 100644 --- a/clang/test/Driver/modules-ts.cpp +++ b/clang/test/Driver/modules-ts.cpp @@ -1,25 +1,25 @@ // Check compiling a module interface to a .pcm file. - +// // RUN: %clang -fmodules-ts -x c++-module --precompile %s -o %t.pcm -v 2>&1 | FileCheck %s --check-prefix=CHECK-PRECOMPILE - +// // CHECK-PRECOMPILE: -cc1 {{.*}} -emit-module-interface // CHECK-PRECOMPILE-SAME: -o {{.*}}.pcm // CHECK-PRECOMPILE-SAME: -x c++ // CHECK-PRECOMPILE-SAME: modules-ts.cpp // Check compiling a .pcm file to a .o file. - +// // RUN: %clang -fmodules-ts -fintegrated-as %t.pcm -c -o %t.pcm.o -v 2>&1 | FileCheck %s --check-prefix=CHECK-COMPILE - +// // CHECK-COMPILE: -cc1 {{.*}} -emit-obj // CHECK-COMPILE-SAME: -o {{.*}}.pcm.o // CHECK-COMPILE-SAME: -x pcm // CHECK-COMPILE-SAME: {{.*}}.pcm // Check use of a .pcm file in another compilation. - +// // RUN: %clang -fmodules-ts -fmodule-file=%t.pcm -fintegrated-as -Dexport= %s -c -o %t.o -v 2>&1 | FileCheck %s --check-prefix=CHECK-USE - +// // CHECK-USE: -cc1 // CHECK-USE-SAME: -emit-obj // CHECK-USE-SAME: -fmodule-file={{.*}}.pcm @@ -27,7 +27,7 @@ // CHECK-USE-SAME: modules-ts.cpp // Check combining precompile and compile steps works. - +// // RUN: %clang -fmodules-ts -fintegrated-as -x c++-module %s -c -o %t.pcm.o -v 2>&1 | FileCheck %s --check-prefix=CHECK-PRECOMPILE --check-prefix=CHECK-COMPILE // Check that .cppm is treated as a module implicitly. diff --git a/clang/test/Driver/modules.cpp b/clang/test/Driver/modules.cpp index 5496bdc75263e4..87b6cc640cb0de 100644 --- a/clang/test/Driver/modules.cpp +++ b/clang/test/Driver/modules.cpp @@ -2,28 +2,28 @@ // RUN: mkdir %t // Check compiling a module interface to a .pcm file. - +// // RUN: %clang -std=c++2a -x c++-module --precompile %s -o %t/module.pcm -v 2>&1 | FileCheck %s --check-prefix=CHECK-PRECOMPILE - +// // CHECK-PRECOMPILE: -cc1 {{.*}} -emit-module-interface // CHECK-PRECOMPILE-SAME: -o {{.*}}.pcm // CHECK-PRECOMPILE-SAME: -x c++ // CHECK-PRECOMPILE-SAME: modules.cpp // Check compiling a .pcm file to a .o file. - +// // RUN: %clang -std=c++2a %t/module.pcm -S -o %t/module.pcm.o -v 2>&1 | FileCheck %s --check-prefix=CHECK-COMPILE - +// // CHECK-COMPILE: -cc1 {{.*}} {{-emit-obj|-S}} // CHECK-COMPILE-SAME: -o {{.*}}module{{2*}}.pcm.o // CHECK-COMPILE-SAME: -x pcm // CHECK-COMPILE-SAME: {{.*}}.pcm // Check use of a .pcm file in another compilation. - +// // RUN: %clang -std=c++2a -fmodule-file=%t/module.pcm -Dexport= %s -S -o %t/module.o -v 2>&1 | FileCheck %s --check-prefix=CHECK-USE // RUN: %clang -std=c++20 -fmodule-file=%t/module.pcm -Dexport= %s -S -o %t/module.o -v 2>&1 | FileCheck %s --check-prefix=CHECK-USE - +// // CHECK-USE: -cc1 // CHECK-USE-SAME: {{-emit-obj|-S}} // CHECK-USE-SAME: -fmodule-file={{.*}}.pcm @@ -31,19 +31,19 @@ // CHECK-USE-SAME: modules.cpp // Check combining precompile and compile steps works. - +// // RUN: %clang -std=c++2a -x c++-module %s -S -o %t/module2.pcm.o -v 2>&1 | FileCheck %s --check-prefix=CHECK-PRECOMPILE --check-prefix=CHECK-COMPILE // Check that .cppm is treated as a module implicitly. - +// // RUN: cp %s %t/module.cppm // RUN: %clang -std=c++2a --precompile %t/module.cppm -o %t/module.pcm -v 2>&1 | FileCheck %s --check-prefix=CHECK-PRECOMPILE // Check compiling a header unit to a .pcm file. - +// // RUN: echo '#define FOO BAR' > %t/foo.h // RUN: %clang -std=c++2a --precompile -x c++-header %t/foo.h -fmodule-name=header -o %t/foo.pcm -v 2>&1 | FileCheck %s --check-prefix=CHECK-HEADER-UNIT - +// // CHECK-HEADER-UNIT: -cc1 // CHECK-HEADER-UNIT-SAME: -emit-header-module // CHECK-HEADER-UNIT-SAME: -fmodule-name=header @@ -52,9 +52,9 @@ // CHECK-HEADER-UNIT-SAME: foo.h // Check use of header unit. - +// // RUN: %clang -std=c++2a -fmodule-file=%t/module.pcm -fmodule-file=%t/foo.pcm -I%t -DIMPORT -Dexport= %s -E -o - -v 2>&1 | FileCheck %s --check-prefix=CHECK-HEADER-UNIT-USE - +// // CHECK-HEADER-UNIT-USE: -cc1 // CHECK-HEADER-UNIT-USE: -E // CHECK-HEADER-UNIT-USE: -fmodule-file={{.*}}module.pcm diff --git a/clang/test/Driver/montavista-gcc-toolchain.c b/clang/test/Driver/montavista-gcc-toolchain.c index 2db1f4e70c2698..402e53b63c5a29 100644 --- a/clang/test/Driver/montavista-gcc-toolchain.c +++ b/clang/test/Driver/montavista-gcc-toolchain.c @@ -1,5 +1,5 @@ // Test that the montavista gcc-toolchain is correctly detected - +// // RUN: %clang -rtlib=platform -print-libgcc-file-name 2>&1 \ // RUN: --target=i686-montavista-linux \ // RUN: --gcc-toolchain=%S/Inputs/montavista_i686_tree/usr \ diff --git a/clang/test/Driver/mprefer-vector-width.c b/clang/test/Driver/mprefer-vector-width.c index 437fce3e9eeaa4..d927b35c098275 100644 --- a/clang/test/Driver/mprefer-vector-width.c +++ b/clang/test/Driver/mprefer-vector-width.c @@ -1,6 +1,6 @@ - +//// //// Verify that valid options for the -mprefer-vector-width flag are passed through and invalid options cause an error. - +//// //// If there are no options, convert to 'all'. diff --git a/clang/test/Driver/mrecip.c b/clang/test/Driver/mrecip.c index b669b6f486e824..a7e79a49f95ab3 100644 --- a/clang/test/Driver/mrecip.c +++ b/clang/test/Driver/mrecip.c @@ -1,6 +1,6 @@ - +//// //// Verify that valid options for the -mrecip flag are passed through and invalid options cause an error. - +//// //// If there are no options, convert to 'all'. diff --git a/clang/test/Driver/msc-version.c b/clang/test/Driver/msc-version.c index a410da496bb0da..ec87e4d41eb4d1 100644 --- a/clang/test/Driver/msc-version.c +++ b/clang/test/Driver/msc-version.c @@ -1,6 +1,6 @@ - +// // Verify -fms-compatibility-version parsing - +// // RUN: %clang -target i686-windows -fms-compatibility -fms-compatibility-version=14 -dM -E - &1 | FileCheck %s -check-prefix CHECK-BASIC-EXTENDED-DIAGNOSTIC // CHECK-BASIC-EXTENDED-DIAGNOSTIC: invalid argument '-fmsc-version={{.*}}' not allowed with '-fms-compatibility-version={{.*}}' - +// // Verify -fmsc-version to -fms-compatibility-version conversion - +// // RUN: %clang -### -target i686-windows -fms-compatibility -fmsc-version=17 -E - &1 | FileCheck %s -check-prefix CHECK-MSC-17 @@ -55,9 +55,9 @@ // CHECK-MSC-15-NOT: "-fmsc-version=150020706" // CHECK-MSC-15: "-fms-compatibility-version=15.0.20706" - +// // Verify default version with -fms-extensions - +// // RUN: %clang -target i686-windows -fms-extensions -dM -E - &1 \ // RUN: | FileCheck --check-prefix=CHECK-I686 %s @@ -20,7 +20,7 @@ // CHECK-I686: "-L{{.*}}{{/|\\\\}}..{{/|\\\\}}i686-nacl{{/|\\\\}}usr{{/|\\\\}}lib" // CHECK-I686: "-Lfoo{{/|\\\\}}lib{{/|\\\\}}i686-nacl" // CHECK-I686-NOT: -lpthread - +// // RUN: %clang -### %s \ // RUN: --target=x86_64-unknown-nacl -resource-dir foo 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-x86_64 %s @@ -40,7 +40,7 @@ // CHECK-x86_64: "-L{{.*}}{{/|\\\\}}..{{/|\\\\}}x86_64-nacl{{/|\\\\}}usr{{/|\\\\}}lib" // CHECK-x86_64: "-Lfoo{{/|\\\\}}lib{{/|\\\\}}x86_64-nacl" // CHECK-X86_64-NOT: -lpthread - +// // RUN: %clang -### %s \ // RUN: --target=armv7a-unknown-nacl-gnueabihf -resource-dir foo 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-ARM %s @@ -63,7 +63,7 @@ // CHECK-ARM: "-L{{.*}}{{/|\\\\}}..{{/|\\\\}}arm-nacl{{/|\\\\}}usr{{/|\\\\}}lib" // CHECK-ARM: "-Lfoo{{/|\\\\}}lib{{/|\\\\}}arm-nacl" // CHECK-ARM-NOT: -lpthread - +// // RUN: %clang -### %s \ // RUN: --target=mipsel-unknown-nacl -resource-dir foo 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-MIPS %s diff --git a/clang/test/Driver/no-canonical-prefixes.c b/clang/test/Driver/no-canonical-prefixes.c index eb87d66fe3b9bb..fb54f85f959ae2 100644 --- a/clang/test/Driver/no-canonical-prefixes.c +++ b/clang/test/Driver/no-canonical-prefixes.c @@ -24,10 +24,10 @@ // RUN: -canonical-prefixes \ // RUN: -no-canonical-prefixes \ // RUN: | FileCheck --check-prefix=NON-CANONICAL %s - +// // FIXME: This should really be '.real'. // CANONICAL: InstalledDir: {{.*}}.fake // CANONICAL: {{[/|\\]*}}clang{{.*}}" -cc1 - +// // NON-CANONICAL: InstalledDir: .{{$}} // NON-CANONICAL: test-clang" -cc1 diff --git a/clang/test/Driver/nostdlib.c b/clang/test/Driver/nostdlib.c index fbcdce73ab3c7b..ffc20ff6c07195 100644 --- a/clang/test/Driver/nostdlib.c +++ b/clang/test/Driver/nostdlib.c @@ -1,6 +1,6 @@ // RUN: %clang --target=i686-pc-linux-gnu -### -nostdlib %s 2> %t // RUN: FileCheck < %t %s - +// // CHECK-NOT: start-group // Most of the toolchains would check for -nostartfiles and -nostdlib @@ -16,15 +16,15 @@ // RUN: --target=i686-pc-linux-gnu -nostdlib --rtlib=compiler-rt -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir -lclang_rt.builtins-i686 \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-NOSTDLIB %s - +// // RUN: %clang -### %s -Wno-liblto 2>&1 \ // RUN: --target=i686-pc-linux-gnu --rtlib=compiler-rt -nostdlib -fuse-ld=ld \ // RUN: -resource-dir=%S/Inputs/resource_dir -lclang_rt.builtins-i686 \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-NOSTDLIB %s - +// // RUN: %clang --target=x86_64-pc-windows-msvc -nostdlib --rtlib=compiler-rt -### -Wno-liblto %s 2>&1 | FileCheck %s -check-prefix CHECK-MSVC-NOSTDLIB // RUN: %clang --target=x86_64-pc-windows-msvc --rtlib=compiler-rt -nostdlib -### -Wno-liblto %s 2>&1 | FileCheck %s -check-prefix CHECK-MSVC-NOSTDLIB - +// // CHECK-LINUX-NOSTDLIB: warning: argument unused during compilation: '--rtlib=compiler-rt' // CHECK-LINUX-NOSTDLIB: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LINUX-NOSTDLIB-NOT: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.builtins-i386.a" diff --git a/clang/test/Driver/nostdlibxx.cpp b/clang/test/Driver/nostdlibxx.cpp index 41c962121ff770..48d14e15a61f9b 100644 --- a/clang/test/Driver/nostdlibxx.cpp +++ b/clang/test/Driver/nostdlibxx.cpp @@ -9,7 +9,7 @@ // Make sure -lstdc++ isn't rewritten to the default stdlib when -nostdlib++ is // used. - +// // RUN: %clangxx -target i686-pc-linux-gnu -### \ // RUN: -nostdlib++ -stdlib=libc++ -lstdc++ %s 2> %t // RUN: FileCheck --check-prefix=CHECK-RESERVED-LIB-REWRITE < %t %s diff --git a/clang/test/Driver/offloading-interoperability.c b/clang/test/Driver/offloading-interoperability.c index e052e7c8f26521..e7c68fad60d029 100644 --- a/clang/test/Driver/offloading-interoperability.c +++ b/clang/test/Driver/offloading-interoperability.c @@ -1,12 +1,12 @@ // REQUIRES: powerpc-registered-target // REQUIRES: nvptx-registered-target - +// // Verify that CUDA device commands do not get OpenMP flags. - +// // RUN: %clang -### -x cuda --target=powerpc64le-linux-gnu -std=c++11 --cuda-gpu-arch=sm_35 -fopenmp=libomp %s 2>&1 \ // RUN: | FileCheck %s --check-prefix NO-OPENMP-FLAGS-FOR-CUDA-DEVICE - +// // NO-OPENMP-FLAGS-FOR-CUDA-DEVICE: "-cc1" "-triple" "nvptx64-nvidia-cuda" // NO-OPENMP-FLAGS-FOR-CUDA-DEVICE-NOT: -fopenmp // NO-OPENMP-FLAGS-FOR-CUDA-DEVICE-NEXT: ptxas" "-m64" diff --git a/clang/test/Driver/openmp-offload-gpu-new.c b/clang/test/Driver/openmp-offload-gpu-new.c index ffb061a4b2b01a..a59952a90e29ef 100644 --- a/clang/test/Driver/openmp-offload-gpu-new.c +++ b/clang/test/Driver/openmp-offload-gpu-new.c @@ -1,6 +1,6 @@ -/ +/// /// Perform several driver tests for OpenMP offloading -/ +/// // REQUIRES: x86-registered-target // REQUIRES: nvptx-registered-target diff --git a/clang/test/Driver/openmp-offload-gpu.c b/clang/test/Driver/openmp-offload-gpu.c index 180ebf8eb990f6..92020b82cd2cec 100644 --- a/clang/test/Driver/openmp-offload-gpu.c +++ b/clang/test/Driver/openmp-offload-gpu.c @@ -1,6 +1,6 @@ -/ +/// /// Perform several driver tests for OpenMP offloading -/ +/// // REQUIRES: x86-registered-target // REQUIRES: powerpc-registered-target diff --git a/clang/test/Driver/openmp-offload.c b/clang/test/Driver/openmp-offload.c index 4def3a89c51a3e..89247604d07cdb 100644 --- a/clang/test/Driver/openmp-offload.c +++ b/clang/test/Driver/openmp-offload.c @@ -1,6 +1,6 @@ -/ +/// /// Perform several driver tests for OpenMP offloading -/ +/// // REQUIRES: x86-registered-target // REQUIRES: powerpc-registered-target @@ -249,15 +249,15 @@ /// -fopenmp-host-ir-file-path: specifies the host IR file that can be loaded by /// the target code generation to gather information about which declaration /// really need to be emitted. -/ +/// // RUN: %clang -### -fopenmp=libomp -fno-openmp-new-driver -o %t.out --target=powerpc64le-linux -fopenmp-targets=powerpc64le-ibm-linux-gnu,x86_64-pc-linux-gnu %s 2>&1 \ // RUN: | FileCheck -check-prefix=CHK-COMMANDS %s // RUN: %clang -### -fopenmp=libomp -fno-openmp-new-driver -o %t.out --target=powerpc64le-linux -fopenmp-targets=powerpc64le-ibm-linux-gnu,x86_64-pc-linux-gnu %s -save-temps 2>&1 \ // RUN: | FileCheck -check-prefix=CHK-COMMANDS-ST %s - +// // Generate host BC file and host object. - +// // CHK-COMMANDS: "-cc1" "-triple" "powerpc64le-unknown-linux" {{.*}}"-emit-llvm-bc" {{.*}}"-disable-llvm-passes" // CHK-COMMANDS-SAME: "-fopenmp-targets=powerpc64le-ibm-linux-gnu,x86_64-pc-linux-gnu" // CHK-COMMANDS-SAME: "-o" " @@ -275,9 +275,9 @@ // CHK-COMMANDS-ST: clang{{.*}}" "-cc1as" "-triple" "powerpc64le-unknown-linux" "-filetype" "obj" {{.*}}"-o" " // CHK-COMMANDS-ST-SAME: [[HOSTOBJ:[^\\/]+\.o]]" "{{.*}}[[HOSTASM]]" - +// // Compile for the powerpc device. - +// // CHK-COMMANDS: "-cc1" "-triple" "powerpc64le-ibm-linux-gnu" "-aux-triple" "powerpc64le-unknown-linux" {{.*}}"-emit-obj" {{.*}}"-pic-level" "2" {{.*}}"-fopenmp" // CHK-COMMANDS-SAME: "-fopenmp-is-device" "-fopenmp-host-ir-file-path" "{{.*}}[[HOSTBC]]" {{.*}}"-o" " // CHK-COMMANDS-SAME: [[T1OBJ:[^\\/]+\.o]]" "-x" "c" "{{.*}}[[INPUT]]" @@ -293,9 +293,9 @@ // CHK-COMMANDS-ST-SAME: [[T1OBJ:[^\\/]+\.o]]" "{{.*}}[[T1ASM]]" // CHK-COMMANDS-ST: ld{{(\.exe)?}}" {{.*}}"-shared" {{.*}}"-o" " // CHK-COMMANDS-ST-SAME: [[T1BIN:[^\\/]+\.out-openmp-powerpc64le-ibm-linux-gnu]]" {{.*}}"{{.*}}[[T1OBJ]]" - +// // Compile for the x86 device. - +// // CHK-COMMANDS: "-cc1" "-triple" "x86_64-pc-linux-gnu" "-aux-triple" "powerpc64le-unknown-linux" {{.*}}"-emit-obj" {{.*}}"-pic-level" "2" {{.*}}"-fopenmp" // CHK-COMMANDS-SAME: "-fopenmp-is-device" "-fopenmp-host-ir-file-path" "{{.*}}[[HOSTBC]]" {{.*}}"-o" " // CHK-COMMANDS-SAME: [[T2OBJ:[^\\/]+\.o]]" "-x" "c" "{{.*}}[[INPUT]]" @@ -312,9 +312,9 @@ // CHK-COMMANDS-ST: ld{{(\.exe)?}}" {{.*}}"-shared" {{.*}}"-o" " // CHK-COMMANDS-ST-SAME: [[T2BIN:[^\\/]+\.out-openmp-x86_64-pc-linux-gnu]]" {{.*}}"{{.*}}[[T2OBJ]]" - +// // Create wrapper BC file and wrapper object. - +// // CHK-COMMANDS: clang-offload-wrapper{{(\.exe)?}}" "-target" "powerpc64le-unknown-linux" {{.*}}"-o" " // CHK-COMMANDS-SAME: [[WRAPPERBC:[^\\/]+\.bc]]" "{{.*}}[[T1BIN]]" "{{.*}}[[T2BIN]]" // CHK-COMMANDS: "-cc1" "-triple" "powerpc64le-unknown-linux" {{.*}}"-emit-obj" {{.*}}"-fopenmp" {{.*}}"-o" " @@ -326,9 +326,9 @@ // CHK-COMMANDS-ST: "-cc1as" "-triple" "powerpc64le-unknown-linux" "-filetype" "obj" {{.*}}"-o" " // CHK-COMMANDS-ST-SAME: [[WRAPPEROBJ:[^\\/]+\.o]]" "{{.*}}[[WRAPPERASM]]" - +// // Link host binary. - +// // CHK-COMMANDS: ld{{(\.exe)?}}" {{.*}}"-o" " // CHK-COMMANDS-SAME: [[HOSTBIN:[^\\/]+\.out]]" {{.*}}"{{.*}}[[HOSTOBJ]]" "{{.*}}[[WRAPPEROBJ]]" {{.*}}"-lomptarget" // CHK-COMMANDS-ST: ld{{(\.exe)?}}" {{.*}}"-o" " diff --git a/clang/test/Driver/opt-record.c b/clang/test/Driver/opt-record.c index e961e9cc190425..02840f49a86f7a 100644 --- a/clang/test/Driver/opt-record.c +++ b/clang/test/Driver/opt-record.c @@ -18,7 +18,7 @@ // RUN: %clang -### -S -o FOO -fsave-optimization-record -fsave-optimization-record=some-format %s 2>&1 | FileCheck %s -check-prefix=CHECK-EQ-FORMAT // RUN: %clang -### -S -o FOO -fsave-optimization-record=some-format %s 2>&1 | FileCheck %s -check-prefix=CHECK-EQ-FORMAT // RUN: %clang -### -S -o FOO -fsave-optimization-record=some-format -fno-save-optimization-record %s 2>&1 | FileCheck %s --check-prefix=CHECK-FOPT-DISABLE-FORMAT - +// // CHECK: "-cc1" // CHECK: "-opt-record-file" "FOO.opt.yaml" diff --git a/clang/test/Driver/output-file-cleanup.c b/clang/test/Driver/output-file-cleanup.c index 1b785fccdaee45..a5ca3e546f532f 100644 --- a/clang/test/Driver/output-file-cleanup.c +++ b/clang/test/Driver/output-file-cleanup.c @@ -1,5 +1,5 @@ // RUN: rm -f "%t.d" "%t1.s" "%t2.s" "%t3.s" "%t4.s" "%t5.s" - +// // RUN: touch %t.s // RUN: not %clang -S -DCRASH -o %t.s -MMD -MF %t.d %s // RUN: test ! -f %t.s diff --git a/clang/test/Driver/pic.c b/clang/test/Driver/pic.c index d43ec8a5d1de5f..0ff07b0f0f4531 100644 --- a/clang/test/Driver/pic.c +++ b/clang/test/Driver/pic.c @@ -1,50 +1,50 @@ // Test the driver's control over the PIC behavior. These consist of tests of // the relocation model flags and the pic level flags passed to CC1. - +// // CHECK-NO-PIC: "-mrelocation-model" "static" // CHECK-NO-PIC-NOT: "-pic-level" // CHECK-NO-PIC-NOT: "-pic-is-pie" - +// // CHECK-PIC1: "-mrelocation-model" "pic" // CHECK-PIC1: "-pic-level" "1" // CHECK-PIC1-NOT: "-pic-is-pie" - +// // CHECK-PIC2: "-mrelocation-model" "pic" // CHECK-PIC2: "-pic-level" "2" // CHECK-PIC2-NOT: "-pic-is-pie" - +// // CHECK-STATIC: "-static" // CHECK-NO-STATIC-NOT: "-static" - +// // CHECK-PIE1: "-mrelocation-model" "pic" // CHECK-PIE1: "-pic-level" "1" // CHECK-PIE1: "-pic-is-pie" - +// // CHECK-PIE2: "-mrelocation-model" "pic" // CHECK-PIE2: "-pic-level" "2" // CHECK-PIE2: "-pic-is-pie" - +// // CHECK-PIE-LD: "{{.*}}ld{{(.exe)?}}" // CHECK-PIE-LD: "-pie" // CHECK-PIE-LD: "Scrt1.o" "crti.o" "crtbeginS.o" // CHECK-PIE-LD: "crtendS.o" "crtn.o" - +// // CHECK-NOPIE-LD: "-nopie" - +// // CHECK-DYNAMIC-NO-PIC-32: "-mrelocation-model" "dynamic-no-pic" // CHECK-DYNAMIC-NO-PIC-32-NOT: "-pic-level" // CHECK-DYNAMIC-NO-PIC-32-NOT: "-pic-is-pie" - +// // CHECK-DYNAMIC-NO-PIC-64: "-mrelocation-model" "dynamic-no-pic" // CHECK-DYNAMIC-NO-PIC-64: "-pic-level" "2" // CHECK-DYNAMIC-NO-PIC-64-NOT: "-pic-is-pie" - +// // CHECK-NON-DARWIN-DYNAMIC-NO-PIC: error: unsupported option '-mdynamic-no-pic' for target 'i386-unknown-unknown' - +// // CHECK-NO-PIE-NOT: "-pie" - +// // CHECK-NO-UNUSED-ARG-NOT: argument unused during compilation - +// // RUN: %clang -c %s -target i386-unknown-unknown -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target i386-unknown-unknown -fpic -### 2>&1 \ @@ -55,7 +55,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIE1 // RUN: %clang -c %s -target i386-unknown-unknown -fPIE -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // Check that PIC and PIE flags obey last-match-wins. If the last flag is // a no-* variant, regardless of which variant or which flags precede it, we // get no PIC. @@ -91,7 +91,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target i386-unknown-unknown -fPIE -fno-PIE -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC - +// // Last-match-wins where both pic and pie are specified. // RUN: %clang -c %s -target i386-unknown-unknown -fpie -fpic -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC1 @@ -109,7 +109,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 // RUN: %clang -c %s -target i386-unknown-unknown -fPIC -fPIE -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // Last-match-wins when selecting level 1 vs. level 2. // RUN: %clang -c %s -target i386-unknown-unknown -fpic -fPIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 @@ -119,7 +119,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIE1 // RUN: %clang -c %s -target i386-unknown-unknown -fpie -fPIC -fPIE -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // Make sure -pie is passed to along to ld and that the right *crt* files // are linked in. // RUN: %clang %s -target i386-unknown-freebsd -fPIE -pie -### \ @@ -134,7 +134,7 @@ // RUN: --gcc-toolchain="" -rtlib=platform \ // RUN: --sysroot=%S/Inputs/basic_linux_tree 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE-LD - +// // Disregard any of the PIC-specific flags if we have a trump-card flag. // RUN: %clang -c %s -target i386-unknown-unknown -mkernel -fPIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC @@ -147,11 +147,11 @@ // RUN: --gcc-toolchain="" \ // RUN: --sysroot=%S/Inputs/basic_linux_tree 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-STATIC - +// // On Linux, disregard -pie if we have -shared. // RUN: %clang %s -target i386-unknown-linux -shared -pie -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIE - +// // On Musl Linux, PIE is enabled by default, but can be disabled. // RUN: %clang -c %s -target x86_64-linux-musl -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 @@ -167,7 +167,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIE // RUN: %clang %s -target x86_64-linux-musl -nopie -pie -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // Darwin is a beautiful and unique snowflake when it comes to these flags. // When targeting a 32-bit darwin system, only level 2 is supported. On 64-bit // targets, there is simply nothing you can do, there is no PIE, there is only @@ -200,7 +200,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 // RUN: %clang -c %s -target x86_64-apple-darwin -fPIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-UNUSED-ARG - +// // Darwin gets even more special with '-mdynamic-no-pic'. This flag is only // valid on Darwin, and it's behavior is very strange but needs to remain // consistent for compatibility. @@ -218,7 +218,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-DYNAMIC-NO-PIC-64 // RUN: %clang -c %s -target x86_64-apple-darwin -mdynamic-no-pic -fpie -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-DYNAMIC-NO-PIC-64 - +// // Checks for ARM+Apple+IOS including -fapple-kext, -mkernel, and iphoneos // version boundaries. // RUN: %clang -c %s -target armv7-apple-ios6 -fapple-kext -### 2>&1 \ @@ -239,7 +239,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target armv7-apple-unknown-macho -static -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC - +// // On OpenBSD, PIE is enabled by default, but can be disabled. // RUN: %clang -c %s -target amd64-pc-openbsd -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE1 @@ -259,25 +259,25 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 // RUN: %clang -c %s -target i386-pc-openbsd -fno-pie -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC - +// // On OpenBSD, -nopie needs to be passed through to the linker. // RUN: %clang %s -target i386-pc-openbsd -nopie -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NOPIE-LD // Try with the alias // RUN: %clang %s -target i386-pc-openbsd -no-pie -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NOPIE-LD - +// // On Android PIC is enabled by default, and PIE is enabled by default starting // with API16. // RUN: %clang -c %s -target i686-linux-android24 -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // RUN: %clang -c %s -target arm-linux-androideabi24 -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // RUN: %clang -c %s -target mipsel-linux-android24 -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE1 - +// // 64-bit Android targets are always PIE. // RUN: %clang -c %s -target aarch64-linux-android -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 @@ -285,7 +285,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 // RUN: %clang -c %s -target arm64-linux-android -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // Default value of PIE can be overwritten, even on 64-bit targets. // RUN: %clang -c %s -target arm-linux-androideabi -fPIE -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 @@ -293,7 +293,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target aarch64-linux-android24 -fno-PIE -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC - +// // On Windows x86_64 and aarch64 PIC is enabled by default // RUN: %clang -c %s -target x86_64-pc-windows-msvc18.0.0 -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 @@ -303,7 +303,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 // RUN: %clang -c %s -target aarch64-windows-gnu -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 - +// // On MinGW, allow specifying -fPIC & friends but ignore them // RUN: %clang -fno-PIC -c %s -target x86_64-pc-windows-gnu -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 diff --git a/clang/test/Driver/print-libgcc-file-name-clangrt.c b/clang/test/Driver/print-libgcc-file-name-clangrt.c index 3cb500aa8a6669..ac921ec38b124a 100644 --- a/clang/test/Driver/print-libgcc-file-name-clangrt.c +++ b/clang/test/Driver/print-libgcc-file-name-clangrt.c @@ -13,7 +13,7 @@ // CHECK-CLANGRT-I386: libclang_rt.builtins-i386.a // Check whether alternate arch values map to the correct library. - +// // RUN: %clang -rtlib=compiler-rt -print-libgcc-file-name 2>&1 \ // RUN: --target=i686-pc-linux \ // RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \ diff --git a/clang/test/Driver/ps4-pic.c b/clang/test/Driver/ps4-pic.c index 4643f787ffc086..c023dcfd0c3555 100644 --- a/clang/test/Driver/ps4-pic.c +++ b/clang/test/Driver/ps4-pic.c @@ -3,29 +3,29 @@ // Test the driver's control over the PIC behavior for PS4 compiler. // These consist of tests of the relocation model flags and the // pic level flags passed to CC1. - +// // CHECK-NO-PIC: "-mrelocation-model" "static" // CHECK-NO-PIC-NOT: "-pic-level" // CHECK-NO-PIC-NOT: "-pic-is-pie" - +// // CHECK-DYNAMIC-NO-PIC2: unsupported option '-mdynamic-no-pic' // CHECK-DYNAMIC-NO-PIC2: "-mrelocation-model" "dynamic-no-pic" - +// // CHECK-PIC2: "-mrelocation-model" "pic" // CHECK-PIC2: "-pic-level" "2" - +// // CHECK-PIE2: "-mrelocation-model" "pic" // CHECK-PIE2: "-pic-is-pie" - +// // CHECK-NOPIC-IGNORED: using '-fPIC' // CHECK-NOPIC-IGNORED: "-mrelocation-model" "pic" // CHECK-NOPIC-IGNORED: "-pic-level" "2" - +// // CHECK-DIAG-PIC: option '-fno-PIC' was ignored by the PS4 toolchain, using '-fPIC' // CHECK-DIAG-PIE: option '-fno-PIE' was ignored by the PS4 toolchain, using '-fPIC' // CHECK-DIAG-pic: option '-fno-pic' was ignored by the PS4 toolchain, using '-fPIC' // CHECK-DIAG-pie: option '-fno-pie' was ignored by the PS4 toolchain, using '-fPIC' - +// // CHECK-STATIC-ERR: unsupported option '-static' for target 'PS4' // RUN: %clang -c %s -target x86_64-scei-ps4 -### 2>&1 \ @@ -66,7 +66,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 // RUN: %clang -c %s -target x86_64-scei-ps4 -fpie -fPIC -fPIE -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // Defaults change for PS4. // RUN: %clang -c %s -target x86_64-scei-ps4 -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 @@ -74,17 +74,17 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NOPIC-IGNORED // RUN: %clang -c %s -target x86_64-scei-ps4 -fno-PIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NOPIC-IGNORED - +// // Disregard any of the PIC-specific flags if we have a trump-card flag. // RUN: %clang -c %s -target x86_64-scei-ps4 -mkernel -fPIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target x86_64-scei-ps4 -mdynamic-no-pic -fPIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-DYNAMIC-NO-PIC2 - +// // -static not supported at all. // RUN: %clang -c %s -target x86_64-scei-ps4 -static -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-STATIC-ERR - +// // -fno-PIC etc. is obeyed if -mcmodel=kernel is also present. // RUN: %clang -c %s -target x86_64-scei-ps4 -mcmodel=kernel -fno-PIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC @@ -94,7 +94,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target x86_64-scei-ps4 -mcmodel=kernel -fno-pie -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC - +// // Verify that we reflect the option the user specified, when we ignore it. // RUN: %clang -c %s -target x86_64-scei-ps4 -fno-PIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-DIAG-PIC diff --git a/clang/test/Driver/ps4-ps5-analyzer-defaults.cpp b/clang/test/Driver/ps4-ps5-analyzer-defaults.cpp index 1b6d67d6b07d41..81a302c6bcbe36 100644 --- a/clang/test/Driver/ps4-ps5-analyzer-defaults.cpp +++ b/clang/test/Driver/ps4-ps5-analyzer-defaults.cpp @@ -13,13 +13,13 @@ // RUN: | FileCheck %s --check-prefix=CHECK-POS-CHECKERS // RUN: %clang -target x86_64-sie-ps5 --analyze %s -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-POS-CHECKERS - +// // Negative check for unexpected checkers // RUN: %clang -target x86_64-scei-ps4 --analyze %s -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NEG-CHECKERS // RUN: %clang -target x86_64-sie-ps5 --analyze %s -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NEG-CHECKERS - +// // Check for all unix checkers except API and Vfork // RUN: %clang -target x86_64-scei-ps4 --analyze %s -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-UNIX-CHECKERS @@ -30,9 +30,9 @@ // CHECK-POS-CHECKERS-DAG: analyzer-checker=cplusplus // CHECK-POS-CHECKERS-DAG: analyzer-checker=deadcode // CHECK-POS-CHECKERS-DAG: analyzer-checker=nullability - +// // CHECK-NEG-CHECKERS-NOT: analyzer-checker={{osx|security}} - +// // CHECK-UNIX-CHECKERS: analyzer-checker=unix // CHECK-UNIX-CHECKERS-DAG: analyzer-disable-checker=unix.API // CHECK-UNIX-CHECKERS-DAG: analyzer-disable-checker=unix.Vfork diff --git a/clang/test/Driver/ps4-ps5-runtime-flags.c b/clang/test/Driver/ps4-ps5-runtime-flags.c index 4b022606f2a0ea..96c9c1244dddcf 100644 --- a/clang/test/Driver/ps4-ps5-runtime-flags.c +++ b/clang/test/Driver/ps4-ps5-runtime-flags.c @@ -1,8 +1,8 @@ // REQUIRES: x86-registered-target - +// /// Test the profile runtime library to be linked for PS4/PS5 compiler. /// Check runtime flag --dependent-lib which does not append the default library search path. - +// /// PS4 case. // RUN: %clang -target x86_64-scei-ps4 --coverage %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS4-PROFILE %s // RUN: %clang -target x86_64-scei-ps4 -fprofile-arcs %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS4-PROFILE %s @@ -20,10 +20,10 @@ // RUN: %clang -target x86_64-scei-ps4 -fprofile-instr-generate=somefile.profraw %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS4-PROFILE %s // RUN: %clang -target x86_64-scei-ps4 -fcs-profile-generate %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS4-PROFILE %s // RUN: %clang -target x86_64-scei-ps4 -fcs-profile-generate -fno-profile-generate %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS4-NO-PROFILE %s - +// // CHECK-PS4-PROFILE: "--dependent-lib=libclang_rt.profile-x86_64.a" // CHECK-PS4-NO-PROFILE-NOT: "--dependent-lib=libclang_rt.profile-x86_64.a" - +// /// PS5 case. // RUN: %clang -target x86_64-sie-ps5 --coverage %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS5-PROFILE %s // RUN: %clang -target x86_64-sie-ps5 -fprofile-arcs %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS5-PROFILE %s @@ -41,6 +41,6 @@ // RUN: %clang -target x86_64-sie-ps5 -fprofile-instr-generate=somefile.profraw %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS5-PROFILE %s // RUN: %clang -target x86_64-sie-ps5 -fcs-profile-generate %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS5-PROFILE %s // RUN: %clang -target x86_64-sie-ps5 -fcs-profile-generate -fno-profile-generate %s -### 2>&1 | FileCheck --check-prefix=CHECK-PS5-NO-PROFILE %s - +// // CHECK-PS5-PROFILE: "--dependent-lib=libclang_rt.profile-x86_64_nosubmission.a" // CHECK-PS5-NO-PROFILE-NOT: "--dependent-lib=libclang_rt.profile-x86_64_nosubmission.a" diff --git a/clang/test/Driver/ps5-pic.c b/clang/test/Driver/ps5-pic.c index da5d2e0fd78749..0396122accf40d 100644 --- a/clang/test/Driver/ps5-pic.c +++ b/clang/test/Driver/ps5-pic.c @@ -3,29 +3,29 @@ // Test the driver's control over the PIC behavior for PS5 compiler. // These consist of tests of the relocation model flags and the // pic level flags passed to CC1. - +// // CHECK-NO-PIC: "-mrelocation-model" "static" // CHECK-NO-PIC-NOT: "-pic-level" // CHECK-NO-PIC-NOT: "-pic-is-pie" - +// // CHECK-DYNAMIC-NO-PIC2: unsupported option '-mdynamic-no-pic' // CHECK-DYNAMIC-NO-PIC2: "-mrelocation-model" "dynamic-no-pic" - +// // CHECK-PIC2: "-mrelocation-model" "pic" // CHECK-PIC2: "-pic-level" "2" - +// // CHECK-PIE2: "-mrelocation-model" "pic" // CHECK-PIE2: "-pic-is-pie" - +// // CHECK-NOPIC-IGNORED: using '-fPIC' // CHECK-NOPIC-IGNORED: "-mrelocation-model" "pic" // CHECK-NOPIC-IGNORED: "-pic-level" "2" - +// // CHECK-DIAG-PIC: option '-fno-PIC' was ignored by the PS5 toolchain, using '-fPIC' // CHECK-DIAG-PIE: option '-fno-PIE' was ignored by the PS5 toolchain, using '-fPIC' // CHECK-DIAG-pic: option '-fno-pic' was ignored by the PS5 toolchain, using '-fPIC' // CHECK-DIAG-pie: option '-fno-pie' was ignored by the PS5 toolchain, using '-fPIC' - +// // CHECK-STATIC-ERR: unsupported option '-static' for target 'PS5' // RUN: %clang -c %s -target x86_64-sie-ps5 -### 2>&1 \ @@ -66,7 +66,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 // RUN: %clang -c %s -target x86_64-sie-ps5 -fpie -fPIC -fPIE -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE2 - +// // Defaults change for PS5. // RUN: %clang -c %s -target x86_64-sie-ps5 -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIC2 @@ -74,17 +74,17 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NOPIC-IGNORED // RUN: %clang -c %s -target x86_64-sie-ps5 -fno-PIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NOPIC-IGNORED - +// // Disregard any of the PIC-specific flags if we have a trump-card flag. // RUN: %clang -c %s -target x86_64-sie-ps5 -mkernel -fPIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target x86_64-sie-ps5 -mdynamic-no-pic -fPIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-DYNAMIC-NO-PIC2 - +// // -static not supported at all. // RUN: %clang -c %s -target x86_64-sie-ps5 -static -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-STATIC-ERR - +// // -fno-PIC etc. is obeyed if -mcmodel=kernel is also present. // RUN: %clang -c %s -target x86_64-sie-ps5 -mcmodel=kernel -fno-PIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC @@ -94,7 +94,7 @@ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC // RUN: %clang -c %s -target x86_64-sie-ps5 -mcmodel=kernel -fno-pie -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-NO-PIC - +// // Verify that we reflect the option the user specified, when we ignore it. // RUN: %clang -c %s -target x86_64-sie-ps5 -fno-PIC -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-DIAG-PIC diff --git a/clang/test/Driver/response-file-extra-whitespace.c b/clang/test/Driver/response-file-extra-whitespace.c index 13e96cea26f552..77d811c58d085f 100644 --- a/clang/test/Driver/response-file-extra-whitespace.c +++ b/clang/test/Driver/response-file-extra-whitespace.c @@ -2,7 +2,7 @@ // We generate a dos-style file with \r\n for line endings, and then split // some joined arguments (like "-x c") across lines to ensure that regular // clang (not clang-cl) can process it correctly. - +// // RUN: printf " -x\r\nc\r\n-DTEST\r\n" > %t.0.txt // RUN: %clang -E @%t.0.txt %s -v 2>&1 | FileCheck %s -check-prefix=SHORT // SHORT: extern int it_works; diff --git a/clang/test/Driver/response-file.c b/clang/test/Driver/response-file.c index 16b35a87a7504e..bd374cc15907b2 100644 --- a/clang/test/Driver/response-file.c +++ b/clang/test/Driver/response-file.c @@ -12,7 +12,7 @@ // We generate a 2MB response file to attempt to surpass any system limit. // But there's no guarantee that we actually will (the system limit could be // *huge*), so just check that invoking cc1 succeeds under these conditions. - +// // RUN: %python -c 'print(*("-DTEST" for x in range(300000)))' >%t.1.txt // RUN: %clang -E @%t.1.txt %s -v 2>&1 | FileCheck %s -check-prefix=LONG // LONG: extern int it_works; diff --git a/clang/test/Driver/retain-comments-from-system-headers.c b/clang/test/Driver/retain-comments-from-system-headers.c index 16f46952a95d23..4d3e2ffe06f445 100644 --- a/clang/test/Driver/retain-comments-from-system-headers.c +++ b/clang/test/Driver/retain-comments-from-system-headers.c @@ -1,9 +1,9 @@ // Check that we pass -fretain-comments-from-system-headers to frontend. - +// // RUN: %clang -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-RETAIN // RUN: %clang -c %s -fretain-comments-from-system-headers -### 2>&1 | FileCheck %s --check-prefix=CHECK-RETAIN - +// // CHECK-RETAIN: -fretain-comments-from-system-headers - +// // CHECK-NO-RETAIN-NOT: -fretain-comments-from-system-headers diff --git a/clang/test/Driver/riscv-cpus.c b/clang/test/Driver/riscv-cpus.c index 52b0322ed90a30..0d77408115d6a9 100644 --- a/clang/test/Driver/riscv-cpus.c +++ b/clang/test/Driver/riscv-cpus.c @@ -134,10 +134,10 @@ // Check interaction between mcpu and mtune, mtune won't affect arch related // target feature, but mcpu will. - +// // In this case, sifive-e31 is rv32imac, sifive-e76 is rv32imafc, so M-extension // should not enabled. - +// // RUN: %clang --target=riscv32 -### -c %s 2>&1 -mcpu=sifive-e31 -mtune=sifive-e76 | FileCheck -check-prefix=MTUNE-E31-MCPU-E76 %s // MTUNE-E31-MCPU-E76: "-target-cpu" "sifive-e31" // MTUNE-E31-MCPU-E76-NOT: "-target-feature" "+f" diff --git a/clang/test/Driver/riscv-gnutools.c b/clang/test/Driver/riscv-gnutools.c index 9a2491e93e0e9d..685b320149df9f 100644 --- a/clang/test/Driver/riscv-gnutools.c +++ b/clang/test/Driver/riscv-gnutools.c @@ -1,5 +1,5 @@ // Check gnutools are invoked with propagated values for -mabi and -march. - +// // This test also checks the default -march/-mabi for certain targets. // 32-bit checks diff --git a/clang/test/Driver/riscv32-toolchain-extra.c b/clang/test/Driver/riscv32-toolchain-extra.c index ee0e62b86a440a..2d38aa3b545fe5 100644 --- a/clang/test/Driver/riscv32-toolchain-extra.c +++ b/clang/test/Driver/riscv32-toolchain-extra.c @@ -10,7 +10,7 @@ // and runtime starting from the directory tree above the driver itself. // The test below checks that the driver correctly finds the linker and // runtime if and only if they exist. - +// // RUN: rm -rf %t // RUN: mkdir -p %t/riscv32-nogcc/bin // RUN: ln -s %clang %t/riscv32-nogcc/bin/clang diff --git a/clang/test/Driver/riscv64-toolchain-extra.c b/clang/test/Driver/riscv64-toolchain-extra.c index 90837368c7a263..a6ec9b16cc5ca2 100644 --- a/clang/test/Driver/riscv64-toolchain-extra.c +++ b/clang/test/Driver/riscv64-toolchain-extra.c @@ -10,7 +10,7 @@ // and runtime starting from the directory tree above the driver itself. // The test below checks that the driver correctly finds the linker and // runtime if and only if they exist. - +// // RUN: rm -rf %t // RUN: mkdir -p %t/riscv64-nogcc/bin // RUN: ln -s %clang %t/riscv64-nogcc/bin/clang diff --git a/clang/test/Driver/sanitizer-ld.c b/clang/test/Driver/sanitizer-ld.c index 62058040599393..423ce8beaa84e4 100644 --- a/clang/test/Driver/sanitizer-ld.c +++ b/clang/test/Driver/sanitizer-ld.c @@ -5,7 +5,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-LINUX %s - +// // CHECK-ASAN-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-LINUX-NOT: "-lc" // CHECK-ASAN-LINUX: libclang_rt.asan-i386.a" @@ -22,7 +22,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-NO-LINK-RUNTIME-LINUX %s - +// // CHECK-ASAN-NO-LINK-RUNTIME-LINUX-NOT: libclang_rt.asan-x86_64 // RUN: %clang -fsanitize=address -### %s 2>&1 \ @@ -30,7 +30,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-EXECUTABLE-LINUX %s - +// // CHECK-ASAN-EXECUTABLE-LINUX: libclang_rt.asan_static-x86_64 // CHECK-ASAN-EXECUTABLE-LINUX: libclang_rt.asan-x86_64 @@ -39,7 +39,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-SHARED-LINUX %s - +// // CHECK-ASAN-SHARED-LINUX: libclang_rt.asan_static-x86_64 // CHECK-ASAN-SHARED-LINUX-NOT: libclang_rt.asan-x86_64 @@ -61,7 +61,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-SHARED-ASAN-LINUX %s - +// // CHECK-SHARED-ASAN-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SHARED-ASAN-LINUX-NOT: "-lc" // CHECK-SHARED-ASAN-LINUX-NOT: libclang_rt.asan-i386.a" @@ -79,7 +79,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-DSO-SHARED-ASAN-LINUX %s - +// // CHECK-DSO-SHARED-ASAN-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-DSO-SHARED-ASAN-LINUX-NOT: "-lc" // CHECK-DSO-SHARED-ASAN-LINUX-NOT: libclang_rt.asan-i386.a" @@ -97,7 +97,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_freebsd_tree \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-FREEBSD %s - +// // CHECK-ASAN-FREEBSD: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-FREEBSD-NOT: "-lc" // CHECK-ASAN-FREEBSD-NOT: libclang_rt.asan_cxx @@ -113,7 +113,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_freebsd_tree \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-FREEBSD-LDL %s - +// // CHECK-ASAN-FREEBSD-LDL: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-FREEBSD-LDL-NOT: "-ldl" @@ -122,7 +122,7 @@ // RUN: -resource-dir=%S/Inputs/empty_resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-LINUX-CXX %s - +// // CHECK-ASAN-LINUX-CXX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-LINUX-CXX-NOT: "-lc" // CHECK-ASAN-LINUX-CXX: "--whole-archive" "{{.*}}libclang_rt.asan-i386.a" "--no-whole-archive" @@ -140,7 +140,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree -lstdc++ -static 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-LINUX-CXX-STATIC %s - +// // CHECK-ASAN-LINUX-CXX-STATIC: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-LINUX-CXX-STATIC-NOT: stdc++ // CHECK-ASAN-LINUX-CXX-STATIC: "--whole-archive" "{{.*}}libclang_rt.asan-i386.a" "--no-whole-archive" @@ -150,16 +150,16 @@ // RUN: --target=arm-linux-gnueabi -fuse-ld=ld -fsanitize=address \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-ARM %s - +// // CHECK-ASAN-ARM: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-ARM-NOT: "-lc" // CHECK-ASAN-ARM: libclang_rt.asan-arm.a" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=armv7l-linux-gnueabi -fuse-ld=ld -fsanitize=address \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-ARMv7 %s - +// // CHECK-ASAN-ARMv7: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-ARMv7-NOT: "-lc" // CHECK-ASAN-ARMv7: libclang_rt.asan-arm.a" @@ -168,7 +168,7 @@ // RUN: --target=arm-linux-androideabi -fuse-ld=ld -fsanitize=address \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-ANDROID %s - +// // CHECK-ASAN-ANDROID: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-ANDROID: "-pie" // CHECK-ASAN-ANDROID-NOT: "-lc" @@ -183,7 +183,7 @@ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: -static-libsan \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-ANDROID-STATICLIBASAN %s - +// // CHECK-ASAN-ANDROID-STATICLIBASAN: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-ANDROID-STATICLIBASAN: libclang_rt.asan-arm-android.a" // CHECK-ASAN-ANDROID-STATICLIBASAN-NOT: "-lpthread" @@ -194,7 +194,7 @@ // RUN: --target=arm-linux-androideabi -fuse-ld=ld -fsanitize=undefined \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-UBSAN-ANDROID %s - +// // CHECK-UBSAN-ANDROID: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-UBSAN-ANDROID: "-pie" // CHECK-UBSAN-ANDROID-NOT: "-lc" @@ -209,19 +209,19 @@ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: -static-libsan \ // RUN: | FileCheck --check-prefix=CHECK-UBSAN-ANDROID-STATICLIBASAN %s - +// // CHECK-UBSAN-ANDROID-STATICLIBASAN: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-UBSAN-ANDROID-STATICLIBASAN: libclang_rt.ubsan_standalone-arm-android.a" // CHECK-UBSAN-ANDROID-STATICLIBASAN-NOT: "-lpthread" // CHECK-UBSAN-ANDROID-STATICLIBASAN-NOT: "-lrt" // CHECK-UBSAN-ANDROID-STATICLIBASAN-NOT: "-lresolv" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=i686-linux-android -fuse-ld=ld -fsanitize=address \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-ANDROID-X86 %s - +// // CHECK-ASAN-ANDROID-X86: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-ANDROID-X86: "-pie" // CHECK-ASAN-ANDROID-X86-NOT: "-lc" @@ -230,21 +230,21 @@ // CHECK-ASAN-ANDROID-X86: libclang_rt.asan-i686-android.so" // CHECK-ASAN-ANDROID-X86-NOT: "-lpthread" // CHECK-ASAN-ANDROID-X86-NOT: "-lresolv" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi -fsanitize=address \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: -shared-libsan \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-ANDROID-SHARED-LIBASAN %s - +// // CHECK-ASAN-ANDROID-SHARED-LIBASAN-NOT: argument unused during compilation: '-shared-libsan' - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=arm-linux-androideabi -fuse-ld=ld -fsanitize=address \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: -shared \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-ANDROID-SHARED %s - +// // CHECK-ASAN-ANDROID-SHARED: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-ANDROID-SHARED-NOT: "-lc" // CHECK-ASAN-ANDROID-SHARED: libclang_rt.asan-arm-android.so" @@ -255,7 +255,7 @@ // RUN: --target=sparcel-myriad-rtems-elf -fuse-ld=ld -fsanitize=address \ // RUN: --sysroot=%S/Inputs/basic_myriad_tree \ // RUN: | FileCheck --check-prefix=CHECK-ASAN-MYRIAD %s - +// // CHECK-ASAN-MYRIAD: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-ASAN-MYRIAD-NOT: "-lc" // CHECK-ASAN-MYRIAD: libclang_rt.asan-sparcel.a" @@ -266,7 +266,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-TSAN-LINUX-CXX %s - +// // CHECK-TSAN-LINUX-CXX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-TSAN-LINUX-CXX-NOT: stdc++ // CHECK-TSAN-LINUX-CXX: "--whole-archive" "{{.*}}libclang_rt.tsan-x86_64.a" "--no-whole-archive" @@ -285,7 +285,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-TSAN-NO-LINK-RUNTIME-LINUX %s - +// // CHECK-TSAN-NO-LINK-RUNTIME-LINUX-NOT: libclang_rt.tsan // RUN: %clangxx -### %s 2>&1 \ @@ -294,7 +294,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-MSAN-LINUX-CXX %s - +// // CHECK-MSAN-LINUX-CXX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-MSAN-LINUX-CXX-NOT: stdc++ // CHECK-MSAN-LINUX-CXX: "--whole-archive" "{{.*}}libclang_rt.msan-x86_64.a" "--no-whole-archive" @@ -313,7 +313,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-MSAN-NO-LINK-RUNTIME-LINUX %s - +// // CHECK-MSAN-NO-LINK-RUNTIME-LINUX-NOT: libclang_rt.msan // RUN: %clang -fsanitize=undefined -### %s 2>&1 \ @@ -350,7 +350,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-UBSAN-NO-LINK-RUNTIME-LINUX %s - +// // CHECK-UBSAN-NO-LINK-RUNTIME-LINUX-NOT: libclang_rt.undefined // RUN: %clang -fsanitize=undefined -### %s 2>&1 \ @@ -485,7 +485,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LSAN-LINUX %s - +// // CHECK-LSAN-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LSAN-LINUX-NOT: "-lc" // CHECK-LSAN-LINUX-NOT: libclang_rt.ubsan @@ -499,7 +499,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LSAN-NO-LINK-RUNTIME-LINUX %s - +// // CHECK-LSAN-NO-LINK-RUNTIME-LINUX-NOT: libclang_rt.lsan // RUN: %clang -### %s 2>&1 \ @@ -507,7 +507,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LSAN-COV-LINUX %s - +// // CHECK-LSAN-COV-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-LSAN-COV-LINUX-NOT: "-lc" // CHECK-LSAN-COV-LINUX-NOT: libclang_rt.ubsan @@ -670,7 +670,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-SAFESTACK-LINUX %s - +// // CHECK-SAFESTACK-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SAFESTACK-LINUX-NOT: "-lc" // CHECK-SAFESTACK-LINUX-NOT: whole-archive @@ -759,7 +759,7 @@ // RUN: --target=arm-linux-androideabi -fuse-ld=ld -fsanitize=safe-stack \ // RUN: --sysroot=%S/Inputs/basic_android_tree \ // RUN: | FileCheck --check-prefix=CHECK-SAFESTACK-ANDROID-ARM %s - +// // CHECK-SAFESTACK-ANDROID-ARM: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SAFESTACK-ANDROID-ARM-NOT: libclang_rt.safestack @@ -767,7 +767,7 @@ // RUN: --target=arm-linux-androideabi -fuse-ld=ld -fsanitize=safe-stack \ // RUN: --sysroot=%S/Inputs/basic_android_tree \ // RUN: | FileCheck --check-prefix=CHECK-SAFESTACK-SHARED-ANDROID-ARM %s - +// // CHECK-SAFESTACK-SHARED-ANDROID-ARM: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SAFESTACK-SHARED-ANDROID-ARM-NOT: libclang_rt.safestack @@ -775,7 +775,7 @@ // RUN: --target=aarch64-linux-android -fuse-ld=ld -fsanitize=safe-stack \ // RUN: --sysroot=%S/Inputs/basic_android_tree \ // RUN: | FileCheck --check-prefix=CHECK-SAFESTACK-ANDROID-AARCH64 %s - +// // CHECK-SAFESTACK-ANDROID-AARCH64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SAFESTACK-ANDROID-AARCH64-NOT: libclang_rt.safestack @@ -874,7 +874,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-SCUDO-SHARED-LINUX %s - +// // CHECK-SCUDO-SHARED-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SCUDO-SHARED-LINUX-NOT: "-lc" // CHECK-SCUDO-SHARED-LINUX-NOT: libclang_rt.scudo-i386.a" @@ -890,7 +890,7 @@ // RUN: --target=arm-linux-androideabi -fuse-ld=ld -fsanitize=scudo \ // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \ // RUN: | FileCheck --check-prefix=CHECK-SCUDO-ANDROID %s - +// // CHECK-SCUDO-ANDROID: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SCUDO-ANDROID-NOT: "-lc" // CHECK-SCUDO-ANDROID: "-pie" @@ -918,7 +918,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-HWASAN-X86-64-LINUX %s - +// // CHECK-HWASAN-X86-64-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-HWASAN-X86-64-LINUX: "-pie" // CHECK-HWASAN-X86-64-LINUX-NOT: "-lc" @@ -936,7 +936,7 @@ // RUN: -shared-libsan -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-SHARED-HWASAN-X86-64-LINUX %s - +// // CHECK-SHARED-HWASAN-X86-64-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SHARED-HWASAN-X86-64-LINUX: "-pie" // CHECK-SHARED-HWASAN-X86-64-LINUX-NOT: "-lc" @@ -953,7 +953,7 @@ // RUN: -shared-libsan -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-DSO-SHARED-HWASAN-X86-64-LINUX %s - +// // CHECK-DSO-SHARED-HWASAN-X86-64-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-DSO_SHARED-HWASAN-X86-64-LINUX: "-pie" // CHECK-DSO-SHARED-HWASAN-X86-64-LINUX-NOT: "-lc" @@ -970,7 +970,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-HWASAN-AARCH64-LINUX %s - +// // CHECK-HWASAN-AARCH64-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-HWASAN-AARCH64-LINUX: "-pie" // CHECK-HWASAN-AARCH64-LINUX-NOT: "-lc" @@ -989,7 +989,7 @@ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-SHARED-HWASAN-AARCH64-LINUX %s - +// // CHECK-SHARED-HWASAN-AARCH64-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-SHARED-HWASAN-AARCH64-LINUX: "-pie" // CHECK-SHARED-HWASAN-AARCH64-LINUX-NOT: "-lc" @@ -1006,7 +1006,7 @@ // RUN: -shared-libsan -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-DSO-SHARED-HWASAN-AARCH64-LINUX %s - +// // CHECK-DSO-SHARED-HWASAN-AARCH64-LINUX: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}" // CHECK-DSO_SHARED-HWASAN-AARCH64-LINUX: "-pie" // CHECK-DSO-SHARED-HWASAN-AARCH64-LINUX-NOT: "-lc" diff --git a/clang/test/Driver/save-temps.c b/clang/test/Driver/save-temps.c index 6aaa23f77ee8c5..a26ba9f4ec0d36 100644 --- a/clang/test/Driver/save-temps.c +++ b/clang/test/Driver/save-temps.c @@ -12,7 +12,7 @@ // CHECK: "-o" "a.out" // Check -save-temps=cwd which should work the same as -save-temps above - +// // RUN: %clang -target x86_64-apple-darwin -save-temps=cwd -arch x86_64 %s -### 2>&1 \ // RUN: | FileCheck %s -check-prefix=CWD // CWD: "-o" "save-temps.i" @@ -62,7 +62,7 @@ // Check that temp files are saved in the same directory as the output file // regardless of whether -o is specified. - +// // RUN: %clang -target x86_64-apple-darwin -save-temps=obj -o obj/dir/a.out -arch x86_64 %s -### 2>&1 \ // RUN: | FileCheck %s -check-prefix=CHECK-OBJ // CHECK-OBJ: "-o" "obj/dir{{/|\\\\}}save-temps.i" @@ -71,7 +71,7 @@ // CHECK-OBJ: "-o" "obj/dir{{/|\\\\}}save-temps.s" // CHECK-OBJ: "-o" "obj/dir{{/|\\\\}}save-temps.o" // CHECK-OBJ: "-o" "obj/dir{{/|\\\\}}a.out" - +// // RUN: %clang -target x86_64-apple-darwin -save-temps=obj -arch x86_64 %s -### 2>&1 \ // RUN: | FileCheck %s -check-prefix=CHECK-OBJ-NOO // CHECK-OBJ-NOO: "-o" "save-temps.i" diff --git a/clang/test/Driver/sigpipe-handling.c b/clang/test/Driver/sigpipe-handling.c index 80a927098d5892..852f0bfaf79812 100644 --- a/clang/test/Driver/sigpipe-handling.c +++ b/clang/test/Driver/sigpipe-handling.c @@ -3,7 +3,7 @@ // Test that the parent clang driver process doesn't crash when the child cc1 // process receives a SIGPIPE (Unix-only). - +// // The child should exit with IO_ERR, and the parent should exit cleanly. // CHECK: sigpipe-handling.c diff --git a/clang/test/Driver/solaris-header-search.cpp b/clang/test/Driver/solaris-header-search.cpp index 0448ab6cb0a24d..e058941fdc5f81 100644 --- a/clang/test/Driver/solaris-header-search.cpp +++ b/clang/test/Driver/solaris-header-search.cpp @@ -1,5 +1,5 @@ // Test that the C++ headers are found on Solaris with gcc toolchain detection - +// // Sparc, 32bit // RUN: %clang -### %s -fsyntax-only 2>&1 \ // RUN: --target=sparc-sun-solaris2.11 --stdlib=platform \ diff --git a/clang/test/Driver/sparc-float.c b/clang/test/Driver/sparc-float.c index ca8d724fb0d523..c205f5db17ec14 100644 --- a/clang/test/Driver/sparc-float.c +++ b/clang/test/Driver/sparc-float.c @@ -1,74 +1,74 @@ // Check handling -mhard-float / -msoft-float options // when build for SPARC platforms. - +// // Default sparc // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-DEF %s // CHECK-DEF-NOT: "-target-feature" "+soft-float" // CHECK-DEF-NOT: "-msoft-float" - +// // -mhard-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc-linux-gnu -mhard-float \ // RUN: | FileCheck --check-prefix=CHECK-HARD %s // CHECK-HARD-NOT: "-msoft-float" - +// // -msoft-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc-linux-gnu -msoft-float \ // RUN: | FileCheck --check-prefix=CHECK-SOFT %s // CHECK-SOFT: "-target-feature" "+soft-float" - +// // -mfloat-abi=soft // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc-linux-gnu -mfloat-abi=soft \ // RUN: | FileCheck --check-prefix=CHECK-FLOATABISOFT %s // CHECK-FLOATABISOFT: "-target-feature" "+soft-float" - +// // -mfloat-abi=hard // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc-linux-gnu -mfloat-abi=hard \ // RUN: | FileCheck --check-prefix=CHECK-FLOATABIHARD %s // CHECK-FLOATABIHARD-NOT: "-target-feature" "+soft-float" - +// // check invalid -mfloat-abi // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc-linux-gnu -mfloat-abi=x \ // RUN: | FileCheck --check-prefix=CHECK-ERRMSG %s // CHECK-ERRMSG: error: invalid float ABI '-mfloat-abi=x' - +// // Default sparc64 // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc64-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-DEF-SPARC64 %s // CHECK-DEF-SPARC64-NOT: "-target-feature" "+soft-float" // CHECK-DEF-SPARC64-NOT: "-msoft-float" - +// // -mhard-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc64-linux-gnu -mhard-float \ // RUN: | FileCheck --check-prefix=CHECK-HARD-SPARC64 %s // CHECK-HARD-SPARC64-NOT: "-msoft-float" - +// // -msoft-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc64-linux-gnu -msoft-float \ // RUN: | FileCheck --check-prefix=CHECK-SOFT-SPARC64 %s // CHECK-SOFT-SPARC64: "-target-feature" "+soft-float" - +// // -mfloat-abi=soft // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc64-linux-gnu -mfloat-abi=soft \ // RUN: | FileCheck --check-prefix=CHECK-FLOATABISOFT64 %s // CHECK-FLOATABISOFT64: "-target-feature" "+soft-float" - +// // -mfloat-abi=hard // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc64-linux-gnu -mfloat-abi=hard \ // RUN: | FileCheck --check-prefix=CHECK-FLOATABIHARD64 %s // CHECK-FLOATABIHARD64-NOT: "-target-feature" "+soft-float" - +// // check invalid -mfloat-abi // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target sparc64-linux-gnu -mfloat-abi=x \ diff --git a/clang/test/Driver/split-debug.h b/clang/test/Driver/split-debug.h index 6fe563fc816c5f..a27ebb2e6f18c3 100644 --- a/clang/test/Driver/split-debug.h +++ b/clang/test/Driver/split-debug.h @@ -1,6 +1,6 @@ // Check that we aren't splitting debug output for modules builds that don't produce object files. - +// // RUN: %clang -target x86_64-unknown-linux-gnu -gsplit-dwarf -c -fmodules -### %s 2> %t // RUN: FileCheck -check-prefix=CHECK-NO-ACTIONS < %t %s - +// // CHECK-NO-ACTIONS-NOT: objcopy diff --git a/clang/test/Driver/split-debug.s b/clang/test/Driver/split-debug.s index 33e6cb53b250a2..8ba777c8c02ff1 100644 --- a/clang/test/Driver/split-debug.s +++ b/clang/test/Driver/split-debug.s @@ -1,8 +1,8 @@ // Check that we split debug output properly - +// // RUN: %clang -target x86_64-unknown-linux-gnu -gsplit-dwarf -c -### %s 2> %t // RUN: FileCheck -check-prefix=CHECK-ACTIONS < %t %s - +// // CHECK-ACTIONS: "-split-dwarf-output" "split-debug.dwo" // Check we pass -split-dwarf-output to `as` if -gsplit-dwarf=split. @@ -15,12 +15,12 @@ // RUN: %clang -target x86_64-macosx -gsplit-dwarf -c -### %s 2> %t // RUN: FileCheck -check-prefix=CHECK-NO-ACTIONS < %t %s - +// // CHECK-NO-ACTIONS-NOT: -split-dwarf // RUN: %clang -target x86_64-unknown-linux-gnu -gsplit-dwarf -o Bad.x -### %s 2> %t // RUN: FileCheck -check-prefix=CHECK-BAD < %t %s - +// // CHECK-BAD-NOT: "Bad.dwo" diff --git a/clang/test/Driver/split-stack-ld.c b/clang/test/Driver/split-stack-ld.c index 6b5082fad720b3..f01b1393becaa8 100644 --- a/clang/test/Driver/split-stack-ld.c +++ b/clang/test/Driver/split-stack-ld.c @@ -1,17 +1,17 @@ // Test split stack ld flags. - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=i386-unknown-linux -fsplit-stack \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-I386 %s - +// // CHECK-LINUX-I386: "--wrap=pthread_create" - +// // RUN: %clang -### %s 2>&1 \ // RUN: --target=x86_64-unknown-linux -fsplit-stack \ // RUN: -resource-dir=%S/Inputs/resource_dir \ // RUN: --sysroot=%S/Inputs/basic_linux_tree \ // RUN: | FileCheck --check-prefix=CHECK-LINUX-X86-64 %s - +// // CHECK-LINUX-X86-64: "--wrap=pthread_create" diff --git a/clang/test/Driver/sysroot.c b/clang/test/Driver/sysroot.c index 2bf9f9eb0d0ab7..4e9ed2bf6b6821 100644 --- a/clang/test/Driver/sysroot.c +++ b/clang/test/Driver/sysroot.c @@ -1,5 +1,5 @@ // REQUIRES: x86-registered-target - +// // Check that --sysroot= also applies to header search paths. // RUN: %clang -target i386-unk-unk --sysroot=/FOO -### -E %s 2> %t1 // RUN: FileCheck --check-prefix=CHECK-SYSROOTEQ < %t1 %s diff --git a/clang/test/Driver/systemz-features.cpp b/clang/test/Driver/systemz-features.cpp index 69a0382e8c7c21..be1818a032355c 100644 --- a/clang/test/Driver/systemz-features.cpp +++ b/clang/test/Driver/systemz-features.cpp @@ -19,7 +19,7 @@ // RUN: %clang -target s390x-unknown-linux-gnu %s -mno-vx -mvx -### -o %t.o 2>&1 | FileCheck -check-prefix=CHECK-VX %s // CHECK-VX: "-target-feature" "+vector" // CHECK-VX-NOT: "-target-feature" "-vector" - +// // RUN: %clang -target s390x-unknown-linux-gnu %s -mno-vx -### -o %t.o 2>&1 | FileCheck -check-prefix=CHECK-NOVX %s // RUN: %clang -target s390x-unknown-linux-gnu %s -mvx -mno-vx -### -o %t.o 2>&1 | FileCheck -check-prefix=CHECK-NOVX %s // CHECK-NOVX: "-target-feature" "-vector" diff --git a/clang/test/Driver/systemz-float-01.c b/clang/test/Driver/systemz-float-01.c index 19e16becea7197..1fccdae0daf1d3 100644 --- a/clang/test/Driver/systemz-float-01.c +++ b/clang/test/Driver/systemz-float-01.c @@ -1,38 +1,38 @@ // Check handling -mhard-float / -msoft-float options // when build for SystemZ platforms. - +// // Default // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target s390x-linux-gnu \ // RUN: | FileCheck --check-prefix=CHECK-DEF %s // CHECK-DEF-NOT: "-msoft-float" // CHECK-DEF-NOT: "-mfloat-abi" "soft" - +// // -mhard-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target s390x-linux-gnu -mhard-float \ // RUN: | FileCheck --check-prefix=CHECK-HARD %s // CHECK-HARD-NOT: "-msoft-float" // CHECK-HARD-NOT: "-mfloat-abi" "soft" - +// // -msoft-float // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target s390x-linux-gnu -msoft-float \ // RUN: | FileCheck --check-prefix=CHECK-SOFT %s // CHECK-SOFT: "-msoft-float" "-mfloat-abi" "soft" - +// // -mfloat-abi=soft // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target s390x-linux-gnu -mfloat-abi=soft \ // RUN: | FileCheck --check-prefix=CHECK-FLOATABISOFT %s // CHECK-FLOATABISOFT: error: unsupported option '-mfloat-abi=soft' - +// // -mfloat-abi=hard // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target s390x-linux-gnu -mfloat-abi=hard \ // RUN: | FileCheck --check-prefix=CHECK-FLOATABIHARD %s // CHECK-FLOATABIHARD: error: unsupported option '-mfloat-abi=hard' - +// // check invalid -mfloat-abi // RUN: %clang -c %s -### -o %t.o 2>&1 \ // RUN: -target s390x-linux-gnu -mfloat-abi=x \ diff --git a/clang/test/Driver/systemz-float-02.c b/clang/test/Driver/systemz-float-02.c index a52124ba0c460d..d9ec329485a4c2 100644 --- a/clang/test/Driver/systemz-float-02.c +++ b/clang/test/Driver/systemz-float-02.c @@ -1,6 +1,6 @@ // RUN: %clang -target s390x-linux-gnu -march=z13 -S %s -o - -msoft-float | FileCheck %s // REQUIRES: systemz-registered-target - +// // Check that -msoft-float works all the way to assembly output. double fun0(double *A) { diff --git a/clang/test/Driver/target-as.s b/clang/test/Driver/target-as.s index 1779ed0a5ec258..4881a330b56aa1 100644 --- a/clang/test/Driver/target-as.s +++ b/clang/test/Driver/target-as.s @@ -1,6 +1,6 @@ // Make sure the -march is passed down to cc1as. // RUN: %clang -target i386-unknown-freebsd -### -c -integrated-as %s \ // RUN: -march=geode 2>&1 | FileCheck -check-prefix=TARGET %s - +// // TARGET: "-cc1as" // TARGET: "-target-cpu" "geode" diff --git a/clang/test/Driver/target-override.c b/clang/test/Driver/target-override.c index 15d599895ba0d1..aef89cc9a9dd24 100644 --- a/clang/test/Driver/target-override.c +++ b/clang/test/Driver/target-override.c @@ -5,11 +5,11 @@ // RUN: ln -s %clang %t/i386-clang // Check if invocation of "foo-clang" adds option "-target foo". - +// // RUN: %t/i386-clang -c -### %s 2>&1 | FileCheck -check-prefix CHECK-TG1 %s // CHECK-TG1: Target: i386 // Check if invocation of "foo-clang --target=bar" overrides option "-target foo". - +// // RUN: %t/i386-clang -c --target=x86_64 -### %s 2>&1 | FileCheck -check-prefix CHECK-TG2 %s // CHECK-TG2: Target: x86_64 diff --git a/clang/test/Driver/target-triple-deployment.c b/clang/test/Driver/target-triple-deployment.c index c99dceb451beaf..2e29992502ed43 100644 --- a/clang/test/Driver/target-triple-deployment.c +++ b/clang/test/Driver/target-triple-deployment.c @@ -2,7 +2,7 @@ // RUN: %clang -fuse-ld= -target x86_64-apple-macosx10.4 -mlinker-version=400 -### %t.o 2> %t.log // RUN: %clang -fuse-ld= -target x86_64-apple-darwin9 -mlinker-version=400 -### %t.o 2>> %t.log // RUN: %clang -fuse-ld= -target x86_64-apple-macosx10.7 -mlinker-version=400 -### %t.o 2>> %t.log - +// // RUN: %clang -fuse-ld= -target armv7-apple-ios -mlinker-version=400 -### %t.o 2>> %t.log // RUN: %clang -fuse-ld= -target armv7-apple-ios0.0 -mlinker-version=400 -### %t.o 2>> %t.log // RUN: %clang -fuse-ld= -target armv7-apple-ios1.2.3 -mlinker-version=400 -### %t.o 2>> %t.log @@ -11,7 +11,7 @@ // RUN: %clang -fuse-ld= -target arm64-apple-ios -mlinker-version=400 -### %t.o 2>> %t.log // RUN: %clang -fuse-ld= -target arm64e-apple-ios13.0 -mlinker-version=400 -### %t.o 2>> %t.log // RUN: %clang -fuse-ld= -target arm64e-apple-ios14.1 -mlinker-version=400 -### %t.o 2>> %t.log - +// // RUN: FileCheck %s < %t.log // CHECK: {{ld(.exe)?"}} diff --git a/clang/test/Driver/target.c b/clang/test/Driver/target.c index 5a904b9fed7a49..c77627713caea7 100644 --- a/clang/test/Driver/target.c +++ b/clang/test/Driver/target.c @@ -1,9 +1,9 @@ // RUN: %clang --target=unknown-unknown-unknown -c %s \ // RUN: -### 2>&1 | FileCheck %s - +// // Ensure we get a crazy triple here as we asked for one. // CHECK: Target: unknown-unknown-unknown - +// // Also check that the legacy spelling works. // RUN: %clang --target=unknown-unknown-unknown -c %s \ // RUN: -### 2>&1 | FileCheck %s diff --git a/clang/test/Driver/thinlto.c b/clang/test/Driver/thinlto.c index 4a07ac8405ad51..e08435f71cc0b0 100644 --- a/clang/test/Driver/thinlto.c +++ b/clang/test/Driver/thinlto.c @@ -1,13 +1,13 @@ // -flto=thin causes a switch to llvm-bc object files. // RUN: %clang -ccc-print-phases -c %s -flto=thin 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILE-ACTIONS < %t %s - +// // CHECK-COMPILE-ACTIONS: 2: compiler, {1}, ir // CHECK-COMPILE-ACTIONS: 3: backend, {2}, lto-bc // RUN: %clang -ccc-print-phases %s -flto=thin 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILELINK-ACTIONS < %t %s - +// // CHECK-COMPILELINK-ACTIONS: 0: input, "{{.*}}thinlto.c", c // CHECK-COMPILELINK-ACTIONS: 1: preprocessor, {0}, cpp-output // CHECK-COMPILELINK-ACTIONS: 2: compiler, {1}, ir diff --git a/clang/test/Driver/thinlto.cu b/clang/test/Driver/thinlto.cu index 4d3f7d25ba8863..d4f265baf3708f 100644 --- a/clang/test/Driver/thinlto.cu +++ b/clang/test/Driver/thinlto.cu @@ -4,14 +4,14 @@ // -flto=thin causes a switch to llvm-bc object files. // RUN: %clangxx -ccc-print-phases -nocudainc -nocudalib -c %s -flto=thin 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILE-ACTIONS < %t %s - +// // CHECK-COMPILE-ACTIONS: 2: compiler, {1}, ir, (host-cuda) // CHECK-COMPILE-ACTIONS-NOT: lto-bc // CHECK-COMPILE-ACTIONS: 12: backend, {11}, lto-bc, (host-cuda) // RUN: %clangxx -ccc-print-phases -nocudainc -nocudalib %s -flto=thin 2> %t // RUN: FileCheck -check-prefix=CHECK-COMPILELINK-ACTIONS < %t %s - +// // CHECK-COMPILELINK-ACTIONS: 0: input, "{{.*}}thinlto.cu", cuda, (host-cuda) // CHECK-COMPILELINK-ACTIONS: 1: preprocessor, {0}, cuda-cpp-output // CHECK-COMPILELINK-ACTIONS: 2: compiler, {1}, ir, (host-cuda) diff --git a/clang/test/Driver/unavailable_aligned_allocation.cpp b/clang/test/Driver/unavailable_aligned_allocation.cpp index 5f0128ca95a553..7f5d8e2cc7d4bd 100644 --- a/clang/test/Driver/unavailable_aligned_allocation.cpp +++ b/clang/test/Driver/unavailable_aligned_allocation.cpp @@ -1,27 +1,27 @@ // RUN: %clang -target x86_64-apple-macosx10.13 -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=UNAVAILABLE - +// // RUN: %clang -target arm64-apple-ios10 -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=UNAVAILABLE - +// // RUN: %clang -target arm64-apple-tvos10 -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=UNAVAILABLE - +// // RUN: %clang -target thumbv7-apple-watchos3 -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=UNAVAILABLE - +// // RUN: %clang -target x86_64-apple-darwin -mios-simulator-version-min=10 \ // RUN: -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=UNAVAILABLE - +// // RUN: %clang -target x86_64-apple-darwin -mtvos-simulator-version-min=10 \ // RUN: -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=UNAVAILABLE - +// // RUN: %clang -target x86_64-apple-darwin -mwatchos-simulator-version-min=3 \ // RUN: -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=UNAVAILABLE - +// // RUN: %clang -target s390x-none-zos -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=UNAVAILABLE @@ -29,43 +29,43 @@ // RUN: %clang -target x86_64-apple-macosx10.14 -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target arm64-apple-ios11 -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target arm64-apple-tvos11 -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target armv7k-apple-watchos4 -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target x86_64-unknown-linux-gnu -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target x86_64-apple-darwin -mios-simulator-version-min=11 \ // RUN: -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target x86_64-apple-darwin -mtvos-simulator-version-min=11 \ // RUN: -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target x86_64-apple-darwin -mwatchos-simulator-version-min=4 \ // RUN: -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // Check that passing -faligned-allocation or -fno-aligned-allocation stops the // driver from passing -faligned-alloc-unavailable to cc1. - +// // RUN: %clang -target x86_64-apple-macosx10.13 -faligned-allocation -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target x86_64-apple-macosx10.13 -fno-aligned-allocation -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target s390x-none-zos -faligned-allocation -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE - +// // RUN: %clang -target s390x-none-zos -fno-aligned-allocation -c -### %s 2>&1 \ // RUN: | FileCheck %s -check-prefix=AVAILABLE diff --git a/clang/test/Driver/unix-conformance.c b/clang/test/Driver/unix-conformance.c index c4c312c8b58843..ddf77c7a28e6f7 100644 --- a/clang/test/Driver/unix-conformance.c +++ b/clang/test/Driver/unix-conformance.c @@ -6,11 +6,11 @@ // When given multiple .c files to compile, clang compiles them in order until // it hits an error, at which point it stops. - +// // RUN: rm -rf %t-dir // RUN: mkdir -p %t-dir // RUN: cd %t-dir - +// // RUN: touch %t-dir/1.c // RUN: echo "invalid C code" > %t-dir/2.c // RUN: touch %t-dir/3.c diff --git a/clang/test/Driver/unsupported-faltivec.c b/clang/test/Driver/unsupported-faltivec.c index 8b130eba6de4bc..f6a55bcd39f842 100644 --- a/clang/test/Driver/unsupported-faltivec.c +++ b/clang/test/Driver/unsupported-faltivec.c @@ -1,9 +1,9 @@ // Tests that clang does not crash with invalid architectures in target triples. - +// // RUN: not %clang -target powerpc64le-linux-gnu -faltivec -o %t.o %s 2> %t.err // RUN: FileCheck --input-file=%t.err --check-prefix=CHECK-NOFALTIVEC %s // CHECK-NOFALTIVEC: error: the clang compiler does not support 'faltivec', please use -maltivec and include altivec.h explicitly - +// // RUN: not %clang -target powerpc64le-linux-gnu -fno-altivec -o %t.o %s 2> %t.err // RUN: FileCheck --input-file=%t.err --check-prefix=CHECK-NOFNOALTIVEC %s // CHECK-NOFNOALTIVEC: error: the clang compiler does not support 'fno-altivec', please use -mno-altivec diff --git a/clang/test/Driver/unsupported-target-arch.c b/clang/test/Driver/unsupported-target-arch.c index 18d958c0467b38..7c55850f49943d 100644 --- a/clang/test/Driver/unsupported-target-arch.c +++ b/clang/test/Driver/unsupported-target-arch.c @@ -1,25 +1,25 @@ // Tests that clang does not crash with invalid architectures in target triples. - +// // RUN: not %clang --target=noarch-unknown-linux -o %t.o %s 2> %t.err // RUN: FileCheck --input-file=%t.err --check-prefix=CHECK-NOARCH-LINUX %s // CHECK-NOARCH-LINUX: error: unknown target triple 'noarch-unknown-linux', please use -triple or -arch - +// // RUN: not %clang --target=noarch-unknown-darwin -o %t.o %s 2> %t.err // RUN: FileCheck --input-file=%t.err --check-prefix=CHECK-NOARCH-DARWIN %s // CHECK-NOARCH-DARWIN: error: unknown target triple 'unknown-unknown-macosx{{.+}}', please use -triple or -arch - +// // RUN: not %clang --target=noarch-unknown-windows -o %t.o %s 2> %t.err // RUN: FileCheck --input-file=%t.err --check-prefix=CHECK-NOARCH-WINDOWS %s // CHECK-NOARCH-WINDOWS: error: unknown target triple 'noarch-unknown-windows-{{.+}}', please use -triple or -arch - +// // RUN: not %clang --target=noarch-unknown-freebsd -o %t.o %s 2> %t.err // RUN: FileCheck --input-file=%t.err --check-prefix=CHECK-NOARCH-FREEBSD %s // CHECK-NOARCH-FREEBSD: error: unknown target triple 'noarch-unknown-freebsd', please use -triple or -arch - +// // RUN: not %clang --target=noarch-unknown-netbsd -o %t.o %s 2> %t.err // RUN: FileCheck --input-file=%t.err --check-prefix=CHECK-NOARCH-NETBSD %s // CHECK-NOARCH-NETBSD: error: unknown target triple 'noarch-unknown-netbsd', please use -triple or -arch - +// // RUN: not %clang --target=noarch-unknown-nacl -o %t.o %s 2> %t.err // RUN: FileCheck --input-file=%t.err --check-prefix=CHECK-NOARCH-NACL %s // CHECK-NOARCH-NACL: error: the target architecture 'noarch' is not supported by the target 'Native Client' diff --git a/clang/test/Driver/x86-march.c b/clang/test/Driver/x86-march.c index 472f6149d46fe6..46d8d5da323568 100644 --- a/clang/test/Driver/x86-march.c +++ b/clang/test/Driver/x86-march.c @@ -1,189 +1,189 @@ // Ensure we support the various CPU architecture names. - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=nocona 2>&1 \ // RUN: | FileCheck %s -check-prefix=nocona // nocona: "-target-cpu" "nocona" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=core2 2>&1 \ // RUN: | FileCheck %s -check-prefix=core2 // core2: "-target-cpu" "core2" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=penryn 2>&1 \ // RUN: | FileCheck %s -check-prefix=penryn // penryn: "-target-cpu" "penryn" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=nehalem 2>&1 \ // RUN: | FileCheck %s -check-prefix=nehalem // nehalem: "-target-cpu" "nehalem" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=westmere 2>&1 \ // RUN: | FileCheck %s -check-prefix=westmere // westmere: "-target-cpu" "westmere" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=sandybridge 2>&1 \ // RUN: | FileCheck %s -check-prefix=sandybridge // sandybridge: "-target-cpu" "sandybridge" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=ivybridge 2>&1 \ // RUN: | FileCheck %s -check-prefix=ivybridge // ivybridge: "-target-cpu" "ivybridge" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=haswell 2>&1 \ // RUN: | FileCheck %s -check-prefix=haswell // haswell: "-target-cpu" "haswell" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=broadwell 2>&1 \ // RUN: | FileCheck %s -check-prefix=broadwell // broadwell: "-target-cpu" "broadwell" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=skylake 2>&1 \ // RUN: | FileCheck %s -check-prefix=skylake // skylake: "-target-cpu" "skylake" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=skylake-avx512 2>&1 \ // RUN: | FileCheck %s -check-prefix=skylake-avx512 // skylake-avx512: "-target-cpu" "skylake-avx512" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=skx 2>&1 \ // RUN: | FileCheck %s -check-prefix=skx // skx: "-target-cpu" "skx" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=cascadelake 2>&1 \ // RUN: | FileCheck %s -check-prefix=cascadelake // cascadelake: "-target-cpu" "cascadelake" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=cooperlake 2>&1 \ // RUN: | FileCheck %s -check-prefix=cooperlake // cooperlake: "-target-cpu" "cooperlake" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=knl 2>&1 \ // RUN: | FileCheck %s -check-prefix=knl // knl: "-target-cpu" "knl" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=knm 2>&1 \ // RUN: | FileCheck %s -check-prefix=knm // knm: "-target-cpu" "knm" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=cannonlake 2>&1 \ // RUN: | FileCheck %s -check-prefix=cannonlake // cannonlake: "-target-cpu" "cannonlake" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=icelake-client 2>&1 \ // RUN: | FileCheck %s -check-prefix=icelake-client // icelake-client: "-target-cpu" "icelake-client" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=rocketlake 2>&1 \ // RUN: | FileCheck %s -check-prefix=rocketlake // rocketlake: "-target-cpu" "rocketlake" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=icelake-server 2>&1 \ // RUN: | FileCheck %s -check-prefix=icelake-server // icelake-server: "-target-cpu" "icelake-server" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=tigerlake 2>&1 \ // RUN: | FileCheck %s -check-prefix=tigerlake // tigerlake: "-target-cpu" "tigerlake" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=alderlake 2>&1 \ // RUN: | FileCheck %s -check-prefix=alderlake // alderlake: "-target-cpu" "alderlake" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=lakemont 2>&1 \ // RUN: | FileCheck %s -check-prefix=lakemont // lakemont: "-target-cpu" "lakemont" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=bonnell 2>&1 \ // RUN: | FileCheck %s -check-prefix=bonnell // bonnell: "-target-cpu" "bonnell" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=silvermont 2>&1 \ // RUN: | FileCheck %s -check-prefix=silvermont // silvermont: "-target-cpu" "silvermont" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=goldmont 2>&1 \ // RUN: | FileCheck %s -check-prefix=goldmont // goldmont: "-target-cpu" "goldmont" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=goldmont-plus 2>&1 \ // RUN: | FileCheck %s -check-prefix=goldmont-plus // goldmont-plus: "-target-cpu" "goldmont-plus" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=tremont 2>&1 \ // RUN: | FileCheck %s -check-prefix=tremont // tremont: "-target-cpu" "tremont" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=sapphirerapids 2>&1 \ // RUN: | FileCheck %s -check-prefix=sapphirerapids // sapphirerapids: "-target-cpu" "sapphirerapids" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=k8 2>&1 \ // RUN: | FileCheck %s -check-prefix=k8 // k8: "-target-cpu" "k8" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=opteron 2>&1 \ // RUN: | FileCheck %s -check-prefix=opteron // opteron: "-target-cpu" "opteron" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=athlon64 2>&1 \ // RUN: | FileCheck %s -check-prefix=athlon64 // athlon64: "-target-cpu" "athlon64" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=athlon-fx 2>&1 \ // RUN: | FileCheck %s -check-prefix=athlon-fx // athlon-fx: "-target-cpu" "athlon-fx" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=k8-sse3 2>&1 \ // RUN: | FileCheck %s -check-prefix=k8-sse3 // k8-sse3: "-target-cpu" "k8-sse3" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=opteron-sse3 2>&1 \ // RUN: | FileCheck %s -check-prefix=opteron-sse3 // opteron-sse3: "-target-cpu" "opteron-sse3" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=athlon64-sse3 2>&1 \ // RUN: | FileCheck %s -check-prefix=athlon64-sse3 // athlon64-sse3: "-target-cpu" "athlon64-sse3" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=amdfam10 2>&1 \ // RUN: | FileCheck %s -check-prefix=amdfam10 // amdfam10: "-target-cpu" "amdfam10" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=barcelona 2>&1 \ // RUN: | FileCheck %s -check-prefix=barcelona // barcelona: "-target-cpu" "barcelona" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=bdver1 2>&1 \ // RUN: | FileCheck %s -check-prefix=bdver1 // bdver1: "-target-cpu" "bdver1" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=bdver2 2>&1 \ // RUN: | FileCheck %s -check-prefix=bdver2 // bdver2: "-target-cpu" "bdver2" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=bdver3 2>&1 \ // RUN: | FileCheck %s -check-prefix=bdver3 // bdver3: "-target-cpu" "bdver3" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=bdver4 2>&1 \ // RUN: | FileCheck %s -check-prefix=bdver4 // bdver4: "-target-cpu" "bdver4" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=btver1 2>&1 \ // RUN: | FileCheck %s -check-prefix=btver1 // btver1: "-target-cpu" "btver1" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=btver2 2>&1 \ // RUN: | FileCheck %s -check-prefix=btver2 // btver2: "-target-cpu" "btver2" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=znver1 2>&1 \ // RUN: | FileCheck %s -check-prefix=znver1 // znver1: "-target-cpu" "znver1" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=znver2 2>&1 \ // RUN: | FileCheck %s -check-prefix=znver2 // znver2: "-target-cpu" "znver2" - +// // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=znver3 2>&1 \ // RUN: | FileCheck %s -check-prefix=znver3 // znver3: "-target-cpu" "znver3"