Previously, operator& for enum class bitfields was reserved only to
return a bool. e.g:
if (flags & Flags::kFlag)
This change adds a new template class GrTFlagsMask<> that gets
instantiated by operator~ and allows us to write expressions like:
flags &= ~Flags::kFlag
(flags & ~Flags::kFlag1) | Flags::kFlag2
BUG=skia:
Change-Id: I21e5eb9304135e82cdda459e8a833a3489f6beaf
Reviewed-on: https://skia-review.googlesource.com/8563
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
BUG=skia:6260
Change-Id: Id27ac7f64276f87f86719bf4fc3f8834466320ab
Reviewed-on: https://skia-review.googlesource.com/8800
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
BUG=skia:
Change-Id: Id66505d2e45cfff0bb31f630d96f7a78ad2f701b
Reviewed-on: https://skia-review.googlesource.com/8721
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
This was the only non-test user of GrXPFactory::isConstantPreCoverageBlendedColor which is now removed.
Change-Id: Ic1c130d30a44e1a955b89f8912433a3c9df2e61e
Reviewed-on: https://skia-review.googlesource.com/8776
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Improve temporary_internal_getRgnClip performance for rect clips
by avoiding SkClipStack::asPath.
BUG=skia:
Change-Id: I371ac6031df325646841d57c4afaba7b835a12bb
Reviewed-on: https://skia-review.googlesource.com/8688
Commit-Queue: Stan Iliev <stani@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Prefer EllipseOp instead of DIEllipseOp, which improves the
performance.
BUG=skia:
Change-Id: I607c21326b44a80e0586c577349452a9c369488f
Reviewed-on: https://skia-review.googlesource.com/8690
Commit-Queue: Stan Iliev <stani@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
(No longer) Blocked on: https://skia-review.googlesource.com/c/8450/ (Remove asTextureRef from SkSpecialImage & update effects accordingly (take 2))
This also (unfortunately) picks up a few straggling effects that didn't have a sk_sp<GrTextureProxy> factory.
Change-Id: I5ce583a084aa8fe00e866eec1db90e2ec9dd2ab0
Reviewed-on: https://skia-review.googlesource.com/8500
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
This will allow us to feed the op's their render target when they don't have a pipeline before execution.
Change-Id: I01f16bec32e930c0152105a9179306159cb14dc4
Reviewed-on: https://skia-review.googlesource.com/8693
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
BUG=skia:6255
Change-Id: Ie2b645c4e18fab30c67cd3ee9857f7b003713339
Reviewed-on: https://skia-review.googlesource.com/8665
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
This time with coverage bypass
BUG=skia:
Change-Id: I7f51dcad7bad53c7209ac512876a0d72c6181b8e
Reviewed-on: https://skia-review.googlesource.com/8768
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Attempt 2. Lots of fixes due to upstream breaks.
BUG=skia:
Change-Id: Ie05b2da1790fbcce5c45ef09c4c832e09de6b5c5
Reviewed-on: https://skia-review.googlesource.com/8762
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Valgrind has tipped over from seeing the keep-alive thread as possibly
leaked to seeing it as definitely leaked. We can suppress both.
An alternative here is "all" or to just remove the line. For the moment
I think this is best, as we're still excluding indirect leaks this way.
I'd want to think a bit whether it made sense for the keep-alive thread
to indirectly leak anything, so I'd like it to fail if it comes up.
Change-Id: Ib28790a1d84a0a9061fdb6de48569ca8ea51b52a
Reviewed-on: https://skia-review.googlesource.com/8764
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
BUG=skia:
Change-Id: I693bec4daa819f3c7802aa54f452b47f228b370b
Reviewed-on: https://skia-review.googlesource.com/8673
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
It now fails after a few minutes instead of timing
out after 4 hours, so that's an improvement.
BUG=skia:
Change-Id: I3e9319711953a5dad7898eea507cd4d83db7842d
Reviewed-on: https://skia-review.googlesource.com/8729
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
This CL also renames SkSpecialImage::asTextureProxy to asTextureProxyRef
This is a reland of: https://skia-review.googlesource.com/c/7995/ (Remove asTextureRef from SkSpecialImage & update effects accordingly)
It should be good to land since https://skia-review.googlesource.com/c/8701/ (Replace SkSpecialImage::makeTightSubset with asImage (take 2)) fixes the Chrome-side issue
Change-Id: I3d88b2b3d23fd69f3fb914a69dacca96cbc038a4
Reviewed-on: https://skia-review.googlesource.com/8450
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
This change was made in the client master, but, since the bp file is
autogenerated, it has broken all subsequent rolls.
BUG=skia:
Change-Id: I722c020414f2700c50bf4a1b5936d993e44864a1
Reviewed-on: https://skia-review.googlesource.com/8730
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
Reland of https://skia-review.googlesource.com/c/8666/ (Expand use of GrMakeCachedBitmapProxy) with a fix for the non-GPU build
Change-Id: I91d1658139b895b94e04d3f486e56b76bc6d184a
Reviewed-on: https://skia-review.googlesource.com/8700
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Change-Id: Ie356b062372af3516a437d27bafa20d98e28edd6
Reviewed-on: https://skia-review.googlesource.com/8678
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
This warning fires in a tip of tree clang build because the base class to NullInterface also has a field called fExtensions.
Change-Id: I5e2a901583ae223a85d562f2d8b082e4d0cbf690
Reviewed-on: https://skia-review.googlesource.com/8691
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Change-Id: I89c944f5ed1e1a9aee5e73c384a53d86fd13d07e
Reviewed-on: https://skia-review.googlesource.com/8683
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Just need to take care to match C symbols with asm symbols. Linux
doesn't add the leading underscore automatically like Mac and Windows.
Change-Id: I488cdfec942b442554ffefdfd006a1305ad77d9d
Reviewed-on: https://skia-review.googlesource.com/8667
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
It's probably best we build iOS assembly with the iOS SDK and the right
architecture settings in Clang...
Change-Id: I68119641b1f86267ca85434b5a7f6ed37838ce23
Reviewed-on: https://skia-review.googlesource.com/8680
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
This reverts commit 310f4d02c1.
Reason for revert: Broke uploads
Original change's description:
> Roll Recipe DEPS
>
> BUG=skia:
>
> Change-Id: I3e32207e5809e126d53ee8ec2158eb855c1a26d2
> Reviewed-on: https://skia-review.googlesource.com/8671
> Commit-Queue: Eric Boren <borenet@google.com>
> Reviewed-by: Ravi Mistry <rmistry@google.com>
>
TBR=borenet@google.com,rmistry@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Change-Id: If6eed7a72aa7178afd23d0a4a7786e23b27c1ac2
Reviewed-on: https://skia-review.googlesource.com/8681
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
BUG=skia:
Change-Id: I3e32207e5809e126d53ee8ec2158eb855c1a26d2
Reviewed-on: https://skia-review.googlesource.com/8671
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
A suggestion from from the code review on cl/7614.
TBR=mtklein@google.com
Change-Id: Icfbe08bfe63ac1e21ed56481dc5251c2af5bb96a
Reviewed-on: https://skia-review.googlesource.com/8674
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
The current SkFixed3232 pinning logic in SkClampRange is not safe:
SkFixed3232ToFloat(SkFixed3232Max) and SkFixed3232ToFloat(SkFixed3232Min)
are not exactly representable in float, so they are not good SkTPin
limits.
Use the next representable float value towards zero. Constants computed
with nextafterf(..., 0).
Change-Id: I8e2eb35b22f65077e8ce6055d670d90d2a163bae
Reviewed-on: https://skia-review.googlesource.com/8662
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
This reverts commit 87e7f820f7.
Reason for revert: Failed a test on Mac
Original change's description:
> Add SkTypeface::getVariationDesignPosition.
>
> Allow users to query a typeface's position in variation design space.
>
> Change-Id: I5d80c8ff658708a5d1aa386ec5b7396dcb621198
> Reviewed-on: https://skia-review.googlesource.com/7130
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
>
TBR=bungeman@google.com,reed@google.com,reviews@skia.org,drott@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: Ia65792083642dbe9333a62eb75d162931b57cffd
Reviewed-on: https://skia-review.googlesource.com/8670
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Allow users to query a typeface's position in variation design space.
Change-Id: I5d80c8ff658708a5d1aa386ec5b7396dcb621198
Reviewed-on: https://skia-review.googlesource.com/7130
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
This reverts commit 2028625f9b.
Reason for revert: not the reason for broken roll.
Original change's description:
> Revert "Take missed opportunity: memset for A8."
>
> This reverts commit 9cee33e631.
>
> Reason for revert: Chrome roll?
>
> Original change's description:
> > Take missed opportunity: memset for A8.
> >
> > Just recently noticed we weren't doing this.
> > It seems to be triggering all the time.
> >
> > Draws the same of course.
> >
> > Change-Id: Ie3d869a05194a5d52d635643eba1c96c8a21ce67
> > Reviewed-on: https://skia-review.googlesource.com/8471
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Mike Klein <mtklein@chromium.org>
> >
>
> TBR=mtklein@chromium.org,msarett@google.com,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I26a3f2b1a9ae9093180e9c5cc61094b239377c17
> Reviewed-on: https://skia-review.googlesource.com/8606
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Mike Klein <mtklein@chromium.org>
>
TBR=mtklein@chromium.org,msarett@google.com,reed@google.com
NOPRESUBMIT=true
Change-Id: Ib14360c6669abf9dd0c5bd152773b314d094fe72
Reviewed-on: https://skia-review.googlesource.com/8617
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
This reverts commit 0462822132.
Reason for revert: Lets revert until the proto is rolled into Skia.
Original change's description:
> CQ config: add gerrit CQAbility verifier.
>
> Goal is to ensure that unreviewed and untrusted code isn't sent through
> CQ to try bots, by accident or through malicious intent.
>
> R=rmistry@google.com
> BUG=chromium:692613
> NOTRY=True
>
> Change-Id: I750be91895f5b77229b8f4a22216f00eaa75f7a0
> Reviewed-on: https://skia-review.googlesource.com/8620
> Reviewed-by: Ravi Mistry <rmistry@google.com>
> Commit-Queue: Ravi Mistry <rmistry@google.com>
>
TBR=rmistry@google.com,reviews@skia.org,tandrii@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:692613
Change-Id: I6d4b821b2a02ef3e097cf68cd8ebfb2b51d4d165
Reviewed-on: https://skia-review.googlesource.com/8663
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>