Commit Graph

35209 Commits

Author SHA1 Message Date
Brian Osman
c069a57301 added NIMA sample to showcase animations
improved third_party template to include headers as system headers for non-Windows machines

Bug: skia:
Change-Id: Id2fa74fc31b49f9b07cc83e7f60477c7ab4f8d83
Reviewed-on: https://skia-review.googlesource.com/135450
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-06-19 20:30:28 +00:00
Chris Dalton
644341af03 ccpr: Don't consider sub-pixel translation for caching on Android
Bug: skia:
Change-Id: I453400bd1ca1f122d9af526f55102e8712119d2b
Reviewed-on: https://skia-review.googlesource.com/135540
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-06-19 20:16:41 +00:00
Mike Reed
0917fad2c6 move imagefilters into separate dir and flag for build.gn
Requires https://chromium-review.googlesource.com/c/chromium/src/+/1105062

Bug: skia:
Change-Id: I948056234efa57c0f727a61d5fb3258034de5199
Reviewed-on: https://skia-review.googlesource.com/135566
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-06-19 20:16:38 +00:00
Ravi Mistry
386d9cf402 Make infra failure message in Android compile bot more descriptive
Bug: skia:
Change-Id: I473b3f9a42dc9a65e0912263cc5ff8c204bfae6b
Reviewed-on: https://skia-review.googlesource.com/135784
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2018-06-19 20:11:38 +00:00
Hal Canary
c9b6dda804 SkUtils: safe SkUTF16_NextUnichar
Change-Id: Ief70f3055d9612c8934ede967c1048dd7fcb102a
Reviewed-on: https://skia-review.googlesource.com/135705
Commit-Queue: Hal Canary <halcanary@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2018-06-19 20:11:33 +00:00
Florin Malita
3425e22b9e Use SkJSONWriter for get_images_from_skps stats reporting
Remove JsonCPP dependency.

Change-Id: I3e86334e27b325cb06fd01d3c61661a9687c3a7f
Reviewed-on: https://skia-review.googlesource.com/135710
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-19 20:06:36 +00:00
Bruce Wang
ebf0cf5af3 Implement SkTypeface_FreeType::onMakeClone which overrides SkTypeface::onMakeClone.
Overrides of onMakeClone are implemented in:
src/ports/SkFontConfigTypeface.h
src/ports/SkFontMgr_android.cpp
src/ports/SkFontMgr_fontconfig.cpp

Change-Id: I557082ecd105742a899c66b8de7101d5045ebf73
Reviewed-on: https://skia-review.googlesource.com/135324
Commit-Queue: Bruce Wang <brucewang@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-06-19 20:06:30 +00:00
Brian Salomon
92be2f74db Revert "Revert "Change how vertex/instance attributes are handled in geometry processors.""
This reverts commit 5045e501d2.

TBR=csmartdalton@google.com

Change-Id: Ifbf5f1d8f8ef340fdc69653e931b6d68d4bf0854
Reviewed-on: https://skia-review.googlesource.com/135862
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2018-06-19 20:01:29 +00:00
Florin Malita
f5ac906476 [skottie] Simplify Parse<SkPoint>
Some BM versions wrap point values as single or even multi-element arrays.
Parse<SkScalar> already handles the former case - we can extend that
behavior to also cover the latter and simplify Parse<SkPoint>.

TBR=

Change-Id: I2152928944f43dc03a5d8f0d65865ac43974fd7a
Reviewed-on: https://skia-review.googlesource.com/135800
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-19 20:01:28 +00:00
Herb Derby
9d85d63468 Use SkGlyphRun instead of builder
Move from passing builder down the stack to passing the
object we really want to be the interface down the stack.

Move code that shunts from glyph run style to drawTextPos
to the SkGlyphRun from the builder.

Change-Id: Iefaca69104737ce46c06fbb26dc99996784b2bdb
Reviewed-on: https://skia-review.googlesource.com/135620
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-06-19 19:56:25 +00:00
Timothy Liang
91e260f4db Reland "Reland "added 565 to 8888 conversion for gpu LCD text rendering for macOS""
This reverts commit 5540528f81.

Reason for revert: Changed unique pointer to not be static

