…r=gw Fourth iteration: improve the detail in reported tile invalidations. The invalidation enum stores the old and new values for lightweight types. For a change in PrimCount, the old and new list of ItemUids is stored (if logging is enabled); the tool can then diff the two to see what was added and removed. To convert that back into friendly strings, the interning activity is used to build up a map of ItemUid to a string. A similar special-casing of Content Descriptor will print the item that's invalidating the tile, plus the origin and/or rectangle. Also adding zoom and pan command line options both to fix high-DPI issues and also to allow zooming out far enough to see out-of-viewport cache lifetime and prefetching due to scrolling. Also fix a bug where interning updates get lost if more than one update happens without building a frame: switch to a vector of serialized updatelists (one per type) instead of allowing just one string (per type). Differential Revision: https://phabricator.services.mozilla.com/D61656 [ghsync] From https://hg.mozilla.org/mozilla-central/rev/813768d074e3accc36dc3313d0bffb658dcc562d