Commit Graph

30451 Commits

Author SHA1 Message Date
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
Leon Scroggins III
b30d11319b Do not try to time kFailedLoops
Move the check for kFailedLoops above code that times the benchmark.
This matches the comment ("Can't be timed") and prevents an infinite
loop.

Bug: skia:6774
Change-Id: Iacdc1ca1d11afcf05afac60e4eb0d8d9a12f800e
Reviewed-on: https://skia-review.googlesource.com/53803
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-10-02 20:37:00 +00:00
Chris Dalton
29f642a952 CCPR: Add WAR for an Intel GLSL compiler assertion
Bug: skia:
Change-Id: I8056f10292c28e243a2b9e7c9fa6a4a0705fbab9
Reviewed-on: https://skia-review.googlesource.com/54021
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-10-02 19:42:28 +00:00
Robert Phillips
73f7e1dbdd Temporarily disable deferred texture proxies
Bug: 769760
Change-Id: Id4197a73737f3a8df9159d9eb081be094df1f731
Reviewed-on: https://skia-review.googlesource.com/54004
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-10-02 18:25:44 +00:00
Mike Klein
d4b32ba384 roll libpng to 1.6.33
Apparently 1.6.34 has been released too, but I can't find it in Git, and
1.6.33 is the one with that patch we're really interested in, right?

Let's also just #include the prebuilt pnglibconf.h to make it clear that
it's unchanged from the original?

Change-Id: Ia415486f30c7aff1575f96add8edce855eef9207
Reviewed-on: https://skia-review.googlesource.com/54040
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-10-02 17:31:34 +00:00
Mike Klein
0cea26aaf2 fix comments in SkColorSpaceXform.cpp
No code bugs as far as I can tell.

BUG=skia:7095

Change-Id: I56d848b6225d81bf2481235b9294f0c3e7f53f5b
Reviewed-on: https://skia-review.googlesource.com/53823
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-10-02 17:14:55 +00:00
Greg Daniel
97abf014b4 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>
2017-10-02 16:25:34 +00:00
Leon Scroggins III
c405b9d5e3 Remove SkReadBuffer::validateAvailable
Follow on to 4cdbf6056d. readByteArray was
the only caller of this method, and no longer uses it. So remove it and
its only override.

