Chromium Code Reviews
DescriptionAOT: Faster invocation of callback fields.
In the JIT we dynamically create stubs for implicit closure invocation of fields.
For AOT we only used to do this for the .call invocations (explicit closure calls).
Other fields invocations would go through the slower runtime call.
This CL adds invocation stubs in AOT mode for all fields that have a function type
as type annotation (likely callback fields) and avoid the overhead of runtime calls.
The invocation stubs are cached at receiver classes. Therefore, they are added to
all subclasses of a class that defines a callback field.
This speeds up Flutter's layout_bench on a Nexus 4 by 6.8%.
R=rmacnak@google.com
Committed: https://github.com/dart-lang/sdk/commit/08a96e13b71797a8cabeb00552b84e853cb3b9cb
Patch Set 1 #
Total comments: 6
Patch Set 2 : addressed comments #
Messages
Total messages: 10 (5 generated)
|
||||||||||||||||||||||||||||