Patterns are recreated every time they paint This is is a possible perf regression from the previous behavior where patterns were cached based on CTM over in the Canvas2dGraphicsContext object. Now that they're over on GraphicsContext we don't have a similar system for caching (yet). This bug is about building one so that we aren't recreating patterns every time we draw them.
Btw, one way to solve this would be to simply roll out r35966, but given that we've had no complaints of poor canvas pattern drawing performance, and no performance tests to validate that we've actually regressed, I recommend we leave this code in for now.
all functional regressions from r35966 (tracked by bug 21498) are now fixed. Only this possible perf regression remains.
The way to typically observe pattern performance issues is with large JPEGs as the pattern tile. This is how we noticed perf issues with creation/throwing stuff away in background tiling patterns in HTML.
Initial landing in r37462.
Wrong bug. Sorry.
I suspect this has long since been solved.