This reverts commit 2bd381bffd.
Reason for revert: Need to revert change this landed on top of
Original change's description:
> Remove Gr*Gpu includes from header files.
>
> Some general cleanup to try to keep use of the backend gpu class in cpps.
>
> Bug: skia:
> Change-Id: I1a28e0e5c2e55562b3fff56c284c3405b5b6d8bc
> Reviewed-on: https://skia-review.googlesource.com/20057
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,robertphillips@google.com
Change-Id: I5b27d50654a17502c056d59b2d4f9609376d189e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/20064
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
This reverts commit 643fcfa02f.
Reason for revert: Need to revert change this landed on top of
Original change's description:
> Add caps check for fence sync in SurfaceSemaphoreTest
>
> Bug: skia:
> Change-Id: I2a941cdb2ae108728eb01f89f8ebed6b79a2df68
> Reviewed-on: https://skia-review.googlesource.com/20059
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,rmistry@google.com,brianosman@google.com
Change-Id: Ie45ee86cff6c3d23f7ef82c16c1a8d99994add10
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/20062
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
The existing singular matrix detection in computeMatrices is sufficient
but not necessary. Since compute matrices is already doing a QR
decomposition, use that to determine singularity instead. This is both
faster and more accurate than the previous method for the common case.
BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=1305085
Change-Id: Iccef8368527b45e4eb565eddbebbbcf41ca66a2c
Reviewed-on: https://skia-review.googlesource.com/20054
Reviewed-by: Lee Salzman <lsalzman@mozilla.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Some general cleanup to try to keep use of the backend gpu class in cpps.
Bug: skia:
Change-Id: I1a28e0e5c2e55562b3fff56c284c3405b5b6d8bc
Reviewed-on: https://skia-review.googlesource.com/20057
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Bug: skia:
Change-Id: I2a941cdb2ae108728eb01f89f8ebed6b79a2df68
Reviewed-on: https://skia-review.googlesource.com/20059
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Bug: skia:
Change-Id: Ifd184c71bbc33f6c1415fad464da9542071de13f
Reviewed-on: https://skia-review.googlesource.com/20056
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This reverts commit 58564425e5.
Reason for revert: iOS
Original change's description:
> explore always using SkRasterPipeline for color space transforms
>
> On my trashcan, bench times change: mostly slowdowns, some speedups.
> On the other hand, this cuts about 270K of code out of Skia.
>
> Change-Id: Ib1069792508ced361c11ea809b0b8187f5e28a5c
> Reviewed-on: https://skia-review.googlesource.com/19744
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Mike Klein <mtklein@chromium.org>
TBR=mtklein@chromium.org,msarett@google.com
Change-Id: I26469e174f0281597ac5720ec790686ef3fbb4e0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/20036
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Bug: skia:
Change-Id: I44768314fad49fb0e094e30037a3fe159ebcbd0b
Reviewed-on: https://skia-review.googlesource.com/20044
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Noticed this while cleaning up GrResourceProvider.h's usage. It seems like a powerful header to just be splashing around.
Change-Id: I686fea61354a7e3c1c759627ffe4a560f7945f83
Reviewed-on: https://skia-review.googlesource.com/20040
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
After lots of tinkering, this is the smallest test case I've
found to reproduce the bug. Frequently, bitmap b4 will be
cleared to blue, but not contain the oval drawn right before.
Bitmap b5 will contain the oval, so the diff of the two
bitmaps will detect the error.
There may be something else that can be removed, but I
haven't found it.
Interesting note:
In the original version, all surfaces were cleared to
black. When I started trying to change the clear colors to
figure out if we were getting an old surface, the bug went
away. In particular, the first clear color is irrelevant,
but the last three clears must all be the same color. If
any are different, the bug doesn't occur.
Bug: skia:6653
Change-Id: Iacafcc140b60594fab208e82987b0f37416975f3
Reviewed-on: https://skia-review.googlesource.com/19817
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
No-Try: true
Change-Id: Ib55b96bd1ff80fe857b9fa551bb89bf6c2c81f2c
Reviewed-on: https://skia-review.googlesource.com/19968
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
The only substantive changes are the removal of GrProxy instantiation in:
SkGpuBlurUtils::GaussianBlur
GrSimpleTextureEffect::Make*
Change-Id: I10970609693bd6ff5b3a3c21b41d82642bb277bc
Reviewed-on: https://skia-review.googlesource.com/19965
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Bug: skia:6764
Change-Id: If0b9dba6e2bbd15ab7d94e271a0c577ca5fcf729
Reviewed-on: https://skia-review.googlesource.com/20021
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
On my trashcan, bench times change: mostly slowdowns, some speedups.
On the other hand, this cuts about 270K of code out of Skia.
Change-Id: Ib1069792508ced361c11ea809b0b8187f5e28a5c
Reviewed-on: https://skia-review.googlesource.com/19744
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Bug: skia:6763
Change-Id: I51522693ec8b81ff3b7d4349808d0e6493c5dd5b
Reviewed-on: https://skia-review.googlesource.com/19843
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
I have figured out how to implement lowp clamp_1/clamp_a, and
implementing clamp_1 would make lowp plus active.
But... the way we have factored blend modes requires us to be able to
lerp between the dst and possibly-out-of-range src values. This is not
possible in lowp. If we try to multiply with values in [0x8001,0xffff],
we'll just get garbage. We'll clamp them back in range, but sadly
clamped garbage is still garbage.
So the simplest thing to do is keep plus blends in floats. This CL
doesn't even change that... we'd use floats before and after it. It
just removes the lowp plus stage code that is both dead and buggy.
As far as I can tell, no other drawing is currently gated by lowp
missing clamp_1 or clamp_a.
Change-Id: I55b73c840614f1bff9cd610dff90ca5e2b5c73e5
Reviewed-on: https://skia-review.googlesource.com/19909
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Consolidates op factory functions to a rewritten GrRectOpFactory.
Removes GrRenderTargetContext::drawNonAAFilledRect() in favor of creating and adding ops directly by the callers.
Change-Id: I57e5fc739bf4e92b4a4710c739e6d22cce82a479
Reviewed-on: https://skia-review.googlesource.com/17711
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
This reverts commit 7d6fe0b996.
Reason for revert: Relanding with fix
Original change's description:
> Revert "Go back to using dual source blending for lcd src-over even with non-opaque color"
>
> This reverts commit b54bdef86e.
>
> Reason for revert: breaking some bots
> Original change's description:
> > Go back to using dual source blending for lcd src-over even with non-opaque color
> >
> > This is change is currently still safe since earlier in Skia we are still requiring
> > the dst to be opaque. The change is a workaround to spots where trying to read the
> > dst to do in shader blending is failing for some reason. This also should give back
> > a little performance since doing dual source blending should be better than shader
> > blends.
> >
> > Bug: chromium:732341
> > Change-Id: I795f8a520f87f3fbf5d63a9509fbd9f394ea2b29
> > Reviewed-on: https://skia-review.googlesource.com/19703
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,bsalomon@google.com
>
> Change-Id: Ibb9bc1ef4ec5967dabcd62c81f62c0989c14fbb8
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:732341
> Reviewed-on: https://skia-review.googlesource.com/19815
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,bsalomon@google.com
Bug: chromium:732341
Change-Id: I7481755a9aa64364371d8149af4458fc2c15c8aa
Reviewed-on: https://skia-review.googlesource.com/19840
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Bug: skia:6637
Change-Id: I3f692e95efad4079f69fc451c7d4a4b2b8b5df63
Reviewed-on: https://skia-review.googlesource.com/19808
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
This reverts commit b54bdef86e.
Reason for revert: breaking some bots
Original change's description:
> Go back to using dual source blending for lcd src-over even with non-opaque color
>
> This is change is currently still safe since earlier in Skia we are still requiring
> the dst to be opaque. The change is a workaround to spots where trying to read the
> dst to do in shader blending is failing for some reason. This also should give back
> a little performance since doing dual source blending should be better than shader
> blends.
>
> Bug: chromium:732341
> Change-Id: I795f8a520f87f3fbf5d63a9509fbd9f394ea2b29
> Reviewed-on: https://skia-review.googlesource.com/19703
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,bsalomon@google.com
Change-Id: Ibb9bc1ef4ec5967dabcd62c81f62c0989c14fbb8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:732341
Reviewed-on: https://skia-review.googlesource.com/19815
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
This is change is currently still safe since earlier in Skia we are still requiring
the dst to be opaque. The change is a workaround to spots where trying to read the
dst to do in shader blending is failing for some reason. This also should give back
a little performance since doing dual source blending should be better than shader
blends.
Bug: chromium:732341
Change-Id: I795f8a520f87f3fbf5d63a9509fbd9f394ea2b29
Reviewed-on: https://skia-review.googlesource.com/19703
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
This reverts commit 81c83a7db4.
Reason for revert: <INSERT REASONING HERE>
Original change's description:
> Revert "Do not return Index8 from SkAndroidCodec::computeOutputColorType"
>
> This reverts commit b6f4767294.
>
> Reason for revert: This breaks CTS tests in Android. Doh.
>
> Original change's description:
> > Do not return Index8 from SkAndroidCodec::computeOutputColorType
> >
> > Given that this is the only known use of Index8 color type,
> > this is essentially an experimental delete.
> >
> > Bug: skia:6620
> > Change-Id: Ib363d237e0217f6e7f461a62e54d32892c428095
> > Reviewed-on: https://skia-review.googlesource.com/10586
> > Reviewed-by: Leon Scroggins <scroggo@google.com>
> > Commit-Queue: Matt Sarett <msarett@google.com>
>
> TBR=msarett@google.com,scroggo@google.com,reed@google.com
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:6620
>
> Change-Id: I2b44c695b8b95659520e9532901f636f56e01e2a
> Reviewed-on: https://skia-review.googlesource.com/19084
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
TBR=msarett@google.com,scroggo@google.com,reviews@skia.org,reed@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: skia:6620
Change-Id: I7e4e3a5ec068102244ad3a0259aa6aded4f12f36
Reviewed-on: https://skia-review.googlesource.com/19802
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
Try to fix android roll
Bug: skia:
Change-Id: Iae32027b299d8a975d3caf70f0f8910541ca972d
Reviewed-on: https://skia-review.googlesource.com/19800
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
This reverts commit fad9e3f541.
Reason for revert: Can't find the error message anymore (?!?) Let's try again shall we
Original change's description:
> Revert "Update skia to use ifdefs for Vulkan code instead of dummy header"
>
> This reverts commit c0f8e426c5.
>
> Reason for revert: Experiment to see if this will unblock the Android roll
>
> Original change's description:
> > Update skia to use ifdefs for Vulkan code instead of dummy header
> >
> > Bug: skia:6721
> > Change-Id: I80a4c9f2acc09c174497f625c50ed12a8bb76505
> > Reviewed-on: https://skia-review.googlesource.com/19547
> > Reviewed-by: Mike Klein <mtklein@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,mtklein@google.com,bsalomon@google.com
>
> Change-Id: Ib51c1672570f2071a17b6fbde692a5174b0358ce
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:6721
> Reviewed-on: https://skia-review.googlesource.com/19724
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
TBR=egdaniel@google.com,mtklein@google.com,bsalomon@google.com,robertphillips@google.com
Change-Id: Iecef7ddcfe31d82938336120a4193525ac6693be
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:6721
Reviewed-on: https://skia-review.googlesource.com/19782
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>