Commit Graph

30495 Commits

Author SHA1 Message Date
Mike Klein
2a769859f0 aggressively refactor pipeline building in SkColorSpaceXform
This rewrites things into 5 distinct phases:
  1) load src
  2) linearize src
  3) gamut transform
  4) apply dst transfer function and premul
  5) store dst

In the existing code, steps 1+2 were really intertwined,
and we had all sorts of arbitrary restrictions on input
formats and output formats.  I've removed most of those.

This is guarded by SK_COLOR_SPACE_XFORM_LEGACY_PIPELINE
for Blink layout tests.  (The 35 diffs all look fine.)

Bug: skia:7114

Change-Id: Ib5f15d1ac3240a6ef202ba30acef660152beee82
Reviewed-on: https://skia-review.googlesource.com/55320
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
2017-10-05 16:39:34 +00:00
Mike Klein
46d6c683c1 disable object-size santizer in debug builds
This avoids a warning-as-error:

 clang-5.0: error: the object size sanitizer has no effect at -O0, but
 is explicitly enabled:

Change-Id: I53a16acc3e743b42fe9c2f35919d3c09d5d601b7
Reviewed-on: https://skia-review.googlesource.com/55720
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-10-05 15:58:34 +00:00
Ben Wagner
8d64ee7795 Update SkBufferHead fRefCnt to std::atomic.
This fixes the noisiest bit of a debug tsan build.

Change-Id: I5df8cb3003c73640c04bd73e0aad1aefd87f833e
Reviewed-on: https://skia-review.googlesource.com/55480
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2017-10-05 15:24:23 +00:00
Robert Phillips
3a93053831 Always use draws instead of clears for ANGLE D3D11
At least for my repro case on a Z620 with an nVidia Quadro K620 and recent drivers, this eliminates the noise artifacts.

It appears that full target clears are broken in ANGLE D3D11.

Note I was never able to repro the bug in the D3D9 or openGL configs.

The bug reproed for both the ES2 and ES3 ANGLE D3D11 configs though.

Bug: 768134
Change-Id: I68e5fa0dc5e84b31d1d01a1e4b86132ab12a2e09
Reviewed-on: https://skia-review.googlesource.com/55381
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-10-05 11:31:03 +00:00
Robert Phillips
01f8e41c13 Revert "Clean up SkString reference counting a bit."
This reverts commit a910c847e9.

Reason for revert: Compilation failure on Ubuntu14 bots

../../../../../work/skia/src/core/SkString.cpp:200:55: error: could not convert ‘{0, {0}, 0}’ from ‘<brace-enclosed initializer list>’ to ‘const SkString::Rec’
 const SkString::Rec SkString::gEmptyRec = { 0, {0}, 0 };

Original change's description:
> Clean up SkString reference counting a bit.
> 
> BUG=skia:7107
> 
> Change-Id: I47072bf31b902c79dbb850179ff6d35940de3e63
> Reviewed-on: https://skia-review.googlesource.com/54720
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>

TBR=mtklein@google.com,bungeman@google.com,reed@google.com

Change-Id: I6ec327511e8e1c1fd7e4c1bd5839c0547d4ab609
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7107
Reviewed-on: https://skia-review.googlesource.com/55640
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-10-05 11:28:35 +00:00
angle-deps-roller@chromium.org
1ea81e766e Roll skia/third_party/externals/angle2/ c1abf9178..ce8602ab7 (1 commit)
c1abf91788..ce8602ab79

$ git log c1abf9178..ce8602ab7 --date=short --no-merges --format='%ad %ae %s'
2017-10-03 kbr WebGL requires GL_FRAMEBUFFER_UNSUPPORTED for identical FBO attachments.

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Build-Debian9-GCC-x86_64-Release-ANGLE
TBR=scroggo@google.com

Change-Id: I8e52e2d501575051a44c0b60bce619416adcc743
Reviewed-on: https://skia-review.googlesource.com/55621
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-05 02:39:43 +00:00
Mike Klein
b93fdfd6fd Revert "Don't execute onFlush op lists until after GPU data is uploaded"
This reverts commit 374a4e49e4.

