aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
* Add downsampling option to SkJpegEncoderGravatar Matt Sarett2017-05-09
| | | | | | | | Bug: 713862 Change-Id: Ibad6ecf836ccfd355499e1bace7bcd4ba772a97a Reviewed-on: https://skia-review.googlesource.com/15891 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* update dox for ditheringGravatar Mike Reed2017-05-09
| | | | | | | | Bug: skia:6604 Change-Id: I21b505c54c1d43abf62b7c577e7dd88e53ed30fd Reviewed-on: https://skia-review.googlesource.com/16156 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Mike Reed <reed@google.com>
* move set-text-matrix into privateGravatar Mike Reed2017-05-09
| | | | | | | | | | Had no external callers, and was poorly named. Bug: skia: Change-Id: I5bed6853e9aa3b31fa106a436a73297bf55f0503 Reviewed-on: https://skia-review.googlesource.com/16155 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add jpeg encoder alpha handling optionGravatar Matt Sarett2017-05-09
| | | | | | | | | | | | | | | | | This instructs us on how to encode jpegs when the src image has alpha. The original behavior is to ignore the alpha channel. This CL adds the option to blend the pixels onto opaque black. Note that kBlendOnBlack and kIgnore are identical unless the input alpha type is kUnpremul. Bug: 713862 Bug: skia:1501 Change-Id: I4891c70bb0ccd83f7974c359bd40a2143b5c49ac Reviewed-on: https://skia-review.googlesource.com/15817 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* make append_gamut_tranform() never failGravatar Mike Klein2017-05-09
| | | | | | | | | | | | | | The only way it could ostensibly fail is if we get non-XYZ color spaces, which should just not happen. Assert that doesn't happen and safely do nothing instead of failing. This is one of the leaf nodes to getting SkCreateRasterPipelineBlitter to never fail. Next come SkColorFilter:: and SkShader::appendStages(). Change-Id: I5c7a8c63d0a9837e2e55208e1674796d86f45307 Reviewed-on: https://skia-review.googlesource.com/16002 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Matt Sarett <msarett@google.com>
* Add support for using texel buffers in Vulkan backend.Gravatar Greg Daniel2017-05-09
| | | | | | | | Bug: skia: Change-Id: I5cc7b18263dbe28d5d8d89301111ef240109704a Reviewed-on: https://skia-review.googlesource.com/15770 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Tune down libpng in DM.Gravatar Mike Klein2017-05-09
| | | | | | | | | | | | | | Timing `out/dm --src gm --config srgb -w foo` on my desktop, - wall time drops from 3.72 -> 2.17 seconds; and - CPU time drops from 64.9 -> 27.9 seconds. So again, close to 2x speedup. (In exchange, the .pngs of our GMs grow from 57M to 73M.) Change-Id: I6e2e8c8bda6371e857c8db41ca3119402a9056ae Reviewed-on: https://skia-review.googlesource.com/16000 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Move SkPngEncoder into public APIGravatar Matt Sarett2017-05-09
| | | | | | | | | | Bug: 713862 Change-Id: I45068ed39affe41ffe0f29bf42c5ea1d9b0247ba Reviewed-on: https://skia-review.googlesource.com/15897 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Make SkColorFilter::appendStages() not fail.Gravatar Mike Klein2017-05-09
| | | | | | | | | | | | | | | | | | This makes SkColorFilter::appendStages() first try onAppendStages(), and if it's unimplemented or fails, fall back to filterSpan4f(). This also makes onAppendStages() private to try to ensure that appendStages() is now its only caller, ensuring everyone goes through this fallback path. The fallback uses the color filter transformed into the dst colorspace using our new SkColorSpaceXformer... that seem ok Matt? Change-Id: I4751a6859596fa4f7e844e69ef0d986f005b52c7 Reviewed-on: https://skia-review.googlesource.com/16031 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Avoid assertion in MSAA rendering buffer about indexed draw with zero index ↵Gravatar Brian Salomon2017-05-09
| | | | | | | | | | | | count Also add some GrMesh::validate() calls earlier to make future debugging easier. Previously this only asserted when the draws executed, now it asserts as soon as the draw is prepared in the op subclass. Bug: skia: Change-Id: Ibdd4488b9a9263f0ed337a2c8c6066bc36297001 Reviewed-on: https://skia-review.googlesource.com/16029 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add flag to avoid stencil buffers in SkiaGravatar Eric Karl2017-05-09
| | | | | | | | | | | | | | | Certain systems experience a leak in the GL driver associated with stencil buffers. Attempts to avoid the leak (while still using stencil buffers) dind't succeed. This patch adds a GrContextOption fAvoidStencilBuffers. This disables certain path rendering modes, as well as stencil based masking/clipping. Bug: 713854 Change-Id: Ifa6c0f2bd5ee395547bda9165d6c79d197ae8b8b Reviewed-on: https://skia-review.googlesource.com/15253 Commit-Queue: Eric Karl <ericrk@chromium.org> Reviewed-by: Eric Karl <ericrk@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* SkPerlinNoiseShader: handle pathological inputsGravatar Hal Canary2017-05-09
| | | | | | | | BUG=skia:6429 Change-Id: Ifc20c1f480c1396e40ab7fc3a3789aa7c2ae5d85 Reviewed-on: https://skia-review.googlesource.com/15896 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com>
* Convert color to dst (once) in color shadersGravatar Matt Sarett2017-05-09
| | | | | | | | | BUG=skia: Change-Id: Ideba16972b82fc26766349c808ae406e5ea23163 Reviewed-on: https://skia-review.googlesource.com/9418 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Matt Sarett <msarett@google.com>
* Add debug-only helper methods to get #ops & #clips per opListGravatar Robert Phillips2017-05-09
| | | | | | | | | These are being/will be used to determine the correct amout of memory to preallocate for ops & clips in the opLists. Change-Id: I98ebaec8a6e72a43d97101aca5fbc58264964ebd Reviewed-on: https://skia-review.googlesource.com/15882 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* [recipes] Remove inputs to BundleRecipes taskGravatar Eric Boren2017-05-09
| | | | | | | | | | This should enable deduplication. Bug: skia: Change-Id: I2be98f648acd666c420885f08377c256f9102a8f Reviewed-on: https://skia-review.googlesource.com/14651 Commit-Queue: Eric Boren <borenet@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com>
* Remove 'fDrawFace' from GrPipelineGravatar Robert Phillips2017-05-09
| | | | | | | | | This will, hopefully, unblock the roll. Change-Id: I2e33ccca7161334cdecd881e2699ae0c61ba2a31 Reviewed-on: https://skia-review.googlesource.com/16101 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Forward getGrContext in color space xform canvasGravatar Brian Osman2017-05-09
| | | | | | | | Bug: chromium:719664 Change-Id: I7477c1eb0479d5305233dc6a643280d88029bd17 Reviewed-on: https://skia-review.googlesource.com/15888 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* remove (possibly slow) call to refEncoded in getDeferredTextureImageDataGravatar Mike Reed2017-05-09
| | | | | | | | | | | | | | | - explicitly reject already-texture-backed and picture-backed Needed to add a virtual to image_base and generator to distinguish generators that can (or cannot) natively "generate" on the gpu (e.g. pictures) Bug: 646089 Change-Id: I3aea22f89b31009ecbb3bd50d88512e6532f0a0f Change-Id: I3aea22f89b31009ecbb3bd50d88512e6532f0a0f Reviewed-on: https://skia-review.googlesource.com/15765 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add radial gradient stage.Gravatar Herb Derby2017-05-09
| | | | | | | Change-Id: Ie1f9640f5149f21bd8b3b864ff8b176232e1b0a9 Reviewed-on: https://skia-review.googlesource.com/15461 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Herb Derby <herb@google.com>
* Roll recipe dependencies (trivial).Gravatar recipe-roller2017-05-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an automated CL created by the recipe roller. This CL rolls recipe changes from upstream projects (e.g. depot_tools) into downstream projects (e.g. tools/build). More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug. build: https://crrev.com/59b248f278e4828bbb0a8d8685975856a7f60509 Stop manually adding webkit_layout_tests if it's already configured src-side. (mcgreevy@chromium.org) https://crrev.com/ff38188006831a2f281b68c091a0c02f3fd51ec1 Migrate remaining chromium configs from depot_tools (machenbach@chromium.org) https://crrev.com/20950290930a4e7e2fb51f627b0066e883eefb3c Refactoring: rename obsolete v8 config (machenbach@chromium.org) https://crrev.com/4ac4debb7b303e5ce213acee4d0d6777299121be remote_run: Bump Kitchen, add LogDog tags. (dnj@chromium.org) https://crrev.com/f65b85259d62281f29e37ae28b002f6a98a486d8 Revert Kitchen bump. (dnj@chromium.org) https://crrev.com/577ed8c48dcad41653d0559a119abbb84f461afe remote_run: Decouple canary from Kitchen. (dnj@chromium.org) https://crrev.com/fa6566763ff505e21cb7a012ae31b363dc08aad6 Promote Win32 ASan to the main waterfall and remove Win SyzyASan. (ehmaldonado@chromium.org) https://crrev.com/671dc2edd993a46cb4d34621ed5e4c01b269d3a8 Enforce strict coverage for syzygy recipe module (phajdan.jr@chromium.org) depot_tools: https://crrev.com/e39a9a46be39aac5fad2d66cf11ccdd6f8b9f081 Migrate remaining chromium configs to build repo (machenbach@chromium.org) https://crrev.com/b4a79690367881c427c9c5adf614823a01fc9990 Add back helper method still used in build repo (machenbach@chromium.org) TBR=borenet@google.com Recipe-Tryjob-Bypass-Reason: Autoroller Bugdroid-Send-Email: False Change-Id: I0e5b52a9dac9408276d4adb021a20b1a6ec4c524 Reviewed-on: https://skia-review.googlesource.com/15883 Reviewed-by: Recipe Roller <recipe-roller@chromium.org> Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
* Implement disconnect function for GrVkGpuGravatar Greg Daniel2017-05-09
| | | | | | | | | | Apparently this was not added to Vk when it was added to GL. It may be the cause of a flutter error they are seeing. Bug: skia: Change-Id: I4d4e9d1817b308b6c4f01e83f712eb3437e2ad71 Reviewed-on: https://skia-review.googlesource.com/15887 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Minor sksl parser cleanupGravatar Ethan Nicholas2017-05-09
| | | | | | | | | | | | This adds a new method "checkNext" which is essentially a conditional nextToken(). This allows for some simplification of the parser code, but has no other effect. Bug: skia: Change-Id: I4e08fd5f2c69cbcb4c31fd936b3a65dc50347191 Reviewed-on: https://skia-review.googlesource.com/15881 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
* add a guide to contributing to SkJumperGravatar Mike Klein2017-05-08
| | | | | | | Change-Id: Icd40cf5eff3d2156a3ca00d7950059d5b77f48bf Reviewed-on: https://skia-review.googlesource.com/15890 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Added SkImage::MakeCrossContextFromEncoded"Gravatar Brian Salomon2017-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 83b1b3db36e8622f4bbc8c391d5c714e258d1e03. Reason for revert: unit test failing and asan leaks Original change's description: > Added SkImage::MakeCrossContextFromEncoded > > Designed for Flutter's threading architecture, with > an eye to being useful to other clients. Under the > hood, uses a new image generator class to lazily wrap > a texture for multiple GrContexts. > > Bug: skia: > Change-Id: I6c37b12c8ab5bce94b91190e5f0beb91d31ae81b > Reviewed-on: https://skia-review.googlesource.com/14180 > Commit-Queue: Brian Osman <brianosman@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,brianosman@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I1f0bf580aa0ea2d132e18b64ff610ddac9d073a7 Reviewed-on: https://skia-review.googlesource.com/15892 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* fixed InstanceProcessor SkSL codeGravatar Ethan Nicholas2017-05-08
| | | | | | | | Bug: skia:5935 Change-Id: I9ca0e8a7bd30886d8240e338eefbfab368935ac5 Reviewed-on: https://skia-review.googlesource.com/15627 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* "can we?" -> "do we want to?" for SkRasterPipelineBlitterGravatar Mike Klein2017-05-08
| | | | | | | | | | | | | | | | | There has been a supported() function in SkRasterPipelineBlitter.cpp for a long time that's becoming increasingly misnamed. That blitter ought to be able to handle all destination formats. This CL moves that logic outside to the creator of the blitter, changing it from "can we handle this format?" to "do we want to use this blitter for this format?". In other CLs I'm working to make creating a pipeline blitter never fail. Change-Id: Ie59fb8ec6e63d215d1baef439e464e8f0ab3ae4d Reviewed-on: https://skia-review.googlesource.com/15842 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Added SkImage::MakeCrossContextFromEncodedGravatar Brian Osman2017-05-08
| | | | | | | | | | | | | Designed for Flutter's threading architecture, with an eye to being useful to other clients. Under the hood, uses a new image generator class to lazily wrap a texture for multiple GrContexts. Bug: skia: Change-Id: I6c37b12c8ab5bce94b91190e5f0beb91d31ae81b Reviewed-on: https://skia-review.googlesource.com/14180 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Update SKP versionGravatar UpdateSKPs2017-05-08
| | | | | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR=update-skps@skia.org NO_MERGE_BUILDS Change-Id: I8919465322d3621689bcab4bb577b42b9fd736d7 Reviewed-on: https://skia-review.googlesource.com/15920 Reviewed-by: update-skps <update-skps@skia.org> Commit-Queue: update-skps <update-skps@skia.org>
* SkAdvancedTypefaceMetrics: pack fields betterGravatar Hal Canary2017-05-08
| | | | | | | | | | 64-bit pointers: 88 -> 80 bytes 32-bit pointers: 68 -> 64 bytes Change-Id: I2d6e186d15ad84a3b23bf8f6c816eaf482c3bdd5 Reviewed-on: https://skia-review.googlesource.com/15878 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* fix commented-out gaussianGravatar Mike Klein2017-05-08
| | | | | | | | | | | | | | The original was static inline float eval_gaussian(float x) { float factor = 1 - x; return sk_float_exp(-factor * factor * 4) - 0.018f; } Change-Id: I0590f9b4b41870a0145a4fb7aff5ce3fa4d4e412 Reviewed-on: https://skia-review.googlesource.com/15781 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Remove height functor for shadows and replace with plane equation paramsGravatar Jim Van Verth2017-05-08
| | | | | | | Change-Id: I948eceb2c58dc50468993dba54c209f18e440e48 Reviewed-on: https://skia-review.googlesource.com/15873 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* vk: don't re-check the primitive type for each batch of a meshGravatar Chris Dalton2017-05-08
| | | | | | | | Bug: skia: Change-Id: I00561d0a2d6296924ef0d8ee25fc7215832338d8 Reviewed-on: https://skia-review.googlesource.com/15832 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Revert "Revert "Re-enable deferred proxies in Chrome""Gravatar Robert Phillips2017-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 05814de6ba5087ad71f189d6413246ef1d518e4b. Reason for revert: Chrome layout test suppressions have landed Original change's description: > Revert "Re-enable deferred proxies in Chrome" > > This reverts commit 555c49c3479edf1692579c06a5c13c39d3741692. > > Reason for revert: layout tests > > Original change's description: > > Re-enable deferred proxies in Chrome > > > > Now that https://skia-review.googlesource.com/c/14605/ (Allow TextureSamplers to have null GrTexture pointer) has landed we should be able to re-enable deferred proxies in Chrome. > > > > Bug: 715488 > > Change-Id: Ibd38e5ddf0558b94f09e29f17837e6abfd22fa34 > > Reviewed-on: https://skia-review.googlesource.com/15252 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Robert Phillips <robertphillips@google.com> > > > > TBR=bsalomon@google.com,robertphillips@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: Ie90e64a2e4d5efc4b6909a04f8a862dd3a708d97 > Reviewed-on: https://skia-review.googlesource.com/15809 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I957e8e59af2b2f441c75bae2eda4dcd5ed82b34d Reviewed-on: https://skia-review.googlesource.com/15876 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Expand GrTextureProxy to handle highestFilterModeGravatar Robert Phillips2017-05-08
| | | | | | | | | | Once TextureProxies aren't instantiated in the TextureSamplers, the they will need to be able to supply this information. split out of: https://skia-review.googlesource.com/c/10484/ (Omnibus: Push instantiation of GrTextures later (post TextureSampler)) Change-Id: I66555c0746131f565862f7a30d54ff1d458d2062 Reviewed-on: https://skia-review.googlesource.com/15819 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Minimize computeTotalInverse()'s inputsGravatar Florin Malita2017-05-08
| | | | | | | | | The helper doesn't need a full context rec - it only looks at the CTM and external local matrix. Pass these explicitly instead. Change-Id: I6a5884f65cd383c2df0e8d83c9086789bd96f345 Reviewed-on: https://skia-review.googlesource.com/15870 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* GL: track enabled vertex arrays as a count rather than a maskGravatar Chris Dalton2017-05-08
| | | | | | | | Bug: skia: Change-Id: I63e70ab844a7e04df20165aba025b963efcafa9e Reviewed-on: https://skia-review.googlesource.com/15630 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* port ok to SkPngEncoderGravatar Mike Klein2017-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I can't tell you how excited I am to turn down the libpng settings... anything that saves me a few seconds is a nice quality of life win. This CL makes ok run in about half the time when producing .pngs. Profile running `ok gm srgb png` before: 10.59 s 16.5% 10.59 s longest_match 8.98 s 14.0% 8.98 s png_setup_paeth_row 8.93 s 13.9% 8.93 s skia_png_write_find_filter 7.75 s 12.1% 7.75 s deflate_slow 4.63 s 7.2% 4.63 s std::wait_until(...) const 959.00 ms 1.5% 959.00 ms SkPathRef::validate() const 935.00 ms 1.4% 935.00 ms sk_to_srgb_hsw ... After: 2.35 s 8.7% 2.35 s std::wait_until(...) const 1.70 s 6.2% 1.70 s longest_match 1.19 s 4.4% 1.19 s deflate_fast 931.00 ms 3.4% 931.00 ms SkPathRef::validate() const 898.00 ms 3.3% 898.00 ms sk_to_srgb_hsw ... Change-Id: I425c30b2ecd97a0e4a4392779de6301db473ee47 Reviewed-on: https://skia-review.googlesource.com/15547 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Matt Sarett <msarett@google.com>
* Separate lines added via post upload from original descriptionGravatar Ravi Mistry2017-05-08
| | | | | | | | | | BUG=skia:6598 NOTRY=true Change-Id: I23fa415788e91da01d33ab3ab912aa420636574c Reviewed-on: https://skia-review.googlesource.com/15869 Commit-Queue: Ravi Mistry <rmistry@google.com> Reviewed-by: Eric Boren <borenet@google.com>
* Update minimum non-ES OpenGL spec to 2.0.Gravatar Brian Salomon2017-05-08
| | | | | | | | | | | As a consequence of removing support for GLs lacking separate stencil settings our effective minimum GL version is 2.0. This formalizes that by explicitly failing if the version in the version string is lower. As a consequence we will always have wrapping stencil operations available. Bug: skia: Change-Id: Ibe302f72a063dbadc773bda811cc0d0f6c08c61a Reviewed-on: https://skia-review.googlesource.com/15610 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Remove support for GLs without separate stencil.Gravatar Brian Salomon2017-05-08
| | | | | | | | | | | As a consequence we no longer need GrDrawFace. This effectively raises the minimum bar for non-ES OpenGL to 2.0 as there is no extension that adds the GL 2.0 separate stencil functionality. GL_ATI_separate_stencil is close but it does not have glStencilMaskSeparate. Bug: skia: Change-Id: I36d17a69400c8beeacb6dab8d8c5c3317814cfe4 Reviewed-on: https://skia-review.googlesource.com/15603 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Add filtering and zlib-level options to SkPngEncoderGravatar Matt Sarett2017-05-08
| | | | | | | | | | Bug: skia:6409 Bug: 713862 Change-Id: If287e2bcad5af990fac11e9091305f45ec903dbf Reviewed-on: https://skia-review.googlesource.com/15647 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Revert "Presubmit: ensure empty line between CL title and description"Gravatar Ravi Mistry2017-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9518830650a45446756d7b621fc87e7a8ff52476. Reason for revert: <INSERT REASONING HERE> Original change's description: > Presubmit: ensure empty line between CL title and description > > Bug: skia: > Change-Id: If1b2d655e9be4b960f76d2d17ce1cf1126f7b2d4 > Reviewed-on: https://skia-review.googlesource.com/15624 > Reviewed-by: Eric Boren <borenet@google.com> > Commit-Queue: Eric Boren <borenet@google.com> > TBR=borenet@google.com,rmistry@google.com NOTRY=true # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I311ee790f152dbb8325214650838839f6821c995 Reviewed-on: https://skia-review.googlesource.com/15862 Reviewed-by: Ravi Mistry <rmistry@google.com> Commit-Queue: Ravi Mistry <rmistry@google.com>
* Re-land of "eliminated GrGLSLExpr".Gravatar Ethan Nicholas2017-05-08
| | | | | | | | | | | This change is exactly the same as the last time it was landed; I believe the underlying optimizer bug that was causing this to cause problems has been fixed by a prior CL. Bug: skia: Change-Id: I5436422f094ea758caa3cd69e9338db31b1f93fa Reviewed-on: https://skia-review.googlesource.com/15768 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Allow wrapped resources to have unique keysGravatar Brian Osman2017-05-08
| | | | | | | | | | | | | | | Previously, wrapped resources were never budgeted. Now we explicitly allow wrapped, unbudgeted resources with unique keys. This allows code that wraps (and re-wraps) external resources with a deterministic key to find the same wrapped resource - saving time and ensuring a single wrapped copy, to preserve state on the resource (like texture sampler state). Bug: skia: Change-Id: I1dd7642f1ed8bb6c620029d46203cf5cb6b3c160 Reviewed-on: https://skia-review.googlesource.com/15241 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* [Bazel] Omit bigrect GM for ASAN.Gravatar Ben Wagner2017-05-08
| | | | | | | | | | | | Added in https://skia-review.googlesource.com/c/14751/; known to fail float-cast-overflow check but forgot to omit in that CL. Bug: skia:4632 No-Try: true Change-Id: Ic62e0cbc00229ab3bdde60b3e7300fc66ad7d8e1 Reviewed-on: https://skia-review.googlesource.com/15815 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* GrTessellator AA: fix 1px wide paths.Gravatar Stephen White2017-05-08
| | | | | | | | | | | | | | Move 0 count check below the call to count outer polygons, so we don't abort on a path with outer but no inner geometry. This fixes the "thin_right_angle" and "thin_rect_and_triangle" samples when running GM:thinconcavepaths --pr tess. Change-Id: I9a75711787f729ce3a1d5313daa491098e397184 Reviewed-on: https://skia-review.googlesource.com/15661 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Remove Sk4fGradientInterval::fZeroRampGravatar Florin Malita2017-05-08
| | | | | | | | | | It's cheap enough to compute when needed, and we don't need it in hot loops anyway. Change-Id: Ib0242f98f8bee31bff939cfdc7356d51525092e4 Reviewed-on: https://skia-review.googlesource.com/15764 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* SkImage::isValidGravatar Brian Osman2017-05-08
| | | | | | | | | | | | Lets clients know if an image is drawable to a particular GrContext (or to CPU). Checks for abandoned GrContexts beneath GPU backed images, as well as context mis-match. Bug: skia: Change-Id: Ibe88c7ce8091f965c14f6023a3597be4b70c3f99 Reviewed-on: https://skia-review.googlesource.com/15801 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* jumper, finish blend modesGravatar Mike Klein2017-05-08
| | | | | | | | | | | | | | I've decided to ignore our existing CPU implementations and start from scratch, mostly referencing the GL ES 3.2 spec and w3 spec. This implementation ought to look a lot like the reference implementation I've written in gm/hsl.cpp, with the addition of handling alpha: unpremul, blend, re-premul with a simple SrcOver alpha. Change-Id: I38cf6be2dc66a6f46d7b18b91847f6933d2fab62 Reviewed-on: https://skia-review.googlesource.com/15316 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Re-enable deferred proxies in Chrome"Gravatar Robert Phillips2017-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 555c49c3479edf1692579c06a5c13c39d3741692. Reason for revert: layout tests Original change's description: > Re-enable deferred proxies in Chrome > > Now that https://skia-review.googlesource.com/c/14605/ (Allow TextureSamplers to have null GrTexture pointer) has landed we should be able to re-enable deferred proxies in Chrome. > > Bug: 715488 > Change-Id: Ibd38e5ddf0558b94f09e29f17837e6abfd22fa34 > Reviewed-on: https://skia-review.googlesource.com/15252 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ie90e64a2e4d5efc4b6909a04f8a862dd3a708d97 Reviewed-on: https://skia-review.googlesource.com/15809 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>