[compiler-rt] aa89cea - [win][compiler-rt] Make tests use lld-link instead of link
Arthur Eubanks via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 18 08:46:38 PDT 2022
Author: Arthur Eubanks
Date: 2022-10-18T08:46:23-07:00
New Revision: aa89ceab485cd8d5ff1e11dd67a479741ed1f6dd
URL: https://github.com/llvm/llvm-project/commit/aa89ceab485cd8d5ff1e11dd67a479741ed1f6dd
DIFF: https://github.com/llvm/llvm-project/commit/aa89ceab485cd8d5ff1e11dd67a479741ed1f6dd.diff
LOG: [win][compiler-rt] Make tests use lld-link instead of link
Git bash ships with a link.exe. We try to add git bash to the beginning
of PATH (see D84380). These tests end up executing the wrong link.exe.
As a workaround, use lld-link. Note that `REQUIRES: lld-available` tests currently aren't running, see D128567. I did manually verify that these tests pass with lld-link.
Reviewed By: rnk, hans
Differential Revision: https://reviews.llvm.org/D136108
Added:
Modified:
compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp
compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp
compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp
Removed:
################################################################################
diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp
index bddaa32df73be..96fae6b1d6039 100644
--- a/compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp
+++ b/compiler-rt/test/asan/TestCases/Windows/dll_and_lib.cpp
@@ -1,10 +1,11 @@
// Just make sure we can link an implib into another DLL
// This used to fail between r212699 and r212814.
// RUN: %clang_cl_asan -DCONFIG=1 %s -c -Fo%t.1.obj
-// RUN: link /nologo /DLL /OUT:%t.1.dll %t.1.obj %asan_dll_thunk
+// RUN: lld-link /nologo /DLL /OUT:%t.1.dll %t.1.obj %asan_dll_thunk
// RUN: %clang_cl_asan -DCONFIG=2 %s -c -Fo%t.2.obj
-// RUN: link /nologo /DLL /OUT:%t.2.dll %t.2.obj %t.1.lib %asan_dll_thunk
+// RUN: lld-link /nologo /DLL /OUT:%t.2.dll %t.2.obj %t.1.lib %asan_dll_thunk
// REQUIRES: asan-static-runtime
+// REQUIRES: lld-available
#if CONFIG==1
extern "C" __declspec(dllexport) int f1() {
diff --git a/compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp b/compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp
index 039d01f84ba56..788488dbb8ed8 100644
--- a/compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp
+++ b/compiler-rt/test/asan/TestCases/Windows/dll_large_function.cpp
@@ -3,8 +3,9 @@
// from the DLL. We simulate the large function with
// -mllvm -asan-instrumentation-with-call-threshold=0.
// RUN: %clang_cl_asan %s -c -Fo%t.obj -mllvm -asan-instrumentation-with-call-threshold=0
-// RUN: link /nologo /DLL /OUT:%t.dll %t.obj %asan_dll_thunk
+// RUN: lld-link /nologo /DLL /OUT:%t.dll %t.obj %asan_dll_thunk
// REQUIRES: asan-static-runtime
+// REQUIRES: lld-available
void f(long* foo, long* bar) {
// One load and one store
diff --git a/compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp b/compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp
index 2c45258016f0f..0eb1e9ee91b0a 100644
--- a/compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp
+++ b/compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp
@@ -4,8 +4,9 @@
// RUN: rm -f %t.pdb
// RUN: %clangxx_asan -c -O2 %s -o %t.obj
-// RUN: link /nologo /OUT:%t.exe %t.obj %asan_lib %asan_cxx_lib
+// RUN: lld-link /nologo /OUT:%t.exe %t.obj %asan_lib %asan_cxx_lib
// RUN: not %run %t.exe 2>&1 | FileCheck %s
+// REQUIRES: lld-available
#include <stdlib.h>
#include <stdio.h>
More information about the llvm-commits
mailing list