aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Revert "Delete SkGaussianEdgeShader"Gravatar Florin Malita2017-05-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 64790a3714467300848971aa153aca8cea91cf7b. Reason for revert: pending Android fix merge. Original change's description: > Delete SkGaussianEdgeShader > > No longer used. > > Change-Id: I65a61696060ca19f528066ea587e140798450e36 > Reviewed-on: https://skia-review.googlesource.com/18132 > Reviewed-by: Jim Van Verth <jvanverth@google.com> > Commit-Queue: Florin Malita <fmalita@chromium.org> > TBR=jvanverth@google.com,fmalita@chromium.org,reed@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: I88a428e942c78b1fc8e70501ba7fdda5727b2ab2 Reviewed-on: https://skia-review.googlesource.com/18156 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Speculative fix for SkPerlinNoiseShaderImpl::asFragmentProcessor leakGravatar Florin Malita2017-05-30
| | | | | | | | Change-Id: I9dfa0e825f944d6abf88abfdfd585f2d504ea4f6 Reviewed-on: https://skia-review.googlesource.com/18151 Commit-Queue: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Add aarch64 tail code.Gravatar Herb Derby2017-05-30
| | | | | | | Change-Id: I25f029604a04f5fc6c249a3817b0dd84379071be Reviewed-on: https://skia-review.googlesource.com/18149 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* [Reland] Relocate shaders to own dirGravatar Florin Malita2017-05-30
| | | | | | | | | | | Consolidate all shader impls under src/shaders/. (reland of https://skia-review.googlesource.com/c/17927/) Change-Id: I7918bdc1aafe842ed194412ba95b9ae53a2ec1d7 Reviewed-on: https://skia-review.googlesource.com/18146 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Delete SkGaussianEdgeShaderGravatar Florin Malita2017-05-30
| | | | | | | | | No longer used. Change-Id: I65a61696060ca19f528066ea587e140798450e36 Reviewed-on: https://skia-review.googlesource.com/18132 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* move perlinenoise2 into effectsGravatar Mike Reed2017-05-30
| | | | | | | | Bug: skia: Change-Id: I5c178bdc5901d15c6924b3fb1f29119ab3cc701d Reviewed-on: https://skia-review.googlesource.com/18131 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* simplify sse41::srcover_srgb_srgbGravatar Mike Klein2017-05-30
| | | | | | | | Most importantly, remove the undefined behavior implied by "delta". Change-Id: I8f9740804ec74dd40b049eafd4f0d51b36ce3237 Reviewed-on: https://skia-review.googlesource.com/18140 Reviewed-by: Herb Derby <herb@google.com>
* Add arm tail code.Gravatar Herb Derby2017-05-30
| | | | | | | | | | CQ_INCLUDE_TRYBOTS=skia.primary:Test-Android-Clang-Nexus10-CPU-Exynos5250-arm-Release-Android Change-Id: Ia0e9f32d0324e66c9d4812dbb156a2b858d49a13 Reviewed-on: https://skia-review.googlesource.com/18127 Commit-Queue: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* remove sse2::srcover_srgb_srgbGravatar Mike Klein2017-05-30
| | | | | | | Change-Id: Icc570d8a8f1df1dea202e1d234433491122b9b67 Reviewed-on: https://skia-review.googlesource.com/18135 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Don't pull private headers in SkOverdrawColorFilter.hGravatar Florin Malita2017-05-30
| | | | | | | Change-Id: I16254709ffaf6c85110964568ec9422a1ffbb970 Reviewed-on: https://skia-review.googlesource.com/18129 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Fix glDrawRangeElementsGravatar Chris Dalton2017-05-30
| | | | | | | | | | | | | | | | | | Adds explicit min/max index value fields to GrMesh. This eliminates the previous assumption that the index values were within the range [0..vertexCount-1]. In the pattern case we still maintain this assumption. Updates GrMesh to hide its fields and handle its new complexity using a "helper" interface instead. Adds a unit test for GrMesh. Bug: skia: Change-Id: Ia23de72d510f8827cee56072b727fb70a6e46b8d Reviewed-on: https://skia-review.googlesource.com/17964 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Restore SampleApp picture drawingGravatar Florin Malita2017-05-30
| | | | | | | | | (deleted unintentionally in https://skia-review.googlesource.com/c/15185/) Change-Id: I36111db7012ea7f72a5990b61bb4713d9250da34 Reviewed-on: https://skia-review.googlesource.com/18128 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Add GM to test the IgnoreTransform flag on blursGravatar Greg Daniel2017-05-30
| | | | | | | | Bug: skia: Change-Id: I2525daa83d78280e4be3b31b66dc4f13971af311 Reviewed-on: https://skia-review.googlesource.com/18066 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* bug fix in convert_with_pipeline()Gravatar Mike Klein2017-05-30
| | | | | | | | | | | | What do you supppose happens if we put an SkColorSpaceTransferFn on the stack, pass its address to SkRasterPipeline, then pop it off the stack? BUG=skia:6671 Change-Id: I17c777d9dc55a67cca6196a01c076a6be8283d3d Reviewed-on: https://skia-review.googlesource.com/18078 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Convert DstTexture to DstProxy (take 2)Gravatar Robert Phillips2017-05-29
| | | | | | | | | | | | | The last GrTexture-based TextureSampler::reset call must be removed before the TextureSamplers can become purely GrTextureProxy-backed Reland of: https://skia-review.googlesource.com/c/16908/ (Convert DstTexture to DstProxy) Split out of: https://skia-review.googlesource.com/c/10484/ (Omnibus: Push instantiation of GrTextures later (post TextureSampler)) Change-Id: I3a497b6a950fad899f23882c0a9552894ef640f8 Reviewed-on: https://skia-review.googlesource.com/17205 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revise system for checking for uninstantiated proxiesGravatar Robert Phillips2017-05-29
| | | | | | | | | | | | | | The new pattern is: we will "instantiate" pipelines at flush time at flush time we will only access the backing GrSurface by peeking If instantiation fails we should never try to access the GrSurfaces Change-Id: I87f7ff41bd0e84d9ca3dbdd61d3361d3d4ceefd6 Reviewed-on: https://skia-review.googlesource.com/17932 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Update SKP versionGravatar UpdateSKPs2017-05-28
| | | | | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR=update-skps@skia.org NO_MERGE_BUILDS Change-Id: I8285e9dcf65280e5712d140a7d17a0f99a40bca5 Reviewed-on: https://skia-review.googlesource.com/18084 Reviewed-by: update-skps <update-skps@skia.org> Commit-Queue: update-skps <update-skps@skia.org>
* Roll recipe dependencies (trivial).Gravatar recipe-roller2017-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. depot_tools: https://crrev.com/2e559c98e6de6730da99e4acf1ec112ec3607dca git-cl: remove unnecessary similarity notice (agable@chromium.org) https://crrev.com/c4c40d1b5a9a142a50e8b0a1afb24fa2ec05f9e8 git-cl: Print Rietveld deprecation warning (agable@chromium.org) https://crrev.com/568e5919442f1dd3a2b160dbe998d1f1489a09c9 gclient validate: allow None in deps_os values (phajdan.jr@chromium.org) https://crrev.com/3e6d7c1cbccdc1b7881cf27581488769a6edc22b gclient: remove support for $matching_files in hooks (phajdan.jr@chromium.org) https://crrev.com/bf72b593a2fac54e0ac7961be2706581ea47f7f9 gclient: remove support for From() (phajdan.jr@chromium.org) https://crrev.com/8db72efd6351a58a6a689c8db9b02aacfa39b8b7 gclient: enable syntax validation by default (phajdan.jr@chromium.org) https://crrev.com/58abadba2af26354f96035ad67b40ab3b97d63b7 Revert "gclient: enable syntax validation by default" (tandrii@chromium.org) https://crrev.com/b4f9d904734930d83bfbadcfc5d165becd6e3181 Revert "gclient: remove support for From()" (tandrii@chromium.org) https://crrev.com/004923399e12dfff8c4853a1331f39dc91f3e248 Revert "gclient: remove support for $matching_files in hooks" (tandrii@chromium.org) https://crrev.com/4f27802b5c6e1abfb6809006763149456496a3db Revert "gclient validate: allow None in deps_os values" (tandrii@chromium.org) https://crrev.com/35b298f0772d6dbec82c4a33c1e0c94aab9285bf gclient: remove support for $matching_files in hooks (reland #1) (phajdan.jr@chromium.org) https://crrev.com/7e9303ba19e4985f50d68ca1e8f938bb2e513cf4 gclient: remove support for From() (reland #1) (phajdan.jr@chromium.org) https://crrev.com/7c7b5592d84ce41c4b46fac6ddc4587f35989390 gclient: add --disable-syntax-validation escape hatch (phajdan.jr@chromium.org) https://crrev.com/b7e533360cc46f05cd35432d9cb64880b89eb176 gclient validate: schema fixes (patch #1) (phajdan.jr@chromium.org) https://crrev.com/56e4ad939b3c06e2915faea0be14d34473bc3602 Add messages in gclient-new-workdir.py (wychen@chromium.org) https://crrev.com/b02daf0bf9737168491585632d9f9dd5d1c7b4a8 git-cl: use private instead of draft (agable@chromium.org) https://crrev.com/56664461ae794acee098f85d8c33b438909952f2 Support btrfs snapshot in gclient-new-workdir.py (wychen@chromium.org) https://crrev.com/1b9a43aab385070fd75263a9e0f4b4312b5f510e Remove special Cygwin PATH manipulation from .bat. (dnj@chromium.org) https://crrev.com/1ba610bfe2489a0c9cc5750dd49841d54dd31148 gclient validate: dump more details about unexpected AST nodes (phajdan.jr@chromium.org) https://crrev.com/5dd7cd6e8fe33118cc9dbbe40412ed3c0f2c7003 [led] add LUCI editor to depot_tools. (iannucci@chromium.org) https://crrev.com/fb4f1b65e6005e5729c72bbdda86eca30ad3eebd [led] Roll led. (iannucci@chromium.org) recipe_engine: https://crrev.com/5da7e1fbc1f0e8b14d0ac6c1dc770ce9ca39d6ac Remove "Recipe Roll Downstream Tester" builder (nodir@chromium.org) TBR=borenet@google.com Recipe-Tryjob-Bypass-Reason: Autoroller Bugdroid-Send-Email: False Change-Id: I92a1c7d8c7e30b74d6f09f9a96233c268da53f89 Reviewed-on: https://skia-review.googlesource.com/18073 Reviewed-by: Recipe Roller <recipe-roller@chromium.org> Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
* Add casts for SkColor constant macros.Gravatar danakj2017-05-26
| | | | | | | | | | | | This ensures the compiler knows they are SkColors and not "int" which can't be implicitly casted when you end up with a reference to it. Bug: skia: 6696 Change-Id: Ieb6a2270d7d01df279d55e0bad7a793a8edd8658 Reviewed-on: https://skia-review.googlesource.com/18081 Commit-Queue: danakj chromium <danakj@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Hide ctors of SkShader, SkImage & SkColorSpaceGravatar Florin Malita2017-05-26
| | | | | | | | | To prevent external clients from subclassing. Change-Id: I60a3833bf64019aea2f537850ca2a1ae38bb8767 Reviewed-on: https://skia-review.googlesource.com/18038 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* no sprite blitters support gamut conversionGravatar Mike Klein2017-05-26
| | | | | | | | | | | This fixes the None/Low bitmap filtering in gamut GM. BUG=skia:6679 Change-Id: Ic6e0efa6a23b537aea69b4beb24f3c8b8c6ca347 Reviewed-on: https://skia-review.googlesource.com/17923 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* Add tests for tail handling in SkJumper.Gravatar Herb Derby2017-05-26
| | | | | | | Change-Id: Ib4ecc33dc9552c16b5530359cd3649487e70bbed Reviewed-on: https://skia-review.googlesource.com/18067 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Reduce tree depth on iOS tooGravatar Brian Osman2017-05-26
| | | | | | | | Bug: skia:6627 Change-Id: Ib92b62bf1191170a46e63f61fa9502ca2f9ee771 Reviewed-on: https://skia-review.googlesource.com/18072 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Really work around iOS varying limit in GLPrograms testGravatar Brian Osman2017-05-26
| | | | | | | | | Bug: skia:6627 Change-Id: I80142f5288e1c6f59f6add3a5a71ab90da90d3cc Reviewed-on: https://skia-review.googlesource.com/18069 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* wait for DM status thread to exit on iOSGravatar Mike Klein2017-05-26
| | | | | | | | CQ_INCLUDE_TRYBOTS=skia.primary:Test-iOS-Clang-iPadPro-GPU-GT7800-arm64-Debug,Test-iOS-Clang-iPhone6-GPU-GX6450-arm64-Debug,Test-iOS-Clang-iPhone7-GPU-GT7600-arm64-Debug Change-Id: I0e7491a6aaad08e969ceaabae49cbda718ea4be8 Reviewed-on: https://skia-review.googlesource.com/18065 Reviewed-by: Stephan Altmueller <stephana@google.com>
* Explicitly check edge count >= 2 in non-debug buildGravatar Yuqian Li2017-05-26
| | | | | | | | | | | We also preserve the check in debug mode that the count should never be 1 when the path is convex. Bug: skia:6684 Change-Id: I4d4c9ad9f9d704e94bbe51f10a96f8b3066afaa1 Reviewed-on: https://skia-review.googlesource.com/17983 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Faster and more accurate blit_row_s32a_opaque for ARMGravatar Matteo Franchin2017-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change ARM implementation of alpha blending to work on 8 pixels at a time (using NEON). Also improve the accuracy of alpha blending by using a formula based on SkMulDiv255Round rather than SkPMSrcOver. Note that a number of variations of this code were considered. Here are some notes: - A 16 pixels at a time version was considered. This performs well for the case of extreme alpha (all-opaque or all-transparent pixels), but performs worst than the 8 pixels version when there are frequent transitions of alpha. Also gcc 6.2.1 seems to have troubles with register pressure when using this version. - If the branch to detect the fully-opaque or fully-transparent cases is removed, then the performance increases significantly for images which are all partially transparent (especially on ARM Cortex A72), but can significantly decrease for images that are almost fully opaque or fully transparent. This implementation is a compromise to the effects described above. This patch produces a ~10% improvement on the nanobench's sub-scores repeatTile_BGRA_8888_A, constXTile_MM_filter_trans, constXTile_CC_trans, constXTile_RR_filter_trans when running on ARM Cortex A72. Improvements of greater magnitude (20% to 30%) are observed when running on ARM Cortex A53. CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I1f0c9f549057613bbffd26e6651f3beeb0019af9 Bug: skia: Reviewed-on: https://skia-review.googlesource.com/16520 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Fix two more drawVertices "bugs"Gravatar Brian Osman2017-05-26
| | | | | | | | | | | | | | | | | | | 1) Prior to SkVertices, drawing with local coords but no shader triggered wireframe mode (as if no local coords were supplied, and assuming no colors). I find the wireframe thing to be strange, but restore that behavior to match CPU backend. 2) More importantly: If we *do* fall into the wireframe mode, make sure to not *also* draw in non-wireframe. Yesterday's bugfix to paint conversion caused those kinds of draws to draw wireframe, then draw in fill mode on top. Bug: skia: Change-Id: Ie579b54480b4488a09c207fecbbe3badbddc5d68 Reviewed-on: https://skia-review.googlesource.com/18032 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Delete onChooseBlitProcs() and related codeGravatar Florin Malita2017-05-26
| | | | | | | | | | | | All dead code now. Change-Id: I3d88103fef90d9e2ceee8b13db143ac9704689f5 Reviewed-on: https://skia-review.googlesource.com/18034 Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Revert "Remove (now-dead) SK_LEGACY_SWEEP_GRADIENT code"Gravatar Brian Osman2017-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 04d22c04838fb312aa5ecc770299aff31076e7e3. Reason for revert: Seems likely that this is failing Android roll. Original change's description: > Remove (now-dead) SK_LEGACY_SWEEP_GRADIENT code > > Behold the first raster pipeline-only gradient! > > Change-Id: Ib6f53224e4ff9506aafdae1d2303102fc5235dfc > Reviewed-on: https://skia-review.googlesource.com/17982 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Reviewed-by: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com,fmalita@chromium.org,reed@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: I69b8a46ec4879202b72c23979a21065c1ffbd093 Reviewed-on: https://skia-review.googlesource.com/18023 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Fix resource and skp paths in Android viewerGravatar Brian Salomon2017-05-26
| | | | | | | | | Docs-Preview: https://skia.org/?cl=18037 Change-Id: If92e561c6c24de1f51f81477d89b927e10308f13 Reviewed-on: https://skia-review.googlesource.com/18037 Reviewed-by: Derek Sollenberger <djsollen@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* avoid rebuilding pipeline w/ only tricolorsGravatar Mike Reed2017-05-26
| | | | | | | | | | patch_primitive: 2.0 --> 1.4 Bug: skia: Change-Id: Ia43c31873b9438332c94958232f6367240ba9a62 Reviewed-on: https://skia-review.googlesource.com/18030 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Initialize rects in SkValidatingReadBuffer readRect & readIRect on failureGravatar Robert Phillips2017-05-26
| | | | | | | | | BUG: 726199 Change-Id: I2afeebbd2240e1c2f3b7d7298cb11572eef18acd Reviewed-on: https://skia-review.googlesource.com/17984 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Only support SkVertices in GrDrawVerticesOp and GrRenderTargetContextGravatar Brian Osman2017-05-26
| | | | | | | | | | | | Allow overriding the primitive type at draw time, so everyone can funnel through the same code path. Simplifies the color array type logic, and saves one memcpy (of indices) in the drawWireframe case. Bug: skia: Change-Id: I46653d34169842b9b5304cff48d804b2a9ace529 Reviewed-on: https://skia-review.googlesource.com/17783 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Unexport private SkShader classesGravatar Florin Malita2017-05-26
| | | | | | | | | | Alternative to https://skia-review.googlesource.com/c/18025/: these subclasses are private, we shouldn't need to SK_API-tag them. Change-Id: I94fc38e76ee4468132e41ab16f21ae6ad61fe1f2 Reviewed-on: https://skia-review.googlesource.com/18029 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* rasterpipeline:Gravatar Mike Reed2017-05-26
| | | | | | | | | | | | | | + only dither if the paint asks for it - don't special case if the shader is a gradient guard: SK_SUPPORT_LEGACY_RASTERPIPELINE Bug: skia: Change-Id: I7f0c101049e5cb32a80306dcfff3bc21bcf318be Reviewed-on: https://skia-review.googlesource.com/17931 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Tag CodecSrc bitmaps with standard color spacesGravatar Matt Sarett2017-05-26
| | | | | | | | | | | | | Tests were previously dependent on the fact that drawBitmap calls were using the legacy sprite blitters. Now these tests are blocking the change that fixes drawBitmap behavior. https://skia-review.googlesource.com/c/17923/ Bug: skia: Change-Id: Ia9e5244243f18680d7593b0fa9de942dbbeeeb1d Reviewed-on: https://skia-review.googlesource.com/18027 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Matt Sarett <msarett@google.com>
* Add method to GrContext to purge unlocked resources.Gravatar Derek Sollenberger2017-05-26
| | | | | | | | | | | Beyond setting the total cache limits this method enables clients to request to purge a specific number of bytes, as well as specify their preference to purge scratch resources over resources of other types. Change-Id: I9259d5544d34251575d77eebe599388f213ff3ce Reviewed-on: https://skia-review.googlesource.com/17987 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* Create blacklist for new SKP repositoryGravatar Ravi Mistry2017-05-26
| | | | | | | | | | | BUG=skia:6694 NOTREECHECKS=true Change-Id: Ic7eeda7086e51a259f961351fec5a06d1f8fa6ec Reviewed-on: https://skia-review.googlesource.com/18028 Commit-Queue: Ravi Mistry <rmistry@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* add SK_API to SkShaderBaseGravatar Mike Klein2017-05-26
| | | | | | | | | | | | | Ought to fix Chrome roll: warning C4275: non dll-interface class 'SkShaderBase' used as base for dll-interface class 'SkEmptyShader' etc. May fix Android too? Change-Id: Ic8ff988b9000c484aa54959e49a1ff17e5635340 Reviewed-on: https://skia-review.googlesource.com/18025 Reviewed-by: Florin Malita <fmalita@chromium.org>
* Revert "Update clearOp for split-OpList world (take 2)"Gravatar Mike Klein2017-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3fdd0bf2d90b1b82c1ac3aa982bdca600de7f4a8. Reason for revert: Chrome roll dryrun? Original change's description: > Update clearOp for split-OpList world (take 2) > > It would reduce a lot of noise if the GrRenderTargetOpList kept a pointer to the GrCaps but, for now, I'm trying to shrink the GrRTOpList, not expand it. > > Reland of: https://skia-review.googlesource.com/c/17323/ (Update clearOp for split-OpList world) > > Change-Id: I97f3fb81e6258d430e7f7cf1ea8bd51a392f9f47 > Reviewed-on: https://skia-review.googlesource.com/17830 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: Ib70285bb484a1ed8babaa519c74bfdf619313806 Reviewed-on: https://skia-review.googlesource.com/18024 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Revert "Remove (now-dead) SK_LEGACY_SWEEP_GRADIENT code"Gravatar Mike Klein2017-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 04d22c04838fb312aa5ecc770299aff31076e7e3. Reason for revert: Android roll? junit.framework.AssertionFailedError: res/drawable/vector_icon_gradient_1.xml: totalDiffPixelCount is 123 Original change's description: > Remove (now-dead) SK_LEGACY_SWEEP_GRADIENT code > > Behold the first raster pipeline-only gradient! > > Change-Id: Ib6f53224e4ff9506aafdae1d2303102fc5235dfc > Reviewed-on: https://skia-review.googlesource.com/17982 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Reviewed-by: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com,fmalita@chromium.org,reed@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: I328585f5412068f4eff1d0a2a6083cb4c1a3c078 Reviewed-on: https://skia-review.googlesource.com/18022 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Revert "Relocate shaders to own dir"Gravatar Stan Iliev2017-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit fabe0b26d05624ce7374f6ca89bd66df6142534e. Reason for revert: Last android roll failed with "external/skia/src/effects/SkGaussianEdgeShader.h:11:10: fatal error: 'SkShaderBase.h' file not found" Original change's description: > Relocate shaders to own dir > > Consolidate all shader impls under src/shaders/. > > Change-Id: I450e37541214704c1ad9e379d9d753b7cc62fac3 > Reviewed-on: https://skia-review.googlesource.com/17927 > Commit-Queue: Florin Malita <fmalita@chromium.org> > Reviewed-by: Herb Derby <herb@google.com> > TBR=mtklein@google.com,herb@google.com,fmalita@chromium.org,reed@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: Idbb2b75053969df1dad9d8ce0217cd39189b9ddb Reviewed-on: https://skia-review.googlesource.com/18020 Reviewed-by: Stan Iliev <stani@google.com> Commit-Queue: Stan Iliev <stani@google.com>
* SkPDF: assert premultiplied bitmaps are valid in debug.Gravatar Hal Canary2017-05-25
| | | | | | | Change-Id: I5feeee9a02199c6f4aa91c67e19844e022175d23 Reviewed-on: https://skia-review.googlesource.com/17993 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* force SkRasterPipeline when using complex blendsGravatar Mike Klein2017-05-25
| | | | | | | | | | | | | | | | | | | | Looks like we're faster than legacy pretty much across the board. out/nanobench -m Hue Saturation Luminosity Color\$ Color_aa\$ --config 8888 -q --ms 2000 Xfermode_Luminosity 80128.68 -> 27189.83 Xfermode_Luminosity_aa 18001.46 -> 14449.67 Xfermode_Color 183520.09 -> 27448.49 Xfermode_Color_aa 34257.75 -> 14694.85 Xfermode_Saturation 80323.96 -> 36449.01 Xfermode_Saturation_aa 19605.81 -> 18576.62 Xfermode_Hue 125866.82 -> 36611.03 Xfermode_Hue_aa 25318.00 -> 18489.33 Change-Id: I842b8f53fb356bf1a5e81502be88e4b34d4ad0dc Reviewed-on: https://skia-review.googlesource.com/17992 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Remove unused PM4f blittersGravatar Florin Malita2017-05-25
| | | | | | | | Change-Id: I19106b70ba19bffb04ae0517225fce2169ab5f33 Reviewed-on: https://skia-review.googlesource.com/17990 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Reed <reed@google.com>
* Add tail handling for SSE* to SkJumper.Gravatar Herb Derby2017-05-25
| | | | | | | Change-Id: Icb9d385333082de2f99b7a25cfd7251717e3f663 Reviewed-on: https://skia-review.googlesource.com/17580 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Herb Derby <herb@google.com>
* Relocate shaders to own dirGravatar Florin Malita2017-05-25
| | | | | | | | | Consolidate all shader impls under src/shaders/. Change-Id: I450e37541214704c1ad9e379d9d753b7cc62fac3 Reviewed-on: https://skia-review.googlesource.com/17927 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* Revert "Clear atlas textures at creation in Chrome"Gravatar Brian Salomon2017-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8785df15fe5a57651597d138d3c5aea0ffe3f661. Reason for revert: Chrome bug Bug: chromium:726226 Original change's description: > Clear atlas textures at creation in Chrome > > Bug: chromium:656320 > Change-Id: Ia65274aa733f199be188579821e745920493aefc > Reviewed-on: https://skia-review.googlesource.com/17824 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> > TBR=bsalomon@google.com,robertphillips@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:656320 Change-Id: Ibc4dd7f184866b58481f2dc7e7e88da9169e7adc Reviewed-on: https://skia-review.googlesource.com/17988 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Fix two bugs with drawVertices on GPUGravatar Brian Osman2017-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | 1) In SkGpuDevice.cpp, the SkVertices refactor had a copy-paste error when moving the paint initialization code into the helper function. This caused draws with texs (but no colors, and no shader) to fail to draw. Previously (and with this change) that draws solid filled triangles. This is still different from CPU (which draws outlines). This is an odd edge case, but it's also the easiest way to create the second bug... 2) In GrDrawVerticesOp.cpp, we always claimed to have SkColor colors. That's only true if the SkVertices has colors, otherwise we use the paint's color, which is GrColor. Normally, this doesn't matter, because we'll use uniform color which is always GrColor. But if you induce batching (and the meshes have different colors), we expand the per-mesh color to a per-vertex color. Then, the geo proc code thinks that those per-vertex colors are SkColors, and swaps the red and blue channels, leading to incorrect results. Bug: skia: Change-Id: I3401e030d4ffea8666efd02e20a5fdedcfbd8485 Reviewed-on: https://skia-review.googlesource.com/17986 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Osman <brianosman@google.com>