Bug: 769134
Change-Id: I0aaf97717baba1f0195162f3e644708bc101eba4
Reviewed-on: https://skia-review.googlesource.com/53920
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-10-02 15:32:28 +00:00
Ben Wagner
5655ba4398 Add Linux nVidia Vulkan jobs.
Change-Id: Ib323136e4c6f660923433a2508e1e0965712d698
Reviewed-on: https://skia-review.googlesource.com/53460
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2017-10-02 15:08:28 +00:00
Brian Osman
9b1f4bd176 Revert "Revert "Revert "Revert "Revert "Make threaded proxy generation MDB-friendly, and defer instantiation"""""
This reverts commit fdd2cb52b7.

Reason for revert: ANGLE gold failures

Original change's description:
> Revert "Revert "Revert "Revert "Make threaded proxy generation MDB-friendly, and defer instantiation""""
> 
> This reverts commit 9f8d4d36b5.
> 
> Bug: skia:
> Change-Id: I8d7c1df24d8b13b94404f3d9ba69a1ab55ee00c0
> Reviewed-on: https://skia-review.googlesource.com/52920
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Robert Phillips <robertphillips@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: Ie461de167fbd37323cabd4adf064f99204ba4878
Reviewed-on: https://skia-review.googlesource.com/53801
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-10-02 14:00:07 +00:00
Mike Reed
5a2e50edc5 Revert "Revert "Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap"""
This reverts commit cd284c5323.

Reason for revert:

assert fired in SkMallocPixelRef.cpp:61: fatal error: "assert(info.computeByteSize(rowBytes) == info.getSafeSize(rowBytes))"

google3 thinks it was from surface_rowbytes

Original change's description:
> Revert "Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap""
> 
> This reverts commit 809cbedd4b.
> 
> Bug: skia:
> Change-Id: I680d8daeeeeb15526b44c1305d8fb0c6bfa38e1d
> Reviewed-on: https://skia-review.googlesource.com/52665
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>

TBR=fmalita@chromium.org,reed@google.com

Change-Id: I41e3f7a3f791cc8183291847e783ed8a53bc91d2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/53802
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-10-02 13:44:18 +00:00
Mike Reed
cd284c5323 Revert "Revert "guard old apis for querying byte-size of a bitmap/imageinfo/pixmap""
This reverts commit 809cbedd4b.

Bug: skia:
Change-Id: I680d8daeeeeb15526b44c1305d8fb0c6bfa38e1d
Reviewed-on: https://skia-review.googlesource.com/52665
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2017-10-02 12:55:37 +00:00
UpdateSKPs
3c83668862 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: Ibb9da81bde1bcab7ad463f64ed64f729d9fc1385
Reviewed-on: https://skia-review.googlesource.com/53740
Reviewed-by: update-skps <update-skps@skia.org>
Commit-Queue: update-skps <update-skps@skia.org>
2017-10-01 07:40:56 +00:00
angle-deps-roller@chromium.org
517ea51369 Roll skia/third_party/externals/angle2/ 2a9e107c0..8c5b69cba (1 commit)
2a9e107c07..8c5b69cbaa

$ git log 2a9e107c0..8c5b69cba --date=short --no-merges --format='%ad %ae %s'
2017-09-18 kainino Replace MurmurHash3 with PMurHash

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=jvanverth@google.com

Change-Id: I61cf0077cf49951b3e55748efc70deb0abf40561
Reviewed-on: https://skia-review.googlesource.com/53620
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-29 20:58:04 +00:00
Chris Dalton
e4679fa06a CCPR: Blacklist Mali GPUs and Vulkan while we work through issues
Bug: skia:
Change-Id: I59dfb1c839a66a6aa6c954e4a544930fc1376a22
Reviewed-on: https://skia-review.googlesource.com/53560
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-09-29 20:25:34 +00:00
Kevin Lubick
bede88e727 Add coverage related binaries to clang_linux asset
Add --depth 1 to the git clone commands to speed up the creation,
since we don't need all of the history ever to build.

Bug: skia:7080
Change-Id: Idcde5657e2097c2dbc259ab29b24d596b5623364
Reviewed-on: https://skia-review.googlesource.com/53481
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2017-09-29 20:20:24 +00:00
Greg Daniel
bb76ace72b Fall back to non mipped Texture when we can't copy base to mipped texture
TBR: bsalomon@google.com
Bug: skia:7094
Change-Id: I9d2ba78c4d4332a22e2357cde0598de51299067d
Reviewed-on: https://skia-review.googlesource.com/53541
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-09-29 20:19:14 +00:00
Cary Clark
4b85b6dd5a fix setPixelRef
In setPixelRef()

If dx or dy are negative, assert in debug.
Pin pixel ref origin to account for dx and dy on right.
If colorType is unknown, ignore pr pixelref.
Set Bitmap rowbytes to match pixelref rowbytes.

In tryAllocPixels()

Return true early if colorType is unknown.

This assumes that the desired behavior is for Bitmaps
set to kUnknown_SkColorType to avoid allocating SkPixelRef
while avoiding debug asserts, which is what current
gm tests like BitmapCopy_extractSubset test for.

R=reed@google.com

Change-Id: I0d36032d36a0b7dc111f4aff18c71382874fe1f5
Reviewed-on: https://skia-review.googlesource.com/53420
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
2017-09-29 20:15:14 +00:00
Mike Klein
9a3478bf82 ok, add a8 dst support
Change-Id: Ib7f855c833c8e73f448de7c8a75f59b1a0880874
Reviewed-on: https://skia-review.googlesource.com/53600
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-09-29 20:08:34 +00:00
Robert Phillips
3ec9573ac3 Add unit test for pinned SkImages
Change-Id: I2e14353bc865b5994cc90ad643a6a58604955957
Reviewed-on: https://skia-review.googlesource.com/53500
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-09-29 20:04:54 +00:00
Greg Daniel
4faa0408c1 Remove unused outOffset param in GrTextureAdjuster
Bug: skia:
Change-Id: Ifb5ee9d2d80badf082cf1888d2289fea6344c0e9
Reviewed-on: https://skia-review.googlesource.com/53400
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2017-09-29 19:42:54 +00:00
recipe-roller
9729dcbcf1 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/35c5b9ad1beb2550831fa1d39f5f12e354edd501 [depot_tools] Add "ensure_bootstrap" script. (dnj@chromium.org)
  https://crrev.com/0a1f3f6ab34fd2d14cab4dd7fdb86c9a5b77ffe4 Remove defunct Rietveld end-to-end tests (agable@chromium.org)
  https://crrev.com/f3b4f060e2a578420706275e858dc6a612dbaf8f Fix autoninja to allow compiling one source file (brucedawson@chromium.org)
  https://crrev.com/210ed0ebfe37fb563012778dcb04cb5855c5fd51 Expose new gclient.sync() arg in gclient.checkout(). (mmoss@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iaa9c4e62b3c6aa06865db3ff83343ce2d982c0b0
Reviewed-on: https://skia-review.googlesource.com/53523
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
2017-09-29 19:03:26 +00:00
Jim Van Verth
f57c6de784 Revert "Enable coverage counting path rendering on non-Android"
This reverts commit c739b7260a.

Reason for revert: Turning tree red.
Original change's description:
> Enable coverage counting path rendering on non-Android
> 
> Bug: skia:
> Change-Id: Ife4c4378bf4323fb4a58fecfade09320ebc28026
> Reviewed-on: https://skia-review.googlesource.com/53000
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

TBR=djsollen@google.com,csmartdalton@google.com,reed@google.com

Change-Id: I89ef472a95320ff21684ca697295cd8b3939322e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/53522
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-09-29 18:42:25 +00:00
Mike Reed
e74dafc74d Just add new safe size apis
Update skia (and then hide the older versions) to come later
Inspired by https://skia-review.googlesource.com/c/skia/+/52665

Bug: skia:
Change-Id: I15c7395557fb49c4163cb3b323b5428abd2c752d
Reviewed-on: https://skia-review.googlesource.com/53520
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2017-09-29 18:20:14 +00:00
Chris Dalton
c739b7260a Enable coverage counting path rendering on non-Android
Bug: skia:
Change-Id: Ife4c4378bf4323fb4a58fecfade09320ebc28026
Reviewed-on: https://skia-review.googlesource.com/53000
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-09-29 16:36:24 +00:00
Yuqian Li
980379d475 Add a new calmbench tool for noiseless nanobench
This tool can quickly check all nanobench tests including svgs
and skps (<5 minutes for CPU, ~30 minutes for GPU) and find
significant performance regressions without much noise.

This tool is not only faster (lower latency to get regression
alerts), but also more sensitive compared to our k-means and
step-fitting bots (especially for changes that only affect very
few benches). It may still miss some regressions, but the
regressions reported should be valid with very high probability.

Bug: skia:
Change-Id: I02115e6c5ab630e4c56b2087ffeb5cae1d4a618e
Reviewed-on: https://skia-review.googlesource.com/50060
Commit-Queue: Yuqian Li <liyuqian@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-09-29 16:00:34 +00:00
Robert Phillips
45a6f147b0 Clear uniquely keyed texture proxies out of ResourceCache when it is deleted
Change-Id: Ice135dd4b6316b791276eefd522be6bd90b8b5eb
Reviewed-on: https://skia-review.googlesource.com/53261
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Stan Iliev <stani@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-09-29 14:32:54 +00:00
Yuqian Li
6e3d9950e3 Add width and height option to SampleApp
So we can benchmark with given width/height dimensions.

Bug: skia:
Change-Id: I881c9f054cdcecc3e0b2bfb600afd778e1c57d95
Reviewed-on: https://skia-review.googlesource.com/51246
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2017-09-29 14:21:04 +00:00
Ben Wagner
b268d23281 Add AVX512 jobs.
Bug: skia:6326
No-Try: true
Change-Id: Iaffc0cbbe14237e7ac2d83cc9da94a4c7bea3154
Reviewed-on: https://skia-review.googlesource.com/52764
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-09-29 14:19:34 +00:00
Greg Daniel
55afd6dcee Revert "Revert "Update GrBitmapTextureMaker for handling mipped requests""
This reverts commit 8b059bd946.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Update GrBitmapTextureMaker for handling mipped requests"
> 
> This reverts commit d1935c16e8.
> 
> Reason for revert: breaking lots of GMs, especially on gles
> 
> Original change's description:
> > Update GrBitmapTextureMaker for handling mipped requests
> > 
> > Specifically this updates the case when we are requesting to use mip
> > maps but there is already an unmipped version in the cache. Previously
> > we just grabbed the unmipped.
> > 
> > Now we will create a new mipped resource. Upload the cpu data to all
> > the levels besides the base, copy the base level on GPU from the
> > original resource to the mipped one. Then the mipped resource will
> > take over the originals unique key.
> > 
> > Bug: skia:
> > Change-Id: I38e9725c93280dc2460a0be8a7a229e7f20e1614
> > Reviewed-on: https://skia-review.googlesource.com/43840
> > 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: Id82e8b6e8ab69e46ff018bb07ae5d1f6ea8d7e76
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/52901
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

Bug: skia:
Change-Id: Ie5b9553aa67def6f9c5a61f9b6b065b9fce3ff76
Reviewed-on: https://skia-review.googlesource.com/53240
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-09-29 14:08:04 +00:00
Ben Wagner
135db05fa1 Remove duplicate config for MacMini.
No-Try: true
Change-Id: I449c0fd435b233e9c9538c17295ef18348380658
Reviewed-on: https://skia-review.googlesource.com/53120
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-09-29 13:54:04 +00:00
Mike Klein
37bbfe3ea4 Make SkASSERT and co. constexpr compatible.
One of the nice bits of constexpr is that an expression is constexpr if
there exists any set of argument values that make it constant.  It
doesn't have to be constant for _all_ argument values.

This means that this expression is constexpr:

   condition ? constexpr_value
             : []{ arbitrary non-constexpr code; }();

... it's constant when condition is true.

We can use this to rewrite SkASSERT(condition) as

    ( (condition) ? (void)0
                  : []{ SK_ABORT(#condition); }() )

Both sides of the ?: are void, and when condition is true at compile
time the right hand side disappears completely.  In C++11 constexpr
functions we just have to use the comma operator to jam SkASSERT()
into the order of evaluation:

    constexpr uint32_t foo(int x, int y) {
        return SkASSERT(x > y),
               x - y;
    }

Change-Id: I21878d14fb2af76d93591d2ae229460ee825cfde
Reviewed-on: https://skia-review.googlesource.com/52663
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Trent Apted <tapted@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-09-29 13:49:04 +00:00
Brian Osman
fdd2cb52b7 Revert "Revert "Revert "Revert "Make threaded proxy generation MDB-friendly, and defer instantiation""""
This reverts commit 9f8d4d36b5.

