Change-Id: I1a8a24132b0cf9eb80dd586bf2f1b930adb7b582
Reviewed-on: https://skia-review.googlesource.com/10525
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
GrXPFactory::createXferProcessor now takes GrPipelineAnalysisColor and GrPipelineAnalysisCoverage rather than GrProcessorSet::FragmentProcessorAnalysis.
This will make it so ops do not have to retain the analysis or rerun it to create pipelines at flush time.
Change-Id: Ib28ba65de425b20c2647329275f209aec168c3df
Reviewed-on: https://skia-review.googlesource.com/10474
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
This was blacklisted on Nvidia Windows. A recent change was made that may
be a possible fix for this test involving the uploading of initial mip map
memory.
BUG=skia:6092
Change-Id: Ie75c4665bea1f5139a674b9e0f53a9aac4a97f98
Reviewed-on: https://skia-review.googlesource.com/10285
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Newer versions of macOS have NSFontWeightXXX symbols and iOS has
UIFontWeightXXX symbols to provide the conversion between [-1, 1]
CTFontDescriptor weights and [0, 1000] CSS weights. Currently the
values these symbols provide are hard coded (for expediency), but the
symbols should be used when available since the values may change
without notice.
Change-Id: I0875c6a96c5b14e456f91bccf7a84f0306a3d63a
Reviewed-on: https://skia-review.googlesource.com/10163
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
This allows us to specify it for Linux Arm devices (like chromebooks, and
possibly RPIs)
Bug: skia:6442
Change-Id: I043bc3b3686caf28fedfe1a6ab1dfd300cc4f066
Reviewed-on: https://skia-review.googlesource.com/10469
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
This is a fix to an original fix which was reverted
BUG=skia:
Change-Id: I21fcda28a5d342984784a35d2b3e985c6e4199cf
Reviewed-on: https://skia-review.googlesource.com/10290
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Users have been updated and this define is no longer used.
Change-Id: I0430039978171c16ffe19fb3037897bcdf313e42
Reviewed-on: https://skia-review.googlesource.com/10417
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Fixes Fuchsia build
Change-Id: Ieb3b7092586495f5153ba18d14a94d8dcdab1dbd
Reviewed-on: https://skia-review.googlesource.com/10261
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
This replaces GrXferProcessor::getOptimizations with a new function on GrXPFactory. The results are made available via FragmentProcessorAnalysis.
Bug: skia:
Change-Id: I535985458c9d13ad858cac94e957e2fdbe332036
Reviewed-on: https://skia-review.googlesource.com/10218
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
This makes it easier to cross-compile for non-Android ARM (e.g. Raspberry PI)
Bug: skia:
Change-Id: I4414d933bc38d56009aefcbe10e68f7c70964d9c
Reviewed-on: https://skia-review.googlesource.com/10291
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Bug: skia:
Change-Id: Icdc01ffba00dfda37bcb467f2a4a33aef0991f56
Reviewed-on: https://skia-review.googlesource.com/10245
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Bug: skia:
Change-Id: I23184acc4e17d38861d27ab81172048a24c400d2
Reviewed-on: https://skia-review.googlesource.com/10288
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
This allows us to delete SkBlurDrawLooper (and leave only one draw
looper implementation).
BUG=skia:
Change-Id: I549af86b81babf19e3649bdffffe2fdb0b308d5a
Reviewed-on: https://skia-review.googlesource.com/10101
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
BUG=skia:
Change-Id: Id25e5f39d1393b8dec325d85afb4bc22a11f6bda
Reviewed-on: https://skia-review.googlesource.com/10283
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Fixes some gbr-8888 behaviors.
BUG=skia:
Change-Id: I1351b043129f7ed0e125bfdb626a0ecaf64c15cc
Reviewed-on: https://skia-review.googlesource.com/10169
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
Just as deferred and locked crash logging makes crashes easier to read,
so does deferred and locked failure logging make failures easier to read.
Change-Id: I71578d61b0056f8d7e692149762def1f155c0387
Reviewed-on: https://skia-review.googlesource.com/10280
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
I forgot that if a png has the significant bit
chunk set to R=5, G=6, B=5, we will recommend
a decode to 565.
We need to avoid this. The codec does not
support color correct 565.
BUG=skia:
Change-Id: Ieb74bfaf100504d9748e4b8014a8a4e425428c7a
Reviewed-on: https://skia-review.googlesource.com/10166
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
Didn't know what options would be useful here (path renderers?), so I've
left them default. Obviously we can thread them through TestSrc options.
I now have "841 ok" and no failures on my Linux laptop, though I imagine
the GPU tests are all just no-op'd by the TODO at the bottom of the file.
Change-Id: Id934c0bdb5de96d96f2a391106b5d20116f41979
Reviewed-on: https://skia-review.googlesource.com/10213
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Linerization of quadratic Beziers was using recursive midpoint
subdivision, which can exceed the number of required points by
up to 2X if the second-last recursion level is just over the flatness
threshold. (This is particularly bad for circular arcs, since all
segments have a similar midpoint distance.)
Instead, compute the points of maximum curvature, and progressively
increase the number of segments until the flatness
metric is satisfied at the points of maximum curvature.
This is good for a 15-20% boost on MotionMark Fill Paths, and makes the
performance on Canvas Arcs with the verb limit removed competitive
with the software+upload path renderer.
NOTE: this cause minor pixel diffs in a number of path-related GMs.
BUG=skia:
Change-Id: Ia2c22e00e45acec538b15a23c6edcb7a7d4566b7
Reviewed-on: https://skia-review.googlesource.com/9956
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Here's how things work now:
~/skia (tests)> ninja -C out ok; and out/ok test
ninja: Entering directory `out'
[2/2] link ok
112 ok../tests/TestConfigParsing.cpp:336
configs[i]->getBackend().equals(expectedConfigs[i].backend)
211 ok, 1 failed../tests/ShadowUtilsTest.cpp:25 Expected shadow
tessellation to fail but it did not.
../tests/ShadowUtilsTest.cpp:30 Expected shadow tessellation to fail but it did not.
../tests/ShadowUtilsTest.cpp:36 Expected shadow tessellation to fail but it did not.
../tests/ShadowUtilsTest.cpp:42 Expected shadow tessellation to fail but it did not.
637 ok, 2 failed
Change-Id: I84b108d4fabb538a2674831dd1ca64b149d7d265
Reviewed-on: https://skia-review.googlesource.com/10209
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
This reverts commit f4d443fd1b.
Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=705156
Original change's description:
> Fix SkImage_Gpu::getROPixels
>
> The dstColorSpace is a badly named parameter. It's a hint about where/how
> the returned pixels are going to be used. Raster and GPU are meant to
> ignore that information - codecs use it to drive our decoding heuristic.
>
> I've adopted that name in several places, although it's quite bad. Maybe
> usageColorSpace would be better?
>
> Bug: skia:
> Change-Id: I99acaac4bed57ed8acd8433e1c5b39a60c3af09e
> Reviewed-on: https://skia-review.googlesource.com/10109
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
>
TBR=msarett@google.com,robertphillips@google.com,brianosman@google.com,reed@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: Id46226e41ca287ef3351710815ae2e842da4d293
Reviewed-on: https://skia-review.googlesource.com/10210
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
We need to make sure we cleanup the VkImage created when testing the
wrapping of a render target.
BUG=skia:
Change-Id: I60ea7e880fecccca309a250cc3b19eb29d6aa89c
Reviewed-on: https://skia-review.googlesource.com/10206
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Plenty TODO remaining.
This can actually kind of run without a test reporter or GrContext:
$ out/ok test
784 ok, 56 crashed
... lots of stack traces ...
Most tests don't use the reporter unless they're going to fail.
Change-Id: I7333e2c63ade5e671ebf60022d19390f1fc1c93a
Reviewed-on: https://skia-review.googlesource.com/10201
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
BUG=skia:
Change-Id: I5ca9bbd43919e3f65ea940847c68f85cc78dfeda
Reviewed-on: https://skia-review.googlesource.com/10130
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Noticed all these while adding some unit test support to ok.
Change-Id: Ie33b96da95840628657211cb28b2134fd314a48a
Reviewed-on: https://skia-review.googlesource.com/10202
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Prep work for adding perspective support.
Bug: skia:
Change-Id: Id07d3050afb3f0d001b885e482adb8d03125b619
Reviewed-on: https://skia-review.googlesource.com/10167
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>