Original change's description:
> Revert "Reland "added 565 to 8888 conversion for gpu LCD text rendering for macOS""
>
> This reverts commit 0513dd8675.
>
> Reason for revert: Still has static initializer.
>
> Original change's description:
> > Reland "added 565 to 8888 conversion for gpu LCD text rendering for macOS"
> >
> > This reverts commit cf274da6fa.
> >
> > Reason for revert: removed the static initializer
> >
> > Original change's description:
> > > Revert "added 565 to 8888 conversion for gpu LCD text rendering for macOS"
> > >
> > > This reverts commit e6f2ecafaf.
> > >
> > > Reason for revert: breaking chrome roll cause of static initializers
> > >
> > > Original change's description:
> > > > added 565 to 8888 conversion for gpu LCD text rendering for macOS
> > > >
> > > > Bug: skia:
> > > > Change-Id: Ie24160bb098d388bf4ad69d0c2f9f8ed4beb215c
> > > > Reviewed-on: https://skia-review.googlesource.com/134508
> > > > Commit-Queue: Timothy Liang <timliang@google.com>
> > > > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> > >
> > > TBR=egdaniel@google.com,jvanverth@google.com,timliang@google.com
> > >
> > > Change-Id: Ida97a4085c93fcb990999ab71f99364ec2ef86b7
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Bug: skia:
> > > Reviewed-on: https://skia-review.googlesource.com/135000
> > > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > > Commit-Queue: Greg Daniel <egdaniel@google.com>
> >
> > Change-Id: I40c29b73970c55b3579a0169bbad666a798b2348
> > Bug: skia:
> > Reviewed-on: https://skia-review.googlesource.com/135021
> > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Timothy Liang <timliang@google.com>
>
> TBR=egdaniel@google.com,jvanverth@google.com,timliang@google.com
>
> Change-Id: I2632d02adc9ba791e5a55adafe0ad10a63f50073
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/135240
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>

Bug: skia:
CQ_INCLUDE_TRYBOTS=luci.chromium.try:android-marshmallow-arm64-rel
Change-Id: Ie4fa0e4f862546068ed4ab818d4956de7175cb3d
Reviewed-on: https://skia-review.googlesource.com/135241
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Timothy Liang <timliang@google.com>
2018-06-19 19:56:24 +00:00
Robert Phillips
c994a93b32 Move op memory storage to GrContext (take 2)
TBR=bsalomon@google.com

Change-Id: I4a448694d4114d83cd3a720cfc8bd37de51733d1
Reviewed-on: https://skia-review.googlesource.com/135707
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-06-19 19:51:20 +00:00
Cary Clark
4d75975b70 simplify confusing examples
Docs-Preview: https://skia.org/?cl=135785
Bug: skia:6898
Change-Id: Idf5e44817a86accaa628ea5d7abb47cd2b06d048
Reviewed-on: https://skia-review.googlesource.com/135785
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-06-19 19:51:19 +00:00
Jim Van Verth
796bc1db0e Limit iterations when computing convex inset.
In the worst case we should compare each vertex in the polygon
to the others just once, so we should have at worst n^2 iterations.

Bug: skia:8079
Change-Id: Ic22064e86d6eb08d9165b2feb5050701ec8e9639
Reviewed-on: https://skia-review.googlesource.com/135865
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-06-19 19:36:49 +00:00
Jim Van Verth
99ca453634 Clamp ambient blur radius
Bug: skia:8078
Change-Id: I8a45ce49b236ae0ad4c2176be71011c372c316ce
Reviewed-on: https://skia-review.googlesource.com/135861
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-06-19 19:36:25 +00:00
ziadb
bceddbcb72 SkAR: drawing text, shapes, rotation modes enabled, translating objects
To run this app, you need to create an out directory as such:
bin/gn gen out/arm64 --args='ndk="NDK_PATH" target_cpu="ABI"'

For now, the only supported ABI is arm64

Change-Id: I012f0c6a0550d80a0028f42177d5ca72974d848d
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/130980
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ziad Ben Hadj-Alouane <ziadb@google.com>
2018-06-19 19:10:54 +00:00
Florin Malita
80452bee11 Fold SkJSON into Skia/utils
It's a tiny, core-ish component -- might as well treat as such to
simplify dependencies.

