Commit Graph

34936 Commits

Author SHA1 Message Date
Hal Canary
a083404838 Revert "Added support for visual debugging on Android Studio"
This reverts commit 222c9cfd1b.

Reason for revert: Breaks documented workflow.

Original change's description:
> Added support for visual debugging on Android Studio
> 
> Change-Id: Icaf848c31167db10d6fbb13d74c7287b03628fb6
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/130144
> Reviewed-by: Derek Sollenberger <djsollen@google.com>

TBR=djsollen@google.com,mtklein@google.com,bsalomon@google.com,halcanary@google.com,bungeman@google.com,ziadb@google.com

Change-Id: I6e7ac2d16d9a0f267d75cd202fd4975be36da4f5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/131601
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-06-01 20:22:37 +00:00
Mike Klein
804d0f28ba turn on pointer-overflow on ASAN/UBSAN bots
I know SkRasterPipelineBlitter will add back offsets
to the mask pointer to make these fMaskPtr.pixels safe.

SkImageInfo wasn't making out-of-bounds pointers, but was moving
between two in-bounds pointers by subtracting large (negative)
size_t.  Switching to explicit negate and add quiets this down.

Bug: chromium:836282

Change-Id: Ia65e380ec41dbfedce0659106830fbacb1a5cf4a
Reviewed-on: https://skia-review.googlesource.com/131147
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-06-01 20:15:46 +00:00
Herb Derby
11203af095 Remove noise from test output
Change-Id: I94b6b87cac2a1ecea78666d601fec8b3a8f8da70
Reviewed-on: https://skia-review.googlesource.com/131581
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-06-01 20:10:16 +00:00
angle-skia-autoroll
2ab87fcc1b Roll third_party/externals/angle2 cbab275..bf7b95d (1 commits)
cbab275..bf7b95d


git log cbab275..bf7b95d --date=short --no-merges --format='%ad %ae %s'
2018-06-01 geofflang@chromium.org Create a default framebuffer per surface/context pair on MakeCurrent.


Created with:
  gclient setdep -r third_party/externals/angle2@bf7b95d

The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

Change-Id: I8003a478fcb13bab67ad0e74975bbb436c75317e
Reviewed-on: https://skia-review.googlesource.com/131560
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-01 19:42:46 +00:00
Mike Klein
a3750b2aa0 build for Chromecast with clang
I don't think this switches to libc++... just from GCC to Clang.

Change-Id: I755464161d030668e34ab79f4a77d9807ddc8e3f
Reviewed-on: https://skia-review.googlesource.com/131520
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-06-01 19:41:56 +00:00
Brian Salomon
0ba9fa0233 Remove GrGpu::getWritePixelsInfo
Change-Id: I30f9eed774b0b659ee91949a234bcc112fbee035
Reviewed-on: https://skia-review.googlesource.com/131480
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
2018-06-01 19:35:26 +00:00
Brian Osman
bc9f3b0f9c Decorate project names with their relative path in the meta SLN
This doesn't show up in the solution explorer (so there are two entries
for "samples"), but they are both present, and all files are there.
Decorating the names in the explorer is going to be much harder, as we
have to change the actual filename of the generated vcxproj, as well as
the reference to those files in the sln. For now, this works well
enough.

Change-Id: I5b864268a4c56001edbf2c43dbe5563445d5435f
Reviewed-on: https://skia-review.googlesource.com/131580
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-01 19:22:08 +00:00
Brian Osman
ccb87523a2 Revert "Rename sg tests and samples targets to fix Visual Studio name conflict"
This reverts commit ba2f82986f.

Reason for revert: This is going to be hard to maintain long-term. I've fixed the python script to handle this case: https://skia-review.googlesource.com/c/skia/+/131580

Original change's description:
> Rename sg tests and samples targets to fix Visual Studio name conflict
> 
> GN was emitting projects for the SG versions of tests and samples, which
> conflicted with the top-level versions of those. This made the normal GN
> VS IDE files confusing, and the merged ones totally broken.
> 
> Change-Id: Ifd048258d4358ed2852d5263b16278c5b8ebd9c4
> Reviewed-on: https://skia-review.googlesource.com/131391
> Commit-Queue: Brian Osman <brianosman@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>
> Auto-Submit: Brian Osman <brianosman@google.com>
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>

TBR=jvanverth@google.com,brianosman@google.com,fmalita@chromium.org,fmalita@google.com

