aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Move DrawToTargetWithShapeMask to GrSoftwarePathRendererGravatar Brian Osman2017-08-17
| | | | | | | | | | | | | That function has nothing to do with software masks - I claim it was only in GrSWMaskHelper because it was used by the software path renderer. Also trimmed some includes. Bug: skia: Change-Id: I6939010c70309cdc4135cb250afe85ad7b7be451 Reviewed-on: https://skia-review.googlesource.com/35821 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove uses of sk_throw.Gravatar Ben Wagner2017-08-17
| | | | | | | | | | | The sk_throw macro is now an alias to SK_ABORT, but is often used when other macros better describe the situation. This change replaces sk_throw with SK_ABORT or SkASSERT_RELEASE as appropriate. Change-Id: I313facc6d535c8e8bec90ceeaf17ae3a381c48f3 Reviewed-on: https://skia-review.googlesource.com/35882 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Roll skia/third_party/externals/angle2/ a836b4660..46d6c2b63 (1 commit)Gravatar angle-deps-roller@chromium.org2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | https://chromium.googlesource.com/angle/angle.git/+log/a836b4660604..46d6c2b63040 $ git log a836b4660..46d6c2b63 --date=short --no-merges --format='%ad %ae %s' Created with: roll-dep skia/third_party/externals/angle2 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, see: http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE TBR=bsalomon@google.com Change-Id: I26c4b70856b7f89d9c100094255c6cfc1e6221b3 Reviewed-on: https://skia-review.googlesource.com/35921 Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org> Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
* Add ANGLE support to Viewer on WindowsGravatar Brian Salomon2017-08-17
| | | | | | | Change-Id: I97a844b2f289d2518f60a64f94d60551c4530dd4 Reviewed-on: https://skia-review.googlesource.com/35742 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Stop BRD-decoding non-opaque to 565 sinkGravatar Leon Scroggins III2017-08-17
| | | | | | | | | | | | review.skia.org/34361 accidentally started attempting to decode images with transparency to a 565 sink. BRD helpfully decodes to N32 instead, rather than failing. We don't need to test this here, and it draws to a 565 sink, resulting in incorrect images in Gold. Change-Id: I9585b2c0c4526e5f33667bd8f57003449e735372 Reviewed-on: https://skia-review.googlesource.com/35707 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Add SurfacePro2017 tasks.Gravatar Ben Wagner2017-08-17
| | | | | | | | | | | | Not adding Vulkan configs because it mostly produces garbage -- see skia:6398. Bug: skia:6978 NoTry: true Change-Id: I8f9fa7ecc5d195658944f8f29a91ddaf47c066fc Reviewed-on: https://skia-review.googlesource.com/35321 Commit-Queue: Ben Wagner <benjaminwagner@google.com> Reviewed-by: Ravi Mistry <rmistry@google.com>
* Roll skia/third_party/externals/angle2/ b18c33e94..a836b4660 (1 commit)Gravatar angle-deps-roller@chromium.org2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | https://chromium.googlesource.com/angle/angle.git/+log/b18c33e94ba9..a836b4660604 $ git log b18c33e94..a836b4660 --date=short --no-merges --format='%ad %ae %s' Created with: roll-dep skia/third_party/externals/angle2 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, see: http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE TBR=bsalomon@google.com Change-Id: I07437f8bb4bf1b89d65097a8c66cc9bd4b9b3820 Reviewed-on: https://skia-review.googlesource.com/35729 Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org> Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
* If a conic contains any infinite points, abort chopping to quads.Gravatar Stephen White2017-08-17
| | | | | | | | | | | Otherwise bad things (asserts, bogus data, dogs and cats living together, mass hysteria). Bug: 755043 Change-Id: I64cd1dacf553463f18babcb24deb2be08c762c67 Reviewed-on: https://skia-review.googlesource.com/35730 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Add atrace events for bitmap uploads to Android framework builds.Gravatar Derek Sollenberger2017-08-17
| | | | | | | Change-Id: I736d82ab4ab66860a03f839bedc4f7614d38c6e6 Reviewed-on: https://skia-review.googlesource.com/35840 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* Move calls to conversion_possible to SkCodecGravatar Leon Scroggins III2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | Move common code into the base class, so subclasses need not call conversion_possible. Use SkEncodedInfo rather than SkImageInfo, and use the proper frame. API Changes: - SkAndroidCodec: - Add getEncodedInfo(), for SkBitmapRegionCodec - SkEncodedInfo: - Add opaque() helper - SkBitmapRegionDecoder: - Remove unused conversionSupported (Split off from skia-review.googlesource.com/c/25746) Bug: skia:5601 Change-Id: If4a40d4b98a3dd0afde2b6058f92315a393a5baf Reviewed-on: https://skia-review.googlesource.com/34361 Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Roll skia/third_party/externals/angle2/ 41ac68e71..b18c33e94 (1 commit)Gravatar angle-deps-roller@chromium.org2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | https://chromium.googlesource.com/angle/angle.git/+log/41ac68e711f5..b18c33e94ba9 $ git log 41ac68e71..b18c33e94 --date=short --no-merges --format='%ad %ae %s' Created with: roll-dep skia/third_party/externals/angle2 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, see: http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE TBR=bsalomon@google.com Change-Id: I4b064438bf77ec457b9b1d40618774c528fd63e8 Reviewed-on: https://skia-review.googlesource.com/35725 Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org> Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
* Revert "Switched highp float to highfloat and mediump float to half."Gravatar Brian Salomon2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 88d99c63878c2d3d340120f0321676f72afcb4f0. Reason for revert: Believed to be causing unit test failures in Chrome roll: https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/364433 https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.chromium.android%2Flinux_android_rel_ng%2F364433%2F%2B%2Frecipes%2Fsteps%2Fcontent_browsertests__with_patch__on_Android%2F0%2Flogs%2FWebRtcCaptureFromElementBrowserTest.VerifyCanvasWebGLCaptureColor%2F0 Original change's description: > Switched highp float to highfloat and mediump float to half. > > The ultimate goal is to end up with "float" and "half", but this > intermediate step uses "highfloat" so that it is clear if I missed a > "float" somewhere. Once this lands, a subsequent CL will switch all > "highfloats" back to "floats". > > Bug: skia: > Change-Id: Ia13225c7a0a0a2901e07665891c473d2500ddcca > Reviewed-on: https://skia-review.googlesource.com/31000 > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,csmartdalton@google.com,ethannicholas@google.com Change-Id: I8bfa97547ac3920d433665f161d27df3f15c83aa No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/35705 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "fixed constant vector swizzling"Gravatar Brian Salomon2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8ac36a577f14158c820bbc673f477a7ce20702e5. Reason for revert: Need to revert 88d99c63878c2d3d340120f0321676f72afcb4f0 Original change's description: > fixed constant vector swizzling > > Bug: skia: > Change-Id: I2d205bf7242d2223c4939c3e7897db9aba02c705 > Reviewed-on: https://skia-review.googlesource.com/35640 > Reviewed-by: Ethan Nicholas <ethannicholas@google.com> > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> TBR=bsalomon@google.com,ethannicholas@google.com Change-Id: I0b0ee62b9173beed9513947244e37d5a528f85a3 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/35704 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Remove SkPARAM and SkDECLAREPARAM.Gravatar Ben Wagner2017-08-17
| | | | | | | | | | These were used for debug only parameters, but no longer appear in any code. Change-Id: I91a25f0b40df02a66b0d7543339deafbf28dc06d Reviewed-on: https://skia-review.googlesource.com/35703 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Remove SkFAIL.Gravatar Ben Wagner2017-08-17
| | | | | | | | | This macro just forwards to SK_ABORT. It appears there are now no users. Change-Id: I25a736790d7799b8ff51d879a823ee1b6b9cb47e Reviewed-on: https://skia-review.googlesource.com/35760 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Revert "skia: add heif decoding support"Gravatar Mike Klein2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c2a954290dc3888f877a047098b84c24363895fb. Reason for revert: both Android and Google3 rolls cannot compile. Android cannot cast std::unique_ptr<T> to T*, Google3 cannot find HeifDecoderAPI.h. Original change's description: > skia: add heif decoding support > > Bug: b/64077740 > Change-Id: I11e0243bcc4c21c0aa5aa29a719dd0fcba7ae6f7 > Reviewed-on: https://skia-review.googlesource.com/35123 > Reviewed-by: Chong Zhang <chz@google.com> > Reviewed-by: Leon Scroggins <scroggo@google.com> > Commit-Queue: Chong Zhang <chz@google.com> > Commit-Queue: Leon Scroggins <scroggo@google.com> TBR=scroggo@google.com,chz@google.com Change-Id: Id98f025e63daec50408186000453d1695170f7a8 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: b/64077740 Reviewed-on: https://skia-review.googlesource.com/35741 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Roll skia/third_party/externals/angle2/ aadc8f376..41ac68e71 (11 commits)Gravatar angle-deps-roller@chromium.org2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | https://chromium.googlesource.com/angle/angle.git/+log/aadc8f376a2c..41ac68e711f5 $ git log aadc8f376..41ac68e71 --date=short --no-merges --format='%ad %ae %s' Created with: roll-dep skia/third_party/externals/angle2 BUG=602737 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, see: http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE TBR=bsalomon@google.com Change-Id: Ifc91ba4ec20ede1fdc2fa865186edb4d83e83146 Reviewed-on: https://skia-review.googlesource.com/35680 Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org> Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
* Revert "Remove SkFAIL."Gravatar Ben Wagner2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 91b6ce3d80ae78816de2da3138df3c44bccd9671. Reason for revert: Broke all the builders! Original change's description: > Remove SkFAIL. > > This macro just forwards to SK_ABORT. It appears there are now no users. > > Change-Id: Iab02109749eb9674a5f5c61752ef0588398d1b27 > Reviewed-on: https://skia-review.googlesource.com/35520 > Reviewed-by: Derek Sollenberger <djsollen@google.com> > Commit-Queue: Ben Wagner <bungeman@google.com> TBR=djsollen@google.com,bungeman@google.com Change-Id: I7afcd127c8aa07b0147bc9c980918f597378ffef No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/35740 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Remove SkFAIL.Gravatar Ben Wagner2017-08-17
| | | | | | | | | This macro just forwards to SK_ABORT. It appears there are now no users. Change-Id: Iab02109749eb9674a5f5c61752ef0588398d1b27 Reviewed-on: https://skia-review.googlesource.com/35520 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Optimize the size of our JSONGravatar Brian Osman2017-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | Catapult (Chrome tracing) has a hard upper limit of 256 MB of JSON data. This is independent of the number of events, because V8 can't store a single string longer than that. Before these changes, longer traces (eg all GL GMs, which was my test case) would be much larger (306 MB). This CL includes four changes that help to reduce the text size: 1) Offset timestamps (saved 7.3 MB) 2) Limit timestamps and durations to 3 digits (saved 10.7 MB) 3) Shorten thread IDs (saved 7.2 MB) 4) Omit categories from JSON (saved 25.7 MB) Note that category filtering still works, this just prevents us from writing the categories to the JSON, which was of limited value. At this point, my 306 MB file is now 255.3 MB, and loads. Bug: skia: Change-Id: Iaafc84025ddd52904f1ce9c1c2e9cbca65113079 Reviewed-on: https://skia-review.googlesource.com/35523 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Support color space and other color types in SkImage_Raster::onMakeSubsetGravatar Brian Osman2017-08-17
| | | | | | | | Bug: skia:6858 Change-Id: I96bd8f6e918ad1f4aa7001d2343b3ae4951cdd4f Reviewed-on: https://skia-review.googlesource.com/35560 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* fixed constant vector swizzlingGravatar Ethan Nicholas2017-08-17
| | | | | | | | Bug: skia: Change-Id: I2d205bf7242d2223c4939c3e7897db9aba02c705 Reviewed-on: https://skia-review.googlesource.com/35640 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Switched highp float to highfloat and mediump float to half.Gravatar Ethan Nicholas2017-08-16
| | | | | | | | | | | | | The ultimate goal is to end up with "float" and "half", but this intermediate step uses "highfloat" so that it is clear if I missed a "float" somewhere. Once this lands, a subsequent CL will switch all "highfloats" back to "floats". Bug: skia: Change-Id: Ia13225c7a0a0a2901e07665891c473d2500ddcca Reviewed-on: https://skia-review.googlesource.com/31000 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "turn exceptions on in test tools on Android"Gravatar Mike Klein2017-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c902ff8fc8bd3c385096bdbb0fec6d1ce3c231a3. Reason for revert: not gonna do this afterall. Original change's description: > turn exceptions on in test tools on Android > > This is a follow-up to https://skia-review.googlesource.com/c/34982 > which did the same for locally built test tools. > > Change-Id: Id97841a64521fda99cb952a1a751ffc10f636f53 > Reviewed-on: https://skia-review.googlesource.com/35162 > Commit-Queue: Mike Klein <mtklein@google.com> > Reviewed-by: Leon Scroggins <scroggo@google.com> TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com,scroggo@google.com Change-Id: Iae6c817d625989e3a427dbc18328477382d892bd No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/35524 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* skia: add heif decoding supportGravatar Chong Zhang2017-08-16
| | | | | | | | | | Bug: b/64077740 Change-Id: I11e0243bcc4c21c0aa5aa29a719dd0fcba7ae6f7 Reviewed-on: https://skia-review.googlesource.com/35123 Reviewed-by: Chong Zhang <chz@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Chong Zhang <chz@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Cache WGL extension function pointersGravatar Brian Osman2017-08-16
| | | | | | | | | | | | | | | | These took about 20 ms to look up, and we were doing so at least twice per sink. On my desktop windows machine, this saves 25 seconds when running dm --config gl --src gm Actual times dropped from 63s to 37s if not writing PNGs, or 71s to 46s if writing PNGs. Bug: skia: Change-Id: I22313791939e774290b702e58fec780f0b9c917e Reviewed-on: https://skia-review.googlesource.com/35422 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove examples of now removed SkArcToPathEffect.Gravatar Joe Gregorio2017-08-16
| | | | | | | | | | | | SkArcToPathEffect was removed in: https://skia-review.googlesource.com/25981 No-Try: true Docs-Preview: https://skia.org/?cl=35442 Bug: skia: Change-Id: I8fefa6730d8f1d3fdc5516d46ef706052d84b6bf Reviewed-on: https://skia-review.googlesource.com/35442 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Joe Gregorio <jcgregorio@google.com>
* cut down GrShapeTest stack usageGravatar Mike Klein2017-08-16
| | | | | | | | | | | | | | | - use make_TestCase() to put the temporaries on the heap - scope temporary SkPaths tighter - spin off a couple of the low-hanging independent tests into their own DEF_TESTs Looks like these together are enough to stay in Google3 stack frames even after enabling exceptions. Change-Id: I614fdd11357449ac1668b8dfaa4f0d88828d07a2 Reviewed-on: https://skia-review.googlesource.com/35420 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* Add additional logging in GrRenderTargetOpListGravatar Stan Iliev2017-08-16
| | | | | | | | | | Add logging for execute and prepare ops in GrRenderTargetOpList. Bug: skia: Change-Id: I18ac03676da058ba4af5bd6a0c375b3f17c3c399 Reviewed-on: https://skia-review.googlesource.com/35320 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Stan Iliev <stani@google.com>
* Make ref manipulation public on surface proxies.Gravatar Brian Salomon2017-08-16
| | | | | | | | | Now that our system supports more flexible and later creation of GrPiplines, GrOps should be able to access these methods without the redundant state variables incurred when using GrGpuResourceRef. Change-Id: Ib9c025e1134617f96b9ebbb153c78e51c63914bf Reviewed-on: https://skia-review.googlesource.com/35283 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Create new set of SVGsGravatar Ravi Mistry2017-08-16
| | | | | | | | | | Context is in the below bug Bug: skia:6918 Change-Id: Ic9048311092bd7e73dd6ee182e79abea79baa07a Reviewed-on: https://skia-review.googlesource.com/30586 Commit-Queue: Ravi Mistry <rmistry@google.com> Reviewed-by: Eric Boren <borenet@google.com>
* Replace SkFAIL with SK_ABORT.Gravatar Ben Wagner2017-08-16
| | | | | | | | | | | | SkFAIL is a legacy macro which is just SK_ABORT. This CL mechanically changes uses of SkFAIL to SK_ABORT in preparation for its removal. The related sk_throw macro will be changed independently, due to needing to actually clean up its users. Change-Id: Id70b5c111a02d2458dc60c8933f444df27d9cebb Reviewed-on: https://skia-review.googlesource.com/35284 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Cleanup tracing macros for use by the Android frameworkGravatar Derek Sollenberger2017-08-16
| | | | | | | Change-Id: I1b918cc55a5faba1e5c1e02ffeda5d5713866edd Reviewed-on: https://skia-review.googlesource.com/35282 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* Use SkSafeMath to calculate memory sizes.Gravatar Herb Derby2017-08-16
| | | | | | | | | BUG=chromium:749147 Change-Id: I07d18e089be1138ad83bfde392c7daf2d01d388c Reviewed-on: https://skia-review.googlesource.com/34747 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Record all trace event data inline, with variable sized entriesGravatar Brian Osman2017-08-16
| | | | | | | | | | | | Removes the need for strdup with copied strings, paves the way for more (and richer) payload, and shrinks the average event way down. Bug: skia: Change-Id: I9604fe713c34cfc877dce84563af89c579abd65b Reviewed-on: https://skia-review.googlesource.com/35166 Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Minor geometry processor clarification.Gravatar Brian Salomon2017-08-16
| | | | | | | | | Some renames, comments, and override->final Change-Id: Iebc7aeee9a64021e958f76bf4278ffff56884a56 Reviewed-on: https://skia-review.googlesource.com/35165 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* turn exceptions on in test tools on AndroidGravatar Mike Klein2017-08-16
| | | | | | | | | | This is a follow-up to https://skia-review.googlesource.com/c/34982 which did the same for locally built test tools. Change-Id: Id97841a64521fda99cb952a1a751ffc10f636f53 Reviewed-on: https://skia-review.googlesource.com/35162 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* GrTessellator: fix for collinear out-of-range intersections.Gravatar Stephen White2017-08-16
| | | | | | | | | | | | | | | | | | | | | | | | Change 3b5a3fa8b1c11d4bd4499b040311f4c3553ebf8c introduced support for out-of-range intersections, which is necessary when the top and bottom vertices of an edge differ by only one ULP in the primary sort order and can't be split in-order. However, some out-of-range intersections produce edges which cancel each other out on splitting, in particular when the intersection is collinear with the newly-computed edge. This undoes the effect of the split. The tessellator then rewinds, re-detects the intersection, resplits, an infinite loop. The fix is to check for out-of-range intersections which are also collinear, and ignore them. This is ok, because these are not the cases we care about it change 3b5a3f above, which are never collinear. Bug: 753867 Change-Id: I590231e0e6f19c98f1ccf46cb7acc8a63ba35a9d Reviewed-on: https://skia-review.googlesource.com/34925 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Add Chinese fling sampleGravatar Robert Phillips2017-08-16
| | | | | | | Change-Id: Id27877c4d816ec83460f50a3a0d9cc0299ea6849 Reviewed-on: https://skia-review.googlesource.com/34780 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Turn on exceptions in test tools."Gravatar Leon Scroggins2017-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c667dff58dc4b16faf30c34e98a118c6a1c1f987. Reason for revert: breaking the Android roll: external/skia/tests/ExceptionTest.cpp:14:9: error: cannot use 'throw' with exceptions disabled throw 42; ^ external/skia/tests/ExceptionTest.cpp:13:5: error: cannot use 'try' with exceptions disabled try { ^ Original change's description: > Turn on exceptions in test tools. > > This allows us to test things that, e.g., throw std::bad_alloc. > > Change-Id: I6409159b89f1d93d403b1a1f40539cf2531a8b68 > Reviewed-on: https://skia-review.googlesource.com/34982 > Reviewed-by: Herb Derby <herb@google.com> > Commit-Queue: Mike Klein <mtklein@chromium.org> TBR=mtklein@chromium.org,herb@google.com Change-Id: I3f9143eea694cd18d02223d4766afd34cd95aa81 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/35082 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Cache more aggressively in GrSoftwarePathRenderer for AndroidGravatar Stan Iliev2017-08-16
| | | | | | | | | | | | | | Discard fractional translation from the cache key in GrSoftwarePathRenderer for Android framework. This improves cache hit ratio and speeds up draw frame 50th percentile for quick settings jank test by 0.7ms. This quality trade-off is fine and it is matching HWUI OpenGL renderer behavior. Bug: b/64487466 Change-Id: I865169aa2acbca80f1399da8bdd7f624f413295e Reviewed-on: https://skia-review.googlesource.com/34900 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stan Iliev <stani@google.com>
* Revert "Turn on exceptions in test tools."Gravatar Mike Klein2017-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c667dff58dc4b16faf30c34e98a118c6a1c1f987. Reason for revert: temporary while I fix Android, Google3. Original change's description: > Turn on exceptions in test tools. > > This allows us to test things that, e.g., throw std::bad_alloc. > > Change-Id: I6409159b89f1d93d403b1a1f40539cf2531a8b68 > Reviewed-on: https://skia-review.googlesource.com/34982 > Reviewed-by: Herb Derby <herb@google.com> > Commit-Queue: Mike Klein <mtklein@chromium.org> TBR=mtklein@chromium.org,herb@google.com Change-Id: Iafdc34c5f70f99f7df3cd0bbad65eed0828453a1 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/35081 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Add missing #include <stdlib.h>Gravatar Mike Klein2017-08-16
| | | | | | | | | | | | After turning on exceptions in test tools, iOS builds of ok started saying atoi() was not declared. I don't even want to know. Change-Id: I52f354a1f25ec042bf2161a4c5dd9276aa25e46a Reviewed-on: https://skia-review.googlesource.com/34961 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Turn on exceptions in test tools.Gravatar Mike Klein2017-08-16
| | | | | | | | | This allows us to test things that, e.g., throw std::bad_alloc. Change-Id: I6409159b89f1d93d403b1a1f40539cf2531a8b68 Reviewed-on: https://skia-review.googlesource.com/34982 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Blacklist svgparse_* svgs on non-8888Gravatar Chris Dalton2017-08-15
| | | | | | | | | | | This also required extending the blacklist argument to support negative matching and wildcards. Bug: skia:6918 Change-Id: I915e305c75fe23fc3e11c2dd3e91570967da0aaa Reviewed-on: https://skia-review.googlesource.com/31444 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Eric Boren <borenet@google.com>
* explicitly vectorize sk_memset{16,32,64}Gravatar Mike Klein2017-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This ought to help clients who don't enable autovectorization. With autovectorization enabled, this new version is like, hyper-vectorized compared to the old autovectorization. Instead of handling 128 bytes max per loop, it now handles up to 512 bytes per loop. Pretty exciting. Locally perf effects are a mix, but we'd expect this to help Chrome unambiguously if they've turned off autovectorization. $ out/ok bench:samples=100 sw filter:match=memset32_\\d\* serial Before: [memset32_100000] 16ms @0 20.1ms @99 20.2ms @100 [memset32_10000] 1.07ms @0 1.26ms @99 1.31ms @100 [memset32_1000] 73.9µs @0 89.4µs @99 90.1µs @100 [memset32_100] 8.59µs @0 9.74µs @99 9.96µs @100 [memset32_10] 7.45µs @0 8.96µs @99 8.99µs @100 [memset32_1] 2.29µs @0 2.81µs @99 2.92µs @100 After: [memset32_100000] 16.2ms @0 17.3ms @99 17.3ms @100 [memset32_10000] 1.06ms @0 1.18ms @99 1.23ms @100 [memset32_1000] 72µs @0 75.6µs @99 84.7µs @100 [memset32_100] 9.14µs @0 10.6µs @99 10.7µs @100 [memset32_10] 5.43µs @0 5.88µs @99 5.99µs @100 [memset32_1] 3.43µs @0 3.65µs @99 3.83µs @100 BUG=chromium:755391 Change-Id: If9059a30ca7a345f1f7c37bd51473c29e8bb8922 Reviewed-on: https://skia-review.googlesource.com/34746 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* upstream cr/165303354Gravatar Mike Klein2017-08-15
| | | | | | | | | | | | The only interesting difference here is that I've just skipped cd_Documents() on Google3 iOS builds rather than adding a new target to BUILD. We don't run the binary so it's kind of moot what directory it'd run in. Change-Id: I1994e0283d24bcc505fa9b2b7b58307eafa5be92 Reviewed-on: https://skia-review.googlesource.com/34742 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Fix bogus math in object allocation.Gravatar Herb Derby2017-08-15
| | | | | | | | | | | | | | | | When a size_t is convert from a very large number to ptrdiff_t, it becomes negative causing the existing block to be used instead of allocating a new block. Remove broken test from last try. TBR=bungeman@google.com BUG=chromium:744109 Change-Id: Ifc81bb8f416d64f640730c66bce56a8e4c677173 Reviewed-on: https://skia-review.googlesource.com/35080 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Revert "Fix bogus math in object allocation."Gravatar Florin Malita2017-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 0bc4d60fe0a1ceae6dde0103c3fdf78ee1673ffa. Reason for revert: https://chromium-swarm.appspot.com/task?id=38007b6df51fef10&refresh=10 terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc Caught signal 6 [Aborted], was running: 8888 image scanline_kNonNative_premul interlaced3.png unit test ArenaAllocReallyBigAlloc unit test ClampRange 565 image scaled_codec_premul_0.200 interlaced3.png_0.200 unit test ClipStack Likely culprit: unit test ArenaAllocReallyBigAlloc Stack trace: /mnt/pd0/s/w/ir/out/Debug/dm(+0x2381c1) [0x567aa1c1] linux-gate.so.1(__kernel_sigreturn+0) [0xf770cca0] linux-gate.so.1(__kernel_vsyscall+0x9) [0xf770cc89] /lib/i386-linux-gnu/libc.so.6(gsignal+0xb0) [0xf7027dc0] /lib/i386-linux-gnu/libc.so.6(abort+0x157) [0xf7029287] /usr/lib/i386-linux-gnu/libstdc++.so.6(_ZN9__gnu_cxx27__verbose_terminate_handlerEv+0x16f) [0xf729d2ff] /usr/lib/i386-linux-gnu/libstdc++.so.6(+0x71ea4) [0xf729aea4] /usr/lib/i386-linux-gnu/libstdc++.so.6(+0x71f1d) [0xf729af1d] /usr/lib/i386-linux-gnu/libstdc++.so.6(__cxa_rethrow+0) [0xf729b1d0] /usr/lib/i386-linux-gnu/libstdc++.so.6(+0x727ff) [0xf729b7ff] /usr/lib/i386-linux-gnu/libstdc++.so.6(_Znaj+0x18) [0xf729b898] /mnt/pd0/s/w/ir/out/Debug/dm(_ZN12SkArenaAlloc11ensureSpaceEjj+0xa0) [0x56f113a6] /mnt/pd0/s/w/ir/out/Debug/dm(+0x3c2462) [0x56934462] /mnt/pd0/s/w/ir/out/Debug/dm(+0x239acb) [0x567abacb] /mnt/pd0/s/w/ir/out/Debug/dm(+0x239bdc) [0x567abbdc] /mnt/pd0/s/w/ir/out/Debug/dm(+0xa6417b) [0x56fd617b] /mnt/pd0/s/w/ir/out/Debug/dm(_ZNKSt8functionIFvvEEclEv+0x20) [0x56f10504] /mnt/pd0/s/w/ir/out/Debug/dm(_ZN12SkThreadPool4LoopEPv+0x298) [0x56f10bdb] /mnt/pd0/s/w/ir/out/Debug/dm(+0xb39700) [0x570ab700] /lib/i386-linux-gnu/libpthread.so.0(+0x627a) [0xf76df27a] /lib/i386-linux-gnu/libc.so.6(clone+0x66) [0xf70e3b56] Aborted Command exited with code 134 Original change's description: > Fix bogus math in object allocation. > > When a size_t is convert from a very large number to ptrdiff_t, it > becomes negative causing the existing block to be used instead of > allocating a new block. > > BUG=chromium:744109 > > Change-Id: I0bf98e3fb924851c162f6eca43d29a3f40dc9eaa > Reviewed-on: https://skia-review.googlesource.com/34541 > Reviewed-by: Ben Wagner <bungeman@google.com> > Commit-Queue: Herb Derby <herb@google.com> TBR=bungeman@google.com,herb@google.com Change-Id: I8ce2b45d13178395247dabd7af6853354399721c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:744109 Reviewed-on: https://skia-review.googlesource.com/35000 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Remove SkTypeface::style().Gravatar Ben Wagner2017-08-15
| | | | | | | Change-Id: Ide445c73a5b14ea2e52decf85f5a2a9af0f2d242 Reviewed-on: https://skia-review.googlesource.com/34940 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>