This is a reland of ec85f407bf
Original change's description:
> Remove the resolve rect and resolve types from GrRenderTarget
>
> Change-Id: Id0c1155130c23e835490714fe1314f4ec4a83015
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/240002
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
Change-Id: I501b1e1f506cda284876522b0294215030744888
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244673
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
This rolls GN to the last point that Chromium was still using Google
Storage to pull GN, like we still are. These are builds uploaded circa
November 2018, which is ~6 months newer than the GN we have been using.
Change-Id: I6a11733756f6e4c25fd4ca624fb74a2908518d02
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244672
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
This reverts commit be47871249.
Reason for revert: MSAN bots? I kinda think this is a known MSAN issue but can't remember how.
Original change's description:
> hsw::S32_alpha_D32_filter_DX
>
> This is kind of a first draft, writing bilerp naively
> using mostly skvx and some AVX2 intrinsics.
>
> Looks correct, and speed looks fine, better than SSSE3
> but nothing mind blowing.
>
> Change-Id: I260467e577ea9b30a6aba8b5d7b3a3a3b6383ff3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243814
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com
Change-Id: I359380e38155a174a7ff38350c0bd4efcc244519
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244696
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
By passing null into reportSurface, it "crashes" the test, allowing me
to visually inspect the results while running locally. However, on
production code, it just breaks the tests.
Change-Id: I93339f03ee5a9f86959b30353912526a442f6375
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244677
Reviewed-by: Kevin Lubick <kjlubick@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/e4174f483ee5ffbece40e33223efbb84c2544bda Add VS 2019 support to package_from_installed.py. (mbonadei@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I32c8cdba5931ba1976aaf4f5840c8cc8aa3c584c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244658
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 repurposes much of our embedded SkFontMgr code
to take in data directly instead of from compiled-in
variables.
Also makes no_font and no_embedded_font work better.
Bug: skia:9469
Change-Id: Ibde49c9a448cfca79c5712aa9abbe15997a163d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244510
Reviewed-by: Ben Wagner <bungeman@google.com>
This is kind of a first draft, writing bilerp naively
using mostly skvx and some AVX2 intrinsics.
Looks correct, and speed looks fine, better than SSSE3
but nothing mind blowing.
Change-Id: I260467e577ea9b30a6aba8b5d7b3a3a3b6383ff3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243814
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This reverts commit 85705c1b3b.
Change-Id: If189dafce53491728296a4292c76af55b05835ac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244509
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@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/983111f039f6d797fd5f0fed26adc5a3d62cc913 Add `git cl try --retry-failed` (qyearsley@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ife29a48f3e949458dc3c6f4cecbe1b442eac3a9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244616
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>
We now think of them as regular formats that happen to have a different
data encoding, orthogonal to color space, but we still have some
unnecessary special handling.
Remove sRGB support from GrCaps.
Move sRGB write control to GrGLCaps.
Detect texture and render support separately.
Support in WebGL.
Remove workaround in Vulkan for x86 PowerVR.
Remove SkSurface_Gpu::Valid().
Change-Id: I2aaf4bdd4cd1caeeee04bfe8ab539924cdb35bd1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244506
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
In the linked bug, the 1px stroked rectangles would either be treated as
a regular AA rectangle with full coverage interior, or as a subpixel
rectangle that would have to calculate reduced coverage for the interior.
The translations of the coordinates meant that floating point precision
caused the <1px test to go one way or the other since these rectangles
were exactly on the boundary.
However, the subpixel coverage calculator, as-originally-implemented,
suffered from being discontinuous right at 1px if the rectangle was
rotated, so there'd be a noticeable pop in intensity of the shape when
animating across the 1px boundary.
This CL changes the subpixel coverage calculation to no longer be
dependent on the orientation of the quadrilateral w/ respect to the pixel
grid, and still be accurate when the shape is a rectangle. When it is
an arbitrary quad, the approximation isn't geometrically correct but
exhibits qualitatively good behavior. It also has the benefit of being
much simpler code.
Bug: chromium:1007154
Change-Id: I1e001e5d5d4e4f7a5e566e10855fd03eac613d07
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244504
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Previous code tried to aggregate some checks, but therefore had several
subtle bugs. Make each format check independent. It's easier to check
whether it's correct by looking up the specs/extensions referenced and
tweak it if not.
Also removes some "workarounds" that were just working around our own
bugs in extension/version detection.
Also adds some more WebGL format functionality.
Also uses glTexStorage2D for formats that previously did not check for
support.
Use glTexStorage2D on Android/NVIDIA to work around N9 and Shield TV
issues with glTexImage2D.
Bug: chromium:1003481
Change-Id: Ie3295b1ca76a6068f1426e77783d9dc07698c56a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243816
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Useful for excluding encoder/IO from scaling tests.
Change-Id: Ib76cc07a54d3cd3e00b4a3b3c9ea6f049440b7f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244396
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
SkStrikeInterface has become more and more focused on support of the GPU
stack. Finishing this focus clears up some of the confusing parts of the
Bitmap code.
Remove use of SkStrikeInterface from the BitmapCode.
Change-Id: I18a50d3ec17d81fcbe55030a3a3ec7eeeba23497
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244297
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
This reverts commit ac18a5ca60.
Reason for revert: breaking Chrome roll
Original change's description:
> remove 'in uniform' support from GrSkSLFP, make rules more clear
>
> Bug: skia:
> Change-Id: Iaa4d33c1bfb295d87343411ba6aacc8fae68ef9c
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244300
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
TBR=brianosman@google.com,ethannicholas@google.com
Change-Id: I6e53f5197c751d961abfa21861b940d4168de213
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244508
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Change-Id: I9d02ff9f6bcc86cdc10e01a4e3379014557172e9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244507
Commit-Queue: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
Bug: skia:
Change-Id: Iaa4d33c1bfb295d87343411ba6aacc8fae68ef9c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244300
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@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.
recipe_engine:
https://crrev.com/1e7de3da0e9935baa8bd6ff46e410846728643a0 [luciexe] Use proper base log name for url. (iannucci@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I761e712d5b6420e54954cb8674cc7c5cae70048f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244480
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 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.
recipe_engine:
https://crrev.com/bdb99d9b9906a2abfdf8965e4889a63462fd049e Expose ability to explicitly close currently open step to userspace. (iannucci@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I5f704c2410ace30952844f53728d7bc18c7091e5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244476
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 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.
recipe_engine:
https://crrev.com/bb7ba6bbd413d490ff7a74bcf1bbfcfa7247ae5c [luciexe] Protocol updates/fixes. (iannucci@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I604b908c3f1964ee07c69bce453fbf9d15765198
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244450
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 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.
recipe_engine:
https://crrev.com/53f8e3450bf14f7bad9c585a4b9d6cf49768e72f [protos] Generalize update script and update protos. (iannucci@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id056cdb5791a3ffc54866f91e320215f1fcbd9ca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244445
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>
ba04be8c9e..f703443b1f
git log ba04be8c9ef9..f703443b1f67 --date=short --no-merges --format='%ad %ae %s'
2019-09-25 jmadill@chromium.org Use Resource IDs in RefCountObject.
2019-09-25 jmadill@chromium.org Vulkan: Store current Serial in RendererVk.
2019-09-25 ynovikov@chromium.org Temporarily disable SwiftShader everywhere.
2019-09-25 jonahr@google.com GLX: Forward XExposeEvents to parent window
2019-09-25 hckim.kim@samsung.com Vulkan: Enable GPU conversion from RGB16F to RGBA16F
2019-09-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 3a762d54f649..527a689307a4 (5 commits)
Created with:
gclient setdep -r third_party/externals/angle2@f703443b1f67
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
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=bungeman@google.com
Change-Id: Ifa9d74aa5159da5e7cca103804b27f2d359f6541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244428
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
The line:
USER skia
also sets the $HOME environment variable to /home/skia unless
useradd is given another directory to use as the user's home
directory. So HOME was set to /home/skia, but that directory
doesn't exist in subsequent containers.
Bug: chromuim:993053
Change-Id: I3525d7cf11a1c1e5559cf9216c3bf6071a236949
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244116
Reviewed-by: Ravi Mistry <rmistry@google.com>
Reviewed-by: Robbie Iannucci <iannucci@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
This is mostly refactoring, moving functions to lambdas,
recommenting, that sort of thing. Just how I relearn code...
I did pull the same trick as with SSE2 to turn one multiply
into a shift in interpolate_in_x_and_y(). Nothing interesting
beyond that.
Change-Id: I6645fa03264ec374950a5a936af05b480a69ff06
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244321
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@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/69b63c9f97d01ee38844ad078cb63799bde9c8ce Fix sys.platform mapping in download_from_google_storage.py. (pwnall@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I510c1b03b8b401685bbdffe9c8543f6224da5c70
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244329
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>
It would have been passing, note that he changes to SkRecorder are needed only to obtain the
SkRecord used in asseting the correct commands were recorded.
Bug: skia: 9462
Change-Id: Ic43ab400b5954cc4f6eb465168179c0204a66040
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243818
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Nathaniel Nifong <nifong@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.
recipe_engine:
https://crrev.com/92e5e4828b44e502f549181cfc9aeebbbaf0ba7a cipd: link directly to created package on chrome-infra-packages. (jbudorick@chromium.org)
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia3b450f2ad081eecb415301f10ee68c531b3b7a6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244320
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>
Build-Debian9-Clang-arm-Debug-Chromebook_GLES is using c++11
version of the c++ standard libaray where min is not constexpr.
Change-Id: I631b80d373109ca845129f8f9cfd64ee0b9feff5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244299
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Herb Derby <herb@google.com>
With a perspective view matrix, we transform the path, which can
collapse it down and cause CheapComputeFirstDirection to fail. In that
case, just skip drawing the path, rather than asserting.
Change-Id: I59ee3c74d02d41913136626a653c64f825a9d56a
Bug: https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=37330
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244298
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
In the latest Wuffs' terminology, "null_foo" refers to an unusable foo
and "empty_foo" refers to a usable but zero-sized foo.
Bug: skia:8235
Change-Id: I7ac7128a0b370b2d32b5d35f13643d49c519eaca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243597
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
I think that's as good as it gets now,
but it's still not as fast as the SSSE3 path.
Change-Id: I3bcfefeddfc2940eca66dfdeb8a0876d768e7d3d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244242
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
The left two pixels and right two pixels are both multiplied
by allY weights today, then added together:
(L * (16-wX) * allY) + (R * (wx) * allY)
We can trivially refactor that, delaying the allY multiply
until it only needs to be done once:
allY * ( L*(16-wx) + R*(wx) )
This cuts a multiply off the per-pixel cost.
As I write this CL description, I think the obvious next thing to try is
allY * ( (R-L)*wx + L*16 )
as that L*16 can become a super cheap shift.
Change-Id: Id683801105834468a04d05854d7d494867168ef2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/244236
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>