mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 06:16:48 +00:00
4ea512b4c1
The LLVM code generator should only consume the serialized IR and not use any other VM functionality. This CL adds a custom zone which can be used for the deserialized IR nodes and removes any Dart_SetVMFlags/Dart_Initialize/ApiZone/... calls. This works with the existing example: % ninja -C out/ReleaseX64 codegen % out/ReleaseX64/codegen runtime/llvm_codegen/test/codegen/Inputs/hello.sex ... define void @"hello.dart::main"() { B1: %0 = call i8* @llvm.stacksave() %1 = ptrtoint i8* %0 to i64 %2 = load i64, i64 addrspace(256)* inttoptr (i64 72 to i64 addrspace(256)*) %3 = icmp ult i64 %1, %2 br i1 %3, label %4, label %5 ... ret void } ... Change-Id: I1d07ba6bc122d100c73f97cfa961d36240489666 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/120792 Commit-Queue: Martin Kustermann <kustermann@google.com> Auto-Submit: Martin Kustermann <kustermann@google.com> Reviewed-by: Teagan Strickland <sstrickl@google.com> |
||
---|---|---|
.. | ||
BUILD.gn | ||
custom_zone.cc | ||
custom_zone.h | ||
dart.cc | ||
dart.h | ||
main.cc |