aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
Commit message (Collapse)AuthorAge
...
* Revert "Revert "SkRegion: more robust validation""Gravatar Hal Canary2017-06-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 7f4124058eda42e8379f2e979fabc339b8580348. Original change's description: > Revert "SkRegion: more robust validation" > > This reverts commit 711450e948b9900011dc0d474f82bf7bc9913259. > > Reason for revert: speculative revert to fix chrome roll. > > Original change's description: > > SkRegion: more robust validation > > > > BUG=oss-fuzz:1864 > > Change-Id: I4c3d3c4c7b0717399fe16f227e032682b13ebc74 > > Reviewed-on: https://skia-review.googlesource.com/20322 > > Reviewed-by: Cary Clark <caryclark@google.com> > > Commit-Queue: Hal Canary <halcanary@google.com> TBR=halcanary@google.com,caryclark@google.com,reed@google.com Change-Id: I1e5500cb83adeeda544282577ce55812e1b5d682 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: oss-fuzz:1864 Reviewed-on: https://skia-review.googlesource.com/20501 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Add a concat method to SkTInternalLListGravatar Chris Dalton2017-06-21
| | | | | | | | Bug: skia: Change-Id: I3d62aff691f6cc08b7995bd72dbfd6289c803c6a Reviewed-on: https://skia-review.googlesource.com/20380 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "SkRegion: more robust validation"Gravatar Hal Canary2017-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 711450e948b9900011dc0d474f82bf7bc9913259. Reason for revert: speculative revert to fix chrome roll. Original change's description: > SkRegion: more robust validation > > BUG=oss-fuzz:1864 > Change-Id: I4c3d3c4c7b0717399fe16f227e032682b13ebc74 > Reviewed-on: https://skia-review.googlesource.com/20322 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Hal Canary <halcanary@google.com> TBR=halcanary@google.com,caryclark@google.com,reed@google.com Change-Id: I95cbbf064db6ea7ef74a757bca058ba8de20d87b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: oss-fuzz:1864 Reviewed-on: https://skia-review.googlesource.com/20452 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* remove unused SkFilterProcsGravatar Mike Reed2017-06-21
| | | | | | | | | CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Bug: skia: Change-Id: I7f9abb3ecb1c7b4fd18a703198c54c6d8f5e1ef7 Reviewed-on: https://skia-review.googlesource.com/20429 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* SkRegion: more robust validationGravatar Hal Canary2017-06-21
| | | | | | | | BUG=oss-fuzz:1864 Change-Id: I4c3d3c4c7b0717399fe16f227e032682b13ebc74 Reviewed-on: https://skia-review.googlesource.com/20322 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Add SkCopyPixelsMode argument to SkMakeImageInColorSpaceGravatar Brian Osman2017-06-20
| | | | | | | | | | | Deferred rendering in Android will need the ability to use this in kIfMutable mode. Bug: skia: Change-Id: I5194f2c50f9d17351fdab49373ca9bc1e80cf586 Reviewed-on: https://skia-review.googlesource.com/20157 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* factor out hexadecimal constants.Gravatar Hal Canary2017-06-19
| | | | | | | | | | Now we don't have to rely on the linker to de-duplicate so many gHex[] constants. Change-Id: Ia86d3a92648415afdb8d29499b4faded5ed05c7d Reviewed-on: https://skia-review.googlesource.com/20180 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* Disable dithering of const paintsGravatar Florin Malita2017-06-19
| | | | | | | | | | | | ... except for 565. Change-Id: I8ab633661c54583478234a46942ef804eb74a619 Reviewed-on: https://skia-review.googlesource.com/19880 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Herb Derby <herb@google.com>
* remove unused mode parameter from SkMergeImageFilterGravatar Mike Reed2017-06-19
| | | | | | | | Bug: skia: Change-Id: Iaa46aaef130a337987c3528685f59c56387d4a7d Reviewed-on: https://skia-review.googlesource.com/20210 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* imagefilters should take const arrayGravatar Mike Reed2017-06-19
| | | | | | | | Bug: skia: Change-Id: I6f069c843ab27b41c4d1e87f76130e2ba2daf048 Reviewed-on: https://skia-review.googlesource.com/20211 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add a verbs iterator to SkPathPrivGravatar Chris Dalton2017-06-17
| | | | | | | | Bug: skia: Change-Id: If846eeac2722b67a80266f01ede7ef03ef027ac8 Reviewed-on: https://skia-review.googlesource.com/20027 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* support g8 and 4444 in SkRPBlitterGravatar Mike Klein2017-06-17
| | | | | | | | | BUG=skia:6766 Change-Id: I1bf8720cac24092352fd99d8d509252a10270b54 Reviewed-on: https://skia-review.googlesource.com/20020 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Trim gEntries down from 24K to 3K.Gravatar Mike Klein2017-06-17
| | | | | | | | | Today gCount maxes out at 66, so 128 seems like plenty of room for now. Change-Id: Id29d7a0232047d07a5ea7c43e4f2d874f055165a Reviewed-on: https://skia-review.googlesource.com/19740 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Reed <reed@google.com>
* ICC: SkICC::WriteToICC Description Tag is function of inputGravatar Hal Canary2017-06-16
| | | | | | | | BUG=skia:6720 Change-Id: I038079a6e15f884eb77b84d9c7c75f6b7fbedd37 Reviewed-on: https://skia-review.googlesource.com/20152 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* Improve computeMatrices singular matrix handling.Gravatar Ben Wagner2017-06-15
| | | | | | | | | | | | | | | The existing singular matrix detection in computeMatrices is sufficient but not necessary. Since compute matrices is already doing a QR decomposition, use that to determine singularity instead. This is both faster and more accurate than the previous method for the common case. BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=1305085 Change-Id: Iccef8368527b45e4eb565eddbebbbcf41ca66a2c Reviewed-on: https://skia-review.googlesource.com/20054 Reviewed-by: Lee Salzman <lsalzman@mozilla.com> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Revert "explore always using SkRasterPipeline for color space transforms"Gravatar Mike Klein2017-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 58564425e5acb5911cc3719f9c1e39190cc829b8. Reason for revert: iOS Original change's description: > explore always using SkRasterPipeline for color space transforms > > On my trashcan, bench times change: mostly slowdowns, some speedups. > On the other hand, this cuts about 270K of code out of Skia. > > Change-Id: Ib1069792508ced361c11ea809b0b8187f5e28a5c > Reviewed-on: https://skia-review.googlesource.com/19744 > Reviewed-by: Matt Sarett <msarett@google.com> > Commit-Queue: Mike Klein <mtklein@chromium.org> TBR=mtklein@chromium.org,msarett@google.com Change-Id: I26469e174f0281597ac5720ec790686ef3fbb4e0 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/20036 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Clean up GrResourceProvider usageGravatar Robert Phillips2017-06-15
| | | | | | | | | | | | | The only substantive changes are the removal of GrProxy instantiation in: SkGpuBlurUtils::GaussianBlur GrSimpleTextureEffect::Make* Change-Id: I10970609693bd6ff5b3a3c21b41d82642bb277bc Reviewed-on: https://skia-review.googlesource.com/19965 Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* explore always using SkRasterPipeline for color space transformsGravatar Mike Klein2017-06-15
| | | | | | | | | | On my trashcan, bench times change: mostly slowdowns, some speedups. On the other hand, this cuts about 270K of code out of Skia. Change-Id: Ib1069792508ced361c11ea809b0b8187f5e28a5c Reviewed-on: https://skia-review.googlesource.com/19744 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Revert "use pipeline for non-opt xfermodes""Gravatar Mike Reed2017-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4f8c695736c8ae4fed2190a8e1301a4f4a979898. Reason for revert: suppression re-landed in chrome Original change's description: > Revert "use pipeline for non-opt xfermodes" > > This reverts commit e93cf97175d348ce1400762bdd8d9acabdd29766. > > Reason for revert: unblock Chrome roll > > Original change's description: > > use pipeline for non-opt xfermodes > > > > Produces slightly different results for Hue, Saturation, Color, Luminosity, > > seemingly around the aa edging. > > > > Bug: skia: > > Change-Id: I6364818c9788863e5fad6d14cad4797d073dbea3 > > Reviewed-on: https://skia-review.googlesource.com/19554 > > Reviewed-by: Mike Klein <mtklein@google.com> > > Commit-Queue: Mike Reed <reed@google.com> > > TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com > > Change-Id: Ib85a51753d21ce778fa5cfedd6b7d1b5b2b87096 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/19745 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Mike Klein <mtklein@chromium.org> TBR=mtklein@chromium.org,mtklein@google.com,fmalita@chromium.org,reed@google.com Change-Id: I1201b5abae1514edf9143927064ce060095592f4 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/19760 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "use pipeline for non-opt xfermodes"Gravatar Mike Klein2017-06-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e93cf97175d348ce1400762bdd8d9acabdd29766. Reason for revert: unblock Chrome roll Original change's description: > use pipeline for non-opt xfermodes > > Produces slightly different results for Hue, Saturation, Color, Luminosity, > seemingly around the aa edging. > > Bug: skia: > Change-Id: I6364818c9788863e5fad6d14cad4797d073dbea3 > Reviewed-on: https://skia-review.googlesource.com/19554 > Reviewed-by: Mike Klein <mtklein@google.com> > Commit-Queue: Mike Reed <reed@google.com> TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com Change-Id: Ib85a51753d21ce778fa5cfedd6b7d1b5b2b87096 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/19745 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Retract GrTexture*.h & GrRenderTarget*.h from other headersGravatar Robert Phillips2017-06-13
| | | | | | | | | This does push some additional work (& includes) into the .cpp files. Change-Id: I27c847e371802270d13594dcc22aae44039990bb Reviewed-on: https://skia-review.googlesource.com/19660 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* use pipeline for non-opt xfermodesGravatar Mike Reed2017-06-13
| | | | | | | | | | | Produces slightly different results for Hue, Saturation, Color, Luminosity, seemingly around the aa edging. Bug: skia: Change-Id: I6364818c9788863e5fad6d14cad4797d073dbea3 Reviewed-on: https://skia-review.googlesource.com/19554 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Revert "inline common modecolorfilters""Gravatar Mike Reed2017-06-13
| | | | | | | | | | | | | inline commone modecolorfilters This reverts commit 4049dffaa8392f6cebab3dd0b9f12fd1eaef4ede. Bug: skia: Change-Id: I8887cc47b2c92da7b6f83548221b7d65958cf01f Reviewed-on: https://skia-review.googlesource.com/19561 Commit-Queue: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Revert "inline common modecolorfilters"Gravatar Mike Klein2017-06-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c8b6828d4f172f7b5735dbc5e26a33c53a54e94f. Reason for revert: looks like this messed up colorcomposefilter_wacky and colorcomposefilter_alpha. I suspect we're missing a swap_rb or two. Original change's description: > inline common modecolorfilters > > *seems* like we won't trigger layout tests, since chrome only uses Src, SrcIn and Modulate. > Bug: skia: > Change-Id: Ieae7e85bd3f2d23278b0405c2a5d64dbad1e0739 > Reviewed-on: https://skia-review.googlesource.com/19551 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Mike Klein <mtklein@chromium.org> TBR=mtklein@chromium.org,mtklein@google.com,reed@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Change-Id: I7fc28e0f1e65c69be328ade32fbef078dbe99402 Reviewed-on: https://skia-review.googlesource.com/19555 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* inline common modecolorfiltersGravatar Mike Reed2017-06-12
| | | | | | | | | *seems* like we won't trigger layout tests, since chrome only uses Src, SrcIn and Modulate. Bug: skia: Change-Id: Ieae7e85bd3f2d23278b0405c2a5d64dbad1e0739 Reviewed-on: https://skia-review.googlesource.com/19551 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Combine duplicate code in preparing clipRgn for fill_pathGravatar Yuqian Li2017-06-12
| | | | | | | | Bug: skia: Change-Id: I52ed98491457aa426e2bb74a29131f4a20330017 Reviewed-on: https://skia-review.googlesource.com/19341 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Cary Clark <caryclark@google.com>
* make make{SRGB,Linear}Gamma() constGravatar Mike Klein2017-06-12
| | | | | | | Change-Id: If20a43a905ae65643d071978b345d9ff09c04cf1 Reviewed-on: https://skia-review.googlesource.com/19541 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* remove dead code associated with SK_SUPPORT_LEGACY_RASTERPIPELINEGravatar Mike Reed2017-06-12
| | | | | | | | | | | | | Now we just look at the paint to decide if the user wants to dither. Needs this to land first: https://skia-review.googlesource.com/c/19448/ Bug: skia: Change-Id: I31940696e114922bcc8fb9ca3c24c2eb0a622800 Reviewed-on: https://skia-review.googlesource.com/19496 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Reland DeferredTextureImageData low-bit-depth/dithering supportGravatar Eric Karl2017-06-12
| | | | | | | | | | | | | Cause DeferredTextureImageData functionality to support low bit depth (4444, 565) image formats (with dithering). Updated to handle colorspace + 4444 colortype correctly. Bug: 720105 Change-Id: Ib7e14d937849f4f6b08fda6992a240bb203d0089 Reviewed-on: https://skia-review.googlesource.com/19094 Commit-Queue: Eric Karl <ericrk@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Convert SkClassifyCubic to double precisionGravatar Chris Dalton2017-06-12
| | | | | | | | | | | | | Even though it's in homogeneous coordinates, we still get unfortunate artifacts if this math is not done in double precision. Prioritizing correctness for now; we can revisit in the future as the need for performance dictates. Bug: skia: Change-Id: If416ef6b70291f1454fcb9f7630d1108644ac2a5 Reviewed-on: https://skia-review.googlesource.com/19501 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* remove unneeded proc fieldsGravatar Mike Reed2017-06-12
| | | | | | | | | CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Bug: skia: Change-Id: Ibf997c8d19a045d41d3e92b8db63c36f8fa10b3e Reviewed-on: https://skia-review.googlesource.com/19441 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* only SkHalfToFloat_finite_ftz(uint64_t hs) is calledGravatar Mike Klein2017-06-12
| | | | | | | | | This just cleans up an unused half->float entry point. Change-Id: I7b869d3fd049d807453745c3cca4eab1162848d8 Reviewed-on: https://skia-review.googlesource.com/19451 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* remove unneeded methodsGravatar Mike Reed2017-06-10
| | | | | | | | Bug: skia: Change-Id: I7256abb1a56abf961e66c399e868a8eb2478c02b Reviewed-on: https://skia-review.googlesource.com/19396 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove unneeded SK_APIGravatar Mike Reed2017-06-10
| | | | | | | | Bug: skia: Change-Id: I4400d1925ed9bb3daef8b3c17fe0f188925732cd Reviewed-on: https://skia-review.googlesource.com/19397 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* SkXfermode no longer needs to e a flattenableGravatar Mike Reed2017-06-10
| | | | | | | | | | SkArithmeticMode is unreachable, so delete it Bug: skia: Change-Id: Ibe4c48fcf756280569c4b302da8d96bd4e21b717 Reviewed-on: https://skia-review.googlesource.com/19394 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* attempt to fix compiler errorGravatar Mike Reed2017-06-10
| | | | | | | | | | | | | | | | | | | ../../third_party/skia/src/core/SkBlendMode.cpp: In function 'SkPM4f SkBlendMode_Apply(SkBlendMode, SkPM4f, SkPM4f)': ../../third_party/skia/src/core/SkBlendMode.cpp:133:1: error: unrecognizable insn: } ^ (insn 48 47 49 7 (set (reg:V4SF 112 [ D.89567 ]) (unspec:V4SF [ (mem/c:V4SF (reg/f:SI 104 virtual-incoming-args) [0 MEM[(const __builtin_neon_sf[4] *)&src]+0 S16 A32]) ] UNSPEC_VLD1)) /b/c/b/android/src/third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/include/arm_neon.h:8693 -1 (nil)) ../../third_party/skia/src/core/SkBlendMode.cpp:133:1: internal compiler error: in extract_insn, at recog.c:2202 Bug: skia: Change-Id: I85e98e858d00b8b505c6676e9a9dc762f0ccb25c Reviewed-on: https://skia-review.googlesource.com/19392 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove unused arithmetic codeGravatar Mike Reed2017-06-09
| | | | | | | | Bug: skia: Change-Id: I51d382ba8ddb75dff97dd8d773f7a4f3f10663da Reviewed-on: https://skia-review.googlesource.com/19406 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* CanOverflow -> ClampIfNeededGravatar Mike Klein2017-06-09
| | | | | | | | | Centralize the clamping in ClampIfNeeded, and switch it to clamp_1. Change-Id: I056ac029d3ddc81e3f0f194f2b9c9924cad4caae Reviewed-on: https://skia-review.googlesource.com/19401 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Reed <reed@google.com>
* replace 4f procs with pipeline (only called in 2 places by ganesh)Gravatar Mike Reed2017-06-09
| | | | | | | | | | | enables lots of code to delete CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Bug: skia: Change-Id: I13631ead68a9232bd8c13c5ef54727f44def26ca Reviewed-on: https://skia-review.googlesource.com/19278 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Retract GrTexture.h a bitGravatar Robert Phillips2017-06-09
| | | | | | | | | This began as cleaning up SkSpecialImage.h & spiraled out of control from there. Change-Id: I9a570ecd2a7af9ee724ebfebe4e9185748f38bbc Reviewed-on: https://skia-review.googlesource.com/19290 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Improve cubic KLM accuracyGravatar Chris Dalton2017-06-09
| | | | | | | | | | | | | | | | | | | | | | Moves cubic root finding logic out of GrPathUtils and PathOpsCubicIntersectionTest, and unifies it in SkGeometry. "Normalizes" the homogeneous parameter values of the roots, rather than the cubic inflection function. Does this normalization by twiddling the exponents instead of division (which causes a loss of precision). Abandons the built-in derivatives in GrCubicEffect. These don't have high enough precision on many mobile gpus. Instead we pass the KLM matrix to the vertex shader via uniform, where we can use it to set up new linear functionals from which the fragment shader can calculate the gradient of the implicit function. Bug: skia:4410 Change-Id: Ibd64e999520adc8cdef7803a492d3699995aef5a Reviewed-on: https://skia-review.googlesource.com/19017 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Extend composeshader to support a lerp parameterGravatar Mike Reed2017-06-09
| | | | | | | | Bug: skia: Change-Id: I3bbb2cb8d0a84fca0309654498548ebc94d8938f Reviewed-on: https://skia-review.googlesource.com/18460 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* remove unused colorfilter virtual asAComposeGravatar Mike Reed2017-06-09
| | | | | | | | Bug: skia: Change-Id: I1e23dbd18f7145dcaaa864f3fd7b34aea2c342a6 Reviewed-on: https://skia-review.googlesource.com/19269 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Make SkPixmap::getColor support kUnpremul pixelsGravatar Matt Sarett2017-06-09
| | | | | | | | Bug: skia:6319 Change-Id: Id5ad27b4e85516dfdad0c127655e6272bc0a39ac Reviewed-on: https://skia-review.googlesource.com/19089 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* specialize D32 proc for legacy srcGravatar Mike Reed2017-06-09
| | | | | | | | | | lots of dead-code removal Bug: skia: Change-Id: I23ea25eb38855b4776e97fa8ff777d9744baab1d Reviewed-on: https://skia-review.googlesource.com/19147 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add support for SkImageGenerator creating external texturesGravatar Stan Iliev2017-06-08
| | | | | | | | | | | Copy the SkImageGenerator texture if tiling is needed and original texture target is GR_GL_TEXTURE_EXTERNAL. Bug: skia: Change-Id: I98f5acc3883e2060b1a35f80633b02b08a706107 Reviewed-on: https://skia-review.googlesource.com/18268 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stan Iliev <stani@google.com>
* Draw time color xform API for AndroidGravatar Matt Sarett2017-06-08
| | | | | | | | | | | | | | | | | Will do a lazy color xform to the dst color space at GPU upload time. I've included the capability to control the gen id of the output image. This will allow us to reuse images in the Ganesh cache. This should only be temporary. When Android is able to cache the actual SkImage object, we won't need to expose this anymore. Bug: b/62347704 Change-Id: I93b950ef680f6bbdd7eb6a2ec6f50195dbb78311 Reviewed-on: https://skia-review.googlesource.com/16440 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Bump min picture to 7+ months agoGravatar Mike Reed2017-06-08
| | | | | | | | | | | Delete lots of support code, including need for SkXfermode objects which are no longer used anywhere else. Bug: skia: Change-Id: Id6b7ef0f529691041ff2b206c35e336e8a4c974d Reviewed-on: https://skia-review.googlesource.com/19059 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Revert "Revert "DeferredTextureImageData low-bit-depth/dithering ↵Gravatar Brian Salomon2017-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | support""" This reverts commit 840ff8837bd93ee73c187890839b3f56e7c94fb7. Reason for revert: Not obvious to me how to fix, reverting the chrome CL that was dependent on this. Original change's description: > Revert "Revert "DeferredTextureImageData low-bit-depth/dithering support"" > > This reverts commit d7c681d6a7b154d276e275becc51685eac8705c2. > > Reason for revert: New param already used in Chrome > > Original change's description: > > Revert "DeferredTextureImageData low-bit-depth/dithering support" > > > > This reverts commit 2c075e749d1f33dea06ad2710e15c9a1d60ebced. > > > > Reason for revert: Breaking tests. e.g.: https://chromium-swarm.appspot.com/task?id=369dc44f62ce9510&refresh=10 > > > > Original change's description: > > > DeferredTextureImageData low-bit-depth/dithering support > > > > > > Cause DeferredTextureImageData functionality to support low bit depth > > > (4444, 565) image formats (with dithering). > > > > > > Bug: 720105 > > > Change-Id: Ie3b5768ebc393d9b0a5322461c722bf37c80b791 > > > Reviewed-on: https://skia-review.googlesource.com/18945 > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > Commit-Queue: Eric Karl <ericrk@chromium.org> > > > > TBR=bsalomon@google.com,ericrk@chromium.org > > No-Presubmit: true > > No-Tree-Checks: true > > No-Try: true > > Bug: 720105 > > > > Change-Id: I07aec722425efc62bc54f82cee9a19a9bf339f7b > > Reviewed-on: https://skia-review.googlesource.com/19039 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Brian Salomon <bsalomon@google.com> > > TBR=bsalomon@google.com,reviews@skia.org,ericrk@chromium.org > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: 720105 > > Change-Id: I91e690d0564f04209a2bd677de9ae9eb9c0f90d3 > Reviewed-on: https://skia-review.googlesource.com/19041 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,reviews@skia.org,ericrk@chromium.org No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 720105 Change-Id: I63eb0051964ce99e187b4e4943ea79bc22d392d2 Reviewed-on: https://skia-review.googlesource.com/19046 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Revert "Revert "DeferredTextureImageData low-bit-depth/dithering support""Gravatar Brian Salomon2017-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d7c681d6a7b154d276e275becc51685eac8705c2. Reason for revert: New param already used in Chrome Original change's description: > Revert "DeferredTextureImageData low-bit-depth/dithering support" > > This reverts commit 2c075e749d1f33dea06ad2710e15c9a1d60ebced. > > Reason for revert: Breaking tests. e.g.: https://chromium-swarm.appspot.com/task?id=369dc44f62ce9510&refresh=10 > > Original change's description: > > DeferredTextureImageData low-bit-depth/dithering support > > > > Cause DeferredTextureImageData functionality to support low bit depth > > (4444, 565) image formats (with dithering). > > > > Bug: 720105 > > Change-Id: Ie3b5768ebc393d9b0a5322461c722bf37c80b791 > > Reviewed-on: https://skia-review.googlesource.com/18945 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Eric Karl <ericrk@chromium.org> > > TBR=bsalomon@google.com,ericrk@chromium.org > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: 720105 > > Change-Id: I07aec722425efc62bc54f82cee9a19a9bf339f7b > Reviewed-on: https://skia-review.googlesource.com/19039 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,reviews@skia.org,ericrk@chromium.org No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 720105 Change-Id: I91e690d0564f04209a2bd677de9ae9eb9c0f90d3 Reviewed-on: https://skia-review.googlesource.com/19041 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>