@@ -1431,27 +1431,29 @@ void DarwinClang::AddLinkRuntimeLibArgs(const ArgList &Args,
1431
1431
return ;
1432
1432
}
1433
1433
1434
- if (Sanitize.needsAsanRt ())
1435
- AddLinkSanitizerLibArgs (Args, CmdArgs, " asan" );
1436
- if (Sanitize.needsLsanRt ())
1437
- AddLinkSanitizerLibArgs (Args, CmdArgs, " lsan" );
1438
- if (Sanitize.needsUbsanRt ()) {
1439
- assert (Sanitize.needsSharedRt () && " Static sanitizer runtimes not supported" );
1440
- AddLinkSanitizerLibArgs (Args, CmdArgs,
1441
- Sanitize.requiresMinimalRuntime () ? " ubsan_minimal"
1442
- : " ubsan" );
1443
- }
1444
- if (Sanitize.needsTsanRt ())
1445
- AddLinkSanitizerLibArgs (Args, CmdArgs, " tsan" );
1446
- if (Sanitize.needsFuzzer () && !Args.hasArg (options::OPT_dynamiclib)) {
1447
- AddLinkSanitizerLibArgs (Args, CmdArgs, " fuzzer" , /* shared=*/ false );
1448
-
1449
- // Libfuzzer is written in C++ and requires libcxx.
1450
- AddCXXStdlibLibArgs (Args, CmdArgs);
1451
- }
1452
- if (Sanitize.needsStatsRt ()) {
1453
- AddLinkRuntimeLib (Args, CmdArgs, " stats_client" , RLO_AlwaysLink);
1454
- AddLinkSanitizerLibArgs (Args, CmdArgs, " stats" );
1434
+ if (Sanitize.linkRuntimes ()) {
1435
+ if (Sanitize.needsAsanRt ())
1436
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " asan" );
1437
+ if (Sanitize.needsLsanRt ())
1438
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " lsan" );
1439
+ if (Sanitize.needsUbsanRt ()) {
1440
+ assert (Sanitize.needsSharedRt () && " Static sanitizer runtimes not supported" );
1441
+ AddLinkSanitizerLibArgs (Args, CmdArgs,
1442
+ Sanitize.requiresMinimalRuntime () ? " ubsan_minimal"
1443
+ : " ubsan" );
1444
+ }
1445
+ if (Sanitize.needsTsanRt ())
1446
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " tsan" );
1447
+ if (Sanitize.needsFuzzer () && !Args.hasArg (options::OPT_dynamiclib)) {
1448
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " fuzzer" , /* shared=*/ false );
1449
+
1450
+ // Libfuzzer is written in C++ and requires libcxx.
1451
+ AddCXXStdlibLibArgs (Args, CmdArgs);
1452
+ }
1453
+ if (Sanitize.needsStatsRt ()) {
1454
+ AddLinkRuntimeLib (Args, CmdArgs, " stats_client" , RLO_AlwaysLink);
1455
+ AddLinkSanitizerLibArgs (Args, CmdArgs, " stats" );
1456
+ }
1455
1457
}
1456
1458
1457
1459
const XRayArgs &XRay = getXRayArgs ();
0 commit comments