Reason for revert: lots of failures across the board.  Here's one:

../../../src/gpu/GrDrawingManager.cpp:203: fatal error: "assert(onFlushOpList->unique())"


Original change's description:
> Don't execute onFlush op lists until after GPU data is uploaded
> 
> Bug: skia:
> Change-Id: I2ea15f67466761ebd24b9d4a8eb51cd2d452be3c
> Reviewed-on: https://skia-review.googlesource.com/54942
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

TBR=robertphillips@google.com,csmartdalton@google.com

Change-Id: I3f9de3708dd925c93aefc1e6fe8a48833de9171b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/55600
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-10-05 01:19:54 +00:00
angle-deps-roller@chromium.org
e5ccb29e1e Roll skia/third_party/externals/angle2/ 10d4026b3..c1abf9178 (2 commits)
10d4026b3c..c1abf91788

$ git log 10d4026b3..c1abf9178 --date=short --no-merges --format='%ad %ae %s'
2017-10-03 jmadill Fix leaking objects with UniqueObjectPointer.
2017-09-25 jmadill Vulkan: Implement basic uniform shader parsing.

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Build-Debian9-GCC-x86_64-Release-ANGLE
TBR=scroggo@google.com

Change-Id: I276f3bffe772b457799abebff921681f1b7ef975
Reviewed-on: https://skia-review.googlesource.com/55500
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-04 23:51:03 +00:00
Mike Klein
98156c4592 refactor SkColorSpaceXform a bit
I was having trouble reading my way through this code,
so I decided it needed a little weedwhacking.

The main thrust here is:
  - remove completely pointless ColorSpaceMatch templating
  - remove absurdly paranoid public/protected/private/friend
    relationships

This is still about twice as overdesigned as I'd like...

Change-Id: I275ddbe028ebb09ed383ed7bfaba394975eea27a
Reviewed-on: https://skia-review.googlesource.com/55260
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
2017-10-04 22:44:43 +00:00
Chris Dalton
374a4e49e4 Don't execute onFlush op lists until after GPU data is uploaded
Bug: skia:
Change-Id: I2ea15f67466761ebd24b9d4a8eb51cd2d452be3c
Reviewed-on: https://skia-review.googlesource.com/54942
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-10-04 22:44:03 +00:00
angle-deps-roller@chromium.org
448324218a Roll skia/third_party/externals/angle2/ cb62d86fc..10d4026b3 (1 commit)
cb62d86fc1..10d4026b3c

$ git log cb62d86fc..10d4026b3 --date=short --no-merges --format='%ad %ae %s'
2017-10-04 cwallez Fix compilation error on 32-bit systems

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Build-Debian9-GCC-x86_64-Release-ANGLE
TBR=scroggo@google.com

Change-Id: Ifec261bd8b67b052294bba3771cab21d2d2b9deb
Reviewed-on: https://skia-review.googlesource.com/55420
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-04 22:34:43 +00:00
Ben Wagner
a910c847e9 Clean up SkString reference counting a bit.
BUG=skia:7107

Change-Id: I47072bf31b902c79dbb850179ff6d35940de3e63
Reviewed-on: https://skia-review.googlesource.com/54720
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2017-10-04 21:38:33 +00:00
Mike Reed
e06739531b Avoid overflow computing reserve for aaclip
BUG=chromium:713764
Change-Id: I32c95157d5f2b21e9981a07092558a1f6294a463
Reviewed-on: https://skia-review.googlesource.com/55380
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-10-04 21:14:23 +00:00
angle-deps-roller@chromium.org
f34b8b1f4e Roll skia/third_party/externals/angle2/ baf5d9458..cb62d86fc (1 commit)
baf5d9458e..cb62d86fc1

$ git log baf5d9458..cb62d86fc --date=short --no-merges --format='%ad %ae %s'
2017-10-04 geofflang Don't delete framebuffers multiple times if they are bound multiple times.

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Build-Debian9-GCC-x86_64-Release-ANGLE
TBR=scroggo@google.com

