[PATCH] D29479: Driver: Do not warn about unused -pthread when linking on darwin

Duncan P. N. Exon Smith via cfe-commits cfe-commits at lists.llvm.org
Fri Feb 3 15:03:44 PST 2017


LGTM.

> On 2017-Feb-03, at 14:16, Matthias Braun via Phabricator <reviews at reviews.llvm.org> wrote:
> 
> MatzeB updated this revision to Diff 87024.
> MatzeB added a comment.
> 
> Address review comments:
> 
> - Simplify test
> - Only perform the ClaimAll() if we actually link libc, so we get the warning back when combining -nostdlib/-nodefaultlibs with -pthread
> 
> 
> Repository:
>  rL LLVM
> 
> https://reviews.llvm.org/D29479
> 
> Files:
>  lib/Driver/Tools.cpp
>  test/Driver/darwin-ld-pthread.c
> 
> 
> Index: test/Driver/darwin-ld-pthread.c
> ===================================================================
> --- /dev/null
> +++ test/Driver/darwin-ld-pthread.c
> @@ -0,0 +1,4 @@
> +// RUN: %clang -Wunused-command-line-argument -pthread -target x86_64-apple-darwin -### /dev/null -o %t.bin 2>&1 | FileCheck %s
> +
> +// There is nothing to do at link time to get pthread support. But do not warn.
> +// CHECK-NOT: argument unused during compilation: '-pthread'
> Index: lib/Driver/Tools.cpp
> ===================================================================
> --- lib/Driver/Tools.cpp
> +++ lib/Driver/Tools.cpp
> @@ -8696,6 +8696,10 @@
> 
>     // Let the tool chain choose which runtime library to link.
>     getMachOToolChain().AddLinkRuntimeLibArgs(Args, CmdArgs);
> +
> +    // No need to do anything for pthreads. Claim argument to avoid warning.
> +    Args.ClaimAllArgs(options::OPT_pthread);
> +    Args.ClaimAllArgs(options::OPT_pthreads);
>   }
> 
>   if (!Args.hasArg(options::OPT_nostdlib, options::OPT_nostartfiles)) {
> 
> 
> <D29479.87024.patch>



More information about the cfe-commits mailing list