As it stands, we can end up unioning a rect with a page-relative origin and a rect with a 0,0 origin (the compositing layer), creating huge repaint rects with some content. Composited descendants don't need to be factored in here (the only use of repaintRectIncludingDescendants is in scrollContentsFathPath, and composited layers won't need to be invalidated manually there). This is a significant scrolling performance win on some pages. <rdar://problem/11445132>
Created attachment 141845 [details] patch
http://trac.webkit.org/changeset/117032