Rearranges the code to support the case "&key == &proxy->fUniqueKey".
Removes the redundant GrUniqueKey parameter from
GrProxyProvider::removeUniqueKeyFromProxy (we can just get the key
from the proxy itself). Adds a passthru for "processInvalidUniqueKey"
to GrOnFlushResourceProvier.
Bug: skia:8462
Change-Id: I0c1e1f2c6ff15a9976f8475c19fd8a33a363193c
Reviewed-on: https://skia-review.googlesource.com/c/180048
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
This reverts commit 876dc81f2a.
Reason for revert: Breaking everything
Original change's description:
> Remove win_vulkan_sdk.
>
> We only needed this for the Vulkan headers, which we now have in
> src/third_party.
>
> Change-Id: I453ed73c73b3304520b628527102607d848bcd37
> Reviewed-on: https://skia-review.googlesource.com/c/180775
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Auto-Submit: Ben Wagner <benjaminwagner@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,benjaminwagner@google.com
Change-Id: I0ae35fddfc112631a47db9775d790f999abf26f8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/180779
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
We only needed this for the Vulkan headers, which we now have in
src/third_party.
Change-Id: I453ed73c73b3304520b628527102607d848bcd37
Reviewed-on: https://skia-review.googlesource.com/c/180775
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Hopefully reduces memory footprint of GrFillRectOp and GrTextureOp
The original rect code (GrAAFillRectOp) stored 2 SkMatrices (18 floats), 2
SkRects (8 floats) an SkPMColor4f (4 floats) and a flag (1 int) for a total
of 124 bytes per quad that was stored in the op.
The first pass at the rectangle consolidation switched to storing device and
local quads as GrPerspQuads (32 floats), an SkPMColor4f (4 floats) and a flag
(1 int) for a total of 148 bytes per quad. After landing, several memory
regressions appeared in Chrome and our perf monitor.
Several intertwined approaches are taken here. First, GrPerspQuad no longer
caches 1/w, which makes a quad 12 floats instead of 16. Second, a specialized
list type is defined that allows storing the x, y, and extra metadata together
for quads, but keeps the w components separate. When the quad type isn't
perspective, w is not stored at all since it is implicitly 1 and can be
reconstituted at tessellation time. This brings the total per quad to either
84 or 116 bytes, depending on if the op list needs perspective information.
Bug: chromium:915025
Bug: chromium:917242
Change-Id: If37ee122847b0c32604bb45dc2a1326b544f9cf6
Reviewed-on: https://skia-review.googlesource.com/c/180644
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Just to clean things up a bit.
Bug: skia:
Change-Id: I0e34c148a92817084348fcf62d9f513887933cb3
Reviewed-on: https://skia-review.googlesource.com/c/180768
Reviewed-by: Florin Malita <fmalita@chromium.org>
Bug: skia:
Change-Id: Icb840daf1fd31afdeed387486db54283bb5b85f3
Reviewed-on: https://skia-review.googlesource.com/c/180640
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
4627b3705d..9fa54eab25
git log 4627b3705d59..9fa54eab2590 --date=short --no-merges --format='%ad %ae %s'
2019-01-03 jmadill@chromium.org Optimize and inline more validation.
Created with:
gclient setdep -r third_party/externals/angle2@9fa54eab2590
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=bungeman@google.com
Change-Id: I641767c1508ce581e2cefd7107770cf384d77d31
Reviewed-on: https://skia-review.googlesource.com/c/180907
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This was a pretty serious performance regression, especially on ARM.
Code size was wash, almost exactly 1:1.
While I like this one-big-switch approach in terms of maintainability
and platform obliviousness, I'm not willing to take such a big hit.
This'll just have to stay platform-aware.
(The old code is also easier to debug and profile, but that's peanuts.)
https://perf.skia.org/e/?begin=1546440652&end=1546459404&keys=X2ec5a42b0071f8848a5875f14400493d&xbaroffset=39028
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: Ia47fd25bbe4145468efd67cbddef7e6f92de3f02
Reviewed-on: https://skia-review.googlesource.com/c/180940
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Since we only see glyphs now, we don't need to treat text runs generically
with an encoding.
Bug: skia:
Change-Id: I683d00772bca96973a1cbd65145b46ffc741418b
Reviewed-on: https://skia-review.googlesource.com/c/180921
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>
904bb91857..4627b3705d
git log 904bb9185767..4627b3705d59 --date=short --no-merges --format='%ad %ae %s'
2019-01-03 jmadill@chromium.org Add gl null driver tests to DrawElements.
Created with:
gclient setdep -r third_party/externals/angle2@4627b3705d59
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=bungeman@google.com
Change-Id: Ie9b8f4e44aaf62fb582462ae97ae3b32d8ecc8c0
Reviewed-on: https://skia-review.googlesource.com/c/180900
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
04ea03e4e1..904bb91857
git log 04ea03e4e1e1..904bb9185767 --date=short --no-merges --format='%ad %ae %s'
2019-01-02 jmadill@chromium.org Rename constants in blocklayout.h.
2019-01-02 bryan.bernhart@intel.com ES31: Fix for reading back initialized SSBO buffers in D3D11
2019-01-02 syoussefi@chromium.org Suppress flaky Linux/Intel/OpenGL test.
2019-01-02 jmadill@chromium.org Suppress FL 9_3 failing test.
Created with:
gclient setdep -r third_party/externals/angle2@904bb9185767
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=bungeman@google.com
Change-Id: I6709bf8e3a076b4fd8af284768d48eb5d77464e6
Reviewed-on: https://skia-review.googlesource.com/c/180720
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
We want to hide this API from general public use. Chromium can dig into
skia to include it as it does with other Skia API's that are in src
Bug: skia:
Change-Id: I00dc36d181237ea0785eefb31ad6c2d4e50e3c68
Reviewed-on: https://skia-review.googlesource.com/c/180648
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
- avoid using legacy paint->font converter
- call out that drawText exists just for testing
- simplify drawText to assume UTF8
Bug: skia:
Change-Id: Ide14d8581d4744827d2282e7983cc5e19070b21e
Reviewed-on: https://skia-review.googlesource.com/c/180641
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Herb Derby <herb@google.com>
This sets up the context and adds support for creating RTContexts, RTProxies, RTs,
and GrVkRenderPass's that wrap the external secondary command buffer.
Bug: skia:
Change-Id: I80ebbb690a5fe464f775c5fcad651dfe2a150418
Reviewed-on: https://skia-review.googlesource.com/c/178926
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
1) Almost nothing is ever DCI P3, cameras and such use Display P3
2) This transfer function was wrong: DCI P3's TF is gamma 2.6
Bug: skia:6720
Change-Id: I167a3ce40ff2296f4afb446408f691d300dacd9c
Reviewed-on: https://skia-review.googlesource.com/c/180378
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This is the first step of making a wrapper class to keep these two caches
in sync.
Change-Id: I84ef408a31a77074191a60c8b5943ededcd306b7
Reviewed-on: https://skia-review.googlesource.com/c/180375
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: Ic2e6259345b3b25075f0a5eb52bfc8df272a2de3
Reviewed-on: https://skia-review.googlesource.com/c/180601
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Doing some comparative bench runs, I think allocating a little space
here on the stack looks important.
I do want to see if we can get away with this simpler SkSTArray pair
setup instead of the old approach, building a linked list in reverse
inside an SkAlloc. I'm going to try that old approach too for
comparison, but if there's no big difference I like this way.
Change-Id: I01486d8d8c90e159d22659b5bc678ecce6241618
Reviewed-on: https://skia-review.googlesource.com/c/180603
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
This would toss the _obs mode SkRasterPipelines into highp way too often, and is just a bug.
This fixes most diffs between the jumper and obs modes. The rest look like FMA changes, and there are no diffs when limited to SSE4.1.
Change-Id: Ib71c2a8c720b8b1e6319d1c3354ea6f4f2d9b77f
Reviewed-on: https://skia-review.googlesource.com/c/180602
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
0c6672158c..04ea03e4e1
git log 0c6672158c77..04ea03e4e1e1 --date=short --no-merges --format='%ad %ae %s'
2019-01-02 jmadill@chromium.org Make default block member info a constant.
2019-01-02 jiajia.qin@intel.com ES31: Fix the bug that SSBO is active but not statically used
Created with:
gclient setdep -r third_party/externals/angle2@04ea03e4e1e1
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=bungeman@google.com
Change-Id: I3d4e367499f03a0bc468f7f32102fea2a55b11a6
Reviewed-on: https://skia-review.googlesource.com/c/180522
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This reverts commit d7c2a383e1.
Reason for revert: Attempting re-land.
Original change's description:
> Revert "Wide color support in AA Convex path renderer"
>
> This reverts commit 51eaa79d19.
>
> Reason for revert: Speculative revert for layout tests.
>
> Original change's description:
> > Wide color support in AA Convex path renderer
> >
> > Fixes several more GMs in glenarrow
> >
> > Bug: skia:
> > Change-Id: I3446101e8fd56bb7173cd640a9ccf32b4951842a
> > Reviewed-on: https://skia-review.googlesource.com/c/179990
> > Reviewed-by: Mike Klein <mtklein@google.com>
> > Commit-Queue: Brian Osman <brianosman@google.com>
>
> TBR=mtklein@google.com,brianosman@google.com,csmartdalton@google.com
>
> Change-Id: I9990ec3cfdf35ce870b8205b6317d7787a02d7c7
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/c/180321
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
TBR=mtklein@google.com,brianosman@google.com,csmartdalton@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: skia:
Change-Id: I1b6733e6307f917e8945454140c4acee96b33c7f
Reviewed-on: https://skia-review.googlesource.com/c/180366
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Found by oss-fuzz build using -Wextra-semi-stmt
Bug: oss-fuzz:12147
Change-Id: I88c9f66ce5902a44129e432d50c76d1b1b66ebe3
Reviewed-on: https://skia-review.googlesource.com/c/180367
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
- TextFill is always "Fill", so eliminate dead code
- Stop getting textScale, textSize, etc from paint, get from font instead.
- Stop calling SkFont::LEGACY_applyToPaint.
- replace SkPDFDevice::populateGraphicStateEntryFromPaint
all tests return the same PDF files.
Change-Id: I46a46a501f5ebc881b1458f2f9cb9397b3df1e06
Reviewed-on: https://skia-review.googlesource.com/c/180320
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Herb Derby <herb@google.com>