Change-Id: I476078d98790825f89f4ffee6169f8abff62004e
Reviewed-on: https://skia-review.googlesource.com/55300
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-04 20:43:13 +00:00
Greg Daniel
fc5060df53 Revert "Revert "Update lockTextureProxy to return mipped proxys if mipping is requested.""
This reverts commit 87c76edd2c.

Reason for revert: attempt to reland

Original change's description:
> Revert "Update lockTextureProxy to return mipped proxys if mipping is requested."
> 
> This reverts commit 97abf014b4.
> 
> Reason for revert: REALLY Really really really big perf regressions
> 
> Original change's description:
> > Update lockTextureProxy to return mipped proxys if mipping is requested.
> > 
> > We will either create a new mipped surface from scratch, or just create
> > the base layer and copy that into the mipped surface. We then defer the
> > creation of the rest of the mips to the GPU.
> > 
> > Bug: skia:
> > Change-Id: Ida3000ad5e666153c61b05e714f033138593b09b
> > Reviewed-on: https://skia-review.googlesource.com/52743
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> 
> TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com
> 
> Change-Id: If3b1ff555ef310b75493412a7533175195994684
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/54320
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:
Change-Id: I176ff7279f29eff536ab13aff8fda882b6ef7a2f
Reviewed-on: https://skia-review.googlesource.com/55081
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-10-04 20:31:33 +00:00
Brian Osman
b379dcd64e Sever fOriginalPath connection whenever a GrShape becomes a simple type
When drawing a round-rect, for example, we may end up in drawPath with a
temporary path that was created with the rrect added. We ended up putting
a genID listener on that (stack allocated) path, so we would evict cache
entries immediately. This restores the old behavior, where cache entries
for paths derived from simple types are never invalidated.

Bug: skia:7087
Change-Id: I3eed9c3a289241bfe1e42036be3362f592256693
Reviewed-on: https://skia-review.googlesource.com/54460
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-10-04 20:30:03 +00:00
Brian Osman
5fcd3913da Fix path renderer cache test logic to account for other resources
Bug: skia:
Change-Id: Iadf88cc07fac23544317166699138644218b38d1
Reviewed-on: https://skia-review.googlesource.com/55141
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-10-04 19:10:12 +00:00
Cary Clark
bc5697d3b1 starting next gaggle of docs
starting next gaggle of docs

Docs-Preview: https://skia.org/?cl=50264
Bug: skia:6898
Change-Id: I639795b55c0c96b2efccac13cb67592f055a75a2
Reviewed-on: https://skia-review.googlesource.com/50264
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2017-10-04 18:50:33 +00:00
angle-deps-roller@chromium.org
0078e91271 Roll skia/third_party/externals/angle2/ a99ed554c..baf5d9458 (1 commit)
a99ed554ca..baf5d9458e

$ git log a99ed554c..baf5d9458 --date=short --no-merges --format='%ad %ae %s'
2017-08-28 jie.a.chen ES31: Add UNIFORM support for ProgramInterface

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Build-Debian9-GCC-x86_64-Release-ANGLE
TBR=scroggo@google.com

Change-Id: I611a9ee0cca980ed437a95c4baa4a5e569a43687
Reviewed-on: https://skia-review.googlesource.com/55121
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-04 16:59:32 +00:00
Chris Dalton
a84cacf14a Rename GrOpList::reset to endFlush
Bug: skia:7111
Change-Id: I9e48224c7edcc51bd0368cb7c115acbc3bf8da16
Reviewed-on: https://skia-review.googlesource.com/54500
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-10-04 16:57:03 +00:00
Ben Wagner
172c6bd8e9 Add more detail to Swarming bot doc.
No-Try: true
Docs-Preview: https://skia.org/?cl=54561
Change-Id: Id7bcccf1ffa7b1726bc5f9394178a629078b1225
Reviewed-on: https://skia-review.googlesource.com/54561
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-10-04 16:31:33 +00:00
Robert Phillips
fa8c080449 Use SK_DISABLE_DEFERRED_PROXIES to only disable deferred proxies for Chrome
This relies on https://chromium-review.googlesource.com/c/chromium/src/+/700475 (Readd SK_DISABLE_DEFERRED_PROXIES flag) landing in Chrome first.

