https://github.com/wenju-he created https://github.com/llvm/llvm-project/pull/224179
Propagate the wrapper's verbose flag to the clang subprocess it invokes, like assemble() and link() do. @bader's made this change in our downstream. This PR upstreams the change. >From 6a6f91a57e680dba5c0cd8b7d971ecfdbe17d821 Mon Sep 17 00:00:00 2001 From: Wenju He <[email protected]> Date: Thu, 17 Sep 2026 04:00:52 +0200 Subject: [PATCH] [ClangLinkerWrapper] Forward --wrapper-verbose as -v to the clang backend invocation Propagate the wrapper's verbose flag to the clang subprocess it invokes, like assemble() and link() do. @bader's made this change in our downstream. This PR upstreams the change. Co-Authored-By: Claude Sonnet 5 <[email protected]> --- .../clang-linker-wrapper/linker-wrapper-verbose.c | 14 +++++++------- .../clang-linker-wrapper/ClangLinkerWrapper.cpp | 3 +++ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-verbose.c b/clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-verbose.c index 7da80fc9ee41f..381fefab7ff16 100644 --- a/clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-verbose.c +++ b/clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-verbose.c @@ -13,8 +13,8 @@ // RUN: --linker-path=/usr/bin/ld %t.o -o a.out 2>&1 | FileCheck %s --check-prefix=OPENMP // OPENMP: llvm-offload-binary{{.*}} {{.*}}.o --image=kind=openmp,triple=nvptx64-nvidia-cuda,arch=sm_70,file={{.*}}.o --image=kind=openmp,triple=amdgcn-amd-amdhsa,arch=gfx90a,file={{.*}}.o -// OPENMP: clang{{.*}} --target=nvptx64-nvidia-cuda -march=sm_70 -// OPENMP: clang{{.*}} --target=amdgcn-amd-amdhsa -mcpu=gfx90a +// OPENMP: clang{{.*}} --target=nvptx64-nvidia-cuda -march=sm_70{{.*}} -v{{$}} +// OPENMP: clang{{.*}} --target=amdgcn-amd-amdhsa -mcpu=gfx90a{{.*}} -v{{$}} // OPENMP: llvm-offload-binary{{.*}} -o {{.*}}.offload --image=file={{.*}}.img,kind=openmp,triple=nvptx64-nvidia-cuda,arch=sm_70 // OPENMP: llvm-offload-binary{{.*}} -o {{.*}}.offload --image=file={{.*}}.img,kind=openmp,triple=amdgcn-amd-amdhsa,arch=gfx90a // OPENMP: llvm-offload-wrapper{{.*}} --kind=openmp --triple=x86_64-unknown-linux-gnu -o [[BC:.*]].bc {{.*}}.offload {{.*}}.offload @@ -42,8 +42,8 @@ // RUN: --linker-path=/usr/bin/ld %t.o -o a.out 2>&1 | FileCheck %s --check-prefix=CUDA // CUDA: llvm-offload-binary{{.*}} {{.*}}.o --image=kind=cuda,triple=nvptx64-nvidia-cuda,arch=sm_70,file={{.*}}.o --image=kind=cuda,triple=nvptx64-nvidia-cuda,arch=sm_52,file={{.*}}.o -// CUDA: clang{{.*}} --target=nvptx64-nvidia-cuda -march=sm_70 -// CUDA: clang{{.*}} --target=nvptx64-nvidia-cuda -march=sm_52 +// CUDA: clang{{.*}} --target=nvptx64-nvidia-cuda -march=sm_70{{.*}} -v{{$}} +// CUDA: clang{{.*}} --target=nvptx64-nvidia-cuda -march=sm_52{{.*}} -v{{$}} // CUDA: fatbinary{{.*}}--create [[FB:.*]].fatbin {{.*}}--image3=kind=elf,sm=70{{.*}}--image3=kind=elf,sm=52 // CUDA: llvm-offload-wrapper{{.*}} --kind=cuda --triple=x86_64-unknown-linux-gnu -o [[BC:.*]].bc [[FB]].fatbin // CUDA: clang{{.*}} --no-default-config --target=x86_64-unknown-linux-gnu -c -fPIC -o {{.*}}.cuda.image.wrapper{{.*}}.o [[BC]].bc @@ -59,8 +59,8 @@ // RUN: --linker-path=/usr/bin/ld %t.o -o a.out 2>&1 | FileCheck %s --check-prefix=HIP // HIP: llvm-offload-binary{{.*}} {{.*}}.o --image=kind=hip,triple=amdgcn-amd-amdhsa,arch=gfx90a,file={{.*}}.o --image=kind=hip,triple=amdgcn-amd-amdhsa,arch=gfx908,file={{.*}}.o -// HIP: clang{{.*}} --target=amdgcn-amd-amdhsa -mcpu=gfx90a -// HIP: clang{{.*}} --target=amdgcn-amd-amdhsa -mcpu=gfx908 +// HIP: clang{{.*}} --target=amdgcn-amd-amdhsa -mcpu=gfx90a{{.*}} -v{{$}} +// HIP: clang{{.*}} --target=amdgcn-amd-amdhsa -mcpu=gfx908{{.*}} -v{{$}} // HIP: clang-offload-bundler{{.*}}-targets=host-x86_64-unknown-linux-gnu,hip-amdgcn-amd-amdhsa--gfx90a,hip-amdgcn-amd-amdhsa--gfx908{{.*}}-output=[[FB:.*]].hipfb // HIP: llvm-offload-wrapper{{.*}} --kind=hip --triple=x86_64-unknown-linux-gnu -o [[BC:.*]].bc [[FB]].hipfb // HIP: clang{{.*}} --no-default-config --target=x86_64-unknown-linux-gnu -c -fPIC -o {{.*}}.hip.image.wrapper{{.*}}.o [[BC]].bc @@ -76,7 +76,7 @@ // RUN: --linker-path=/usr/bin/ld %t.o -o a.out 2>&1 | FileCheck %s --check-prefix=SYCL // SYCL: llvm-offload-binary{{.*}} {{.*}}.o --image=kind=sycl,triple=spirv64-unknown-unknown,arch=generic,file={{.*}}.o -// SYCL: clang{{.*}} --target=spirv64-unknown-unknown {{.*}} --sycl-link{{$}} +// SYCL: clang{{.*}} --target=spirv64-unknown-unknown {{.*}} --sycl-link -v{{$}} // SYCL: llvm-offload-wrapper{{.*}} --kind=sycl --triple=x86_64-unknown-linux-gnu -o [[BC:.*]].bc {{.*}}.img // SYCL: clang{{.*}} --no-default-config --target=x86_64-unknown-linux-gnu -c -fPIC -o {{.*}}.sycl.image.wrapper{{.*}}.o [[BC]].bc diff --git a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp index ec1b824589de9..a7a570658a76a 100644 --- a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp +++ b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp @@ -624,6 +624,9 @@ Expected<StringRef> clang(ArrayRef<StringRef> InputFiles, const ArgList &Args, for (StringRef Arg : Args.getAllArgValues(OPT_compiler_arg_EQ)) CmdArgs.push_back(Args.MakeArgString(Arg)); + if (Verbose) + CmdArgs.push_back("-v"); + if (Error Err = executeCommands(*ClangPath, CmdArgs)) return std::move(Err); _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
