[ VM / DDS ] Add --print-dtd-uri flag and launch DTD from the correct snapshot for AOT

This adds support for printing the DTD connection information to stdout
when --print-dtd-uri is passed.

This change also fixes an issue where DDS would fail to spawn an isolate
with the DTD snapshot when DDS was running in AOT mode. This means the
SDK must be shipped with both AppJIT and AOT DTD snapshots, at least
until dartdev is moved to run from AOT.

Fixes https://github.com/dart-lang/sdk/issues/55034

TEST=run_test.dart

Change-Id: I788ef9bfe76297a8d594992a2aac440ed9e2ecac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/358541
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
This commit is contained in:
Ben Konyi
2024-03-21 19:50:46 +00:00
committed by Commit Queue
parent 87df8c4691
commit 6eb85949fd
23 changed files with 281 additions and 356 deletions
-5
View File
@@ -28,11 +28,6 @@ application_snapshot("generate_dartdev_snapshot") {
"../dtd:dtd",
]
# DDS should be run from AOT snapshot on all architectures except IA32/X86.
if (dart_target_arch != "ia32" && dart_target_arch != "x86") {
deps += [ "../dds:dds_aot" ]
}
vm_args = [ "--sound-null-safety" ]
output = "$root_gen_dir/dartdev.dart.snapshot"
}