Commit Graph

29265 Commits

Author SHA1 Message Date
Mike Reed
086a427b0c guard references to SkColorTable
Bug: skia:6828
Change-Id: I0c8c78e70b118f51cb59dc45675e4ddcd4776108
Reviewed-on: https://skia-review.googlesource.com/24260
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2017-07-18 15:50:43 +00:00
Hal Canary
918ad9d5f1 Commit Queue: add Build-Debian9-GCC-arm-Chromecast
Motivation:  This compiler configuration has a few quirks.
Change-Id: I9c50a15510f4b770f8643b21e9e7cdf57264bc50
Reviewed-on: https://skia-review.googlesource.com/24324
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-07-18 14:49:06 +00:00
Ethan Nicholas
07990de817 added sksl support for integerSupport cap
Bug: skia:
Change-Id: I7e33af9b845db3f862a3a21cba7f2d56e8ea2909
Reviewed-on: https://skia-review.googlesource.com/24323
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-07-18 14:23:16 +00:00
Hal Canary
9b9510a711 Revert "Revert "SkPDF: Non-outline glyphs as images""
This reverts commit 63b6f8b932.

SkPDF: Non-outline glyphs as images

    - Cache images in PDF Canon for de-duping
    - For now, rasterize at text scale.  In the future, look at CTM and
      fRasterScale.

Original CL: https://skia-review.googlesource.com/24080
BUG=chromium:705480
BUG=skia:3489
Reviewed-by: Ben Wagner <bungeman@google.com>
Change-Id: I99783df72c945cfb4b24b6d4db99418aa34e0897
Reviewed-on: https://skia-review.googlesource.com/24322
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-07-18 14:06:56 +00:00
Brian Salomon
cda20154b6 Make dither range symmetric about 0
Change-Id: I0c2eec60beb665c7dca9b9fddc00ac112a1ff2e1
Reviewed-on: https://skia-review.googlesource.com/24121
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-18 12:40:16 +00:00
Florin Malita
0aa492d0f4 Remove leftover Android ctable reference
TBR=

Change-Id: I6d8ed2fc2267e2a9b249b3c780495a26f0b5e1c6
Reviewed-on: https://skia-review.googlesource.com/24320
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-07-18 11:51:14 +00:00
Florin Malita
001e72263f Add guard to unblock the Chromium roll
TBR=

Change-Id: I87f96fb88479de770490ce4cce6ad840acb90241
Reviewed-on: https://skia-review.googlesource.com/24261
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-07-18 08:35:36 +00:00
Leon Scroggins III
e43fdb389f Use SkRasterPipeline to blend GIF frames and use proper offset
Mimics SkWebpCodec, but it is simpler, because each pixel is either
opaque or transparent, so blending just means using the new pixel if not
transparent.

Correct the offset when blending f16 frames. It needs to be doubled,
since the swizzler used a 4-byte format while f16 is 8-byte.

Remove an unnecessary call to sk_bzero.

Bug: skia:6750
Change-Id: I8b88d1d66bff660c98c2083031231678a7be5460
Reviewed-on: https://skia-review.googlesource.com/24240
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-07-18 00:04:36 +00:00
Mike Klein
ea23a04a1c add 32-bit Windows SkJumper backend
The most interesting part of this is getting the call to start_pipeline
to work.  From there it should be just like the other x86 backend.

The 32-bit calling conventions are the same across Linux/Mac and
Windows, so that's nice.  The tricky bit is that Linux and Mac
align the stack to 16 bytes, while Windows only to 4.  I think
this force_align_arg_pointer attribute on start_pipeline does the trick.

This needs a guard for layout tests.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win2k8-MSVC-GCE-CPU-AVX2-x86-Debug;master.tryserver.blink:win10_blink_rel,win7_blink_rel;master.tryserver.chromium.win:win_chromium_rel_ng

Change-Id: Ia74d22e5a4ce5483c9817b8a8f89dd21885bbd14
Reviewed-on: https://skia-review.googlesource.com/20968
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2017-07-17 23:57:26 +00:00
Mike Reed
26e9dddf59 Don't store colortables in pixmaps or pixelrefs
Lots more changes coming later (need to remove colortable parameters from bitmaps and pixmaps)