Change-Id: I6f31ce2d151f9a629d88bfc7f15d64891d5150c0
Reviewed-on: https://skia-review.googlesource.com/135780
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-19 18:23:30 +00:00
Ben Wagner
96aa535b78 Remove .bat and .exe from commands where possible.
We expect .BAT and .EXE to be on PATHEXT. Also, although Python
CreateProcess doesn't honor PATHEXT, it will try .EXE. This allows most
commands to be platform-independent, and also resolves the issue with
the cpython package not including python.bat.

No-Tree-Checks: true
Docs-Preview: https://skia.org/?cl=135626
Bug: chromium:852581
Change-Id: Iab4189407df44ff4ad4d37da07ff52414229d397
Reviewed-on: https://skia-review.googlesource.com/135626
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-19 17:29:15 +00:00
Cary Clark
ba61029c5b fix op fuzz timeout
R=kjlubick@google.com
Bug:831647
Change-Id: I003ff28ac40ec81400570310bf6f6f1a08a925e5
Reviewed-on: https://skia-review.googlesource.com/134505
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-06-19 14:06:20 +00:00
angle-skia-autoroll
8be6c33199 Roll third_party/externals/angle2 2dabb4a367c3..7df52383cfdf (1 commits)
2dabb4a367..7df52383cf


git log 2dabb4a367c3..7df52383cfdf --date=short --no-merges --format='%ad %ae %s'
2018-06-19 lucferron@chromium.org Angle: Fix angle::Format's pixelBytes


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

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

Change-Id: I2f5be0801f772e037a19de23da15bfe4d79231d2
Reviewed-on: https://skia-review.googlesource.com/135740
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-19 13:53:20 +00:00
Florin Malita
b632df701d Use SkJSONWriter for viewer UI serialization
+ drop JsonCPP dependency.

Bug: skia:
Change-Id: I81539cea6e495fe6d55d155ae49e7ac4a79faad6
Reviewed-on: https://skia-review.googlesource.com/135628
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-19 13:53:00 +00:00
Cary Clark
929e436c98 fix bookmaker files
make edits compile

Next time, could you put me on the review if you are going to
edit bookmaker files? I'm happy to preflight the changes
to see if they break the bots.

Docs-Preview: https://skia.org/?cl=135703
NOTRY=true
Bug: skia:6898
Change-Id: Iae054f19b131e894f73cedda279ee98af99e8c1c
Reviewed-on: https://skia-review.googlesource.com/135703
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-06-19 13:11:30 +00:00
Cary Clark
5607143361 fix fuzzer bugs in pathops
one from clusterfuzz, one from Skia fuzzer

R=kjlubick@google.com
Bug:853938
Change-Id: If456bf45e4d75edecf4e4e8222ddcdaa301455f4
Reviewed-on: https://skia-review.googlesource.com/135701
Commit-Queue: Cary Clark <caryclark@skia.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-06-19 12:58:00 +00:00
Kevin Lubick
f203078309 Revert "added GrSkSLFP and converted DitherEffect to use it"
This reverts commit dfbfc738a9.

Reason for revert: Seems to be breaking DDL/ASAN bots

Original change's description:
> added GrSkSLFP and converted DitherEffect to use it
>
> Bug: skia:
> Change-Id: I84b71165eab1712355f3c7669cee2d33d259f3df
> Reviewed-on: https://skia-review.googlesource.com/124504
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

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

Change-Id: Ic4c3978aaba0391f2f8bb1316a456e3821a3a2f2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/135700
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-06-19 12:23:21 +00:00
Florin Malita
fb3beb0591 [skjson] More short string micro-optimizations
When possible, load 8 chars and mask out the tag and \0 terminator.

~19% faster on a Z840, ~5% faster on a PixelC.

Change-Id: I12d4b7d86c92c887b00f5d2480d3ff05a7042df1
Reviewed-on: https://skia-review.googlesource.com/135624
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-19 02:50:58 +00:00
Mike Reed
74aa9ab51a add new source list in prep for separating imagefilters from other effects
Future Skia CL: https://skia-review.googlesource.com/c/skia/+/135566
Chrome CL: https://chromium-review.googlesource.com/c/chromium/src/+/1105062

Bug: skia:
Change-Id: I0caee985deb38739267b18fd92f3d0cf9454b8cd
Reviewed-on: https://skia-review.googlesource.com/135622
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-06-19 02:27:18 +00:00
angle-skia-autoroll
f20e970137 Roll third_party/externals/angle2 f6fd48fd329f..2dabb4a367c3 (7 commits)
f6fd48fd32..2dabb4a367