Bug: skia:
Change-Id: I8d7c1df24d8b13b94404f3d9ba69a1ab55ee00c0
Reviewed-on: https://skia-review.googlesource.com/52920
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-09-29 13:48:54 +00:00
angle-deps-roller@chromium.org
5fdee443e7 Roll skia/third_party/externals/angle2/ a9c60e9f9..2a9e107c0 (1 commit)
a9c60e9f9a..2a9e107c07

$ git log a9c60e9f9..2a9e107c0 --date=short --no-merges --format='%ad %ae %s'
2017-09-22 jmadill Vulkan: Support multiple vertex outputs.

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=jvanverth@google.com

Change-Id: If164c138c37eb1ce43718e010f969166462dc8eb
Reviewed-on: https://skia-review.googlesource.com/53200
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-29 11:04:24 +00:00
angle-deps-roller@chromium.org
1ee6631ad3 Roll skia/third_party/externals/angle2/ db3422764..a9c60e9f9 (1 commit)
db3422764a..a9c60e9f9a

$ git log db3422764..a9c60e9f9 --date=short --no-merges --format='%ad %ae %s'
2017-09-28 jmadill Vulkan: Allow for multiple frames in-flight.

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=jvanverth@google.com

Change-Id: Ic837af7805e5a5120d2e00e4bfa84a3549a5abc0
Reviewed-on: https://skia-review.googlesource.com/53101
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-29 01:28:32 +00:00
angle-deps-roller@chromium.org
fa68ef6785 Roll skia/third_party/externals/angle2/ c71ea661e..db3422764 (5 commits)
c71ea661e3..db3422764a