Bug: skia:6828
Change-Id: Ic63e89570644839fab068141f49915b3f66d1053
Reviewed-on: https://skia-review.googlesource.com/24127
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-17 23:19:09 +00:00
Mike Reed
63b6f8b932 Revert "SkPDF: Non-outline glyphs as images"
This reverts commit 3cf6b79e50.

Reason for revert: breaking build

../../../../../work/skia/src/pdf/SkPDFDevice.cpp: In member function 'void SkPDFDevice::internalDrawText(const void*, size_t, const SkScalar*, SkTextBlob::GlyphPositioning, SkPoint, const SkPaint&, const uint32_t*, uint32_t, const char*)':
../../../../../work/skia/src/pdf/SkPDFDevice.cpp:1578:31: error: missing initializer for member 'SkPoint::fX' [-Werror=missing-field-initializers]
                 SkPoint xy = {};
                               ^

Original change's description:
> SkPDF: Non-outline glyphs as images
> 
>     - Cache images in PDF Canon for de-duping
>     - For now, rasterize at text scale.  in the future, look at CTM and
>       fRasterScale.
>     - add a test that works on MacOS
> 
> BUG=chromium:705480
> BUG=skia:3489
> Change-Id: I4fbc42f218e5b81ea15ea6cdccc61c91e532f6d0
> Reviewed-on: https://skia-review.googlesource.com/24080
> Commit-Queue: Hal Canary <halcanary@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=halcanary@google.com,bungeman@google.com

Change-Id: I3d8800fcb33817c6065da0860a534eb14350d132
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:705480, skia:3489
Reviewed-on: https://skia-review.googlesource.com/24160
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-17 21:12:30 +00:00
Florin Malita
0983268dd5 Skip bilerp for integral-translate-only matrices
BUG=chromium:744674

Change-Id: I053a0c26b0f644faa11f469b8a6486302a5efae6
Reviewed-on: https://skia-review.googlesource.com/24126
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2017-07-17 20:57:48 +00:00
Hal Canary
3cf6b79e50 SkPDF: Non-outline glyphs as images
- Cache images in PDF Canon for de-duping
    - For now, rasterize at text scale.  in the future, look at CTM and
      fRasterScale.
    - add a test that works on MacOS

BUG=chromium:705480
BUG=skia:3489
Change-Id: I4fbc42f218e5b81ea15ea6cdccc61c91e532f6d0
Reviewed-on: https://skia-review.googlesource.com/24080
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2017-07-17 20:52:08 +00:00
Mike Reed
df80e39eab remove SK_SUPPORT_LEGACY_INDEX_8_COLORTYPE for google3
Bug: skia:
Change-Id: I0469f125c9eb50370ce97287017401082066fcaf
Reviewed-on: https://skia-review.googlesource.com/24141
Reviewed-by: Mike Reed <reed@google.com>
2017-07-17 20:41:24 +00:00
Mike Reed
262b319dcd Index8 is dead, remove guarded code
Needs google3 to be updated before this can land.

Bug: skia:6828
Change-Id: I2c16be13c6937ffa48768cc24f9f980171c824d6
Reviewed-on: https://skia-review.googlesource.com/23940
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-17 20:37:28 +00:00
Florin Malita
4d7a9bf0c0 Delete dead SK_SUPPORT_LEGACY_BILERP_IGNORING_HACK code
Change-Id: I367436ea5bef476a2e596f01bb57fa5b817a3619
Reviewed-on: https://skia-review.googlesource.com/24122
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-07-17 20:02:58 +00:00
Ethan Nicholas
ee33873325 fixed skslc vec4 uniforms
Bug: skia:
Change-Id: I40ad3d0e73dbeedcd150b0d0a7f12c636f01cf33
Reviewed-on: https://skia-review.googlesource.com/24100
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-17 19:36:00 +00:00
Florin Malita
c2bd631c43 Remove (now-dead) SK_LEGACY_SWEEP_GRADIENT code
Reland of https://skia-review.googlesource.com/c/17982

TBR=

Change-Id: If29d60d60a45562715fddfaff56b1e694be13034
Reviewed-on: https://skia-review.googlesource.com/24042
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-07-17 18:08:59 +00:00
Brian Salomon
ce5ee602ed Add support for GL 565 and 4444 configs to test tools
Change-Id: I395e3387df44cf5370fef6ab73db73228225622f
Reviewed-on: https://skia-review.googlesource.com/23946
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-17 17:09:08 +00:00
Brian Osman
1c8f73d9b5 Run clang-format on GrCircleBlurFP.cpp
Fixes flutter license script hang

