Skip to content

Commit ccdebba

Browse files
authored
[Driver] Ensure ToolChain::LibraryPaths is not empty for non-Darwin
Follow-up to #81037. ToolChain::LibraryPaths holds the new compiler-rt library directory (e.g. `/tmp/Debug/lib/clang/19/lib/x86_64-unknown-linux-gnu`). However, it might be empty when the directory does not exist (due to the `if (getVFS().exists(P))` change in https://reviews.llvm.org/D158475). If neither the old/new compiler-rt library directories exists, we would suggest the undesired old compiler-rt file name: ``` % /tmp/Debug/bin/clang++ a.cc -fsanitize=memory -o a ld.lld: error: cannot open /tmp/Debug/lib/clang/19/lib/linux/libclang_rt.msan-x86_64.a: No such file or directory clang++: error: linker command failed with exit code 1 (use -v to see invocation) ``` With this change, we will correctly suggest the new compiler-rt file name. Fix #87150 Pull Request: #87866
1 parent f28c833 commit ccdebba

21 files changed

+119
-119
lines changed

clang/lib/Driver/ToolChain.cpp

+7-1
Original file line numberDiff line numberDiff line change
@@ -796,7 +796,13 @@ ToolChain::getTargetSubDirPath(StringRef BaseDir) const {
796796
std::optional<std::string> ToolChain::getRuntimePath() const {
797797
SmallString<128> P(D.ResourceDir);
798798
llvm::sys::path::append(P, "lib");
799-
return getTargetSubDirPath(P);
799+
if (auto Ret = getTargetSubDirPath(P))
800+
return Ret;
801+
// Darwin does not use per-target runtime directory.
802+
if (Triple.isOSDarwin())
803+
return {};
804+
llvm::sys::path::append(P, Triple.str());
805+
return std::string(P);
800806
}
801807

802808
std::optional<std::string> ToolChain::getStdlibPath() const {

clang/test/Driver/arm-compiler-rt.c

+7-7
Original file line numberDiff line numberDiff line change
@@ -10,47 +10,47 @@
1010
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \
1111
// RUN: -rtlib=compiler-rt -### %s 2>&1 \
1212
// RUN: | FileCheck %s -check-prefix ARM-GNUEABI
13-
// ARM-GNUEABI: "{{.*[/\\]}}libclang_rt.builtins-arm.a"
13+
// ARM-GNUEABI: "{{.*[/\\]}}libclang_rt.builtins.a"
1414

1515
// RUN: %clang -target arm-linux-gnueabi \
1616
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
1717
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \
1818
// RUN: -rtlib=compiler-rt -mfloat-abi=hard -### %s 2>&1 \
1919
// RUN: | FileCheck %s -check-prefix ARM-GNUEABI-ABI
20-
// ARM-GNUEABI-ABI: "{{.*[/\\]}}libclang_rt.builtins-armhf.a"
20+
// ARM-GNUEABI-ABI: "{{.*[/\\]}}libclang_rt.builtins.a"
2121

2222
// RUN: %clang -target arm-linux-gnueabihf \
2323
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
2424
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \
2525
// RUN: -rtlib=compiler-rt -### %s 2>&1 \
2626
// RUN: | FileCheck %s -check-prefix ARM-GNUEABIHF
27-
// ARM-GNUEABIHF: "{{.*[/\\]}}libclang_rt.builtins-armhf.a"
27+
// ARM-GNUEABIHF: "{{.*[/\\]}}libclang_rt.builtins.a"
2828

2929
// RUN: %clang -target arm-linux-gnueabihf \
3030
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
3131
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \
3232
// RUN: -rtlib=compiler-rt -mfloat-abi=soft -### %s 2>&1 \
3333
// RUN: | FileCheck %s -check-prefix ARM-GNUEABIHF-ABI
34-
// ARM-GNUEABIHF-ABI: "{{.*[/\\]}}libclang_rt.builtins-arm.a"
34+
// ARM-GNUEABIHF-ABI: "{{.*[/\\]}}libclang_rt.builtins.a"
3535

3636
// RUN: %clang -target arm-windows-itanium \
3737
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
3838
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \
3939
// RUN: -rtlib=compiler-rt -### %s 2>&1 \
4040
// RUN: | FileCheck %s -check-prefix ARM-WINDOWS
41-
// ARM-WINDOWS: "{{.*[/\\]}}clang_rt.builtins-arm.lib"
41+
// ARM-WINDOWS: "{{.*[/\\]}}clang_rt.builtins.lib"
4242

4343
// RUN: %clang -target arm-linux-androideabi \
4444
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
4545
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \
4646
// RUN: -rtlib=compiler-rt -### %s 2>&1 \
4747
// RUN: | FileCheck %s -check-prefix ARM-ANDROID
48-
// ARM-ANDROID: "{{.*[/\\]}}libclang_rt.builtins-arm-android.a"
48+
// ARM-ANDROID: "{{.*[/\\]}}libclang_rt.builtins.a"
4949

5050
// RUN: not %clang --target=arm-linux-androideabi \
5151
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
5252
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir \
5353
// RUN: -rtlib=compiler-rt -mfloat-abi=hard -### %s 2>&1 \
5454
// RUN: | FileCheck %s -check-prefix ARM-ANDROIDHF
55-
// ARM-ANDROIDHF: "{{.*[/\\]}}libclang_rt.builtins-armhf-android.a"
55+
// ARM-ANDROIDHF: "{{.*[/\\]}}libclang_rt.builtins.a"
5656

clang/test/Driver/cl-link.c

+8-8
Original file line numberDiff line numberDiff line change
@@ -13,20 +13,20 @@
1313
// ASAN: link.exe
1414
// ASAN: "-debug"
1515
// ASAN: "-incremental:no"
16-
// ASAN: "{{[^"]*}}clang_rt.asan-i386.lib"
17-
// ASAN: "-wholearchive:{{.*}}clang_rt.asan-i386.lib"
18-
// ASAN: "{{[^"]*}}clang_rt.asan_cxx-i386.lib"
19-
// ASAN: "-wholearchive:{{.*}}clang_rt.asan_cxx-i386.lib"
16+
// ASAN: "{{[^"]*}}clang_rt.asan.lib"
17+
// ASAN: "-wholearchive:{{.*}}clang_rt.asan.lib"
18+
// ASAN: "{{[^"]*}}clang_rt.asan_cxx.lib"
19+
// ASAN: "-wholearchive:{{.*}}clang_rt.asan_cxx.lib"
2020
// ASAN: "{{.*}}cl-link{{.*}}.obj"
2121

2222
// RUN: %clang_cl -m32 -arch:IA32 --target=i386-pc-win32 /MD /Tc%s -fuse-ld=link -### -fsanitize=address 2>&1 | FileCheck --check-prefix=ASAN-MD %s
2323
// ASAN-MD: link.exe
2424
// ASAN-MD: "-debug"
2525
// ASAN-MD: "-incremental:no"
26-
// ASAN-MD: "{{.*}}clang_rt.asan_dynamic-i386.lib"
27-
// ASAN-MD: "{{[^"]*}}clang_rt.asan_dynamic_runtime_thunk-i386.lib"
26+
// ASAN-MD: "{{.*}}clang_rt.asan_dynamic.lib"
27+
// ASAN-MD: "{{[^"]*}}clang_rt.asan_dynamic_runtime_thunk.lib"
2828
// ASAN-MD: "-include:___asan_seh_interceptor"
29-
// ASAN-MD: "-wholearchive:{{.*}}clang_rt.asan_dynamic_runtime_thunk-i386.lib"
29+
// ASAN-MD: "-wholearchive:{{.*}}clang_rt.asan_dynamic_runtime_thunk.lib"
3030
// ASAN-MD: "{{.*}}cl-link{{.*}}.obj"
3131

3232
// RUN: %clang_cl /LD -fuse-ld=link -### /Tc%s 2>&1 | FileCheck --check-prefix=DLL %s
@@ -40,7 +40,7 @@
4040
// ASAN-DLL: "-dll"
4141
// ASAN-DLL: "-debug"
4242
// ASAN-DLL: "-incremental:no"
43-
// ASAN-DLL: "{{.*}}clang_rt.asan_dll_thunk-i386.lib"
43+
// ASAN-DLL: "{{.*}}clang_rt.asan_dll_thunk.lib"
4444
// ASAN-DLL: "{{.*}}cl-link{{.*}}.obj"
4545

4646
// RUN: %clang_cl /Zi /Tc%s -fuse-ld=link -### 2>&1 | FileCheck --check-prefix=DEBUG %s

clang/test/Driver/compiler-rt-unwind.c

+3-3
Original file line numberDiff line numberDiff line change
@@ -98,14 +98,14 @@
9898
// RUN: --target=x86_64-w64-mingw32 -rtlib=compiler-rt --unwindlib=libunwind \
9999
// RUN: -shared-libgcc \
100100
// RUN: | FileCheck --check-prefix=MINGW-RTLIB-COMPILER-RT-SHARED-UNWINDLIB-COMPILER-RT %s
101-
// MINGW-RTLIB-COMPILER-RT-SHARED-UNWINDLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins-x86_64.a"
101+
// MINGW-RTLIB-COMPILER-RT-SHARED-UNWINDLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins.a"
102102
// MINGW-RTLIB-COMPILER-RT-SHARED-UNWINDLIB-COMPILER-RT-SAME: "-l:libunwind.dll.a"
103103
//
104104
// RUN: %clang -### %s 2>&1 \
105105
// RUN: --target=x86_64-w64-mingw32 -rtlib=compiler-rt --unwindlib=libunwind \
106106
// RUN: -static-libgcc \
107107
// RUN: | FileCheck --check-prefix=MINGW-RTLIB-COMPILER-RT-STATIC-UNWINDLIB-COMPILER-RT %s
108-
// MINGW-RTLIB-COMPILER-RT-STATIC-UNWINDLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins-x86_64.a"
108+
// MINGW-RTLIB-COMPILER-RT-STATIC-UNWINDLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins.a"
109109
// MINGW-RTLIB-COMPILER-RT-STATIC-UNWINDLIB-COMPILER-RT-SAME: "-l:libunwind.a"
110110
//
111111
// RUN: %clang -### %s 2>&1 \
@@ -114,5 +114,5 @@
114114
// RUN: %clangxx -### %s 2>&1 \
115115
// RUN: --target=x86_64-w64-mingw32 -rtlib=compiler-rt --unwindlib=libunwind \
116116
// RUN: | FileCheck --check-prefix=MINGW-RTLIB-COMPILER-RT-UNWINDLIB-COMPILER-RT %s
117-
// MINGW-RTLIB-COMPILER-RT-UNWINDLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins-x86_64.a"
117+
// MINGW-RTLIB-COMPILER-RT-UNWINDLIB-COMPILER-RT: "{{.*}}libclang_rt.builtins.a"
118118
// MINGW-RTLIB-COMPILER-RT-UNWINDLIB-COMPILER-RT-SAME: "-lunwind"

clang/test/Driver/coverage-ld.c

+4-4
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
// RUN: | FileCheck --check-prefix=CHECK-FREEBSD-X86-64 %s
3434
//
3535
// CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
36-
// CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}freebsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
36+
// CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-freebsd{{/|\\\\}}libclang_rt.profile.a"
3737
//
3838
// RUN: %clang -### %s 2>&1 \
3939
// RUN: --target=x86_64-unknown-netbsd --coverage -fuse-ld=ld \
@@ -42,7 +42,7 @@
4242
// RUN: | FileCheck --check-prefix=CHECK-NETBSD-X86-64 %s
4343

4444
// CHECK-NETBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
45-
// CHECK-NETBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}netbsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
45+
// CHECK-NETBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-netbsd{{/|\\\\}}libclang_rt.profile.a"
4646

4747
// RUN: %clang -### %s 2>&1 \
4848
// RUN: --target=x86_64-unknown-openbsd --coverage -fuse-ld=ld \
@@ -51,7 +51,7 @@
5151
// RUN: | FileCheck --check-prefix=CHECK-OPENBSD-X86-64 %s
5252

5353
// CHECK-OPENBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
54-
// CHECK-OPENBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}openbsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
54+
// CHECK-OPENBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-openbsd{{/|\\\\}}libclang_rt.profile.a"
5555

5656
// RUN: %clang -### %s 2>&1 \
5757
// RUN: --target=arm-linux-androideabi --coverage -fuse-ld=ld \
@@ -60,4 +60,4 @@
6060
// RUN: | FileCheck --check-prefix=CHECK-ANDROID-ARM %s
6161
//
6262
// CHECK-ANDROID-ARM: "{{(.*[^.0-9A-Z_a-z])?}}ld.lld{{(.exe)?}}"
63-
// CHECK-ANDROID-ARM: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-arm-android.a"
63+
// CHECK-ANDROID-ARM: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}arm-unknown-linux-android{{/|\\\\}}libclang_rt.profile.a"

clang/test/Driver/instrprof-ld.c

+8-8
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
// RUN: | FileCheck --check-prefix=CHECK-FREEBSD-X86-64 %s
3535
//
3636
// CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
37-
// CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}freebsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
37+
// CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-freebsd{{/|\\\\}}libclang_rt.profile.a"
3838
//
3939
// RUN: %clang -### %s 2>&1 \
4040
// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate -fuse-ld=ld \
@@ -43,7 +43,7 @@
4343
// RUN: | FileCheck --check-prefix=CHECK-NETBSD-X86-64 %s
4444

4545
// CHECK-NETBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
46-
// CHECK-NETBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}netbsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
46+
// CHECK-NETBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-netbsd{{/|\\\\}}libclang_rt.profile.a"
4747

4848
// RUN: %clang -### %s 2>&1 \
4949
// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate -fuse-ld=ld \
@@ -52,7 +52,7 @@
5252
// RUN: | FileCheck --check-prefix=CHECK-OPENBSD-X86-64 %s
5353

5454
// CHECK-OPENBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
55-
// CHECK-OPENBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}openbsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
55+
// CHECK-OPENBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-openbsd{{/|\\\\}}libclang_rt.profile.a"
5656

5757
// RUN: %clang -### %s 2>&1 \
5858
// RUN: -shared \
@@ -72,7 +72,7 @@
7272
// RUN: | FileCheck --check-prefix=CHECK-LINUX-X86-64-SHARED %s
7373
//
7474
// CHECK-LINUX-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
75-
// CHECK-LINUX-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{.*}}linux{{.*}}libclang_rt.profile.a" {{.*}} "-lc"
75+
// CHECK-LINUX-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{.*}}x86_64-unknown-linux{{.*}}libclang_rt.profile.a" {{.*}} "-lc"
7676
//
7777
// RUN: %clang -### %s 2>&1 \
7878
// RUN: -shared \
@@ -82,7 +82,7 @@
8282
// RUN: | FileCheck --check-prefix=CHECK-FREEBSD-X86-64-SHARED %s
8383
//
8484
// CHECK-FREEBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
85-
// CHECK-FREEBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}freebsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
85+
// CHECK-FREEBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-freebsd{{/|\\\\}}libclang_rt.profile.a"
8686
//
8787
// RUN: %clang -### %s 2>&1 \
8888
// RUN: -shared \
@@ -92,7 +92,7 @@
9292
// RUN: | FileCheck --check-prefix=CHECK-NETBSD-X86-64-SHARED %s
9393

9494
// CHECK-NETBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
95-
// CHECK-NETBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}netbsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
95+
// CHECK-NETBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-netbsd{{/|\\\\}}libclang_rt.profile.a"
9696

9797
// RUN: %clang -### %s 2>&1 \
9898
// RUN: -shared \
@@ -102,7 +102,7 @@
102102
// RUN: | FileCheck --check-prefix=CHECK-OPENBSD-X86-64-SHARED %s
103103

104104
// CHECK-OPENBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
105-
// CHECK-OPENBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}openbsd{{/|\\\\}}libclang_rt.profile-x86_64.a"
105+
// CHECK-OPENBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-openbsd{{/|\\\\}}libclang_rt.profile.a"
106106

107107
// RUN: %clang -### %s 2>&1 \
108108
// RUN: --target=x86_64-apple-darwin14 -fprofile-instr-generate -fuse-ld=ld \
@@ -174,7 +174,7 @@
174174
// RUN: | FileCheck --check-prefix=CHECK-MINGW-X86-64 %s
175175
//
176176
// CHECK-MINGW-X86-64: "{{(.*[^.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
177-
// CHECK-MINGW-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}windows{{/|\\\\}}libclang_rt.profile-x86_64.a"
177+
// CHECK-MINGW-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}x86_64-unknown-windows-gnu{{/|\\\\}}libclang_rt.profile.a"
178178

179179
// Test instrumented profiling dependent-lib flags
180180
//

clang/test/Driver/linux-ld.c

+3-3
Original file line numberDiff line numberDiff line change
@@ -99,9 +99,9 @@
9999
// CHECK-LD-RT-ANDROID: "--eh-frame-hdr"
100100
// CHECK-LD-RT-ANDROID: "-m" "armelf_linux_eabi"
101101
// CHECK-LD-RT-ANDROID: "-dynamic-linker"
102-
// CHECK-LD-RT-ANDROID: libclang_rt.builtins-arm-android.a"
102+
// CHECK-LD-RT-ANDROID: libclang_rt.builtins.a"
103103
// CHECK-LD-RT-ANDROID: "-lc"
104-
// CHECK-LD-RT-ANDROID: libclang_rt.builtins-arm-android.a"
104+
// CHECK-LD-RT-ANDROID: libclang_rt.builtins.a"
105105
//
106106
// RUN: %clang -### %s -no-pie 2>&1 \
107107
// RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \
@@ -264,7 +264,7 @@
264264
// RUN: --sysroot=%S/Inputs/basic_linux_tree \
265265
// RUN: | FileCheck --check-prefix=CHECK-CLANG-ANDROID-STATIC %s
266266
// CHECK-CLANG-ANDROID-STATIC: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]"
267-
// CHECK-CLANG-ANDROID-STATIC: "--start-group" "{{[^"]*}}{{/|\\\\}}libclang_rt.builtins-aarch64-android.a" "-l:libunwind.a" "-lc" "--end-group"
267+
// CHECK-CLANG-ANDROID-STATIC: "--start-group" "{{[^"]*}}{{/|\\\\}}libclang_rt.builtins.a" "-l:libunwind.a" "-lc" "--end-group"
268268
//
269269
// RUN: %clang -### %s 2>&1 \
270270
// RUN: --target=x86_64-unknown-linux -rtlib=platform --unwindlib=platform \

clang/test/Driver/mingw-sanitizers.c

+8-8
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@
44
//
55
// ASAN-ALL-NOT:"-l{{[^"]+"]}}"
66
// ASAN-ALL-NOT:"[[INPUT]]"
7-
// ASAN-I686: "{{[^"]*}}libclang_rt.asan_dynamic-i386.dll.a"
8-
// ASAN-X86_64: "{{[^"]*}}libclang_rt.asan_dynamic-x86_64.dll.a"
7+
// ASAN-I686: "{{[^"]*}}libclang_rt.asan_dynamic.dll.a"
8+
// ASAN-X86_64: "{{[^"]*}}libclang_rt.asan_dynamic.dll.a"
99
// ASAN-ALL: "-lcomponent"
1010
// ASAN-ALL: "[[INPUT]]"
11-
// ASAN-I686: "{{[^"]*}}libclang_rt.asan_dynamic-i386.dll.a"
12-
// ASAN-I686: "{{[^"]*}}libclang_rt.asan_dynamic_runtime_thunk-i386.a"
11+
// ASAN-I686: "{{[^"]*}}libclang_rt.asan_dynamic.dll.a"
12+
// ASAN-I686: "{{[^"]*}}libclang_rt.asan_dynamic_runtime_thunk.a"
1313
// ASAN-I686: "--require-defined" "___asan_seh_interceptor"
14-
// ASAN-I686: "--whole-archive" "{{[^"]*}}libclang_rt.asan_dynamic_runtime_thunk-i386.a" "--no-whole-archive"
15-
// ASAN-X86_64: "{{[^"]*}}libclang_rt.asan_dynamic-x86_64.dll.a"
16-
// ASAN-X86_64: "{{[^"]*}}libclang_rt.asan_dynamic_runtime_thunk-x86_64.a"
14+
// ASAN-I686: "--whole-archive" "{{[^"]*}}libclang_rt.asan_dynamic_runtime_thunk.a" "--no-whole-archive"
15+
// ASAN-X86_64: "{{[^"]*}}libclang_rt.asan_dynamic.dll.a"
16+
// ASAN-X86_64: "{{[^"]*}}libclang_rt.asan_dynamic_runtime_thunk.a"
1717
// ASAN-X86_64: "--require-defined" "__asan_seh_interceptor"
18-
// ASAN-X86_64: "--whole-archive" "{{[^"]*}}libclang_rt.asan_dynamic_runtime_thunk-x86_64.a" "--no-whole-archive"
18+
// ASAN-X86_64: "--whole-archive" "{{[^"]*}}libclang_rt.asan_dynamic_runtime_thunk.a" "--no-whole-archive"
1919

2020
// RUN: %clang -target x86_64-windows-gnu %s -### -fsanitize=vptr

clang/test/Driver/msp430-toolchain.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,8 @@
103103
// LIBS-COMPILER-RT-POS: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/8.3.1/430{{/|\\\\}}crtbegin_no_eh.o"
104104
// LIBS-COMPILER-RT-POS: "-L{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/8.3.1/430"
105105
// LIBS-COMPILER-RT-POS: "-L{{.*}}/Inputs/basic_msp430_tree{{/|\\\\}}msp430-elf{{/|\\\\}}lib/430"
106-
// LIBS-COMPILER-RT-POS: "{{[^"]*}}libclang_rt.builtins-msp430.a" "--start-group" "-lmul_none" "-lc" "{{[^"]*}}libclang_rt.builtins-msp430.a" "-lcrt" "-lnosys" "--end-group" "{{[^"]*}}libclang_rt.builtins-msp430.a"
107-
// LIBS-COMPILER-RT-POS: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/8.3.1/430{{/|\\\\}}crtend_no_eh.o" "{{[^"]*}}libclang_rt.builtins-msp430.a"
106+
// LIBS-COMPILER-RT-POS: "{{[^"]*}}libclang_rt.builtins.a" "--start-group" "-lmul_none" "-lc" "{{[^"]*}}libclang_rt.builtins.a" "-lcrt" "-lnosys" "--end-group" "{{[^"]*}}libclang_rt.builtins.a"
107+
// LIBS-COMPILER-RT-POS: "{{.*}}/Inputs/basic_msp430_tree/lib/gcc/msp430-elf/8.3.1/430{{/|\\\\}}crtend_no_eh.o" "{{[^"]*}}libclang_rt.builtins.a"
108108
// LIBS-COMPILER-RT-NEG-NOT: crtbegin.o
109109
// LIBS-COMPILER-RT-NEG-NOT: -lssp_nonshared
110110
// LIBS-COMPILER-RT-NEG-NOT: -lssp

clang/test/Driver/print-libgcc-file-name-clangrt.c

+6-6
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@
55
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
66
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir 2>&1 \
77
// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-X8664 %s
8-
// CHECK-CLANGRT-X8664: libclang_rt.builtins-x86_64.a
8+
// CHECK-CLANGRT-X8664: libclang_rt.builtins.a
99

1010
// RUN: %clang -rtlib=compiler-rt -print-libgcc-file-name \
1111
// RUN: --target=i386-pc-linux \
1212
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
1313
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir 2>&1 \
1414
// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-I386 %s
15-
// CHECK-CLANGRT-I386: libclang_rt.builtins-i386.a
15+
// CHECK-CLANGRT-I386: libclang_rt.builtins.a
1616

1717
// Check whether alternate arch values map to the correct library.
1818
//
@@ -27,28 +27,28 @@
2727
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
2828
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir 2>&1 \
2929
// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-ARM %s
30-
// CHECK-CLANGRT-ARM: libclang_rt.builtins-arm.a
30+
// CHECK-CLANGRT-ARM: libclang_rt.builtins.a
3131

3232
// RUN: %clang -rtlib=compiler-rt -print-libgcc-file-name \
3333
// RUN: --target=arm-linux-androideabi \
3434
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
3535
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir 2>&1 \
3636
// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-ARM-ANDROID %s
37-
// CHECK-CLANGRT-ARM-ANDROID: libclang_rt.builtins-arm-android.a
37+
// CHECK-CLANGRT-ARM-ANDROID: libclang_rt.builtins.a
3838

3939
// RUN: %clang -rtlib=compiler-rt -print-libgcc-file-name \
4040
// RUN: --target=arm-linux-gnueabihf \
4141
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
4242
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir 2>&1 \
4343
// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-ARMHF %s
44-
// CHECK-CLANGRT-ARMHF: libclang_rt.builtins-armhf.a
44+
// CHECK-CLANGRT-ARMHF: libclang_rt.builtins.a
4545

4646
// RUN: %clang -rtlib=compiler-rt -print-libgcc-file-name \
4747
// RUN: --target=arm-linux-gnueabi -mfloat-abi=hard \
4848
// RUN: --sysroot=%S/Inputs/resource_dir_with_arch_subdir \
4949
// RUN: -resource-dir=%S/Inputs/resource_dir_with_arch_subdir 2>&1 \
5050
// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-ARM-ABI %s
51-
// CHECK-CLANGRT-ARM-ABI: libclang_rt.builtins-armhf.a
51+
// CHECK-CLANGRT-ARM-ABI: libclang_rt.builtins.a
5252

5353
// RUN: %clang -rtlib=compiler-rt -print-libgcc-file-name \
5454
// RUN: --target=armv7m-none-eabi \

clang/test/Driver/print-runtime-dir.c

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
// Default directory layout
2-
// RUN: %clang -print-runtime-dir --target=x86_64-pc-windows-msvc \
3-
// RUN: -resource-dir=%S/Inputs/resource_dir \
4-
// RUN: | FileCheck --check-prefix=PRINT-RUNTIME-DIR -DFILE=%S/Inputs/resource_dir %s
5-
// PRINT-RUNTIME-DIR: [[FILE]]{{/|\\}}lib{{/|\\}}windows
6-
71
// Per-target directory layout
82
// RUN: %clang -print-runtime-dir --target=x86_64-pc-windows-msvc \
93
// RUN: -resource-dir=%S/Inputs/resource_dir_with_per_target_subdir \

clang/test/Driver/riscv32-toolchain-extra.c

+3-3
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@
2929
// C-RV32-BAREMETAL-ILP32-NOGCC: "-internal-isystem" "{{.*}}/riscv32-nogcc/bin/../riscv32-unknown-elf/include"
3030
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/bin/riscv32-unknown-elf-ld"
3131
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/bin/../riscv32-unknown-elf/lib/crt0.o"
32-
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/{{.*}}/lib/clang_rt.crtbegin-riscv32.o"
32+
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/{{.*}}/riscv32-unknown-unknown-elf/clang_rt.crtbegin.o"
3333
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/bin/../riscv32-unknown-elf/lib"
3434
// C-RV32-BAREMETAL-ILP32-NOGCC: "--start-group" "-lc" "-lgloss" "--end-group"
35-
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/{{.*}}/lib/libclang_rt.builtins-riscv32.a"
36-
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/{{.*}}/lib/clang_rt.crtend-riscv32.o"
35+
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/{{.*}}/riscv32-unknown-unknown-elf/libclang_rt.builtins.a"
36+
// C-RV32-BAREMETAL-ILP32-NOGCC: "{{.*}}/riscv32-nogcc/{{.*}}/riscv32-unknown-unknown-elf/clang_rt.crtend.o"

0 commit comments

Comments
 (0)