-
Vyacheslav "Slava" Egorov authored
When iterating on core library changes or changes in the AOT compiler many seconds are wasted waiting on gen_kernel/compile_platform to parse Dart code. This happens because we are running these tools from sources on prebuilt Dart SDK. This CL allows SDK developer to opt-in into AOT compiling these tools by adding `precompile_tools=true` to their DART_GN_ARGS. AOT compilation is performed using prebuilt SDK - so these executables do not need to be recompiled if core libraries or VM changes reducing iteration cycles. pkg/vm/tool/precompiler2 is tweaked to detect when DART_GN_ARGS contains `precompile_tools=true` and use precompiled gen_kernel.exe instead of running it from source. Using precompiled compile_platform takes vm_platform_strong.dill build from 20 seconds to 3 seconds. Using precompiled gen_kernel takes small benchmark build from ~10 seconds to 2 seconds. This relands 5cda2a87 with fixes for Flutter build. TEST=manually tested Change-Id: I552861c80c152890655e41baaf6ea3fb3b03a57e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/367961 Reviewed-by:
Martin Kustermann <kustermann@google.com> Commit-Queue: Slava Egorov <vegorov@google.com>
a4dd314cVyacheslav "Slava" Egorov authoredWhen iterating on core library changes or changes in the AOT compiler many seconds are wasted waiting on gen_kernel/compile_platform to parse Dart code. This happens because we are running these tools from sources on prebuilt Dart SDK. This CL allows SDK developer to opt-in into AOT compiling these tools by adding `precompile_tools=true` to their DART_GN_ARGS. AOT compilation is performed using prebuilt SDK - so these executables do not need to be recompiled if core libraries or VM changes reducing iteration cycles. pkg/vm/tool/precompiler2 is tweaked to detect when DART_GN_ARGS contains `precompile_tools=true` and use precompiled gen_kernel.exe instead of running it from source. Using precompiled compile_platform takes vm_platform_strong.dill build from 20 seconds to 3 seconds. Using precompiled gen_kernel takes small benchmark build from ~10 seconds to 2 seconds. This relands 5cda2a87 with fixes for Flutter build. TEST=manually tested Change-Id: I552861c80c152890655e41baaf6ea3fb3b03a57e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/367961 Reviewed-by:
Martin Kustermann <kustermann@google.com> Commit-Queue: Slava Egorov <vegorov@google.com>
Loading