commit | 2e25ff436a78262589ed34dc8f0e2a573c09a18e | [log] [tgz] |
---|---|---|
author | Brian Osman <brianosman@google.com> | Thu Oct 15 10:32:04 2020 -0400 |
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | Mon Oct 19 16:08:39 2020 +0000 |
tree | a4fc8feaf619acc1382320a84767bea5bced96b7 | |
parent | c1a249d1dc8e29e1703785b0cc56e70199e512e1 [diff] |
Directly compute call counts, rather than mutating state This causes a ~4% regression on sksl_large, but some of that can be bought back in two ways: 1) Removing (now unnecessary) cloning of program elements 2) Hoisting the new analysis passes, with (nontrivial) logic to update/maintain the call counts as we edit IR. Also, this fixes bugs where we were emitting functions that had "calls" from no-longer called functions. Bug: skia:10776 Change-Id: I4f8c29957be2e4233a883c9a1125f363b82ee40c Reviewed-on: https://skia-review.googlesource.com/c/skia/+/327198 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: John Stiles <johnstiles@google.com>