git log f6fd48fd329f..2dabb4a367c3 --date=short --no-merges --format='%ad %ae %s'
2018-06-18 geofflang@chromium.org Make a context current when destroying it.
2018-06-18 ehmaldonado@chromium.org Remove DEPS .chromium
2018-06-18 fjhenigman@chromium.org Vulkan: fix third_party path.
2018-06-18 jmadill@chromium.org translator: Store symbol type in TField.
2018-06-18 lucferron@chromium.org SampleApps: Refactor to use cli args the same way
2018-06-18 lucferron@chromium.org Vulkan: Implement conversion to uint16 for drawElements with ubytes
2018-06-18 lucferron@chromium.org Vulkan: Fill in glslang resources with our caps


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

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

Change-Id: Ic45c7072bd5d6a82649185d1469188a48910e796
Reviewed-on: https://skia-review.googlesource.com/135680
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-19 02:11:34 +00:00
swiftshader-skia-autoroll
59b6dd3fcb Roll third_party/externals/swiftshader 700a1a67d569..1fa206780108 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/700a1a67d569..1fa206780108


git log 700a1a67d569..1fa206780108 --date=short --no-merges --format='%ad %ae %s'
2018-06-18 sugoi@google.com Fixed size verification assert to include border


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

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

Change-Id: I8c5c4c9adc708edcf2cc7fce0878125344f911b7
Reviewed-on: https://skia-review.googlesource.com/135521
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-19 02:11:33 +00:00
Ben Wagner
f08d1d0ce1 Stop using SkTSwap.
Use std::swap instead. It does not appear that any external user
specializes SkTSwap, but some may still use it. This removes all use in
Skia so that SkTSwap can later be removed in a smaller CL. After that
the <utility> include can be removed from SkTypes.h.

Change-Id: If03d4ee07dbecda961aa9f0dc34d171ef5168753
Reviewed-on: https://skia-review.googlesource.com/135578
Reviewed-by: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-06-19 02:06:31 +00:00
Herb Derby
9372420264 Remove unused drawText code
Change-Id: I3fc236be67b6a3d822d5508de1daa411d00fd5a4
Reviewed-on: https://skia-review.googlesource.com/135574
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-06-19 02:06:30 +00:00
Mike Klein
5045e501d2 Revert "Change how vertex/instance attributes are handled in geometry processors."
This reverts commit 19c1233c44.

Reason for revert: want to make sure Google3 can roll

Original change's description:
> Change how vertex/instance attributes are handled in geometry processors.
> 
> * No longer register vertex/instance attributes on base class, just counts
> 
> * Separate instance and vertex attributes and remove InputRate and offset
> 
> * Make attributes constexpr where possible
> 
> Change-Id: I1f1d5e772fa177a96d2aeb805aab7b69f35bfae6
> Reviewed-on: https://skia-review.googlesource.com/132405
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Chris Dalton <csmartdalton@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com

Change-Id: I4800632515e14fbf54af52826928ac915657b59f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/135661
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-06-19 01:41:10 +00:00
Brian Osman
63b3bfb711 Reland "Remove old references to SampleApp"
This reverts commit 3ff2b20057.

Reason for revert: Infra fires are out.

Original change's description:
> Revert "Remove old references to SampleApp"
> 
> This reverts commit 1c477fc263.
> 
> Reason for revert: Botpocalypse.
> Original change's description:
> > Remove old references to SampleApp
> > 
> > Docs-Preview: https://skia.org/?cl=135570
> > Change-Id: I330ffa964c2d90ca8d3cd844aabcd8616ccd0540
> > Reviewed-on: https://skia-review.googlesource.com/135570
> > Reviewed-by: Cary Clark <caryclark@google.com>
> > Commit-Queue: Brian Osman <brianosman@google.com>
> 
> TBR=halcanary@google.com,brianosman@google.com,caryclark@google.com
> 
> Change-Id: I514e2c7bca8a1ebd311593573a94e8a078695785
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/135600
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=halcanary@google.com,brianosman@google.com,caryclark@google.com