Bug: skia:6854
Change-Id: I8eb69641888805411eb2d9ee4dbf50f281ac1b4b
Reviewed-on: https://skia-review.googlesource.com/23944
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-07-17 16:43:58 +00:00
Greg Daniel
aa352de50c Update visibility checks in Vulkan to support geom shaders
Bug: skia:
Change-Id: Ie80bea38e644647e5a09e95053ddace30521361d
Reviewed-on: https://skia-review.googlesource.com/23300
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-07-17 15:31:57 +00:00
Mike Klein
263cef7b5f quote $windk to make copy-and-paste easy
Change-Id: Iaecae142dcf268517f8918d9f4fa6a64db194fab
Reviewed-on: https://skia-review.googlesource.com/23942
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2017-07-17 15:01:27 +00:00
Mike Reed
b3d1d90b28 runtime check for in-range colortypes
Bug:743106
Change-Id: Ia014643c6f1914cf2b9b873138a0c53a783f666f
Reviewed-on: https://skia-review.googlesource.com/23943
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-17 14:59:08 +00:00
Brian Salomon
e3e9628ecf Revert "Make GrAtlasTextOp a non-legacy GrMeshDrawOp"
This reverts commit 434a58ab5f.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Make GrAtlasTextOp a non-legacy GrMeshDrawOp
> 
> Change-Id: Ib9eaf149100b0ccecf1c18a755263f2579b8e6f6
> Reviewed-on: https://skia-review.googlesource.com/23482
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=jvanverth@google.com,bsalomon@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I7fd8503b4e0c297b2cfaf979545354aa58d1f989
Reviewed-on: https://skia-review.googlesource.com/23760
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-17 13:08:38 +00:00
Christopher Cameron
d4b6787511 Make SkImage_Lazy cache its result from onMakeColorSpace
May sites will all onMakeColorSpace every frame, resulting repeatedly
re-created new SkImage_Lazy class instances, new cache keys, and
repeated cache misses.

Save the most recent result from onMakeColorSpace, to avoid this thrash.

Bug:741607
Change-Id: I34091327a17275722f82ed372eb0b341806a9ddc
Reviewed-on: https://skia-review.googlesource.com/23287
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-17 12:14:37 +00:00
Mike Klein
42102420c0 Revert "Inject a dsb into SkAnalyticEdge::setLine() to work around ARMv7 CPU erratum."
This reverts commit 101806f452.

Reason for revert: no more need.

BUG=chromium:740805

Original change's description:
> Inject a dsb into SkAnalyticEdge::setLine() to work around ARMv7 CPU erratum.
> 
> BUG=chromium:710131
> 
> Change-Id: I4568bc24cc8fabb6f9df3b7645b01a98e11791b8
> Reviewed-on: https://skia-review.googlesource.com/14062
> Reviewed-by: Doug Anderson <dianders@google.com>
> Commit-Queue: Mike Klein <mtklein@chromium.org>

TBR=mtklein@chromium.org,dianders@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: chromium:710131
Change-Id: Ib5b58a951ae56e0f0523cfed27754e0cd150e6ce
Reviewed-on: https://skia-review.googlesource.com/23840
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-07-16 20:24:07 +00:00
UpdateSKPs
1fcd10aae4 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: Id11d0a2d8e282a043ca3029d6640d9c42ff56306
Reviewed-on: https://skia-review.googlesource.com/23780
Commit-Queue: update-skps <update-skps@skia.org>
Reviewed-by: update-skps <update-skps@skia.org>
2017-07-16 07:52:06 +00:00
Chris Dalton
1a325d25b9 Coverage counting path renderer
Initial implementation of a GPU path renderer that draws antialiased
paths by counting coverage in an offscreen buffer.

Initially disabled until it has had time to soak.

Bug: skia:
Change-Id: I003d8cfdf8dc62641581b5ea2dc4f0aa00108df6
Reviewed-on: https://skia-review.googlesource.com/21541
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-07-14 21:45:35 +00:00
Leon Scroggins III
588fb040b3 Report error on failure to create SkCodec
Update NewFromStream to report an error on failure to create an
SkCodec, so that a client can distinguish between
- not enough data
- invalid data

In Chromium, this will allow blink::ImageDecoder to call SetFailed if
the stream is invalid early and we never create an SkCodec. Without
this, ImageDecoder will keep trying to create an SkCodec when it
receives more data.

