Anonymous enums play havoc with documentation;
there's no name to refer to. It may be that all
enums may either be named or replaced with constexpr
without breaking anything. Try replacing all
anonymous enums in include/core to see what happens.
This names SkCanvas::SaveLayerFlagsSet but leaves
SkCanvas::SaveLayerFlags as a uint32_t, to reduce
risk as compared to review.skia.org/123584.
There's also some chance that external linkage will
break if some client refers to anonymous enum in a way
that could require its address: see
https://stackoverflow.com/questions/22867654/enum-vs-constexpr-for-actual-static-constants-inside-classes
(This CL does not require definitions + declarations)
Brought bookmaker docs in line with this change.
This also tripped over missing code in bookmaker
handling constexpr so added that as well.
R=reed@google.com,bsalomon@google.com
Docs-Preview: https://skia.org/?cl=123920
Docs-Preview: https://skia.org/?cl=123584
Bug: skia:6898
Change-Id: I14a342edcfd59e139ef9e4501f562417c4c60391
Reviewed-on: https://skia-review.googlesource.com/123920
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
Bug: skia:7833, skia:7050
Change-Id: I8272e4b0beaed2a56260546f4a599a4586c71792
Reviewed-on: https://skia-review.googlesource.com/123921
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Since we decrease the width when clipped, it might be negative.
Bug: skia:7858
Change-Id: I348bd07d917905a55bec1a4b4e0915c6528fe6b1
Reviewed-on: https://skia-review.googlesource.com/123927
Auto-Submit: Yuqian Li <liyuqian@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
SkGradientShaderBase asserts gammaIsLinear() -- but we don't enforce
this in factories.
Based on comments, this may be a stale restriction. Can we drop it?
Bug: chromium:798208
Change-Id: Id9639cb2bb87f112b26c05372f2a3181c139e5ec
Reviewed-on: https://skia-review.googlesource.com/123860
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
We currently just get a big nondescript block when trying to understand what's taking rendering time. This will help us get an idea of the general categories of time consuming things when we toggle skia traces on.
Bug: skia:
Change-Id: Ia231cfc0e6e984172ad04547e95e269e8cc2d12a
Reviewed-on: https://skia-review.googlesource.com/123820
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
This causes it to never get triggered automatically, so it will only run
as a try job or when force-triggered.
Caveat: if the job is defined on non-master branches, it will still
trigger for those branches.
Bug: skia:
Change-Id: Idff63bd22536b21ec21eb4b569cc392642297d7b
Reviewed-on: https://skia-review.googlesource.com/123923
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Ironically, this is a giant slowdown, because xforms are being
constructed every frame, and this takes multiple ms.
Change-Id: Ib242b6b7b212c715d20fdd572ed6db5a167f07e2
Reviewed-on: https://skia-review.googlesource.com/123922
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
197d52949e..0086de1794
$ git log 197d52949..0086de179 --date=short --no-merges --format='%ad %ae %s'
2018-04-25 lucferron Vulkan: Add test to reproduce graph issue when draw->subImage->draw
Created with:
roll-dep third_party/externals/angle2
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=stani@google.com
Change-Id: I461f7bcdaa78c2c9483e265748391a9013e8dc43
Reviewed-on: https://skia-review.googlesource.com/123881
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
f827123d99..197d52949e
$ git log f827123d9..197d52949 --date=short --no-merges --format='%ad %ae %s'
2018-04-25 geofflang Wrap all preprocessor code in the angle namespace.
2018-04-23 lfy GLES1: Enable/disable for texture targets
Created with:
roll-dep third_party/externals/angle2
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=stani@google.com
Change-Id: Ib8cb85f7a1ba14dcba4f7c3192ce5f576ce30900
Reviewed-on: https://skia-review.googlesource.com/123821
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
https://swiftshader.googlesource.com/SwiftShader/+log/c8eedebdf51e..840f47ea853b
$ git log c8eedebdf..840f47ea8 --date=short --no-merges --format='%ad %ae %s'
2018-04-25 capn Fix Linux build.
2018-04-24 jemoreira Use the correct constant name for the Android SDK version
2018-04-25 tikuta Use override for overridden function
2018-04-24 sugoi Fixed sampler within struct uniform used as function argument
2018-04-16 sugoi Load sibling libraries from the same directory
Created with:
roll-dep third_party/externals/swiftshader
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-CPU-AVX2-x86_64-Debug-All-SwiftShader
TBR=stani@google.com
Change-Id: I19c13710a072bfdbf7e07431874f845e533e2acb
Reviewed-on: https://skia-review.googlesource.com/123801
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>
This prevents accessing off an empty array.
Bug: chromium:830038
Change-Id: I5ad019d56659c667564efc498dcef7fb112da4af
Reviewed-on: https://skia-review.googlesource.com/123800
Commit-Queue: Adrienne Walker <enne@chromium.org>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Adrienne Walker <enne@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
Bug: skia:7822
Change-Id: I2def72a6d032c43376906d189e5ee834c76b0898
Reviewed-on: https://skia-review.googlesource.com/123749
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
Auto-Submit: Yuqian Li <liyuqian@google.com>
Today, we only know if we fail a copy during the flush so we have no
way to cleanly handle a failed copy. This will allow us to know if we'll
fail a copy during recording and allow us to do some appropriate fallback
and/or dropping of the draw.
Bug: skia:
Change-Id: I38f209dbd4ebb4e762210b4609147d4b0a1b01b1
Reviewed-on: https://skia-review.googlesource.com/123560
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Bug: skia:
Change-Id: If01c10c21477bd61c4ec1d4f59921745eb3bf494
Reviewed-on: https://skia-review.googlesource.com/123622
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Update temporary surface creation so that cpu and gpu are doing the same
thing, reducing confusion around what the test is doing.
Also clip to the bounds of the saved layer when a temporary surface cannot
be created. This prevents the underspecified behavior of drawing outside
the bounds of a saved layer.
Change-Id: Iad35b394f50b4e1867a8bffdc9f5b3d2ae9c1645
Reviewed-on: https://skia-review.googlesource.com/123741
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
023371b3af..f827123d99
$ git log 023371b3a..f827123d9 --date=short --no-merges --format='%ad %ae %s'
2018-04-25 oetuaho Handle negative float to uint conversion robustly
2018-04-24 lucferron Vulkan: Enable UnpackAlignmentTest and remove useless warning.
2018-04-24 lucferron Vulkan: Fix issue with texsubimage2d barriers
2018-04-25 jmadill Clean up DEPS style.
2018-04-24 lucferron Vulkan: Issue when drawing with a texture and rebinding after.
Created with:
roll-dep third_party/externals/angle2
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=stani@google.com
Change-Id: I10362056f2079bde891d905cae2caf3391ba083b
Reviewed-on: https://skia-review.googlesource.com/123655
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
We trigger this when we don't necessarily have support for both
extensions, so requiring them can cause compilation failures.
Bug: https://github.com/flutter/flutter/issues/16178
Change-Id: I54c190709a677bc9ec2fa46f612e8958e3de38cb
Reviewed-on: https://skia-review.googlesource.com/123683
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Bug: skia:
Change-Id: I5ed334f63e64991944394dc8103092a2c6280546
Reviewed-on: https://skia-review.googlesource.com/122000
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
This reduces the cost of successive shader compilations by caching the
results of compiling SkSL's headers.
Bug: skia:
Change-Id: If7fc21a9877021c4025ad99dd0981523a25855e0
Reviewed-on: https://skia-review.googlesource.com/123422
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
One of the bounding boxes in this method goes haywire in DDL mode. Hopefully, this refactoring will make it easier to determine which one it is.
Note that in this CL I tried to not change the existing behavior at all.
Bug: skia:7765
Change-Id: Ie71b4c338fd7ecf4f4b8b4cb5609ef3e686eaef5
Reviewed-on: https://skia-review.googlesource.com/122956
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>