It refines the changes made in: https://skia-review.googlesource.com/c/skia/+/54004 (Temporarily disable deferred texture proxies)

Change-Id: I12af50349516d32f74cd7f7dfd25a668284f64fa
Reviewed-on: https://skia-review.googlesource.com/55100
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-10-04 15:42:22 +00:00
Cary Clark
490847e209 add missing params
SkBitmap is missing a couple of parameter names.
Parameter names make doxygen easier.

Also qualify hasHardwareMipMap and
setHasHardwareMipMap to Android framework.

R=djsollen@google.com
Bug: skia:6898
Change-Id: I502da35dc5761d73195b6a21dd4310cb001a6924
Reviewed-on: https://skia-review.googlesource.com/55161
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2017-10-04 15:33:23 +00:00
angle-deps-roller@chromium.org
e76e418536 Roll skia/third_party/externals/angle2/ 035fd6b39..a99ed554c (2 commits)
035fd6b398..a99ed554ca

$ git log 035fd6b39..a99ed554c --date=short --no-merges --format='%ad %ae %s'
2017-09-22 jie.a.chen Refactor data conversions for state commands
2017-10-03 jmadill Vulkan: Implement very basic DrawElements.

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Build-Debian9-GCC-x86_64-Release-ANGLE
TBR=scroggo@google.com

Change-Id: I3269a65aaa7d4bbf523c5f66ea07f434df9ef1de
Reviewed-on: https://skia-review.googlesource.com/54981
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-04 15:30:12 +00:00
Greg Daniel
c42b20b832 Revert "Revert "When flushing, reset flush state before op lists""
This reverts commit f8bc0018be.

Reason for revert: disabling failing test

Original change's description:
> Revert "When flushing, reset flush state before op lists"
> 
> This reverts commit 78bdee200c.
> 
> Reason for revert: breaking PathRendererCacheTests.cpp unit test
> 
> Original change's description:
> > When flushing, reset flush state before op lists
> > 
> > When we reset the flush state after executing the ops in a flush, we reset
> > the stored pipelines which may be holding refs to resources in their processors.
> > 
> > We want the resources that we wrote to in the op list to be freed last for caching
> > LRU purposes. Thus we make sure to free all the pipeline resources first before
> > resetting and freeing the op lists
> > 
> > Bug: skia:
> > Change-Id: I5b02e9b7532007b5854e906bf4d64e901e7e7e53
> > Reviewed-on: https://skia-review.googlesource.com/54760
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,robertphillips@google.com
> 
> Change-Id: If74a158e90316553a401386c8c7a6b3c2b29a7df
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/55080
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,robertphillips@google.com

Bug: skia:
Change-Id: Ibdfe37c1f9e54956bf1725d1d7474a69efcd7673
Reviewed-on: https://skia-review.googlesource.com/55102
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-10-04 15:03:33 +00:00
Brian Osman
69f26dbea2 Ensure glxGetProcAddress is declared
Users on some systems reported that this was necessary.

Bug: skia:
Change-Id: I1e7f6c4859a34008c307256ab3d77265bdbe4f6b
Reviewed-on: https://skia-review.googlesource.com/55101
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-10-04 14:11:42 +00:00
Robert Phillips
435db420bd Disable PinnedImageTest on Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Release-ANGLE bot
Bug: skia:7096
Change-Id: I536d81110c842da662b32a94a352a34a6854e3a9
Reviewed-on: https://skia-review.googlesource.com/55140
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-10-04 13:59:12 +00:00
Greg Daniel
f8bc0018be Revert "When flushing, reset flush state before op lists"
This reverts commit 78bdee200c.

Reason for revert: breaking PathRendererCacheTests.cpp unit test