$ git log c71ea661e..db3422764 --date=short --no-merges --format='%ad %ae %s'
2017-09-27 jiawei.shao ES31: Implement glSampleMaski on OpenGL
2017-09-27 cwallez Fixup Mac dEQP GLES3 expectations
2017-09-27 cwallez Add dEQP GLES3 Mac suppressions
2017-09-26 cwallez Skip dEQP GLES3 performance tests on all platforms
2017-07-10 yizhou.jiang ES31: Fix bug on incomplete texture validation of internalformat and filterable

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=jvanverth@google.com

Change-Id: Ib5f3f69fb454fdd5fb3e573434c5aac3aee2f97d
Reviewed-on: https://skia-review.googlesource.com/53060
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-28 22:05:43 +00:00
Greg Daniel
8b059bd946 Revert "Update GrBitmapTextureMaker for handling mipped requests"
This reverts commit d1935c16e8.

Reason for revert: breaking lots of GMs, especially on gles

Original change's description:
> Update GrBitmapTextureMaker for handling mipped requests
> 
> Specifically this updates the case when we are requesting to use mip
> maps but there is already an unmipped version in the cache. Previously
> we just grabbed the unmipped.
> 
> Now we will create a new mipped resource. Upload the cpu data to all
> the levels besides the base, copy the base level on GPU from the
> original resource to the mipped one. Then the mipped resource will
> take over the originals unique key.
> 
> Bug: skia:
> Change-Id: I38e9725c93280dc2460a0be8a7a229e7f20e1614
> Reviewed-on: https://skia-review.googlesource.com/43840
> 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: Id82e8b6e8ab69e46ff018bb07ae5d1f6ea8d7e76
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/52901
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-09-28 20:46:53 +00:00
Geoff Lang
4b05000906 Always read half-float textures as GL_HALF_FLOAT in ES3.
ANGLE now returns GL_HALF_FLOAT as the GL_IMPLEMENTATION_READ_TYPE for
ES3 contexts.

