Commit f2f05c78 authored by grt's avatar grt Committed by Commit bot

Revert of New PaintController under-invalidation checking (patchset #7...

Revert of New PaintController under-invalidation checking (patchset #7 id:120001 of https://codereview.chromium.org/2114653003/ )

Reason for revert:
NOTREACHED being hit in checkUnderInvalidation on WebKit Win7 (dbg); see https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Win7%20%28dbg%29/builds/6481.

Original issue's description:
> New PaintController under-invalidation checking
>
> This is a follow-up of https://codereview.chromium.org/2107103002/
> which broke the original under-invalidation checking in
> PaintController.
>
> BUG=596983,510908
>
> Committed: https://crrev.com/63b12484f2c59ba177a21aba09b8a4edd38e6ea1
> Cr-Commit-Position: refs/heads/master@{#405805}

TBR=chrishtr@chromium.org,pdr@chromium.org,wangxianzhu@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=596983,510908

Review-Url: https://codereview.chromium.org/2156053002
Cr-Commit-Position: refs/heads/master@{#405988}
parent b5683a83
......@@ -35,7 +35,7 @@ crbug.com/524236 virtual/spv2/compositing/repaint/should-not-repaint-composited-
crbug.com/524236 virtual/spv2/compositing/repaint/should-not-repaint-composited-opacity.html [ Failure ]
crbug.com/524236 virtual/spv2/compositing/repaint/should-not-repaint-composited-transform.html [ Failure ]
crbug.com/524236 virtual/spv2/fast/repaint/clip-path-constant-repaint.html [ Failure ]
crbug.com/524236 crbug.com/619103 virtual/spv2/fast/repaint/relative-positioned-movement-repaint.html [ Failure Crash Timeout ]
crbug.com/524236 virtual/spv2/fast/repaint/relative-positioned-movement-repaint.html [ Failure ]
crbug.com/510908 virtual/spv2/svg/custom/object-sizing-no-width-height-change-content-box-size.xhtml [ Failure ]
crbug.com/504613 crbug.com/524248 paint/images/image-backgrounds-not-antialiased.html [ Skip ]
......@@ -1390,4 +1390,4 @@ crbug.com/627844 virtual/gpu-rasterization/fast/images/color-profile-svg.html [
crbug.com/627844 virtual/gpu-rasterization/fast/images/color-profile-background-image-cover.html [ NeedsManualRebaseline ]
crbug.com/627844 virtual/gpu-rasterization/fast/images/color-profile-object.html [ NeedsManualRebaseline ]
crbug.com/627844 virtual/gpu-rasterization/fast/images/ycbcr-with-cmyk-color-profile.html [ NeedsManualRebaseline ]
crbug.com/627844 virtual/gpu/fast/canvas/canvas-createImageBitmap-colorClamping.html [ Pass Failure ]
crbug.com/627844 virtual/gpu/fast/canvas/canvas-createImageBitmap-colorClamping.html [ Pass Failure ]
\ No newline at end of file
......@@ -9,7 +9,12 @@ if (window.testRunner)
if (window.internals) {
internals.settings.setUseDefaultImageInterpolationQuality(true);
internals.runtimeFlags.slimmingPaintUnderInvalidationCheckingEnabled = true;
// TODO(wangxianzhu): Some spv2 tests crash with under-invalidation-checking
// because the extra display items between Subsequence/EndSubsequence for
// under-invalidation checking breaks paint chunks. Should fix this when fixing
// crbug.com/596983.
if (!internals.runtimeFlags.slimmingPaintV2Enabled)
internals.runtimeFlags.slimmingPaintUnderInvalidationCheckingEnabled = true;
}
function runRepaintTest()
......
......@@ -11,7 +11,12 @@ var repaintRects = "";
if (window.internals) {
internals.settings.setUseDefaultImageInterpolationQuality(true);
internals.runtimeFlags.slimmingPaintUnderInvalidationCheckingEnabled = true;
// TODO(wangxianzhu): Some spv2 tests crash with under-invalidation-checking
// because the extra display items between Subsequence/EndSubsequence for
// under-invalidation checking breaks paint chunks. Should fix this when fixing
// crbug.com/596983.
if (!internals.runtimeFlags.slimmingPaintV2Enabled)
internals.runtimeFlags.slimmingPaintUnderInvalidationCheckingEnabled = true;
}
function doTest() {
......
......@@ -21,8 +21,14 @@
// ... // some code which modifies style/layout
// }, true);
if (window.internals)
internals.runtimeFlags.slimmingPaintUnderInvalidationCheckingEnabled = true;
if (window.internals) {
// TODO(wangxianzhu): Some spv2 tests crash with under-invalidation-checking
// because the extra display items between Subsequence/EndSubsequence for
// under-invalidation checking breaks paint chunks. Should fix this when fixing
// crbug.com/596983.
if (!internals.runtimeFlags.slimmingPaintV2Enabled)
internals.runtimeFlags.slimmingPaintUnderInvalidationCheckingEnabled = true;
}
function runAfterLayoutAndPaint(callback, autoNotifyDone) {
if (!window.testRunner) {
......
......@@ -45,10 +45,9 @@ public:
DisplayItem& appendByMoving(DisplayItem&);
bool hasVisualRect(unsigned index) const { return index < m_visualRects.size(); }
IntRect visualRect(unsigned index) const
{
DCHECK(hasVisualRect(index));
ASSERT(index < m_visualRects.size());
return m_visualRects[index];
}
......
......@@ -212,9 +212,8 @@ private:
#if DCHECK_IS_ON()
// The following two methods are for checking under-invalidations
// (when RuntimeEnabledFeatures::slimmingPaintUnderInvalidationCheckingEnabled).
void showUnderInvalidationError(const char* reason, const DisplayItem& newItem, const DisplayItem& oldItem) const;
void checkUnderInvalidation();
bool isCheckingUnderInvalidation() const { return m_underInvalidationCheckingEnd - m_underInvalidationCheckingBegin > 0; }
void checkUnderInvalidation(DisplayItemList::iterator& newIt, DisplayItemList::iterator& currentIt);
void checkCachedDisplayItemIsUnchanged(const char* messagePrefix, const DisplayItem& newItem, const DisplayItem& oldItem);
#endif
// The last complete paint artifact.
......@@ -263,15 +262,6 @@ private:
// This is used to check duplicated ids during createAndAppend().
DisplayItemIndicesByClientMap m_newDisplayItemIndicesByClient;
// These are set in useCachedDrawingIfPossible() and useCachedSubsequenceIfPossible()
// when we could use cached drawing or subsequence and under-invalidation checking is on,
// indicating the begin and end of the cached drawing or subsequence in the current list.
// The functions return false to let the client do actual painting, and PaintController
// will check if the actual painting results are the same as the cached.
DisplayItemList::iterator m_underInvalidationCheckingBegin;
DisplayItemList::iterator m_underInvalidationCheckingEnd;
String m_underInvalidationMessagePrefix;
#endif
#if CHECK_DISPLAY_ITEM_CLIENT_ALIVENESS
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment