Files
sdk/pkg/analyzer/lib
Jens Johansen ac4cf4f21b [analyzer] Mark EnumSet._checkIndex for inlining
When analyzing the CFE `EnumSet._checkIndex` is called ~6.8 million
times and the VM has decided to not inline it.

Adding a pragma asking the VM to inline it costs 8 bytes in filesize
for the aot compile of stable_analysis but reduces the runtime cost
with ~175 million instructions.

That's more than expected: I'd have expected the prologue, stack
overflow check and return to go away which would be 10 instructions per
call or ~68 million instructions.
This causes the VM to also inline `EnumSet.[]` - and then apparently
there is a relativly good amount of overhead of the calls themselves
(moving parameters etc I guess).

Change-Id: Ic615971d9fe980a263d962f877b7f5e1f36d79e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/494081
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2026-04-09 06:21:44 -07:00
..