@@ -1586,27 +1586,29 @@ void DarwinClang::AddLinkRuntimeLibArgs(const ArgList &Args,
1586
1586
return ;
1587
1587
}
1588
1588
1589
- if (Sanitize.needsAsanRt ())
1590
- AddLinkSanitizerLibArgs (Args, CmdArgs, " asan" );
1591
- if (Sanitize.needsLsanRt ())
1592
- AddLinkSanitizerLibArgs (Args, CmdArgs, " lsan" );
1593
- if (Sanitize.needsUbsanRt ()) {
1594
- assert (Sanitize.needsSharedRt () && " Static sanitizer runtimes not supported" );
1595
- AddLinkSanitizerLibArgs (Args, CmdArgs,
1596
- Sanitize.requiresMinimalRuntime () ? " ubsan_minimal"
1597
- : " ubsan" );
1598
- }
1599
- if (Sanitize.needsTsanRt ())
1600
- AddLinkSanitizerLibArgs (Args, CmdArgs, " tsan" );
1601
- if (Sanitize.needsFuzzer () && !Args.hasArg (options::OPT_dynamiclib)) {
1602
- AddLinkSanitizerLibArgs (Args, CmdArgs, " fuzzer" , /* shared=*/ false );
1603
-
1604
- // Libfuzzer is written in C++ and requires libcxx.
1605
- AddCXXStdlibLibArgs (Args, CmdArgs);
1606
- }
1607
- if (Sanitize.needsStatsRt ()) {
1608
- AddLinkRuntimeLib (Args, CmdArgs, " stats_client" , RLO_AlwaysLink);
1609
- AddLinkSanitizerLibArgs (Args, CmdArgs, " stats" );
1589
+ if (Sanitize.linkRuntimes ()) {
1590
+ if (Sanitize.needsAsanRt ())
1591
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " asan" );
1592
+ if (Sanitize.needsLsanRt ())
1593
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " lsan" );
1594
+ if (Sanitize.needsUbsanRt ()) {
1595
+ assert (Sanitize.needsSharedRt () && " Static sanitizer runtimes not supported" );
1596
+ AddLinkSanitizerLibArgs (Args, CmdArgs,
1597
+ Sanitize.requiresMinimalRuntime () ? " ubsan_minimal"
1598
+ : " ubsan" );
1599
+ }
1600
+ if (Sanitize.needsTsanRt ())
1601
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " tsan" );
1602
+ if (Sanitize.needsFuzzer () && !Args.hasArg (options::OPT_dynamiclib)) {
1603
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " fuzzer" , /* shared=*/ false );
1604
+
1605
+ // Libfuzzer is written in C++ and requires libcxx.
1606
+ AddCXXStdlibLibArgs (Args, CmdArgs);
1607
+ }
1608
+ if (Sanitize.needsStatsRt ()) {
1609
+ AddLinkRuntimeLib (Args, CmdArgs, " stats_client" , RLO_AlwaysLink);
1610
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " stats" );
1611
+ }
1610
1612
}
1611
1613
1612
1614
const XRayArgs &XRay = getXRayArgs ();
0 commit comments