commit | 9e63a81378604506e75479343863d57c35e3a2bb | [log] [tgz] |
---|---|---|
author | Jamie Madill <jmadill@chromium.org> | Fri Nov 16 12:30:04 2018 +0000 |
committer | Commit Bot <commit-bot@chromium.org> | Fri Nov 16 12:30:21 2018 +0000 |
tree | a41651667b922f965435267a6185ac98ae1c2cc9 | |
parent | c30f45d3f9c144503080ff45859db29e9ad71042 [diff] [blame] |
Revert "Minor inlining optimization to Context draw calls." This reverts commit d9ee8bf9620748a65df8f97ae89879eef676caff. Reason for revert: Slightly regresses tests that have dirty objects. See https://chromeperf.appspot.com/report?sid=abdb797da7149beffa29dc8a0869c15d96794749eff50bcb36c07d85fe509096 Original change's description: > Minor inlining optimization to Context draw calls. > > Reduces draw call overhead by up to 3%. > > Bug: angleproject:2966 > Change-Id: Ie7ddb61b905fefe59a06a1528f0a3fde4accaf74 > Reviewed-on: https://chromium-review.googlesource.com/c/1333608 > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> TBR=ynovikov@chromium.org,geofflang@chromium.org,jmadill@chromium.org Change-Id: I6fdd34880a711ecc89d407ae90f3991584f65272 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:2966 Reviewed-on: https://chromium-review.googlesource.com/c/1340199 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
diff --git a/src/libANGLE/State.cpp b/src/libANGLE/State.cpp index ff834ad..bd94e84 100644 --- a/src/libANGLE/State.cpp +++ b/src/libANGLE/State.cpp
@@ -2774,10 +2774,10 @@ } } -angle::Result State::syncDirtyObjectsImpl(const Context *context, const DirtyObjects &dirtyObjects) +angle::Result State::syncDirtyObjects(const Context *context, const DirtyObjects &bitset) { - ASSERT(dirtyObjects.any()); - for (size_t dirtyObject : dirtyObjects) + const DirtyObjects &dirtyObjects = mDirtyObjects & bitset; + for (auto dirtyObject : dirtyObjects) { switch (dirtyObject) {