Open
Description
Not all instructions at the inlining phase result in the same number of bytes of code.
Inlining heuristics should do a better job of predicting code size.
In particlar,
- Redefinitions reference existing values, so potentially generate no code.
-
GenericCheckBounds
annotated withpragma('vm:unsafe:no-bounds-checks')
generates no code. - The
length()
input toGenericCheckBounds
annotated withpragma('vm:unsafe:no-bounds-checks')
often becomes dead after the check is removed. -
LoadStaticField
is 3-4x larger withCallsInitializer
- [ ]