Change-Id: I25553fdcfd063c920635fe1bd71553b578d0b0c8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/131600
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-01 19:20:07 +00:00
Brian Salomon
d494f6e3d6 Replace GrContextPriv::read/writeSurfacePixels with GrContextPriv::read/WritePixels2
Change-Id: I08be0f347d360e97bf9a6d1aeb25f9f584cc3d89
Reviewed-on: https://skia-review.googlesource.com/131442
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-06-01 18:59:16 +00:00
Ben Wagner
ee56b834fc Remove GalaxyS7 ATT jobs.
We no longer have bots to run them.

No-Try: true
Change-Id: Ia30acf064a12b46d56f6445cf8d6d610fa1cf5a4
Reviewed-on: https://skia-review.googlesource.com/131524
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-06-01 18:43:46 +00:00
Jim Van Verth
70276915db Set bounds correctly for color emoji that need post-cache transfoms
We need to handle the bounds for transformed color emoji the same
way we handle the bounds for distance field text. Without this
bounds correction, the glyphs were being clipped out.

Also adds a sample to test this case.

Bug: 848616
Change-Id: I39dedbe2fd19331ad67978c95519f5c9d46f59fc
Reviewed-on: https://skia-review.googlesource.com/131523
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Jim Van Verth <jvanverth@google.com>
2018-06-01 18:31:47 +00:00
Greg Daniel
8683037a2e Always keep buffers in vulkan persistently mapped.
This should hopefully fix (and possibly even improve) some of the perf
regressions we had form switching the memory allocator which were caused
by us now mapping and unmapping the entire VkDeviceMemory instead of just
subsets.

Bug: skia:
Change-Id: Ia8232594f33003e88969bf16febea4e4eec0ac95
Reviewed-on: https://skia-review.googlesource.com/131443
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2018-06-01 18:01:26 +00:00
Kevin Lubick
d2ae8dcce3 Add option for fuzzer to toggle DAA
Of note, this is a breaking change to the fuzzed format
for any canvas fuzzers.  I've updated the seed corpora to match
but any repro cases predating this will need to have the a single
byte added to the front of the test case:

echo -n -e '\x00' | cat - file > outputfile


Bug: 847386
Change-Id: I10b3b228e9c121340857fb8e7807464e54e9238a
Reviewed-on: https://skia-review.googlesource.com/131522
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Yuqian Li <liyuqian@google.com>
2018-06-01 17:44:23 +00:00
Kevin Lubick
f14bc98b2f Avoid compilation error on older compilers
The constness on null_provider causes:
 "default initialization of an object of const type
 'const NullResourceProvider' without a user-provided default constructor"

See https://stackoverflow.com/a/47368753 for more.

TL;DR; clang 3.8 and older is not happy

Bug: skia:
Change-Id: Icfc38680163c3bd4952c0e35551706cad8dbfee6
Reviewed-on: https://skia-review.googlesource.com/131521
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-06-01 17:28:56 +00:00
Brian Osman
2b23c4bf31 Dest color space no longer impacts mipmaps or texture sampling
PS5: Removes SkDestinationSurfaceColorMode, tracking of mipmap
mode on GrTexture, sRGB decode state per-texture. Because we
were often choosing sRGB configs for RGB color types, legacy
rendering would then be incorrect (too dark). So...

PS7: Stops ever using sRGB pixel configs when translating
image info or color type. Also removes a bunch of GrCaps bits
and a GrContextOption that are no longer relevant.

PS9: Adjusts surface creation unit test expectations, and
changes the raster rules accordingly.

At this point, sRGB configs are (obviously) going to be broken.

Locally, I ran 8888, gl, and the gbr- versions of both. Across
all GMs x configs, there are 13 diffs. 12 are GMs that create
surfaces with a color-space attached (and thus, the offscreen
is no longer getting sRGB pixel config). The only remainder
constructs an SkPictureImageGenerator, (with an attached color
space) and renders it to the gbr-gl canvas, which triggers a
a tagged surface inside the generator.

Bug: skia:
Change-Id: Ie5edfa157dd799f3121e8173fc4f97f6c8ed6789
Reviewed-on: https://skia-review.googlesource.com/131282
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-06-01 17:00:26 +00:00
swiftshader-skia-autoroll
7abeb28342 Roll third_party/externals/swiftshader 8e6ed2e..419e8a7 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/8e6ed2e..419e8a7


git log 8e6ed2e..419e8a7 --date=short --no-merges --format='%ad %ae %s'
2018-06-01 capn@google.com Fix the unittests Ninja build.


Created with:
  gclient setdep -r third_party/externals/swiftshader@419e8a7

The AutoRoll server is located here: https://swiftshader-skia-roll.skia.org

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:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=rmistry@google.com

Change-Id: Ic1ccd181f824151568bc559552ec7641f6fc9d25
Reviewed-on: https://skia-review.googlesource.com/131461
Reviewed-by: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-01 16:04:46 +00:00
Mike Klein
db537605b5 exclude cgms.cpp from DM on Google3 build
Having a mix of C and C++ sources in DM makes setting build flags
tricky.  This removes the C sources.  I don't think it's important
to run these C-based GMs in Google3... I don't even really think
it's terribly important to run DM there at all.

Change-Id: I2c2653ee15981f9a63965fb8b7e483a5c5e94830
Reviewed-on: https://skia-review.googlesource.com/131441
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-06-01 15:31:16 +00:00
Eric Boren
322a859bda Reland [recipes] Isolate build outputs with no subdirs
Bug: skia:6473
Change-Id: I730cb860abc72473aaa9af98527fd220b9a55120
Reviewed-on: https://skia-review.googlesource.com/131389
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-06-01 15:18:46 +00:00
Brian Osman
ba2f82986f Rename sg tests and samples targets to fix Visual Studio name conflict
GN was emitting projects for the SG versions of tests and samples, which
conflicted with the top-level versions of those. This made the normal GN
VS IDE files confusing, and the merged ones totally broken.

Change-Id: Ifd048258d4358ed2852d5263b16278c5b8ebd9c4
Reviewed-on: https://skia-review.googlesource.com/131391
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-06-01 15:12:26 +00:00
ziadb
222c9cfd1b Added support for visual debugging on Android Studio
Change-Id: Icaf848c31167db10d6fbb13d74c7287b03628fb6
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/130144
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2018-06-01 14:56:24 +00:00
Stephen White
531a48ed78 GrTessellator: fix winding merged to zero on split edge.
Occasionally, the top edge of a split edge can be merged out of
existence (if it can't be mathematically distinguished from one of its
adjacent edges). In this case, we need to save its winding count
before it's merged so that the other half of the split doesn't also
get zero winding.

NOTE: this adds a new test case to the concavepaths GM.

Bug: skia:7785
Change-Id: Iff8b0a2ed3065e57b737ff915ff436146987caf6
Reviewed-on: https://skia-review.googlesource.com/131223
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2018-06-01 14:40:55 +00:00
Hal Canary
39ccf5d386 Fix compile when SK_XML undefined
Change-Id: Ia23b07434939acbf544854b94c4b10810c20ae1a
Reviewed-on: https://skia-review.googlesource.com/131221
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-06-01 14:30:56 +00:00
Jim Van Verth
1989c4995c Avoid divide-by-zero in shadow code
Bug: oss-fuzz:6728
Change-Id: Id87140c8ee3b4e438c0c1e7d9b108a40e2a65fbe
Reviewed-on: https://skia-review.googlesource.com/131145
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-06-01 14:02:46 +00:00
Florin Malita
911ae4066e [skottie] Remove inPoint/outPoint/frameRate from public API
TBR=
Change-Id: Ice4de3abe350c4570c22e859a36dbd445527fa41
Reviewed-on: https://skia-review.googlesource.com/131300
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-01 13:10:15 +00:00
Leon Scroggins III
22f673d420 Move SkColorTable to src/codec
It is no longer needed anywhere else, and simply happens to be an
implementation detail of SkCodec (at least for now).

Remove references to SkColorTable in other classes, and clean up some
includes of SkConvertPixels I found along the way.

Remove unused includes/methods on SkColorTable

Change-Id: I46c8e46f5b77c37710b6cf595d48107d55871d52
Reviewed-on: https://skia-review.googlesource.com/130845
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-01 12:53:25 +00:00
Yuqian Li
9ea47bedb9 Skip bad line segments inside gen_alpha_deltas
Bug: chromium:847386
Change-Id: I5bb3268c27ecfbd66268adbc36be3ea72e0a69ba
Reviewed-on: https://skia-review.googlesource.com/131324
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
Auto-Submit: Yuqian Li <liyuqian@google.com>
2018-06-01 12:16:15 +00:00
Eric Boren
fbe7166685 Revert "[recipes] Isolate build outputs with no subdirs"
This reverts commit 0c9d2805e8.

Reason for revert: Broke iOS and SwiftShader (and maybe others)

