This reverts commit fa2d604a7d.
Reason for revert: <INSERT REASONING HERE>
Original change's description:
> Make GPU backend triangulate rects such that they are rendered as tri strips rather than tri fans.
>
> Right now when we turn rects into quads we use a vertex order compatible with a tri fan rather than a tri strip.
>
> I wanted it to be the case that the same code could be used to generate a non-indexed mesh for a single rect or indexed using the quad index buffer when batching. Triangle fanning is not available in all APIS (e.g. is emulated in ANGLE and not supported in Metal) so it seems better to use a triangle strip over a fan in the single rect case.
>
>
> Change-Id: I31eebd794e7328f4b39e3ec3377bf2ec556360ca
> Reviewed-on: https://skia-review.googlesource.com/60081
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
TBR=bsalomon@google.com,robertphillips@google.com
Change-Id: I7c4c23aa418da09c9708b28cce64ab58e282dd3a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/60683
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
It's properly 16 today because of HSW/lowp stages handling 16 pixels at
a time, but it hasn't yet had an effect on lowp so we didn't notice.
As we add lowp shader stages this will start to matter,
so might as well bump it up to 16 now.
(One day _skx lowp stages could bump this up to 32.)
Change-Id: Idd8185c08e12dc657389a35bf659662c9670f98a
Reviewed-on: https://skia-review.googlesource.com/60565
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Add new application, called GPU-CTS (GPU Compatibility Test Suite),
which executes skia gms against OpenGL and Vulkan backends. Makes use
of googletest library for consistancy with Android CTS programs.
Add googletest to DEPS
gm_knowledge.h header as a stub for future work on validating gm output.
gm_runner can be re-used in other programs. Talks to Skia and GM with a
simple API.
gpuctx executable wraps gm_runner and googletest together.
Change-Id: Ie7350b22164fa73e44121c39b0f36da4038a700b
Reviewed-on: https://skia-review.googlesource.com/56601
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Enables for volatile paths and when path mask caching is disabled.
Bug: skia:
Change-Id: I644b17f2a4f77a4ddf85265f520599499c0800cf
Reviewed-on: https://skia-review.googlesource.com/60481
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Clang trunk will warn about this. The variable's constructor doesn't
have side-effect and it has a trivial destructor.
Bug: skia:
Change-Id: I4f20904fef2fd3617bb3062aa5ea71619e37c06c
Reviewed-on: https://skia-review.googlesource.com/60660
Commit-Queue: Benjamin Kramer <kramerb@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Right now when we turn rects into quads we use a vertex order compatible with a tri fan rather than a tri strip.
I wanted it to be the case that the same code could be used to generate a non-indexed mesh for a single rect or indexed using the quad index buffer when batching. Triangle fanning is not available in all APIS (e.g. is emulated in ANGLE and not supported in Metal) so it seems better to use a triangle strip over a fan in the single rect case.
Change-Id: I31eebd794e7328f4b39e3ec3377bf2ec556360ca
Reviewed-on: https://skia-review.googlesource.com/60081
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
developer reported a harmless, but misleading typo
in pathops. Verified that correcting it is also
harmless
TBR:reed@google.com
Bug: skia:7172
Change-Id: I3aff926752ef6c5d95a78f4e6cf57c9b42789f64
Reviewed-on: https://skia-review.googlesource.com/60561
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
Patching from internal cl/171888276.
No-Try: true
Change-Id: I6919769ad4e367ded394f1094944cea2b3901fd0
Reviewed-on: https://skia-review.googlesource.com/60583
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
This would allow us to have more test coverage on specific scan converters
which may help us detect some wierd bugs such as crbug.com/774008
Bug: chromium:774008
Change-Id: I9213b11bb47ce48a6eff8da494e1b2699d386ae9
Reviewed-on: https://skia-review.googlesource.com/60540
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
Bug: skia:
Change-Id: Ie717f92306d32303cb2efcfe5809bb4d81ae80e0
Reviewed-on: https://skia-review.googlesource.com/60223
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
These are hard-coded in update_meta_config.py, which is used to set the
list of trybots in Gerrit.
Bug: skia:
Change-Id: I6e512e4cb59974e27e8954cf5134c70068e716f3
Reviewed-on: https://skia-review.googlesource.com/60521
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Bug: skia:
Change-Id: Ifaf94d100bf4213ee405086f72313884ef003486
Reviewed-on: https://skia-review.googlesource.com/60340
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
(It's built into the types now.)
Bug: skia:
Change-Id: I44edc6e71098cf74387091903e920b1dd929b103
Reviewed-on: https://skia-review.googlesource.com/59880
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
There is no need to be passing ref's around when we get a GrVkPipelineState
from the cache. We don't track its use on the GPU and we never delete
them from the cache until we are destorying the GrVkGpu object.
Bug: skia:
Change-Id: If675ce9e0690b36663f6d227c48fd4874ba46770
Reviewed-on: https://skia-review.googlesource.com/59985
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Decouples geometry generation and analytic coverage. This paves the
way for a vertex shader implementation.
TBR=egdaniel@google.com
Bug: skia:
Change-Id: I2a183401bfe70b9f14b9b1cf035de6020a2135fa
Reviewed-on: https://skia-review.googlesource.com/60103
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Wrapper for "git cl try" which allows searching jobs using regular
expressions.
Bug: skia:
Change-Id: I07a1b487f2eca9da7df4c4d4c65e22e459b76fed
Reviewed-on: https://skia-review.googlesource.com/60261
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Bug: skia:
Change-Id: I559486ac8750bb23d477ae8bdaa9d71f8bc7c459
Reviewed-on: https://skia-review.googlesource.com/60183
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Bug: skia:
Change-Id: I869776e3d9d47b4a1a11089f729a0b17581eb9f7
Reviewed-on: https://skia-review.googlesource.com/57400
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
This reverts commit e501033bbd.
Reason for revert: Broke several bots
Original change's description:
> Refactor CCPR coverage shaders for a vertex impl
>
> Decouples geometry generation and analytic coverage. This paves the
> way for a vertex shader implementation.
>
> Bug: skia:
> Change-Id: I23b79d4397db22bd8fc063b8dfca58ab00037292
> Reviewed-on: https://skia-review.googlesource.com/59200
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,csmartdalton@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: skia:
Change-Id: I314bf03fa6cbeceb1c527d4d9464147b2e8464c6
Reviewed-on: https://skia-review.googlesource.com/59821
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
The first "sharding" technique we will try is just by test config
(e.g. 8888, gles, etc). Thus, for backwards compatibility,
the default "shard" is All, as in all configs
Bug: skia:
NOTRY=true
Change-Id: Ia02362477a5d97f8f74d688b5f0c4f45fc129375
Reviewed-on: https://skia-review.googlesource.com/59563
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Decouples geometry generation and analytic coverage. This paves the
way for a vertex shader implementation.
Bug: skia:
Change-Id: I23b79d4397db22bd8fc063b8dfca58ab00037292
Reviewed-on: https://skia-review.googlesource.com/59200
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Adds the flag and a disables caching on the CCPR bots.
Bug: skia:
Change-Id: Icb85e77f89634dda1d419dacac5b8a93340723f0
Reviewed-on: https://skia-review.googlesource.com/59740
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Fuchsia also builds Skia for host and wants to set various gn variables (e.g.,
skia_enable_flutter_defines) when is_linux is true. Rather than teach Skia
about all these permutations, this CL adds a skia_settings variable that can be
used by clients to customize Skia's configuration.
Change-Id: I6fd4798b0ce86615688ea19328236ae0f3a93c4d
Reviewed-on: https://skia-review.googlesource.com/59720
Commit-Queue: Adam Barth <abarth@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Since we went to retrying the adb commands, the return value
got lost, which was used to read the SKP_VERSIOn, etc.
This fixes it.
Bug: skia:
NOTRY=true
Change-Id: Ifc61ec4cbb13a61c571b2fb89a9c0ed215f8fbd3
Reviewed-on: https://skia-review.googlesource.com/59441
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>