dcd5a8f005
- Global parameter use analysis: when a parameter is only used directly as arguments to other calls, only consider it used if any of the target parameters are used. - A parameter can be eliminated if the TFA infers that it has a constant value in every implementation. This change also extends the test of the protobuf-aware tree shaker to run the AOT global transformations on all its test cases in order to check that the protobuf handling in that code path is not broken by signature shaking. Reduces ARM64 .so size of Flutter Gallery by 0.25% uncompressed, 0.37% with gzip and 0.45% with brotli. Issue: https://github.com/dart-lang/sdk/issues/40488 TEST=Existing test suite, expectation files for TFA test, extended test of protobuf-aware tree shaker. Change-Id: Ib00fe362f798c92592a260f72e7bccad04246bb2 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173727 Commit-Queue: Aske Simon Christensen <askesc@google.com> Reviewed-by: Martin Kustermann <kustermann@google.com>