Original change's description:
> [recipes] Isolate build outputs with no subdirs
> 
> Bug: skia:6473
> Change-Id: If243b6afb748529d2bdb212e360cd4338edc929c
> Reviewed-on: https://skia-review.googlesource.com/130942
> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
> Commit-Queue: Eric Boren <borenet@google.com>

TBR=borenet@google.com,benjaminwagner@google.com

Change-Id: Icf9490f2f88dc454c6d971f35258e219137b0c0e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:6473
Reviewed-on: https://skia-review.googlesource.com/131400
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-06-01 11:53:46 +00:00
Eric Boren
0c9d2805e8 [recipes] Isolate build outputs with no subdirs
Bug: skia:6473
Change-Id: If243b6afb748529d2bdb212e360cd4338edc929c
Reviewed-on: https://skia-review.googlesource.com/130942
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-06-01 11:45:15 +00:00
angle-skia-autoroll
c4952be7d4 Roll third_party/externals/angle2 46bcea5..cbab275 (5 commits)
46bcea5..cbab275


git log 46bcea5..cbab275 --date=short --no-merges --format='%ad %ae %s'
2018-05-31 ehmaldonado@chromium.org DEPS.chromium: Sync dEQP to ANGLE (not Chromium) third_party.
2018-05-30 lfy@google.com GLES1: Shade model API
2018-05-30 lfy@google.com GLES1: Alpha test
2018-05-08 jiawei.shao@intel.com Use ShaderMap in Caps - Part II
2018-05-31 jiawei.shao@intel.com Use IsCubeMapFaceTarget on texture targets

Created with:
  gclient setdep -r third_party/externals/angle2@cbab275

The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

Change-Id: Ice3d96d60593c8440310144bb098524ed73a828a
Reviewed-on: https://skia-review.googlesource.com/131360
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-01 09:37:25 +00:00
angle-skia-autoroll
db33ee143b Roll third_party/externals/angle2 05cd6df..46bcea5 (6 commits)
05cd6df..46bcea5


git log 05cd6df..46bcea5 --date=short --no-merges --format='%ad %ae %s'
2018-05-31 lucferron@chromium.org D3D,Vulkan: Prep work to share useful functions from D3D
2018-05-21 xinghua.cao@intel.com Validate the total invocations within a work group
2018-05-14 geofflang@chromium.org Add support for EGL_ANDROID_presentation_time.
2018-05-30 lucferron@chromium.org Vulkan: varyings of type Matrix/Struct can't use components.
2018-05-31 jmadill@chromium.org StateManager11: Cache impl objects.
2018-05-31 jie.a.chen@intel.com Fix a trivial parentheses compile warning

Created with:
  gclient setdep -r third_party/externals/angle2@46bcea5

The AutoRoll server is located here: https://angle-skia-roll.skia.org

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

Change-Id: I7e50425ceb31d1c149178493982db687800aaf7e
Reviewed-on: https://skia-review.googlesource.com/131325
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-01 00:01:25 +00:00
Khushal
e70c5fb602 Reland fonts: Use correct SurfaceProps in analysis canvas for remoting.
This reverts commit cd21d676b7.

TBR=herb@google.com
Bug: 829622
Change-Id: I515fdf67fde118db774ab170e021100eef13ce68
Reviewed-on: https://skia-review.googlesource.com/130701
Commit-Queue: Khusal Sagar <khushalsagar@chromium.org>
Reviewed-by: Khusal Sagar <khushalsagar@chromium.org>
2018-05-31 22:43:44 +00:00
swiftshader-skia-autoroll
13b8b676be Roll third_party/externals/swiftshader f459b04..8e6ed2e (1 commits)
https://swiftshader.googlesource.com/SwiftShader/+log/f459b04..8e6ed2e


git log f459b04..8e6ed2e --date=short --no-merges --format='%ad %ae %s'
2018-05-31 capn@google.com Define GLAPI the same way as GL_APICALL.

Created with:
  gclient setdep -r third_party/externals/swiftshader@8e6ed2e

The AutoRoll server is located here: https://swiftshader-skia-roll.skia.org

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:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader

TBR=rmistry@google.com

Change-Id: I742ef557f7fd1367e1622d5d533a2a03c4dbec3e
Reviewed-on: https://skia-review.googlesource.com/131179
Reviewed-by: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-05-31 21:27:54 +00:00
Cary Clark
79aa2f12ab don't walk off end of pointer
Avoids pointer-overflow in ASAN/UBSAN.

R=mtklein@google.com