BUG=765953

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

Change-Id: I556aecc040f0274b769a3b551b7032adf4ab035a
Reviewed-on: https://skia-review.googlesource.com/52523
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-09-28 20:43:42 +00:00
Herb Derby
5a4fb6eb33 Reorganize blur filter to insert new implementation
Change-Id: Ie9afd2de2bfb9bcd04b5f8b7f319a24025520bef
Reviewed-on: https://skia-review.googlesource.com/52400
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2017-09-28 20:39:52 +00:00
Leon Scroggins III
4cdbf6056d Avoid uninitialized memory in readByteArrayAsData
Bug: 769134

readByteArray can fail (due to not having enough available or due to the
wrong alignment). If it does, do not return an uninitialized block of
memory.

Further, drop the initial size check, which is covered by readByteArray.

Add a test.

Change-Id: Ia101697c5bb1ca3ae3df1795f37a74b2f602797d
Reviewed-on: https://skia-review.googlesource.com/52742
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-09-28 19:51:32 +00:00
Jim Van Verth
c3269aea5b Miscellaneous dynamic atlas fixes.
Make Chinese fling sample closer to Android test.
Fix a bug in GrDrawOpAtlas::compact(), where the atlas
generation wasn't incremented so the client didn't know it changed.
Add some debug info for GrDrawOpAtlas.
Add a comment in GrDrawOpAtlas::setLastUseTokenBulk.

Change-Id: I79192a017870541a79731b1a22f665ec5deeff09
Reviewed-on: https://skia-review.googlesource.com/52761
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-09-28 19:38:42 +00:00
recipe-roller
4e66d35fc3 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/a16ccaf11a5a0b145b166161b80d99eaef294f4b bot_update: use patch repo instead of project if it is mapped (agable@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I5afc28d536d06546b1015d453dd49e33094622b6
Reviewed-on: https://skia-review.googlesource.com/52768
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
2017-09-28 19:34:08 +00:00
Greg Daniel
d1935c16e8 Update GrBitmapTextureMaker for handling mipped requests
Specifically this updates the case when we are requesting to use mip
maps but there is already an unmipped version in the cache. Previously
we just grabbed the unmipped.

Now we will create a new mipped resource. Upload the cpu data to all
the levels besides the base, copy the base level on GPU from the
original resource to the mipped one. Then the mipped resource will
take over the originals unique key.

Bug: skia:
Change-Id: I38e9725c93280dc2460a0be8a7a229e7f20e1614
Reviewed-on: https://skia-review.googlesource.com/43840
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-09-28 19:16:29 +00:00
Chris Dalton
29011a2bda Remove tolerance form SkClassifyCubic
It's too inexact as-is. If the caller wants tolerance they can do
their own with knowledge of the pixel grid. The homogeneous math
is stable with infinities so it's really unnecessary here.

Bug: skia:7073
Change-Id: I4dc34ad96b859a138714b6d4f8804fec4f89f17a
Reviewed-on: https://skia-review.googlesource.com/51182
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-09-28 18:39:58 +00:00
Chris Dalton
a039d3bd06 CCPR: Handle very large paths
Bug: skia:7073
Change-Id: Iec4276703d56c14a8bdd8c34ac37fa2e6af02d0c
Reviewed-on: https://skia-review.googlesource.com/52502
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
2017-09-28 18:27:57 +00:00