In a follow up CL I will be merging GrRenderTargetOpList and GrOpList
since we no longer have need for that separation.
Change-Id: I267ead3beeceaece504968ca69165c425d38f761
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236337
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
This kind of defeats the purpose of the original intent, which was to
read from the dst without doing a copy. If the target requires a
manual resolve, then we will do an internal copy anyway to resolve
MSAA. And furthermore, we end up resolving the entire render target as
opposed to just copying the op's bounds.
Bug: skia:
Change-Id: I1b4048dc6536853d2c0168c355040f1c3b142736
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236182
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Bug: b/78868457
Bug: b/120414514
No longer needed, now that Android has switched over to the new API.
Change-Id: Idd2f2e843311aee11fb8d053e0ad3ccf98e429e7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236340
Auto-Submit: Leon Scroggins <scroggo@google.com>
Reviewed-by: Chong Zhang <chz@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
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/4c55b355580f0c0f0daebfb086b2ccf11d90f605 [devtools] create devtools-frontend gclient config (tmrts@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icee3b585ade298accc10b351f8bd0e101075cb23
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236324
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>
This reverts commit e67133b8e5.
Removing testing code that's no longer needed.
Change-Id: I27bc5c77d1bc1b928d5cdb89daf82ab5fd3878c8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236338
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Change-Id: I24a9aa04c423cc92204a9b2eb9dca9e61a1ee639
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236336
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
6d653c02dd..91dc5da806
git log 6d653c02dd24..91dc5da80684 --date=short --no-merges --format='%ad %ae %s'
2019-08-21 jdarpinian@chromium.org WebKit requires "Web" as prefix to Objective-C class names
2019-08-21 dakshidnani@google.com Make Mac SystemInfo reflect the currently active GPU on dual GPU machines
2019-08-21 lujc@google.com Fix frame capture build for Android
2019-08-21 lujc@google.com Fix incorrect parameter in gl_angle_ext.xml
2019-08-21 syoussefi@chromium.org Vulkan: Support non-pow2 buffer alignments
2019-08-21 tobine@google.com Vulkan: Handle new validation errors
2019-08-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src 95609e6d923a..34cccdc65d79 (2 commits)
2019-08-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src bc62722b80a6..0cbdc7a2c35b (1 commits)
Created with:
gclient setdep -r third_party/externals/angle2@91dc5da80684
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:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=egdaniel@google.com
Change-Id: I9ed1df9715686039661486940f2347d19c1013f9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236242
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
85a9084804..0ef8680cf8
Created with:
gclient setdep -r ../src@0ef8680cf8
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
Bug: None
TBR=egdaniel@google.com
Change-Id: I18224481528a63c13f6be7262cef00fb9e1a0999
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236243
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Add a field to the SkGlyphCacheState to track if the FontMetrics have
been sent.
BUG=chromium:881505
Change-Id: I8223249d95d68677cf23a1da37d7c04ce5cc8263
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236216
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
Commit-Queue: Herb Derby <herb@google.com>
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/bfcde3c5b880703e54880b71f90f8a1f6a11a1d3 gclient_eval: Make compatible with Python 3. (ehmaldonado@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie28f997ee20e51e54e73a558b25a4804466dc4ff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236188
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>
This changes tracks the strikes to send as a set of pointers
to SkGlyphCacheState instead of as descriptors. This removes a descriptor
lookup allowing rapid calculation of the actual number of strikes to send.
Knowing the number of strikes with changes allows us to remove sending a boolean
if strike has no pending glyphs.
Change-Id: Id173336e238daebc19564248a818eb9dbdbe6db6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235827
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
Commit-Queue: Herb Derby <herb@google.com>
This refactor makes it work like the runtime color filter, where inputs
can be updated without generating a new shader key every time.
Change-Id: Ic1762aebae96fd8b7a8a74fb200bc02ec08cc029
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235798
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This also means copies are no longer part of OpList or GpuCommandBuffer.
Change-Id: I234de2c93ca13e069d7e4423a3c8b292be2eb500
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235831
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
AFAICT these three remaining uses of GrPendingIOResource were just real-ref placeholders (i.e., they just added 1 pending read and then held on to the GrPendingIOResource until object destruction).
Change-Id: Iba6bb199477d846d079999f09794422e240c675a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235458
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
This allows us to test with fReduceOpListSplitting both enabled and
disabled.
This CL also requires adding basic mipmap support to GrMockGpu.
Bug: skia:
Change-Id: I97ba912a9e5f3b90756c027ac19c003c99c15902
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235996
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
More than anything else, this gets rid of a few 'goto's.
Change-Id: Ica28d5653f2ad8fb77d11141e2ae1831787efdfa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235099
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Also don't specify redundant width/height to SkGpuDevice.
Change-Id: I389df5c4b073c2c05632ba6b7c95b02a22dfaf98
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235824
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
- exercise different options
- reduce triangle sizes to emphasize overhead (small triangles is also common)
Change-Id: I24ff889cdeeba136349b3a855c6b5881109e2a88
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235461
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
These are numerically unstable. We've had various complex solutions in
the past (fall back to doubles, additional checks like this one), but
this solution is safer and simpler.
Change-Id: Ibe57a155a2aa604e20960f415b9dc3546ae859a9
Bug: chromium:993330
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235861
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Change-Id: Iace9caec455a58cbe8649ea37d865f53e5643b17
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235457
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
6aca71d7d7..6d653c02dd
git log 6aca71d7d705..6d653c02dd24 --date=short --no-merges --format='%ad %ae %s'
2019-08-21 hckim.kim@samsung.com Vulkan: Set empty buffer to xfb descriptor set as an initial buffer
2019-08-20 jonahr@google.com Autogenerated kFunction* variables detected as mutable constants
2019-08-20 clemendeng@google.com Get rid of gl_ViewID_OVR for ESSL1
2019-08-20 lujc@google.com Separate dirty bit for attrib's binding VBO change
Created with:
gclient setdep -r third_party/externals/angle2@6d653c02dd24
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:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=egdaniel@google.com
Change-Id: I330307a5d25a8bf6c5f99a668e9a7d774fc5232d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236017
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
8cd21345a0..85a9084804
Created with:
gclient setdep -r ../src@85a9084804
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
Bug: None
TBR=egdaniel@google.com
Change-Id: I45929731e5f059b3a445d2422d0ce5c3902087b9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/236018
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Unfortunately, boringssl also declares a function named sk_free making
decltype give an error since the function is overloaded if both Skia and
BoringSSL headers are included in the same TU (as happens in ChromeOS
builds). In theory one can use decltype and specify which overload to
use, but this is far more verbose than just specifying the type.
Change-Id: I7dfefbce0a75c7ff6791b58287f26f2cc47c8eca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235828
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
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/53297790de09e48c91678367b48528afbc9f71c1 pylint: rework wrapper to use vpython for multiple versions (vapier@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ibe2a5955d471611601109bd0001d793427415a8c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235956
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>
Implement onWrapRenderableBackendTexture(). This required render target
support in GrDawnTexture::Wrap().
Implement onWrapBackendRenderTarget().
Implement [create|delete]TestingOnlyBackendRenderTarget().
Implement deleteTestingOnlyBackendTexture(), isTestingOnlyBackendTexture().
Implement render target support in createTestingOnlyBackendRenderTarget().
Fix GrDawnGpu::onReadPixels() for the render target case.
Change-Id: I0f987d6dc08acc791cacc592d3ccf2568ca0f976
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235098
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Users with the Finch trial enabled are seeing slow tab switches due
to MTLRenderPipelineStates being rebuilt.
Bug: chromium:974219 chromium: 988964
Change-Id: I83adf06b7174e9f11a38da421f66a3921d17dbcf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235878
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Christopher Cameron <ccameron@chromium.org>
Also whitelist third_party/skcms from #include rewrites.
https://skia.googlesource.com/skcms.git/+log/d931999c3afd..6655095842ec
git log d931999c3afd..6655095842ec --date=short --no-merges --format='%ad %ae %s'
2019-08-20 mtklein@google.com Add missing b-tweak to skcms_TF_Invert()
Created with:
gclient setdep -r skia/third_party/skcms@6655095842ec
The AutoRoll server is located here: https://autoroll.skia.org/r/skcms-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=luci.chromium.try:linux-blink-rel
Bug: chromium:976551
Change-Id: I6566968525070f0af808d04211b16e71f9850cea
TBR=egdaniel@google.com,mtklein@google.com
TBR=egdaniel@google.com,mtklein@google.com
Change-Id: I2c9b6a270693e9e93303b9cfef1262488bba1aae
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235936
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
SkFunctionWrapper was made to be a simple abstraction over existing
resource release functions which generally follow a specific pattern of
returning void and taking a pointer to the underlying type. However,
this has been observed to be an unnecessary limit. This makes it more
generic while also making the call sites a little less brittle.
This change also uncovered an issue in msvc v19.20 to v19.22, see
https://developercommunity.visualstudio.com/content/problem/698192/in-templateusing-decltype-is-void.html
To work around this, several otherwise redundant '&' are used.
There was an attempt to take references to functions instead of pointers
to functions which greatly simplifies the intermediate wrappers.
However, that uncovered another issue in msvc, see
https://developercommunity.visualstudio.com/content/problem/699878/function-to-pointer.html
Change-Id: I54ab945ed9d9cfd0204d4d6650c2fde47cc9e175
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235105
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Chrome perf is showing a regression in memory. This will
make fewer memory allocations.
BUG=chromium:995743
Change-Id: I8dcc0c4bbee26464df008ec723bf1977e699e790
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235859
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>