Skip to content

Commit ef23bba

Browse files
committed
[Linkerwrapper] Make -Xoffload-linker pass directly to clang
Summary: We provide `-Xoffload-linker` to pass arguments directly to the link step. Currently this uses `-Wl,` implicitly which prevents us from using clang options that we otherwise could make use of. This patch removes that implicit behavior as users can just as easiliy pass `-Xoffload-linker -Wl,-foo` if needed.
1 parent 97efd8a commit ef23bba

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

clang/test/Driver/linker-wrapper.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,8 @@
123123
// RUN: --linker-path=/usr/bin/ld --device-linker=a --device-linker=nvptx64-nvidia-cuda=b -- \
124124
// RUN: %t.o -o a.out 2>&1 | FileCheck %s --check-prefix=LINKER-ARGS
125125

126-
// LINKER-ARGS: clang{{.*}}--target=amdgcn-amd-amdhsa{{.*}}-Wl,a
127-
// LINKER-ARGS: clang{{.*}}--target=nvptx64-nvidia-cuda{{.*}}-Wl,a -Wl,b
126+
// LINKER-ARGS: clang{{.*}}--target=amdgcn-amd-amdhsa{{.*}}a
127+
// LINKER-ARGS: clang{{.*}}--target=nvptx64-nvidia-cuda{{.*}}a b
128128

129129
// RUN: not clang-linker-wrapper --dry-run --host-triple=x86_64-unknown-linux-gnu -ldummy \
130130
// RUN: --linker-path=/usr/bin/ld --device-linker=a --device-linker=nvptx64-nvidia-cuda=b -- \

clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,7 @@ Expected<StringRef> clang(ArrayRef<StringRef> InputFiles, const ArgList &Args) {
428428
std::back_inserter(CmdArgs));
429429

430430
for (StringRef Arg : Args.getAllArgValues(OPT_linker_arg_EQ))
431-
CmdArgs.push_back(Args.MakeArgString("-Wl," + Arg));
431+
CmdArgs.push_back(Args.MakeArgString(Arg));
432432

433433
for (StringRef Arg : Args.getAllArgValues(OPT_builtin_bitcode_EQ)) {
434434
if (llvm::Triple(Arg.split('=').first) == Triple)

0 commit comments

Comments
 (0)