Original change's description:
> When flushing, reset flush state before op lists
> 
> When we reset the flush state after executing the ops in a flush, we reset
> the stored pipelines which may be holding refs to resources in their processors.
> 
> We want the resources that we wrote to in the op list to be freed last for caching
> LRU purposes. Thus we make sure to free all the pipeline resources first before
> resetting and freeing the op lists
> 
> Bug: skia:
> Change-Id: I5b02e9b7532007b5854e906bf4d64e901e7e7e53
> Reviewed-on: https://skia-review.googlesource.com/54760
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,robertphillips@google.com

Change-Id: If74a158e90316553a401386c8c7a6b3c2b29a7df
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/55080
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-10-04 12:26:43 +00:00
Greg Daniel
78bdee200c When flushing, reset flush state before op lists
When we reset the flush state after executing the ops in a flush, we reset
the stored pipelines which may be holding refs to resources in their processors.

We want the resources that we wrote to in the op list to be freed last for caching
LRU purposes. Thus we make sure to free all the pipeline resources first before
resetting and freeing the op lists

Bug: skia:
Change-Id: I5b02e9b7532007b5854e906bf4d64e901e7e7e53
Reviewed-on: https://skia-review.googlesource.com/54760
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-10-04 12:02:12 +00:00
angle-deps-roller@chromium.org
a02fe096a8 Roll skia/third_party/externals/angle2/ 682efdc47..035fd6b39 (3 commits)
682efdc47a..035fd6b398

$ git log 682efdc47..035fd6b39 --date=short --no-merges --format='%ad %ae %s'
2017-10-03 jmadill Vulkan: Implement very basic textures.
2017-09-27 geofflang Make GL_ANGLE_framebuffer_multisample enableable.
2017-09-13 geofflang Simplify GenerateMipmap validation now that sized format info is tracked.

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Build-Debian9-GCC-x86_64-Release-ANGLE
TBR=scroggo@google.com