Change-Id: I660482ef32acecf5b1bf24d2dec919bc68fde97e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/135660
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-18 21:09:09 +00:00
Eric Boren
aa037523e5 [infra] Include cpython CIPD package on Windows
No-Tree-Checks: true
Bug: skia:
Change-Id: I08854d88e33d00e4bb56eb6eb346592618bd2693
Reviewed-on: https://skia-review.googlesource.com/135579
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Eric Boren <borenet@google.com>
2018-06-18 20:47:48 +00:00
Brian Osman
3ff2b20057 Revert "Remove old references to SampleApp"
This reverts commit 1c477fc263.

Reason for revert: Botpocalypse.
Original change's description:
> Remove old references to SampleApp
> 
> Docs-Preview: https://skia.org/?cl=135570
> Change-Id: I330ffa964c2d90ca8d3cd844aabcd8616ccd0540
> Reviewed-on: https://skia-review.googlesource.com/135570
> Reviewed-by: Cary Clark <caryclark@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=halcanary@google.com,brianosman@google.com,caryclark@google.com

Change-Id: I514e2c7bca8a1ebd311593573a94e8a078695785
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/135600
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-18 19:32:09 +00:00
Brian Osman
1c477fc263 Remove old references to SampleApp
Docs-Preview: https://skia.org/?cl=135570
Change-Id: I330ffa964c2d90ca8d3cd844aabcd8616ccd0540
Reviewed-on: https://skia-review.googlesource.com/135570
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-18 19:15:48 +00:00
Herb Derby
c00d8627ff Use x text skew to position text
This CL fixes b/110225902.

The PDF device was not taking x skew into account when
calculating positions.

Change-Id: I659dfeba0d31c8e1192cd3538b550c48cf5a835c
Reviewed-on: https://skia-review.googlesource.com/135569
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-06-18 19:09:18 +00:00
Ethan Nicholas
dfbfc738a9 added GrSkSLFP and converted DitherEffect to use it
Bug: skia:
Change-Id: I84b71165eab1712355f3c7669cee2d33d259f3df
Reviewed-on: https://skia-review.googlesource.com/124504
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-06-18 18:40:58 +00:00
Mike Klein
b831ea2296 remove lowp bilerp_clamp_8888 stage
I encountered some trouble getting this turned on in Chromium,
so we've got some undesirable skew between what's tested and shipping.

No one has complained about software rasterization perf to me lately,
so let's just drop this, keeping the already-launched highp
bilerp_clamp_8888 stage.

Change-Id: I9a6557d9b468765989f97369a976c5028f81eab3
Reviewed-on: https://skia-review.googlesource.com/135563
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-06-18 17:49:58 +00:00
Florin Malita
94d4d3e20b [skottie] Fix OOB access in Parse<SkPoint>
SkJSON requires valid array indices, so callers must guard against
out-of-bounds conditions explicitly.

Bug: oss-fuzz:8956
Change-Id: I50b96b088e44a4c1a569e6911d4be5d75799b464
Reviewed-on: https://skia-review.googlesource.com/135445
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-06-18 17:33:18 +00:00
Mike Klein
0333854e55 clean up defines that do nothing
Change-Id: I0181ddfd7b75cd7ffb7002b7038a99419ea876f2
Reviewed-on: https://skia-review.googlesource.com/135562
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-06-18 17:25:28 +00:00
Mike Klein
e72e773ad0 remove SkTCast
SkTCast is functionally equivalent to reinterpret_cast.

The comment about SkTCast helping to avoid strict alising issues is not
true.  Dereferencing a pointer cast to a pointer of an unrelated type is
always undefined, even if smuggled through a union like in SkTCast.

To really avoid aliasing issues, you need to make a union[1] of the two
value types, or better, memcpy between values.  I've had to fix
MatrixText.cpp where switching to reinterpret_cast actually let Clang
notice and warn that we're exploiting undefined behavior, and
GrSwizzle.h and SkCamera.cpp caught by GCC.

I've switched SkTLList over to use SkAlignedSTStorage, which seems
to help convince some GCC versions that fObj is used in a sound way.

[1] The union punning trick is non-standard in C++, but GCC and MSVC
both explicitly support it.  I believe Clang does not officially
explicitly support it, but probably does quietly for GCC compatibility.