Change-Id: I4f505c56d91c982be36a828fd0f7db17b1596588
Reviewed-on: https://skia-review.googlesource.com/22642
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Chris Blume <cblume@chromium.org>
2017-07-14 21:14:06 +00:00
Ethan Nicholas
0274b30fee converted GrBlurredEdgeFragmentProcessor to sksl
Bug: skia:
Change-Id: I028c85f692b2e54e64be301940708387014ee0c7
Reviewed-on: https://skia-review.googlesource.com/23540
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-07-14 20:46:34 +00:00
Chris Dalton
91982ee8d9 Fix SkClassifyCubic for near-quadratics
Fixes the threshold logic for "0 ~= d1 && 0 ~= d2".

Previously, if d1 and d2 were both near zero, but on opposite sides
of the threshold, the curve could be misclassified as kCuspAtInfinity
and drawn incorrectly.

Bug: skia:
Change-Id: I65f30ddebf0a4a0b933610d8cc1a2f489efc99e4
Reviewed-on: https://skia-review.googlesource.com/22400
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
2017-07-14 20:34:34 +00:00
Brian Osman
1e0779ba11 Revert "remove dead code for legacy image encode api"
This reverts commit 41ed7f3379.

Reason for revert: Need this in temporarily to navigate Flutter and Fuchsia rolls.

Original change's description:
> remove dead code for legacy image encode api
> 
> Bug: skia:
> Change-Id: Ia90d776946281473c56cd93006df1b523475696a
> Reviewed-on: https://skia-review.googlesource.com/23022
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=scroggo@google.com,reed@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:
Change-Id: I078762fc13de0c455dc6f8a5725d9529af03bffc
Reviewed-on: https://skia-review.googlesource.com/23385
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-07-14 20:29:35 +00:00
Brian Salomon
434a58ab5f Make GrAtlasTextOp a non-legacy GrMeshDrawOp
Change-Id: Ib9eaf149100b0ccecf1c18a755263f2579b8e6f6
Reviewed-on: https://skia-review.googlesource.com/23482
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-14 20:24:15 +00:00
Ethan Nicholas
420f1565e9 converted EllipseEffect to sksl
Bug: skia:
Change-Id: Id089b9ead7a21e903b001006dffff2381efd4ba3
Reviewed-on: https://skia-review.googlesource.com/23582
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-07-14 19:45:14 +00:00
Brian Osman
f2c901474c Add GN arg to allow Flutter-specific API guards
Bug: skia:
Change-Id: I5a97da664626eebf30bba3f391fff0d8b9e62ea5
Reviewed-on: https://skia-review.googlesource.com/23042
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2017-07-14 18:54:24 +00:00
Yuqian Li
e94865e934 Simplify Sk4i's Min/Max
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD
Bug: skia:
Change-Id: Id82a58f2f4d947894bb710cb3190c873b20b98eb
Reviewed-on: https://skia-review.googlesource.com/23404
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2017-07-14 18:14:04 +00:00
Brian Salomon
8abb9f4537 Remove GrTestMeshDrawOp
Change-Id: If7465391b5e704b16b3ded2a73fafe088e2ea8e0
Reviewed-on: https://skia-review.googlesource.com/23384
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-14 17:23:34 +00:00
Leon Scroggins III
fc4ee229a6 Fix double delete in SkBmpCodec
Previously, if ReadHeader returned false, it deleted the input stream.
But there are a couple of cases where ReadHeader creates an SkCodec and
then returns false. The SkCodec deletes the stream, and then so does
NewFromStream.

Make sure that we do not double delete by only deleting if no SkCodec
was created.

Add a test, so such a double delete will be caught by the bots.