Bug:836282
Change-Id: I2125fa7927c30ae601431af8daec0f900c84799c
Reviewed-on: https://skia-review.googlesource.com/131261
Auto-Submit: Cary Clark <caryclark@skia.org>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-05-31 21:10:54 +00:00
Hal Canary
b4a8a62940 SkFloatToDecimal: optimize the less common cases.
bench PDFScalar_random goes from 120 ns to 70 ns.

Change-Id: I6254f5c900395ee470ffee26303915025a8f0dda
Reviewed-on: https://skia-review.googlesource.com/131151
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
2018-05-31 21:03:24 +00:00
Khushal
458f40a43e font remoting: Fix errors with sub-pixel positioning mismatch.
1) Use correct offset from SkTextBlobRunIterator. Only
kHorizontal_Positioning needs to use the y offset specified on the run.

2) Use the same mapping function from SkFindAndPlaceGlyph for mapping
the glyph position from transform for the run. This avoids minor
rounding differences between analysis and draw.

R=bungeman@google.com,herb@google.com

Bug:829622
Change-Id: Iaef74a8d01f0850ce042149458b2ea795c2a2b61
Reviewed-on: https://skia-review.googlesource.com/131169
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Khusal Sagar <khushalsagar@chromium.org>
2018-05-31 20:12:44 +00:00
Ben Wagner
82cecb6027 Make CMakeLists.txt less relative.
Change-Id: I8ac60937d793161b37a3975735d21d93bbe7b216
Reviewed-on: https://skia-review.googlesource.com/131222
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-05-31 19:25:34 +00:00
Mike Klein
2372a33523 add std::sort() to SortBench
Smaller is better, winner of each group marked with *:

   *  0.81  	sort_stdsort_repeated
      2.60  	sort_qsort_repeated
     11.06  	sort_skheap_repeated
     15.81  	sort_skqsort_repeated

   *  1.76  	sort_stdsort_backward
     23.17  	sort_qsort_backward
     14.32  	sort_skheap_backward
      7.06  	sort_skqsort_backward

   *  0.78  	sort_stdsort_forward
      4.00  	sort_qsort_forward
     15.19  	sort_skheap_forward
      2.76  	sort_skqsort_forward

     13.47  	sort_stdsort_rand10
     27.71  	sort_qsort_rand10
     15.80  	sort_skheap_rand10
   * 11.11  	sort_skqsort_rand10

     17.94  	sort_stdsort_rand
     48.69  	sort_qsort_rand
     16.52  	sort_skheap_rand
   * 11.98  	sort_skqsort_rand

libc++ must special case repeated, forward, and backward sorted data?

To reproduce, run this and ignore (unrelated) sort_topo_rand:

    $ ninja -C out nanobench; and out/nanobench -m sort_ -q

Change-Id: I3724188f2a6acac61d9e8c2bd43443792e0ae0ce
Reviewed-on: https://skia-review.googlesource.com/131156
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-05-31 19:24:44 +00:00
Brian Salomon
d042071999 Stop using legacy pixel ops on windows builds
Change-Id: I48cd86aa0285bdd821570651de9203d449674592
Reviewed-on: https://skia-review.googlesource.com/131220
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-05-31 19:19:44 +00:00
Mike Reed
2f0edd5c9a draw skottie in 3d
Bug: skia:
Change-Id: I6321da0d9f06b4d5637d2ce611e1c81cc75c0eb2
Reviewed-on: https://skia-review.googlesource.com/131113
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2018-05-31 19:09:24 +00:00
Brian Osman
c7ad40f76f Remove SK_SUPPORT_GPU checks in tool-only code
Most of this is (obviously) not necessary to do, but once
I started, I figured I'd just get it all. Tools (nanobench,
DM, skiaserve), all GMs, benches, and unit tests, plus support
code (command line parsing and config stuff).

This is almost entirely mechanical.

Bug: skia:
Change-Id: I209500f8df8c5bd43f8298ff26440d1c4d7425fb
Reviewed-on: https://skia-review.googlesource.com/131153
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-05-31 18:59:44 +00:00
Derek Sollenberger
8103bb9609 Expose API for temporary use by the Android WebView.
The WebView needs this information in order to correctly draw into
an unclipped layer. This API can be removed when we update the
Android framework to no longer depend on unclipped layers.

