54 lines
2.6 KiB
C
54 lines
2.6 KiB
C
// RUN: %clang --target=i686-pc-windows-msvc -fuse-ld=link -L/var/empty -L/usr/lib -### %s 2>&1 | FileCheck --check-prefix=BASIC %s
|
|
// BASIC: link.exe"
|
|
// BASIC-SAME: "-out:a.exe"
|
|
// BASIC-SAME: "-defaultlib:libcmt" "-defaultlib:oldnames"
|
|
// BASIC-SAME: "-libpath:/var/empty" "-libpath:/usr/lib"
|
|
// BASIC-SAME: "-nologo"
|
|
// BASIC-NOT: "-Brepro"
|
|
// BASIC-NOT: "-dll"
|
|
// BASIC-NOT: subsystem:console"
|
|
|
|
// RUN: %clang --target=i686-pc-windows-msvc -shared -o a.dll -fuse-ld=link -### %s 2>&1 | FileCheck --check-prefix=DLL %s
|
|
// DLL: link.exe"
|
|
// DLL-SAME: "-out:a.dll"
|
|
// DLL-SAME: "-defaultlib:libcmt" "-defaultlib:oldnames"
|
|
// DLL-SAME: "-nologo" "-dll"
|
|
|
|
// RUN: %clang_cl /Brepro -fuse-ld=link -### -- %s 2>&1 | FileCheck --check-prefix=REPRO %s
|
|
// REPRO: link.exe"
|
|
// REPRO-SAME: "-out:msvc-link.exe"
|
|
// REPRO-SAME: "-nologo"
|
|
// REPRO-SAME: "-Brepro"
|
|
|
|
// RUN: %clang_cl /Brepro- -fuse-ld=link -### -- %s 2>&1 | FileCheck --check-prefix=NOREPRO %s
|
|
// NOREPRO: link.exe"
|
|
// NOREPRO-SAME: "-out:msvc-link.exe"
|
|
// NOREPRO-SAME: "-nologo"
|
|
// NOREPRO-NOT: "-Brepro"
|
|
|
|
// RUN: %clang_cl -fuse-ld=lld --vfsoverlay %s -### -- %s 2>&1 | FileCheck --check-prefix=VFSOVERLAY %s
|
|
// VFSOVERLAY: -cc1"
|
|
// VFSOVERLAY: "--vfsoverlay"
|
|
// VFSOVERLAY: lld-link
|
|
// VFSOVERLAY: "/vfsoverlay:{{.*}}" "{{.*}}.obj"
|
|
|
|
// RUN: %clang --target=arm64ec-pc-windows-msvc -fuse-ld=link -### %s 2>&1 | FileCheck --check-prefix=ARM64EC %s
|
|
// RUN: %clang_cl --target=arm64ec-pc-windows-msvc -fuse-ld=link -### -- %s 2>&1 | FileCheck --check-prefix=ARM64EC %s
|
|
// RUN: %clang_cl -arm64EC -fuse-ld=link -### -- %s 2>&1 | FileCheck --check-prefix=ARM64EC %s
|
|
// ARM64EC: "-machine:arm64ec"
|
|
|
|
// RUN: %clang --target=arm64ec-pc-windows-msvc -fuse-ld=link -marm64x -### %s 2>&1 | \
|
|
// RUN: FileCheck --check-prefix=ARM64X %s
|
|
// RUN: %clang --target=aarch64-pc-windows-msvc -fuse-ld=link -marm64x -### %s 2>&1 | \
|
|
// RUN: FileCheck --check-prefix=ARM64X %s
|
|
// RUN: %clang_cl -marm64x -fuse-ld=link -### -- %s 2>&1 | FileCheck --check-prefix=ARM64X %s
|
|
// RUN: %clang_cl -arm64EC -marm64x -fuse-ld=link -### -- %s 2>&1 | FileCheck --check-prefix=ARM64X %s
|
|
// ARM64X: "-machine:arm64x"
|
|
|
|
// RUN: not %clang --target=x86_64-linux-gnu -marm64x -### %s 2>&1 | FileCheck --check-prefix=HYBRID-ERR %s
|
|
// HYBRID-ERR: error: unsupported option '-marm64x' for target 'x86_64-linux-gnu'
|
|
|
|
// RUN: %clang -c -marm64x --target=arm64ec-pc-windows-msvc -fuse-ld=link -### %s 2>&1 | \
|
|
// RUN: FileCheck --check-prefix=HYBRID-WARN %s
|
|
// HYBRID-WARN: warning: argument unused during compilation: '-marm64x' [-Wunused-command-line-argument]
|