Ryan Macnak
39040a8a15
Never erase parameter types in the JIT.
...
Even in unchecked mode with mirrors disabled, we need to be able to forward parameter types to lazily generated implicit closure functions.
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2808763008 .
2017-04-12 15:40:42 -07:00
Ryan Macnak
5cffc591aa
Refactor AOT deduplication steps so they can run before an app-jit snapshot as well.
...
Additionally dedup PcDescriptors, deopt entries, deopt lists, and await token position lists.
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2815533003 .
2017-04-12 14:23:49 -07:00
Ryan Macnak
4607e38d28
Reapply "Save and restore feedback from JIT."
...
Ensure ICData is attached to the callee flow graph in the inliner when built from kernel IR, not just from source.
R=fschneider@google.com
Review-Url: https://codereview.chromium.org/2572423004 .
2016-12-16 16:00:17 -08:00
Ryan Macnak
176d732cc3
Revert "Save and restore feedback from JIT."
...
This reverts commit 31ee20297e .
Review-Url: https://codereview.chromium.org/2579413002 .
2016-12-16 13:53:20 -08:00
Ryan Macnak
31ee20297e
Save and restore feedback from JIT.
...
- Adjust fingerprints to be independent of the library's private key, which varies with load order.
- Use usage_counter in AOT inlining decisions if JIT feedback is available.
- Reduce inlining in cold functions.
dart2js product aot snapshot 15841351 -> 14436273 (-8.86%)
R=fschneider@google.com
Review-Url: https://codereview.chromium.org/2562693003 .
2016-12-16 10:21:40 -08:00