Change-Id: I2b5249a0c0939398a7c15d291d3bea954e52f5e3
Reviewed-on: https://skia-review.googlesource.com/54844
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-04 03:04:12 +00:00
recipe-roller
cf527d978d Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/c634ba57059c1ff965ccbfa3277bf025fb1ae891 Allow gclient solution URLs to be |None|. (mmoss@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I85619aa3a55202033ae02492d8d69a5b5810209c
Reviewed-on: https://skia-review.googlesource.com/54880
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2017-10-04 01:44:42 +00:00
recipe-roller
93b324dd31 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/3be96a83b875d29badb71a914b1342cb38935d99 roll-dep: Add comments indicating that --no-log needs to keep working (borenet@google.com)
  https://crrev.com/7659f4ff2dcbfda98b64d16bafc4bf47da1cd6ac Remove rietveld git cherry-pick-upload command (agable@chromium.org)
  https://crrev.com/e632e54438ad5d2b45ee9206c7fcf8babea0762c Remove rietveld commit queue command line client (agable@chromium.org)
  https://crrev.com/355b70412f8b725dcf6771967387cf4ba999c98b Update fetch config with new Syzygy location. (siggi@chromium.org)
  https://crrev.com/ecf53fecd6e42feeb2fad05f73240dbe6833317b gclient flatten: emit conditions for hooks (phajdan.jr@chromium.org)
  https://crrev.com/e0214743cb0150774ed9d766cd2031ffc38c0335 gclient: add support for native boolean variables (phajdan.jr@chromium.org)
  https://crrev.com/78ce24e38936b4423a02a7df02db5afe8bd7c452 gclient flatten: properly quote conditionals (phajdan.jr@chromium.org)
  https://crrev.com/a718c3ebd3caa2f336ab371fe8c0c8a7f0adfbca Simplify git-cl-diff for Gerrit (agable@chromium.org)
recipe_engine:
  https://crrev.com/4d872b88fb06006ec917c6d2a3324e26c0124319 Add 'service_account' recipe module. (vadimsh@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8f7587e38df45ba6d1e6d988f5ac8735419689f0
Reviewed-on: https://skia-review.googlesource.com/54860
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2017-10-04 01:12:32 +00:00
angle-deps-roller@chromium.org
4c9b6ef571 Roll skia/third_party/externals/angle2/ a60d35672..682efdc47 (6 commits)
a60d35672e..682efdc47a

$ git log a60d35672..682efdc47 --date=short --no-merges --format='%ad %ae %s'
2017-10-03 jmadill Fix a GCC warning found by Skia.
2017-09-22 geofflang Implement robust resource init for D3D9.
2017-09-21 geofflang Remove initialization of ImageD3D objects now that lazy init covers them
2017-09-27 geofflang Remove references to the framebuffer fetch extensions in the GL layer.
2017-09-26 geofflang Make query extensions enableable.
2017-10-03 jmadill D3D11: Lazy robust resource init.

Created with:
  roll-dep skia/third_party/externals/angle2
BUG=None


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Build-Debian9-GCC-x86_64-Release-ANGLE
TBR=scroggo@google.com

Change-Id: I1f591c1bbf2f8a62e8eb59711e98b16e8d1c2b19
Reviewed-on: https://skia-review.googlesource.com/54700
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-03 20:13:08 +00:00
Mike Reed
f0ffb8943b Revert[4] "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap"
This reverts commit 5a2e50edc5.

Bug: skia:
Change-Id: I8d28b5c07d90130e5a1653923740eaf189ecb954
Reviewed-on: https://skia-review.googlesource.com/53900
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-10-03 20:03:35 +00:00
Brian Osman
d140fe910e Add MDB comments to recent kNoPendingIO changes
Bug: skia:
Change-Id: I93de3aea986fe64fe536fdf6db8b075c101082b2
Reviewed-on: https://skia-review.googlesource.com/54461
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-10-03 18:41:15 +00:00
Ben Wagner
af89366cb8 Make SkString reference counting thread/TSAN safe.
BUG=skia:7107

Change-Id: I8ead98f7694faaed8e6f6f29b1fcd88501d36b66
Reviewed-on: https://skia-review.googlesource.com/54400
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2017-10-03 18:34:35 +00:00
Chris Dalton
364e24809d CCPR: Avoid left shifts on negative numbers
(ASAN doesn't like them.)

Bug: skia:
Change-Id: Id28d3ea9cabc9895cb097eae3e437f557178fe1c
Reviewed-on: https://skia-review.googlesource.com/54180
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2017-10-03 18:15:34 +00:00
Leon Scroggins
6e5f48f666 Revert "Roll skia/third_party/externals/angle2/ a60d35672..09cd47779 (3 commits)"
This reverts commit 30185bf5c5.

Reason for revert: Failing on Build-Debian9-GCC-x86_64-Release-ANGLE [1]

../../../third_party/externals/angle2/src/libANGLE/Framebuffer.cpp:201:36: error: comparison between ‘enum gl::<anonymous>’ and ‘enum gl::Framebuffer::DirtyBitType’ [-Werror=enum-compare]
                   gl::Framebuffer::DIRTY_BIT_COLOR_ATTACHMENT_MAX,
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../third_party/externals/angle2/src/libANGLE/Framebuffer.cpp:204:36: error: comparison between ‘enum gl::<anonymous>’ and ‘enum gl::Framebuffer::DirtyBitType’ [-Werror=enum-compare]
                   gl::Framebuffer::DIRTY_BIT_DEPTH_ATTACHMENT,
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors

It appears that [2] changed this line.
[1] https://chromium-swarm.appspot.com/task?id=38fc09e8e73db910&refresh=10#
[2] 05b35b210e%5E%21/#F2

Original change's description:
> Roll skia/third_party/externals/angle2/ a60d35672..09cd47779 (3 commits)
> 
> a60d35672e..09cd47779d
> 
> $ git log a60d35672..09cd47779 --date=short --no-merges --format='%ad %ae %s'
> 2017-09-27 geofflang Remove references to the framebuffer fetch extensions in the GL layer.
> 2017-09-26 geofflang Make query extensions enableable.
> 2017-10-03 jmadill D3D11: Lazy robust resource init.
> 
> Created with:
>   roll-dep skia/third_party/externals/angle2
> 
> 
> Documentation for the AutoRoller is here:
> https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
> 
> If the roll is causing failures, see:
> http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls
> 
> 
> CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE
> TBR=scroggo@google.com
> 
> Change-Id: I7966c43a7e5b33a4b82097c6a136e7368c7b8f0b
> Reviewed-on: https://skia-review.googlesource.com/54440
> Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
> Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>

TBR=scroggo@google.com,angle-deps-roller@chromium.org

Change-Id: I7a18fa4b8a87c9e8389e64b942fa93af7cef0917
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Cq-Include-Trybots: skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE, Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE, Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE, Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE, Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE, Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE, Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE, Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE, Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE, Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE, Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE, Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE
Reviewed-on: https://skia-review.googlesource.com/54560
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-10-03 17:42:36 +00:00
Brian Osman
7ea46bf9d9 Remove test suppresion for ANGLE GLPrograms test
The NaN shader literal bug has been worked around, so lets get this test
coverage back.

Bug: skia:6842
Change-Id: I7b6b00972d9e00e49e5f2eccac9f2eda7fffbb6c
Reviewed-on: https://skia-review.googlesource.com/54362
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-10-03 17:42:05 +00:00
angle-deps-roller@chromium.org
30185bf5c5 Roll skia/third_party/externals/angle2/ a60d35672..09cd47779 (3 commits)
a60d35672e..09cd47779d

$ git log a60d35672..09cd47779 --date=short --no-merges --format='%ad %ae %s'
2017-09-27 geofflang Remove references to the framebuffer fetch extensions in the GL layer.
2017-09-26 geofflang Make query extensions enableable.
2017-10-03 jmadill D3D11: Lazy robust resource init.

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE
TBR=scroggo@google.com

Change-Id: I7966c43a7e5b33a4b82097c6a136e7368c7b8f0b
Reviewed-on: https://skia-review.googlesource.com/54440
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-03 17:05:35 +00:00
Ben Wagner
9fb285e322 Switch many jobs to Clang.
No-Try: true
Change-Id: Ie255d46ff50d13d25d045791c1c3066f06ab9243
Reviewed-on: https://skia-review.googlesource.com/53601
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-10-03 16:17:19 +00:00
Jim Van Verth
63272cfc19 Potential fix for Android regression
Bug: skia:
Change-Id: I1130084fd526f3cc0d39bfa5293d79ce408691b2
Reviewed-on: https://skia-review.googlesource.com/54361
Reviewed-by: Stan Iliev <stani@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-10-03 15:08:34 +00:00
angle-deps-roller@chromium.org
ab7c56c958 Roll skia/third_party/externals/angle2/ adaabc365..a60d35672 (1 commit)
adaabc3658..a60d35672e

$ git log adaabc365..a60d35672 --date=short --no-merges --format='%ad %ae %s'
2017-10-02 kainino Re-enable uninitialized-local test that should pass now

Created with:
  roll-dep skia/third_party/externals/angle2


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE
TBR=scroggo@google.com

Change-Id: I9fad42291a9cc6e27453da8d56feac7629abd39d
Reviewed-on: https://skia-review.googlesource.com/54341
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-03 15:01:29 +00:00
Greg Daniel
87c76edd2c Revert "Update lockTextureProxy to return mipped proxys if mipping is requested."
This reverts commit 97abf014b4.

Reason for revert: REALLY Really really really big perf regressions

Original change's description:
> Update lockTextureProxy to return mipped proxys if mipping is requested.
> 
> We will either create a new mipped surface from scratch, or just create
> the base layer and copy that into the mipped surface. We then defer the
> creation of the rest of the mips to the GPU.
> 
> Bug: skia:
> Change-Id: Ida3000ad5e666153c61b05e714f033138593b09b
> Reviewed-on: https://skia-review.googlesource.com/52743
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

TBR=egdaniel@google.com,robertphillips@google.com,brianosman@google.com

Change-Id: If3b1ff555ef310b75493412a7533175195994684
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/54320
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-10-03 13:43:00 +00:00
Leon Scroggins III
862c19675e Remove static initializers in SkCodec
Bug: 768878

Switch const declarations to constexpr where appropriate. Speculative
fix for crbug.com/768878.

Change-Id: I7fc356e623ce7a0f2b87e92e9a8ed95d5c423d79
Reviewed-on: https://skia-review.googlesource.com/54101
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Chris Blume <cblume@chromium.org>
2017-10-03 12:35:58 +00:00
nagarajan.n
dd7ffa5a55 Handle the error input case in SkPngCodec decode function
This patch handles the error input case in SkPngCodec decode function
when there is error in input.

Bug: skia:None
Change-Id: I53b44f2411cef129b39e76e2cd6b8cd4c754b932
Reviewed-on: https://skia-review.googlesource.com/51860
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2017-10-03 12:24:58 +00:00
angle-deps-roller@chromium.org
0804b57e12 Roll skia/third_party/externals/angle2/ 8c5b69cba..adaabc365 (6 commits)
8c5b69cbaa..adaabc3658

$ git log 8c5b69cba..adaabc365 --date=short --no-merges --format='%ad %ae %s'
2017-10-02 geofflang Support PBO and map buffer extensions in the NULL backend.
2017-10-02 geofflang Support GL_NV_fence in the NULL backend.
2017-09-26 geofflang Make GL_EXT_blend_minmax enableable.
2017-09-26 geofflang Make GL_OES_fbo_render_mipmap enableable.
2017-09-26 geofflang Make PBO and map buffer extensions enableable.
2017-09-29 jiawei.shao ES31: Implement glSampleMaski on D3D11

Created with:
  roll-dep skia/third_party/externals/angle2
BUG=770696,770696


Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE
TBR=scroggo@google.com

Change-Id: Ic6686493c8e0bf8a84e9b3326da0c46c92df49f5
Reviewed-on: https://skia-review.googlesource.com/54220
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-10-03 04:49:08 +00:00
Mike Klein
b437351d88 add _skx stages
This just makes sure all the plumbing is in place to use the Skylake
Xeon subset of AVX-512 instructions.  So far,

  - no Windows
  - no lowp
  - nothing explicitly making use of AVX-512 registers or instructions

This initial pass should run essentially identically to the _hsw AVX2
code we've been using previously.  Clang _does_ use AVX-512-only
instructions to implement some of the higher-level concepts we've coded,
but it's really a pretty subtle difference.

Next steps will bump N from 8 to 16 and start threading through an
AVX-512-friendly mask instead of tail.  I'll also want to take a harder
look at how we do blending like if_then_else()... the default codegen
here doesn't really take advantage of AVX-512 the way I'd like here.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-CPU-AVX512-x86_64-Debug

Change-Id: I6c9442488a449ea4770617bb22b2669859cc92e2
Reviewed-on: https://skia-review.googlesource.com/54062
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
2017-10-02 22:05:49 +00:00
Brian Osman
099fa0fb98 Revert^6 "Make threaded proxy generation MDB-friendly, and defer instantiation"
ANGLE bots were getting lots of corrupted GMs - we set fPreferVRAMUseOverFlushes
to false. In that case, multiple deferred proxies were instantiating to the same
scratch resource. Any proxy that we're going to fill with an ASAP upload needs
to have no pending IO - we hoist all those loads to the front of the flush, so
normal IO tracking doesn't really help.

Bug: skia:
Change-Id: Id36fd8700e522db412a3c992b93c778e2ebb1188
Reviewed-on: https://skia-review.googlesource.com/53940
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-10-02 21:04:08 +00:00
Adrienne Walker
74a8296d7c Fix SkRRect validation for negative types
SkRRect::fType is an int, so needs to be checked to see if it's
negative.

Bug: chromium: 768149
Change-Id: I6a9a019c736806d35dc1bd627fb4ddc735a0ac86
Reviewed-on: https://skia-review.googlesource.com/54024
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-10-02 20:50:38 +00:00