Skip to content

Commit aa0a29c

Browse files
rmacnak-googleCommit Queue
authored andcommitted
[infra] More setup for Mac and Windows ASAN.
Change-Id: I7cec0e5823410ee9dea2074c32f2ccb6f0aabceb Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/427960 Reviewed-by: Alexander Aprelev <[email protected]> Commit-Queue: Ryan Macnak <[email protected]>
1 parent 3d66dd5 commit aa0a29c

File tree

3 files changed

+46
-7
lines changed

3 files changed

+46
-7
lines changed

build/config/compiler/BUILD.gn

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,12 @@ config("compiler") {
117117
if (is_asan) {
118118
cflags += [ "-fsanitize=address" ]
119119
ldflags += [ "-fsanitize=address" ]
120+
if (is_mac) {
121+
ldflags += [
122+
"-rpath",
123+
"buildtools/mac-$host_cpu/clang/lib/clang/21/lib/darwin",
124+
]
125+
}
120126
}
121127
if (is_hwasan && is_android && current_cpu == "arm64") {
122128
cflags += [ "-fsanitize=hwaddress" ]

pkg/test_runner/lib/src/test_suite.dart

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import 'command.dart';
2323
import 'configuration.dart';
2424
import 'expectation_set.dart';
2525
import 'multitest.dart';
26+
import 'options.dart';
2627
import 'path.dart';
2728
import 'repository.dart';
2829
import 'runtime_configuration.dart' show QemuConfig;
@@ -365,8 +366,13 @@ class VMTestSuite extends TestSuite {
365366

366367
Iterable<VMUnitTest> _listTests() {
367368
var args = [...initialHostArguments, "--list"];
368-
var result = Process.runSync(hostRunnerPath, args);
369+
var result = Process.runSync(hostRunnerPath, args,
370+
environment: sanitizerEnvironmentVariables);
369371
if (result.exitCode != 0) {
372+
print("stdout:");
373+
print(result.stdout);
374+
print("stderr:");
375+
print(result.stderr);
370376
throw "Failed to list tests: '$hostRunnerPath ${args.join(' ')}'. "
371377
"Process exited with ${result.exitCode}";
372378
}
@@ -488,8 +494,13 @@ class FfiTestSuite extends TestSuite {
488494
}
489495

490496
Iterable<FfiUnitTest> _listTests(String runnerName, String runnerPath) {
491-
final result = Process.runSync(runnerPath, ["--list"]);
497+
final result = Process.runSync(runnerPath, ["--list"],
498+
environment: sanitizerEnvironmentVariables);
492499
if (result.exitCode != 0) {
500+
print("stdout:");
501+
print(result.stdout);
502+
print("stderr:");
503+
print(result.stderr);
493504
throw "Failed to list tests: '$runnerPath --list'. "
494505
"Process exited with ${result.exitCode}";
495506
}

tools/bots/test_matrix.json

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -146,10 +146,12 @@
146146
"buildtools/mac-arm64/clang/bin/llvm-nm",
147147
"buildtools/mac-arm64/clang/bin/llvm-strip",
148148
"buildtools/mac-arm64/clang/bin/llvm-symbolizer",
149+
"buildtools/mac-arm64/clang/lib/clang/21/lib/darwin/",
149150
"buildtools/mac-x64/clang/bin/llvm",
150151
"buildtools/mac-x64/clang/bin/llvm-nm",
151152
"buildtools/mac-x64/clang/bin/llvm-strip",
152153
"buildtools/mac-x64/clang/bin/llvm-symbolizer",
154+
"buildtools/mac-x64/clang/lib/clang/21/lib/darwin/",
153155
"buildtools/win-x64/clang/bin/llvm-symbolizer.exe",
154156
"third_party/android_tools/sdk/platform-tools/adb",
155157
"third_party/android_tools/ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/../lib/x86_64-unknown-linux-gnu/libc++.so",
@@ -331,11 +333,31 @@
331333
"vm-msan-linux-(debug|product|release)-(x64|arm64|simarm64|simriscv64)": {},
332334
"vm-tsan-(linux|mac)-(debug|product|release)-(x64|arm64|simarm64|simriscv64)": {},
333335
"vm-ubsan-(linux|mac|win)-(debug|product|release)-(ia32|x64|arm64|simarm|simarm64|simriscv32|simriscv64)": {},
334-
"vm-aot-asan-(linux|mac|win)-(debug|product|release)-(x64|arm64|simarm|simarm64|simriscv32|simriscv64)": {},
335-
"vm-aot-lsan-(linux|mac)-(debug|product|release)-(x64|arm64|simarm|simarm64|simriscv32|simriscv64)": {},
336-
"vm-aot-msan-linux-(debug|product|release)-(x64|arm64|simarm64|simriscv64)": {},
337-
"vm-aot-tsan-(linux|mac)-(debug|product|release)-(x64|arm64|simarm64|simriscv64)": {},
338-
"vm-aot-ubsan-(linux|mac|win)-(debug|product|release)-(x64|arm64|simarm|simarm64|simriscv32|simriscv64)": {},
336+
"vm-aot-asan-(linux|mac|win)-(debug|product|release)-(x64|arm64|simarm|simarm64|simriscv32|simriscv64)": {
337+
"options": {
338+
"use-elf": true
339+
}
340+
},
341+
"vm-aot-lsan-(linux|mac)-(debug|product|release)-(x64|arm64|simarm|simarm64|simriscv32|simriscv64)": {
342+
"options": {
343+
"use-elf": true
344+
}
345+
},
346+
"vm-aot-msan-linux-(debug|product|release)-(x64|arm64|simarm64|simriscv64)": {
347+
"options": {
348+
"use-elf": true
349+
}
350+
},
351+
"vm-aot-tsan-(linux|mac)-(debug|product|release)-(x64|arm64|simarm64|simriscv64)": {
352+
"options": {
353+
"use-elf": true
354+
}
355+
},
356+
"vm-aot-ubsan-(linux|mac|win)-(debug|product|release)-(x64|arm64|simarm|simarm64|simriscv32|simriscv64)": {
357+
"options": {
358+
"use-elf": true
359+
}
360+
},
339361
"dart2js-(linux|win)-chrome": {
340362
"options": {
341363
"use-sdk": true

0 commit comments

Comments
 (0)