Change-Id: I71822e82c962f9aaac8be24d3c0f39f4f8b05026
Reviewed-on: https://skia-review.googlesource.com/134947
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-06-18 17:22:18 +00:00
Brian Salomon
19c1233c44 Change how vertex/instance attributes are handled in geometry processors.
* No longer register vertex/instance attributes on base class, just counts

* Separate instance and vertex attributes and remove InputRate and offset

* Make attributes constexpr where possible

Change-Id: I1f1d5e772fa177a96d2aeb805aab7b69f35bfae6
Reviewed-on: https://skia-review.googlesource.com/132405
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2018-06-18 17:13:58 +00:00
angle-skia-autoroll
146cf3ce79 Roll third_party/externals/angle2 50cf2be0758b..f6fd48fd329f (1 commits)
50cf2be075..f6fd48fd32


git log 50cf2be0758b..f6fd48fd329f --date=short --no-merges --format='%ad %ae %s'
2018-06-18 lucferron@chromium.org Vulkan: Get uniform for array of matrices fix


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

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

Change-Id: I823ad862c48d85e7a7be2f1c5fb9ef667970db2e
Reviewed-on: https://skia-review.googlesource.com/135520
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-18 17:02:28 +00:00
Brian Osman
47c275133b Remove GrNonlinearColorSpaceXformEffect
Convert all uses to GrColorSpaceXformEffect

Change-Id: Icc9d093a00450001c1b915db7a8676c9c66073b1
Reviewed-on: https://skia-review.googlesource.com/132090
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-06-18 16:25:48 +00:00
Chris Dalton
4da70190aa ccpr: Implement path mask caching
Implement caching as follows:

1) Instead of deleting the mainline ccpr atlas when finished, stash it
   away from flush to flush.

2) On subsequent flushes, check the stashed atlas to see if we can
   reuse any of its cachable paths. Copy reusable paths into 8-bit
   literal coverage atlases and store them in the resource cache.

3) Recycle the stashed atlas texture for the remaining paths in the
   flush.

Bug: skia:
Change-Id: I9b20fbea708646df1df3a5f9c044e2299706b989
Reviewed-on: https://skia-review.googlesource.com/134703
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-06-18 16:14:28 +00:00
Greg Daniel
ddc0c6006c Always use dedicated VkImage memory on NexusPlayer and Mali.
Fixes issues caused by https://skia-review.googlesource.com/c/skia/+/135260

Bug: skia:
Change-Id: I99db232c6ba56f4adccf6cfaa9c29a4bec900d9b
Reviewed-on: https://skia-review.googlesource.com/135448
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-06-18 15:54:28 +00:00
Mike Klein
e475d016d9 remove stray SkTLList includes
Change-Id: I63ba2424bd70f53c14d15bb332a585881d2c4613
Reviewed-on: https://skia-review.googlesource.com/135451
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-06-18 15:52:58 +00:00
Chris Dalton
4c458b12f6 ccpr: Use lazy proxies with GrCCAtlas
Bug: skia:
Change-Id: I576d9303d451352778de0425e3ecbc561331cd09
Reviewed-on: https://skia-review.googlesource.com/135362
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-06-18 15:32:48 +00:00
Brian Osman
3567c14a41 Implement nonlinear (as-encoded) blending in GrColorSpaceXform
Make GrColorSpaceXform a wrapper over SkColorSpaceXformSteps, and
removed the xform cache. The shader code does up to five steps to
correctly transform (unpremul, linearize, gamut, encode, premul).
Remove all clamping, so we can support sRGB encoded F16.

Most of https://skia-review.googlesource.com/c/skia/+/132090,
except that GrNonlinearColorSpaceXformEffect is still used for
SkColorSpaceXformCanvas and a few other places. As a result,
this doesn't trigger any layout test failures.

Change-Id: I789a5e327a419b5f7634c00d1b355912046c07b7
Reviewed-on: https://skia-review.googlesource.com/135326
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-18 14:55:48 +00:00
Cary Clark
1bb47df4fc fast path for pathops
Add faster path for simple but common path ops:
- intersect two rects
- all ops where one operand is empty

R=halcanary@google.com

Bug: skia:8049
Change-Id: I2a516d095feae8478ee9433262c9c77e5e18ce81
Reviewed-on: https://skia-review.googlesource.com/132929
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
2018-06-18 13:30:38 +00:00