Bug: b/37623797
Change-Id: I787422c9af58f0b92ad9e9ef9ad87c54a12f5e31
Reviewed-on: https://skia-review.googlesource.com/23620
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-07-14 16:25:54 +00:00
Brian Salomon
82ddc94aff Make ProcessorRefTests op be a non-legacy GrMeshDrawOp
Change-Id: I80f8a7bad1fb8d499a3fec879ddd29ebbefe1eb6
Reviewed-on: https://skia-review.googlesource.com/23324
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-14 16:22:04 +00:00
Brian Salomon
b4b8a46448 Make PrimitiveProcessorTest's op be a non-legacy GrMeshDrawOp
Change-Id: I14c03c350e43dd576904d94a9f0847405dedd0a6
Reviewed-on: https://skia-review.googlesource.com/23142
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-14 16:20:04 +00:00
Brian Salomon
576eda1fee Make convex poly effect GM use a non-legacy GrMeshDrawOp
Change-Id: I24806e9bc12206d2c1e29a1aec33aabad0f9c91b
Reviewed-on: https://skia-review.googlesource.com/23581
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-14 15:55:34 +00:00
UpdateSKPs
b7fcd31377 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: I6625bf8978209ff55a4107ecc2fca2341f01618f
Reviewed-on: https://skia-review.googlesource.com/23600
Reviewed-by: update-skps <update-skps@skia.org>
Commit-Queue: update-skps <update-skps@skia.org>
2017-07-14 15:52:24 +00:00
Chris Dalton
e9e91dde4e Add "findOrMakeStaticBuffer" to GrOnFlushResourceProvider
Bug: skia:
Change-Id: If381c91f40566e6630799ea9985c48e2b738596e
Reviewed-on: https://skia-review.googlesource.com/23420
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-07-14 15:22:34 +00:00
Brian Salomon
477d0efcf2 Make ops in bezier_effects GMs be non-Legacy GrMeshDrawOps
Change-Id: I1d56536820a61af293a7bce290f35b724c3a8257
Reviewed-on: https://skia-review.googlesource.com/23480
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-14 15:03:24 +00:00
Yuqian Li
148cf8813a Remove SK_SUPPORT_LEGACY_RECT flag
The rebaseline has finished in Chromium.

Bug: skia:
Change-Id: Ibafb32b3683f1bfc3e451911e6fb8382bfc9b857
Reviewed-on: https://skia-review.googlesource.com/23481
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2017-07-14 14:51:34 +00:00
Ethan Nicholas
6e1cbc012b fixed sksl static ifs to work for CircleEffect
static ifs (and switches) in .fp files are a bit tricky, because they
aren't necessarily static when the CPP file is being produced. They
become static when the CPP file produces the final SkSL; at this point
the final values of the 'in' variables are known.

This change permits 'deferred' static ifs and switches. The initial
compilation (.fp -> .cpp) passes the @if / @switch through, and then
the final compilation (.cpp's generated SkSL -> GLSL or whatever)
enforces the static test.

Bug: skia:
Change-Id: I0087dfe1725c8fd350507ac77f64db1d82659cdf
Reviewed-on: https://skia-review.googlesource.com/23403
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-07-14 14:41:04 +00:00
Brian Salomon
9a03642ad2 Make ops used in OnFlushCallbackTest be non-legacy GrMeshDrawOps.
Change-Id: Idf7f838bcdda200aeea1bfbcd5eea7cbebd76aa2
Reviewed-on: https://skia-review.googlesource.com/23005
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-14 14:24:54 +00:00
Florin Malita
b00a36050a Purge cached SkPictureShader entries on shader deletion
We're currently adding picture shader cache entries to the resource
cache, but we don't ever purge.  To avoid exhausting the budget, add
logic to associate cached entries with their owning picture shader, and
purge when the shader is deleted.

-- Side note --

The current cache key is

 K(pictureID, ...)

so technically the cache entries are associated with the picture, not the
shader.  One could resonably argue we should only purge when the
*picture* is deleted.  Unfortunately, this doesn't work: the cache entries
contain indirect refs to the picture (SkImageShader -> SkImage_Generated
-> SkPictureImageGenerator -> SkPicture), so the picture is always kept
alive.

Associating the cache entries with the shader itself seems like a
reasonable alternative, even if we give up some cache persistence in the
process.

Change-Id: Ia115dbb5ae627e5ee171da7c4430fecfd42f4292
Reviewed-on: https://skia-review.googlesource.com/23380
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-07-14 14:19:34 +00:00
Greg Daniel
2811aa25f1 Add metal config to tools
Bug: skia:
Change-Id: I84dbd56c17d4856496af4491f340ec560e29c8a6
Reviewed-on: https://skia-review.googlesource.com/23200
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-07-14 13:57:34 +00:00
Brian Salomon
f99a1739be init GrDrawAtlasOp::fColor
Change-Id: Ifa474610dcb238a05ce7d688bae639d36ef4f4c1
Reviewed-on: https://skia-review.googlesource.com/23402
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-14 13:49:34 +00:00