Commit Graph

41467 Commits

Author SHA1 Message Date
Robert Phillips
5f78adf890 Add explicit GrSurfaceProxy flag to skip explicit resource allocation (take 2)
This approach eliminates a lot of edge cases where ops (e.g., the SmallPathOp) are treating their proxies in a special manner (i.e., just holding a raw ref and never adding pendingIO). Given that the atlas managers are managing the lifetime of the proxies there is no reason for the GrResourceAllocator to be aware of them.

Pulled out of:

https://skia-review.googlesource.com/c/skia/+/208227 (Implement alternate method for determining recycle-ability of allocated GrSurfaces)

Change-Id: I0a8d3c2d56036d568b6d49ddc78c32761642d1c8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209419
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-22 18:05:33 +00:00
Mike Klein
4b19592a57 remove duplicate SkBase64.h
There's already an identical header in include/utils/SkBase64.h.
(And it's used by Flutter, so we need to keep the include/ one.)

Change-Id: Ia86f5b18d4351ec871902d0fd0e9f076f5d62fc7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209664
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-04-22 17:53:03 +00:00
Mike Klein
3276d95876 rm src/compute
This is a stale, unused, untested snapshot.

Change-Id: I7c78c7c0f1637850724cbe8dcd99223a0ea592d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209644
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-22 17:35:53 +00:00
Eric Boren
264000254c [docs] Update documentation for branching process
Document new chrome_release_branch script.

No-Try: true
Docs-Preview: https://skia.org/?cl=209418
Bug: skia:8932
Change-Id: Ic38840f6e8ecac309e6bd7669dd2b110ff586401
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209418
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2019-04-22 16:46:33 +00:00
Mike Klein
7f960d2083 simplify and centralize SK_API
Attempt two, this time not setting visibility("default")
unless SKIA_IMPLEMENTATION is defined.

Bug: skia:8975
Change-Id: I8d4e2071f1a8ee8a5702ac62ffc4000379d4fc43
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207854
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-22 16:32:03 +00:00
Greg Daniel
5816b3d45d Fully add back old GrContext flush api.
I left off the optional finished proc on the previous cl :(

Change-Id: I5f540c718bb7e12e7ea74287f1e50e35edd79700
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209417
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
2019-04-22 16:19:23 +00:00
Mike Klein
e0eeda5756 add constexpr constructor to SkMatrix
This is an experiment in making SkMatrix less sharp.

Change-Id: Ie1881b0905b594aa1c444440fae5253970850e12
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208340
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-22 15:41:29 +00:00
Greg Daniel
7a5b6ec0f6 Update comment on vulkan allocator.
Change-Id: I70991d5727172f72a61f073d0cd684da6ca43780
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209413
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-22 15:12:56 +00:00
Greg Daniel
d10c90155c Add back deprecated GrCotnext flush API till clients get fixed.
Change-Id: I14b90a9022ebd4d5b3251964af5c7060853c0dcc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209412
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-22 14:59:31 +00:00
Brian Osman
cbc33b8e35 Add SkSL viewing/editing to viewer
Still only works with the GL backend. For other backends,
need to add similar logic to the shader caching, and some
extra checks in Viewer to force the SkSL flag on.

But in GL, this lets you toggle the checkbox and see the
SkSL / GLSL at will (and edit in either form).

Change-Id: I6d392113aa9cbcbd6e64589b849de70d0ac3beeb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209165
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-22 13:57:02 +00:00
Mike Klein
6350cb0f4b Revert "Add explicit GrSurfaceProxy flag to skip explicit resource allocation"
This reverts commit 7bb47f2a2e.

Reason for revert: chrome roll maybe

Original change's description:
> Add explicit GrSurfaceProxy flag to skip explicit resource allocation
> 
> This approach eliminates a lot of edge cases where ops (e.g., the SmallPathOp) are treating their proxies in a special manner (i.e., just holding a raw ref and never adding pendingIO). Given that the atlas managers are managing the lifetime of the proxies there is no reason for the GrResourceAllocator to be aware of them.
> 
> Pulled out of:
> 
> https://skia-review.googlesource.com/c/skia/+/208227 (Implement alternate method for determining recycle-ability of allocated GrSurfaces)
> 
> Change-Id: Ia6bec5e8f5d5bc63e86ae011bcc3f8e061c066b2
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209400
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

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

Change-Id: Id65bd176f56aa91ff76ec1979aef6206b7665d63
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209600
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-22 12:42:31 +00:00
skia-recreate-skps
08cb24621a Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Ib81f238ac0c5c5fbeb476d0e3c7a0be7fa28adcc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209581
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-22 05:47:01 +00:00
skia-autoroll
3018bd1a79 Roll third_party/externals/angle2 145ec7fa7c81..c467f7b54188 (4 commits)
145ec7fa7c..c467f7b541


git log 145ec7fa7c81..c467f7b54188 --date=short --no-merges --format='%ad %ae %s'
2019-04-19 spang@chromium.org Compute usage from format properties cache in glTexStorageMem2DEXT
2019-04-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src 805b09f92203..0e5d1bb66ad3 (1 commits)
2019-04-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src ac878fcbdd64..7aad9653f9a3 (2 commits)
2019-04-19 kbr@chromium.org Reland "Define and expose EGL_ANGLE_power_preference extension."


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

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

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=mtklein@google.com

Change-Id: I9f75c51efaed50bad35a7dfc596a14e2fddbeb85
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209574
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-22 05:17:30 +00:00
skia-autoroll
f1ff8aa959 Roll third_party/externals/swiftshader a16238df3f28..bcc71a322953 (7 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/a16238df3f28..bcc71a322953


git log a16238df3f28..bcc71a322953 --date=short --no-merges --format='%ad %ae %s'
2019-04-21 bclayton@google.com Reactor: Remove trailing semicolons.
2019-04-21 bclayton@google.com Remove LLVM 3 from SwiftShader and all references.
2019-04-20 bclayton@google.com LLVMReactor: #error if usng LLVM 3
2019-04-19 chrisforbes@google.com Fix comment describing compare/exchange behavior
2019-04-19 bclayton@google.com Switch SIMD::Pointer::base from a Float* to Byte*
2019-04-19 bclayton@google.com SpirvRoutine: Use SIMD::Pointers for pointers map.
2019-04-19 swiftshader.regress@gmail.com Regres: Update test lists @ a16238df


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

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

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=mtklein@google.com

Change-Id: Ic419c263a96acc24f8e29f5ad33958762324e544
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209575
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-22 04:33:50 +00:00
skia-autoroll
f062679899 Roll ../src a55917cb9824..3ed0f75776bb (344 commits)
a55917cb98..3ed0f75776


Created with:
  gclient setdep -r ../src@3ed0f75776

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-skia-autoroll

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=mtklein@google.com

Change-Id: Ic678825f6b5b9e8e11aca44e648ca50417bddd33
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209573
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-22 04:33:30 +00:00
Mike Reed
2ce364071e use portable typeface for new gm
Change-Id: Idb2f23139fa14a334982e40b7ccaa7c7fd77d5dc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209407
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-21 22:47:20 +00:00
skia-recreate-skps
264f9d23bd Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: Ieb52d6c8c817a2ff27bc0969694f2eb7a0fc522f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209563
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-21 22:46:20 +00:00
Ravi Mistry
8da16762f1 Skip __init__.py in webpages_playback.py
NoTry: true
Bug: skia:9001
Change-Id: I1516f65c36b79263a71eaed27f18835dfd902eee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209406
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2019-04-21 18:55:50 +00:00
skia-recreate-skps
a76fad2d49 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Ifdb0096abf38f24159d63623639c73b475f70c48
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209540
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-21 05:49:04 +00:00
skia-recreate-skps
13906d5d51 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I28735f09cc048a5caca7ff771443e1d43f8f6ee6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209502
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-20 05:49:00 +00:00
Jim Van Verth
c03cfaf204 Add Metal support for dynamic buffers.
Implements dynamic buffers as subbuffers of a larger allocation. As
we map and unmap, we change the subbuffer to ensure we don't overwrite
previous data. Buffers larger than our standard allocation are assumed
to do their own subbuffer management.

Bug: skia:8243
Change-Id: I3600463860fae235c46414a465ea106faa97ea0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209061
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-04-19 23:11:03 +00:00
Mike Reed
d567408362 Add secret draw-behind method
This is a variant of drawPaint but is automatically clipped
to the bounds of the most recent saveBehind buffer (axis-aligned bounds).

No public exposure.

Impl is pretty simple (its a variant of drawPaint)
- find the most recent saveBehind device bounds
- if there is none, draw nothing, else
  - temporarily intersect the device's clip with that bounds
  - drawPaint
  - restore the clip

See https://buganizer.corp.google.com/issues/129117085

Change-Id: I7c532e63a80b118fb2416c572b8e0d2abf8cf59a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209166
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-19 20:50:22 +00:00
Brian Salomon
1c0b05afde SkClipStack::isRRect succeeds if stack is an intersection of rects.
This helps enable optimizations that rely on the entire clip reducing
to a single rectangle, such as converting a drawRect to a clear.

Bug: b/122296071

Change-Id: I1fea4565644280d57610f8585b76babb557301d8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209382
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-04-19 20:14:12 +00:00
Chris Dalton
84d36cdb60 ccpr: Calculate edge coverage in the coverage processor
Does the opposite-edge coverage calculation for curves in the coverage
processor, rather than the Shader class. This allows the vertex shader
implementation to do it more clean and directly, as well as allowing
the future sample mask implementation to disregard edge coverage
entirely.

Bug: skia:
Change-Id: Idaddfff8b22e3223f2a4e286900941969f975c6a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208990
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-04-19 19:49:22 +00:00
Ethan Nicholas
898a8a5b1a Fixed internal skslc error with negated literal vectors
There was a spot where we were assuming that a constant vector was
guaranteed to be a vector constructor (e.g. float4(1)), while ignoring
the possibility that it could be a prefix operator applied to a
constructor (-float4(1)), leading to a crash. This fixes that and
simplifies the logic.

Bug: oss-fuzz:14019
Change-Id: Ic4b8fc896764494112a83c2fcca0a66eed804bf4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209176
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-19 19:37:52 +00:00
Greg Daniel
865dc5604d Adjust vulkan memory allocation block size knobs to better match the type of draws we do.
We were allocating blocks significantly larger than the amount of memory we actually using
which caused us to end up wasting a lot of unused memory. This brings our allocation
sizes more inline with our uses.

Change-Id: I1b00670cfdfdb21884a4a203a1c35e183d83dbcf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209402
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-19 19:30:08 +00:00
Ethan Nicholas
49465b41d1 reworked SPIR-V binary operations and added support for VectorTimesScalar
Bug: skia:
Change-Id: I03b8a1ed3cf78060c5b9a5ede8d0371998116744
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208677
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-19 19:25:32 +00:00
Robert Phillips
7bb47f2a2e Add explicit GrSurfaceProxy flag to skip explicit resource allocation
This approach eliminates a lot of edge cases where ops (e.g., the SmallPathOp) are treating their proxies in a special manner (i.e., just holding a raw ref and never adding pendingIO). Given that the atlas managers are managing the lifetime of the proxies there is no reason for the GrResourceAllocator to be aware of them.

Pulled out of:

https://skia-review.googlesource.com/c/skia/+/208227 (Implement alternate method for determining recycle-ability of allocated GrSurfaces)

Change-Id: Ia6bec5e8f5d5bc63e86ae011bcc3f8e061c066b2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209400
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-19 19:25:02 +00:00
Hal Canary
ba1602896d SkQP: new docker test code
`tools/skqp/docker_run_apk.sh` executes SkQP tests in an emulator

`tools/skqp/run_apk.sh` is used by `docker_run_apk.sh` and
`tools/skqp/test_apk.sh` to factor out common code.

Also: `bin/sysopen` now pipes output to `/dev/null` and doesn't block.

TODO: harmonize with test code executed by bots in `infra/skqp/`.

No-Try: true
Change-Id: Ia212a84565ff52279a845e20372a0ad7cc0726a4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209401
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-19 18:50:03 +00:00
Ethan Nicholas
65a8f56e74 fixed Metal code generation for recursive functions
Bug: oss-fuzz:14096
Change-Id: I9a7586e4000d1398be131ee4a2b85812b14096f3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209381
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-19 18:36:03 +00:00
Michael Ludwig
2929f51aa4 Don't batch across domain modes in GrTextureOp
Change-Id: I3ea0f521dbfccf183fd55e850aeafe641ec28002
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209324
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-04-19 18:05:54 +00:00
Brian Osman
cf4ec506ec Convexity checker: Wait for significant x-product when walking edges
This effectively re-applies the logic from
https://codereview.chromium.org/298973004

The change to the unit test for 389050 is interesting.
The last convexity rewrite "fixed" that case by allowing
it to be detected as convex. In the process, it actually
broke the original bug, so that rendering of the HTML
failed. This CL causes us to give up and decide that the
path is concave, but we return to rendering correctly, so
that's a win.

The bug that initiated this (950508) is effectively the
exact same bug as 2235, which is why I haven't added a new
test case. The existing test case is much more concise than
the 100K data file needed for the new one.

Bugs: skia:2235 chromium:389050 chromium:950508
Change-Id: I0de65db8644f37e335c47e9d41c676b8e8b020fc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209164
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-19 18:01:54 +00:00
Michael Ludwig
377befab71 Update compositing benchmark to use image-set API
Change-Id: I73de5cb894e4084ca86e43c2918a1a9fe656b11d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209323
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-19 17:36:34 +00:00
Chris Dalton
377b18b9bc ccpr: Indicate path fill type by winding direction of cover triangles
Draws the cover geometry for "nonzero" paths with clockwise triangles,
and "even/odd" paths with counterclockwise. This will allow us to use
a double-sided stencil function to resolve coverage in MSAA mode.

Bug: skia:
Change-Id: I067acbe9a466f97f67223d27fea28d758173d25f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209232
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-04-19 17:33:54 +00:00
Ethan Nicholas
cb0f409af4 added error detection for writing to a constant swizzle mask
Bug: oss-fuzz:14089
Change-Id: Ie5c51c2de8b9a53aebfae19373cc5a3d7d8e594b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209325
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-19 16:54:34 +00:00
Kevin Lubick
42daf99e92 [spec] Initial commit for web spec
Bug: skia:8999
Change-Id: Ie9f51e9e65d25fe4c1496a323af7977c81d76d98
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209380
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-19 16:47:57 +00:00
Ethan Nicholas
cc5d3e09e3 Revert "Revert "added more SPIR-V RelaxedPrecision decorations""
This reverts commit 5155e09d14.

Bug: skia:
Change-Id: Ie2df5d64a0f4f76806f3edc9c934ec81d16ee128
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208678
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-19 14:44:59 +00:00
Mike Reed
b07e9a8826 use char-to-glyph cache in freetype typeface
Note: most of the slow-down (before this CL) is due to trashing freetype
objects (FTLibrary and FTFace), since these are ref-counted, but they
only persist long-term if there is an active scalercontext of the same
typeface.

A longer-term fix is to rethink the lifetimes of these freetype objects.
After that, we should remeasure onCharsToGlyphs(), and see if the
cache is still needed.

Bug: 935198
Bug: skia:8997
Change-Id: I1ba4adc57319d620ba4ac0fe0f2877ee62052cbd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209178
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-19 14:35:28 +00:00
Brian Osman
309de7904d Remove SK_TREAT_COLINEAR_DIAGONAL_POINTS_AS_CONCAVE
This was rebaselined and removed from Chrome long ago.
Planning to fix more bugs in the Convexicator, but want
to get this out of the way first.

Change-Id: I4f299d56a81be509a861d1e9c9f0e48a47170096
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209322
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-19 14:11:49 +00:00
Robert Phillips
e5763787f9 Allow GrShadowRRectOp::Make to fail
Change-Id: Ia325c711143c76db27b7dd9dd02ea8bea13f2806
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209100
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-04-19 13:18:09 +00:00
skia-recreate-skps
e8a33ec6d0 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I5ae0a01017ddc01479bf49808739b48072e6f5f0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209282
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-19 05:48:28 +00:00
skia-autoroll
72fcaa242d Roll third_party/externals/angle2 82bcffa78747..145ec7fa7c81 (10 commits)
82bcffa787..145ec7fa7c


git log 82bcffa78747..145ec7fa7c81 --date=short --no-merges --format='%ad %ae %s'
2019-04-19 kainino@chromium.org Revert "Define and expose EGL_ANGLE_power_preference extension."
2019-04-19 kbr@chromium.org Define and expose EGL_ANGLE_power_preference extension.
2019-04-18 jmadill@chromium.org Vulkan: Write docs on format tables.
2019-04-18 jmadill@chromium.org Vulkan: Rename Vulkan "Texture" format to "Image"
2019-04-18 jonahr@google.com Skipped tests not accumulated in dEQP stats output.
2019-04-18 ynovikov@chromium.org Remove Nexus 5X Vulkan test suppressions.
2019-04-18 spang@chromium.org Vulkan: Implement glTexStorageMem2DEXT
2019-04-18 syoussefi@chromium.org Vulkan: Enable ES3 fragment output attribute locations
2019-04-18 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 3aad3e9228b3..ac878fcbdd64 (2 commits)
2019-04-18 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src 0527c9db8148..805b09f92203 (1 commits)


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

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

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=herb@google.com

Change-Id: I160ae20de913560d23658ccbfc844e34d57fc0cb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209261
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-19 05:21:18 +00:00
skia-autoroll
577568d2aa Roll third_party/externals/swiftshader abaecd5f2ba7..a16238df3f28 (12 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/abaecd5f2ba7..a16238df3f28


git log abaecd5f2ba7..a16238df3f28 --date=short --no-merges --format='%ad %ae %s'
2019-04-19 chrisforbes@google.com Add support for OpAtomicCompareExchange
2019-04-19 chrisforbes@google.com Add support atomic instructions as used with storage images
2019-04-19 chrisforbes@google.com Add support for OpImageTexelPointer
2019-04-18 bclayton@google.com Dynamic dispatch for image samplers
2019-04-18 chrisforbes@google.com Factor out GetTexelOffset from EmitImageRead/EmitImageWrite
2019-04-18 chrisforbes@google.com Add support for OpImageRead
2019-04-18 chrisforbes@google.com Add support for OpImageWrite
2019-04-18 chrisforbes@google.com Implement OpImageQuerySize
2019-04-18 chrisforbes@google.com Specialize descriptor contents for storage images
2019-04-18 bclayton@google.com Reactor: Implement debug info generation
2019-04-18 bclayton@google.com Add libbacktrace submodule.
2019-04-18 swiftshader.regress@gmail.com Regres: Update test lists @ d853c12d


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

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

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=herb@google.com

Change-Id: I5e7b22c50d854cde4d08734cf2034afa0a0d96a8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209262
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-19 04:36:58 +00:00
skia-autoroll
8cdae55bf1 Roll ../src f968f64cdf27..a55917cb9824 (433 commits)
f968f64cdf..a55917cb98


Created with:
  gclient setdep -r ../src@a55917cb98

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-skia-autoroll

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=herb@google.com

Change-Id: Ie2e83b7bd2796e1f8a97a2e2c211a4d916f590c7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209260
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-19 04:31:28 +00:00
Martin Vejdarski
9b67802a4c Properly retrieve memory block in SkTextUtils
Fixes a crash when calling SkTextUtils::GetPath with empty text
(or otherwise gets no glyphs to draw).

Change-Id: I11711df354be0045ab348bdd7e6cc0c01d3a4e90
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209200
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Martin Vejdarski <martin@mainframe.co.uk>
2019-04-18 22:42:58 +00:00
recipe-roller
e8e7a9dea6 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/8dfc0bce4ac7aeb9b03f0783fe0a22660ea4d796 Add openscreen gclient config copy-pasta (btolsch@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I657d9774c7adcee17839ea28723bbbd9d6f7e6f3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209173
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-04-18 21:06:08 +00:00
Hal Canary
2e904bc66b SkPDF: move type1 font code into single file
Change-Id: I0e0bf4cdb298b161cabf74eacc4b3950d7240643
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209172
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-18 21:01:58 +00:00
Chris Dalton
71713f6eaa Swap front and back stencil sides when rendering bottom-left
This makes sure the front face is always clockwise in device space,
and the back face is always counterclockwise, regardless of origin.

Bug: skia:
Change-Id: If4b9be6197e0fb9ac22a58f9198afd37a49a8187
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208991
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-04-18 20:10:10 +00:00
Brian Salomon
8a97f56c06 Swap x/y radii for EllipticalRRectOp depending on matrix.
Bug: chromium:946965
Change-Id: Ia85e07d7fc76aa9e0b0a8fe0daf3ab80d517cbd9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209167
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-18 19:56:00 +00:00
Hal Canary
572d9bba64 SkQP: consolidate cut_release scripts
replace the following scripts: cut_release, get_gold_results.py,
goldgetter.py, make_rendertests_list.py, and upload_model with a single
program: cut_release.  Still depends on three C++ programs: jitter_gms,
list_gpu_unit_tests, and make_skqp_model.

Change-Id: I28f59bc1f0caedc05d6ce2c4cc11bbd66cfb9784
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209171
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-18 19:40:50 +00:00