Change-Id: Ibba63005730158021363d1d09e5338578f4fa541
Reviewed-on: https://skia-review.googlesource.com/131148
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2018-05-31 18:21:50 +00:00
Greg Daniel
81df0414c8 Reland "Use GrVkMemoryAllocator for vulkan memory allocations in ganesh."
This is a reland of 331c266ed7

Original change's description:
> Use GrVkMemoryAllocator for vulkan memory allocations in ganesh.
> 
> Besides using the new allocator, the big logical change is that map
> and unmap calls form GrVkMemory are specc'd to map the entire GrVkAlloc
> instead of a specific offset and size as they did before. As a
> consequence of this, we move the handling of non-coherent alignment
> for flush/invalidate calls to GrVkMemory instead of the callers.
> 
> Bug: skia:
> Change-Id: I794d713106602f27aa7e808c306bbb69fd2b67be
> Reviewed-on: https://skia-review.googlesource.com/130021
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Jim Van Verth <jvanverth@google.com>

Bug: skia:
Change-Id: Ia9a4192d344449fb444d2adaa1d62ff1ede4b21d
Reviewed-on: https://skia-review.googlesource.com/131083
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-05-31 18:21:25 +00:00
swiftshader-skia-autoroll
ec0732433f Roll third_party/externals/swiftshader e92a88e..f459b04 (1 commits)
https://swiftshader.googlesource.com/SwiftShader/+log/e92a88e..f459b04


git log e92a88e..f459b04 --date=short --no-merges --format='%ad %ae %s'
2018-05-31 capn@google.com Don't use X11 on Mac OS.

Created with:
  gclient setdep -r third_party/externals/swiftshader@f459b04

The AutoRoll server is located here: https://swiftshader-skia-roll.skia.org

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:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader

TBR=rmistry@google.com

Change-Id: I7ee5885869a66a5fd37c821830c00d87b6c73ce9
Reviewed-on: https://skia-review.googlesource.com/131164
Reviewed-by: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-05-31 18:16:44 +00:00
Brian Osman
c9a424731a Require the GPU backend to build our internal tools
This causes builders with skia_enable_gpu set to false to stop building
DM, nanobench, etc. Next step is to remove all of the GPU shimming used
throughout those tools, and conditional code and tests.

Bug: skia:
Change-Id: I59c1c64b7e4e300c3a72a2eed9b481ed1bdf732c
Reviewed-on: https://skia-review.googlesource.com/131146
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-05-31 18:05:44 +00:00
Brian Osman
6dce0a72e0 Enable GPU support in MSAN builds
Don't want to test GPU with MSAN, but I'd like to make GPU support
required for DM and other internal tools.

Bug: skia:
Change-Id: I5f1a7669242be9767aa3b579b39740a1741977f3
Reviewed-on: https://skia-review.googlesource.com/131143
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-05-31 18:01:14 +00:00
Robert Phillips
65eb4fba7e Add DDL skpbench bot for just DDL recording time
Change-Id: If75799bfd719ccc47c2064571723e6852c07bfaa
Reviewed-on: https://skia-review.googlesource.com/131144
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-05-31 17:56:26 +00:00
Robert Phillips
774168efac Allow CCPR in DDL mode (take 2)
A lot of the changes to get this compiling on the
win_chromium_compile_dbg_ng bot (i.e., moving a lot of header files to
private) should be undone if that bot is ever "fixed".

Bug: skia:7988
Change-Id: I704ff793d80b18e7312048538874498824803580
Reviewed-on: https://skia-review.googlesource.com/130920
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-05-31 17:27:43 +00:00
Mike Klein
e304a8a21b remove map() from SkRasterPipeline_opts.h
It seems to be confusing some obscure build configuration in Google3.
I don't really mind writing these out longform.

Change-Id: I78e82d9fa18726d89d206e692fd260317c5f8686
Reviewed-on: https://skia-review.googlesource.com/131108
Auto-Submit: Mike Klein <mtklein@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-05-31 17:19:13 +00:00
Hal Canary
0390d3e36b skqp: update apk list script
Change-Id: I3e8cfdc246d6f264675b307c1f5004438f3ed8b6
Reviewed-on: https://skia-review.googlesource.com/131142
Reviewed-by: Hal Canary <halcanary@google.com>
2018-05-31 16:46:40 +00:00
Florin Malita
c83a0deaa8 [skottie] Make the resource provider factory argument optional
Most of the existing clients don't care about nested resources.

Change-Id: Ie7991dd25ebbd679b5b49e5624772c7e19e7ec79
Reviewed-on: https://skia-review.googlesource.com/131141
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-05-31 16:39:13 +00:00