b18b27706c
Dynamic invocation forwarders have the same recognized kind as the method they are forwarding to. That causes us to inline the recognized method and not the dyn: forwarder itself. It is not safe for user-implementable types. This is triggered in some of the existing tests when unboxed integer fields are allowed in AOT. Issue https://github.com/dart-lang/sdk/issues/37737 Change-Id: Id518c6b13ccd08998ec78384e55c97c64546098a Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/133561 Commit-Queue: Victor Agnez Lima <victoragnez@google.com> Reviewed-by: Martin Kustermann <kustermann@google.com>
Dart VM Compilation Pipeline
This folder contains Dart VM compilation pipeline.
Compilation pipeline is mainly responsible for converting AST or Kernel AST into IL flow graphs and then generating native code from IL.
It has the following structure:
| Directory | What goes there |
|---|---|
assembler/ |
Assemblers and disassemblers |
backend/ |
IL based compilation backend: optimization passes and architecture specific code generation rules |
frontend/ |
Frontends responsible for converting AST into IL |
jit/ |
JIT specific passes and compilation pipeline entry points |
aot/ |
AOT specific passes and compilation pipeline entry points |
. |
Shared code or code without clear designation. |
Currently there are no layering restrictions and components from different subfolders can reference each other.