aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Disable MSAA for Intel GPUs and re-enable GrSurfaceRenderability testGravatar Robert Phillips2017-05-25
| | | | | | | | | This CL replaces: https://skia-review.googlesource.com/c/17710/ (Re-enable GrSurfaceRenderability test) Change-Id: I5626e4fc3581cd2b17fe0f0ad3a9e9bc35b7aa4c Reviewed-on: https://skia-review.googlesource.com/17764 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* make sure to_srgb maps 1 to 1Gravatar Mike Klein2017-05-25
| | | | | | | | | | | CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE2,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE41,Test-Android-Clang-Nexus10-CPU-Exynos5250-arm-Release-Android,Test-Android-Clang-PixelC-CPU-TegraX1-arm64-Release-Android,Test-Android-Clang-Ci20-CPU-IngenicJZ4780-mipsel-Release-Android BUG=skia:6678,skia:6683 Change-Id: I217084fa0a11ad661a8751f0c3b1cade5cc52473 Reviewed-on: https://skia-review.googlesource.com/17902 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* add stage for gaussian alpha to rgba for shadowsGravatar Mike Reed2017-05-24
| | | | | | | | | | speeds up GM:shadow_utils 20% Bug: skia: Change-Id: If52dd5e2c76ace82d06351af1419e0663a3a634f Reviewed-on: https://skia-review.googlesource.com/17844 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Revert "SkShaderBase"Gravatar Florin Malita2017-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 58a756435ca3700d9766a4580bb0771a9774f603. Reason for revert: g3, Android borkage. Original change's description: > SkShaderBase > > Introduce a private base class (SkShaderBase), to hide > implementation details from the public interface (SkShader). > > Change-Id: If3ec26ca6abc9da20e3f139c11fdc023bdd85176 > Reviewed-on: https://skia-review.googlesource.com/17241 > Commit-Queue: Florin Malita <fmalita@chromium.org> > Reviewed-by: Mike Reed <reed@google.com> > TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I32b012ee466dd006c074593f211f43ed602f1078 Reviewed-on: https://skia-review.googlesource.com/17845 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* SkShaderBaseGravatar Florin Malita2017-05-24
| | | | | | | | | | Introduce a private base class (SkShaderBase), to hide implementation details from the public interface (SkShader). Change-Id: If3ec26ca6abc9da20e3f139c11fdc023bdd85176 Reviewed-on: https://skia-review.googlesource.com/17241 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Reed <reed@google.com>
* Allow for non opaque colors for src-over lcd fallback case in gpuGravatar Greg Daniel2017-05-24
| | | | | | | | | | | | Since skia is currently requiring the dst to be opaque for lcd draws this change is safe to make in terms of correctly. It will also be faster than the current shader based blending. Bug: chromium:725879 Change-Id: I0c14b80eb5ab819500afc55030df83d5ddbef94a Reviewed-on: https://skia-review.googlesource.com/17840 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* SkStream: DynamicMemoryWStream gets writeToAndResetGravatar Hal Canary2017-05-24
| | | | | | | | | | | | | This is similar to copyToAndReset(). Also use this in SkPDF, for minor memory savings: Single-threaded DM's peak RSS drops from 239MB to 228MB. Change-Id: I352a980e6dd54eb05d74cd057bd50e02312753b0 Reviewed-on: https://skia-review.googlesource.com/17714 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* SkSTArenaAllocGravatar Florin Malita2017-05-24
| | | | | | | | | Syntactic sugar, gets rid of some boilerplate. Change-Id: Ibdb28b7a8f1d5e4a4e18c12d423b987d7194e340 Reviewed-on: https://skia-review.googlesource.com/17837 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* Use rasterpipeline for drawVerticesGravatar Mike Reed2017-05-24
| | | | | | | | | Bug: skia: Change-Id: If6da119ee98f26981cef9373162ddb526db77be5 Reviewed-on: https://skia-review.googlesource.com/17422 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@google.com>
* better extend: alloc once, no recursionGravatar Mike Klein2017-05-24
| | | | | | | Change-Id: I6a8cee08248462e4e17196028758dd8d44093b28 Reviewed-on: https://skia-review.googlesource.com/17831 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* inline SkArenaAlloc::allocObject()Gravatar Mike Klein2017-05-24
| | | | | | | | | Call overhead does appear to be showing up on our profiles. Change-Id: If3875a8972769f45282e0eb1d4aef6324cd56878 Reviewed-on: https://skia-review.googlesource.com/17833 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add GrContext API to report the number of purgeable bytes in the cache.Gravatar Derek Sollenberger2017-05-24
| | | | | | | Change-Id: I1457eec9831736f386e3b3b80d9eac8dbb337a9b Reviewed-on: https://skia-review.googlesource.com/17829 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* Clear atlas textures at creation in ChromeGravatar Brian Salomon2017-05-24
| | | | | | | | 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>
* add a bulk shader path through SkRasterPipelineBlitterGravatar Mike Klein2017-05-24
| | | | | | | | Change-Id: I76f1f0c29b3408bffb7732ee1afb8337c478605e Reviewed-on: https://skia-review.googlesource.com/17768 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* SkRasterPipeline in SkArenaAllocGravatar Mike Klein2017-05-24
| | | | | | | | | Bug: skia:6673 Change-Id: Ia2bae4f6a9039a007a10b6b45bcf2f0854bf6e5c Reviewed-on: https://skia-review.googlesource.com/17794 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* move all details for dashing into implGravatar Mike Reed2017-05-24
| | | | | | | | Bug: skia: Change-Id: I035603ad75158d9984cce7807bef6a668d9eb014 Reviewed-on: https://skia-review.googlesource.com/17793 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Revert "Revert "Add a flag to GrSurfaceFlags that requires the texture to be ↵Gravatar Brian Salomon2017-05-23
| | | | | | | | | | | | cleared upon creation. "" This reverts commit a9e795eab5f59a52d96b8fdc39351452835f5eb9. Bug: skia: Change-Id: Ibfc51497ae99f332f8f72a799393a1b2996f7f3f Reviewed-on: https://skia-review.googlesource.com/17767 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Fix flag collision in GrDrawVerticesOpGravatar Brian Osman2017-05-23
| | | | | | | | | | | We were setting a flag meant for Mesh.fFlags on the Op's fFlags. Switch the Mesh's flags to be a pair of bools, to avoid this in the future. Bug: skia: Change-Id: Ib660f3bc9c54874d088a85251f629758c365c8c6 Reviewed-on: https://skia-review.googlesource.com/17766 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Make SkPictureImageFilter::drawPictureAtLocalResolution use color xformGravatar Christopher Cameron2017-05-23
| | | | | | | | | | | | This creates a temporary SkCanvas, which needs to be wrapped in a color xform canvas to behave appropriately. bug:725372 Change-Id: I572437770f271b7fb813519c0966cd3177b9eeaf Reviewed-on: https://skia-review.googlesource.com/17658 Reviewed-by: Matt Sarett <msarett@google.com> Reviewed-by: Christopher Cameron <ccameron@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Fix alpha in webp bug introduced with animationGravatar Leon Scroggins III2017-05-23
| | | | | | | | | | | | | | | | | Prior to 557fbbe05ba48bcc20be684d11fe0edfc24c87ba, if there was a colorXform, we told libwebp to decode to unpremul, since premultiplication is handled by the colorXform. In that CL, I handled this in the case where the dst color type was not 8888 or when blending with the prior frame, but not in the 8888/not blending with the prior frame case. Rearrange the code so we always tell libwebp to use BGRA_8888 unpremul if there is a colorXform. Change-Id: Ie1121bc65da6520af895e8eb72d53573426b7bd6 Reviewed-on: https://skia-review.googlesource.com/17781 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Really disable srgb on nexus player vulkanGravatar Greg Daniel2017-05-23
| | | | | | | | Bug: skia: Change-Id: I75804136195fdddffd6498660e8f96e0580f7cd8 Reviewed-on: https://skia-review.googlesource.com/17780 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Dither copies when decreasing precision below 32-bit.Gravatar Mike Klein2017-05-23
| | | | | | | | | | | | | | | | Same GM diffs as the last attempt in 8888. CQ_INCLUDE_TRYBOTS=skia.primary:Test-Android-Clang-PixelC-CPU-TegraX1-arm64-Release-Android,Test-Win2k8-MSVC-GCE-CPU-AVX2-x86-Release,Test-Android-Clang-Nexus10-CPU-Exynos5250-arm-Release-Android BUG=chromium:720105 Still looking at why readpixels and readpixelspicture are so weird (lots of black) when drawing into sRGB 8888. Will follow up. Change-Id: I223e3b74e567aea1acaffa8db6b24fbf22d98c97 Reviewed-on: https://skia-review.googlesource.com/17443 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* Revert "Add a flag to GrSurfaceFlags that requires the texture to be cleared ↵Gravatar Brian Salomon2017-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | upon creation. " This reverts commit 45e5068a6d10f4e4fd4658824310f8871f02ccf7. Reason for revert: :'( Original change's description: > Add a flag to GrSurfaceFlags that requires the texture to be cleared upon creation. > > Bug: chromium:656320 > > Change-Id: I940bfa24540516ab83a2ed52f761b96eb6ad19f1 > Reviewed-on: https://skia-review.googlesource.com/17391 > Reviewed-by: Greg Daniel <egdaniel@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Bug: chromium:656320 Change-Id: I8a4f71537e45f3c4cf37b10b2dc8ee38fe6959ba Reviewed-on: https://skia-review.googlesource.com/17765 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* add default arg so android can bulidGravatar Mike Reed2017-05-23
| | | | | | | | | Bug: skia: Change-Id: I2bb10edba9a39f20691398a2a0a01b1da2709fcd Reviewed-on: https://skia-review.googlesource.com/17761 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "add knob to turn off fancy SkJumper features"Gravatar Mike Klein2017-05-23
| | | | | | | | | | | | | | | | | | | | | | This reverts commit 5373609d90d8f84b75718b15f3522f9d2f4226cb. Reason for revert: doesn't look like we'll need this. Original change's description: > add knob to turn off fancy SkJumper features > > This is a new public API for testing (layout tests). > > Change-Id: I10345231bad373c741b1e9656e546000538121b3 > Reviewed-on: https://skia-review.googlesource.com/17712 > Reviewed-by: Florin Malita <fmalita@chromium.org> > Commit-Queue: Mike Klein <mtklein@chromium.org> > Change-Id: Ieed2576d7fc06528384b7476508610e0e29b894f Reviewed-on: https://skia-review.googlesource.com/17719 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Disable srgb on vulkan nexus playerGravatar Greg Daniel2017-05-23
| | | | | | | | Bug: skia: Change-Id: I4f7656badf1b2faec6ed02687e8e0ff2b4daf7f4 Reviewed-on: https://skia-review.googlesource.com/17718 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Add a flag to GrSurfaceFlags that requires the texture to be cleared upon ↵Gravatar Brian Salomon2017-05-23
| | | | | | | | | | | creation. Bug: chromium:656320 Change-Id: I940bfa24540516ab83a2ed52f761b96eb6ad19f1 Reviewed-on: https://skia-review.googlesource.com/17391 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Don't pass uniform arrays in GrGLNonlinearColorSpaceXformEffectGravatar Christopher Cameron2017-05-23
| | | | | | | | | | | | | | | | | This avoids a problem where passing a uniform array as a function array sometimes gets lost. Instead of passing the uniform array as an argument to the transfer function evaluation function, create two separate transfer function evaluation functions that read the uniforms directly. BUG=723133 Change-Id: Ib46b99efdbc04ce0201644ebbc1dfd4cb27e9276 Reviewed-on: https://skia-review.googlesource.com/17293 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* move sk_memset?? to SkOptsGravatar Mike Klein2017-05-23
| | | | | | | | | This lets the compiler generate AVX versions with wider writes. Change-Id: Ia63825e70c72bdb4d14bef97d8b4ea4be54c9d84 Reviewed-on: https://skia-review.googlesource.com/17715 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* add knob to turn off fancy SkJumper featuresGravatar Mike Klein2017-05-23
| | | | | | | | | This is a new public API for testing (layout tests). Change-Id: I10345231bad373c741b1e9656e546000538121b3 Reviewed-on: https://skia-review.googlesource.com/17712 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* color-correct patchGravatar Mike Reed2017-05-23
| | | | | | | | | | | Key work is to correctly convert SkColor corners into linear floats, then interpolate, then (correctly) convert back to SkColors. Bug: skia:6659 Change-Id: Iaf0ab842d7a4f8f3481e609903cec83814e5a749 Reviewed-on: https://skia-review.googlesource.com/17533 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Add animation support to SkWebpCodecGravatar Leon Scroggins III2017-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TBR=reed@google.com (No change to the public API, but changed a header file) SkWebpCodec: - Implement onGetFrameCount, onGetFrameInfo, and onGetRepetitionCount - Respect the alpha reported by libwebp. Although the spec states that it is only a hint, the libwebp encoder uses it properly. Respecting allows us to draw opaque images faster and decode them to 565. This also matches other SkCodecs (and Chromium). - onGetPixels: - Decode the frame requested, recursively decoding required frame if necessary - When blending with a prior frame, use SkRasterPipeline SkCodec: - Move check for negative index to getFrameInfo - Reset the colorXform if one is not needed SkCodecAnimation: - Add new blend enum, for WebP's (and APNG's) non-blending option SkFrameHolder: - New base classes for frames and the owner of the frames, allowing code sharing between SkWebpCodec and SkGifCodec (particularly for determining whether a frame has alpha and what frame it depends on) - When moving items from SkGIFFrameContext, use Skia conventions (i.e. int instead of unsigned) - Rename "delay time" to "duration", to match e.g. SkFrameInfo:: fDuration SkGifImageReader: - Move pieces to SkFrameHolder, and adapt to changes made in the process - Make setAlphaAndRequiredFrame (now on the base class SkFrameHolder) more general to support webp, and add support for frames that do not blend - Change SkGIFFrameContext from a struct to a class, to match how we use the distinction elsewhere (i.e. struct is a small object with public fields) - Rework hasTransparentPixel (now hasTransparency, since it returns true in some cases where there is not a transparent pixel) to better fit with the modified setAlphaAndRequiredFrame. Also be more consistent when there is no transparent pixel but no color map. - Simplify an if condition that was previously simplified in 2d61e717 but accidentally got reverted in a4db9be6 CodecAnimTest: - Test new animated webp files - Rearrange the test to more cleanly print alpha type mismatches for the first frame resources: - webp-animated.webp - animated webp from Chromium - blendBG.webp - new webp file using bits of webp-animated-semitransparent4.webp from Chromium - tests required frame and alpha when using the non-blending mode - frames have the following properties: - Frame 0: no alpha, fills screen - Frame 1: alpha, fills screen - Frame 2: no alpha, fills screen - Frame 3: alpha, fills screen, blendBG - Frame 4: no alpha, fills screen, blendBG - Frame 5: alpha, blendBG - Frame 6: covers 4, has alpha, blendBG - also used to test decoding to 565 if the new frame data has alpha but blends onto an opaque frame DM.cpp: - Test animated images to non-native 8888 and unpremul DMSrcSink.cpp: - Do not test non-native 8888 decodes to f16 dst - Test unpremul decodes to f16 - Copy a frame of an animated image prior to drawing, since in unpremul mode, the DM code will premultiply first. Bug: skia: 3315 Change-Id: I4e55ae2ee5bc095b37a743bdcfac644be603b980 Reviewed-on: https://skia-review.googlesource.com/16707 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* simpler portable round()Gravatar Mike Klein2017-05-23
| | | | | | | | | | Calling out lrintf() is probably kind of extreme... adding half and truncating should be just fine. Change-Id: Ifb22c1c1a9b764be153b769aad4671ca44311255 Reviewed-on: https://skia-review.googlesource.com/17708 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Fix TSAN error for shadow cacheGravatar Jim Van Verth2017-05-23
| | | | | | | Change-Id: I84b94a19c724e2152d1eac269f425f7f0f2286f5 Reviewed-on: https://skia-review.googlesource.com/17706 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Revert "sk_fgetsize to not use ftell."Gravatar Leon Scroggins2017-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit eefa289a214ea3917e5e00554f231adb5ad6f712. Reason for revert: Causing failures in BitmapFactoryTest. b/38233042 Original change's description: > sk_fgetsize to not use ftell. > > The previous version of sk_fgetsize used ftell and fseek to compute > the size of a file. There are so many issues with this that it is called > out by securecoding.cert.org as FIO19-C as a thing not to do. We already > have correct code for computing the size of a file in the mmap code, so > use that instead. > > Change-Id: I1d771124989d0ec1523f6d858814ee563263213a > Reviewed-on: https://skia-review.googlesource.com/9860 > Reviewed-by: Leon Scroggins <scroggo@google.com> > Commit-Queue: Ben Wagner <bungeman@google.com> > TBR=bungeman@google.com,scroggo@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Ie9392dde8747ae7c74ebfa00153705e316e841a2 Reviewed-on: https://skia-review.googlesource.com/17705 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Remove compressed (ETC1) texture support from Ganesh (take 2)Gravatar Robert Phillips2017-05-23
| | | | | | | | | | Reland of https://skia-review.googlesource.com/c/17456/ (Remove compressed (ETC1) texture support from Ganesh) but w/o removing third_part\etc1 files TBR=bsalomon@google.com Change-Id: I8ec4b7e3ddf47d213cb24c382731c050ffb8847f Reviewed-on: https://skia-review.googlesource.com/17700 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* remove min from repeat and mirror generallyGravatar Mike Klein2017-05-23
| | | | | | | | | | I don't think they do anything anymore after the inclusive/exclusive refactoring. Change-Id: I63f2e010a00953b5b6415de002bcb51ec2b73458 Reviewed-on: https://skia-review.googlesource.com/17490 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* retry tilers against 1Gravatar Mike Klein2017-05-23
| | | | | | | | | These weren't the Valgrind problem. Change-Id: Ic76df460cf0ce7f7ae8155d549f4e92a7f8de040 Reviewed-on: https://skia-review.googlesource.com/17701 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Remove setting of alpha coverage in text ops when in LCD modeGravatar Greg Daniel2017-05-22
| | | | | | | | Bug: skia: Change-Id: I0e320497fe72a0edad7bda7ea1c34dc2f713fc56 Reviewed-on: https://skia-review.googlesource.com/17530 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Cache ambient and spot shadows at a canonical positionGravatar Jim Van Verth2017-05-22
| | | | | | | Change-Id: I1f80931513f7d2268b358fb38c86dd331f32f064 Reviewed-on: https://skia-review.googlesource.com/17394 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Fix to lcd blending in ganeshGravatar Greg Daniel2017-05-22
| | | | | | | | | | | | This fixes the bug where a src color may originally be opaque but after blending it is no longer opaque. We need to know the opacity after the blend so this restricts us on which blend modes even work this way. Bug: skia: Change-Id: Ib3208887d718e5f25272ed7b0bf44683d04884d7 Reviewed-on: https://skia-review.googlesource.com/17488 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "Revert "mark SkRasterPipelineBlitter final""Gravatar Mike Klein2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b5b26a9d2999825ba8f405b8c37d33d49a529369. Reason for revert: this one's probably fine too Original change's description: > Revert "mark SkRasterPipelineBlitter final" > > This reverts commit 317a1857f80ffc18d591dd6b1ac0988184b1ed2b. > > Reason for revert: Valgrind requires reverting ancestor commit. > > Original change's description: > > mark SkRasterPipelineBlitter final > > > > This devirtualizes the call from blitAntiH to blitH, > > and makes sure no future self calls will be virtual. > > > > Change-Id: I2a277bbc1450a96e07794791792d59e5f806bde0 > > Reviewed-on: https://skia-review.googlesource.com/17418 > > Commit-Queue: Mike Klein <mtklein@chromium.org> > > Reviewed-by: Mike Klein <mtklein@chromium.org> > > > > TBR=mtklein@chromium.org,herb@google.com,reed@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: Ic726fd6b9bf18c397812ecc256353ab4a0a336c5 > Reviewed-on: https://skia-review.googlesource.com/17522 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > TBR=mtklein@chromium.org,herb@google.com,reviews@skia.org,brianosman@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ic27fbfaab9d040a1ef49d596350649096b908ea3 Reviewed-on: https://skia-review.googlesource.com/17528 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Revert "Remove compressed (ETC1) texture support from Ganesh"Gravatar Brian Osman2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ee26363aaae62db2a851f2873e2405a9cf7f995a. Reason for revert: Failing Google 3 roll. Original change's description: > Remove compressed (ETC1) texture support from Ganesh > > Change-Id: If4cf286df87ea87338aba47001d90a5fcc4f2667 > Reviewed-on: https://skia-review.googlesource.com/17456 > Commit-Queue: Robert Phillips <robertphillips@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=bsalomon@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ie1a57187287e03600a69e374501478e93c41415c Reviewed-on: https://skia-review.googlesource.com/17527 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Revert "fix ubsan warning""Gravatar Brian Osman2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b03d69f0709f5da09a5237922d208e587b12a06a. Reason for revert: This is the good CL I meant to re-land. Original change's description: > Revert "fix ubsan warning" > > This reverts commit 4d1c5d676eb32ed304ee4aa410cebbc6467b59c2. > > Reason for revert: Valgrind requires reverting ancestor commit. > > Original change's description: > > fix ubsan warning > > > > CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN > > > > Change-Id: Ic8c5d95fdb899cb5293b2bc456f61b1637ec3aed > > Reviewed-on: https://skia-review.googlesource.com/17489 > > Reviewed-by: Mike Klein <mtklein@chromium.org> > > Commit-Queue: Mike Klein <mtklein@chromium.org> > > > > TBR=mtklein@chromium.org,herb@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN > > Change-Id: Idbfdc4773756aa475829c1421d10d6f341081d7b > Reviewed-on: https://skia-review.googlesource.com/17521 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > TBR=mtklein@chromium.org,herb@google.com,reviews@skia.org,brianosman@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN Change-Id: I4cf347bc578450c0cb3c91e55fdfdbe6af6fdb13 Reviewed-on: https://skia-review.googlesource.com/17526 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "We can mask load and store with just AVX."Gravatar Brian Osman2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 139e463dc6f965fdaed854efcb20c6cafbb6dbdc. Reason for revert: Crashes on Valgrind bots. Original change's description: > We can mask load and store with just AVX. > > Previously we were using AVX2 instructions to generate the masks, > and AVX2 instructions for the mask load and stores themselves. > > AVX came with float mask loads and stores, which will work perfectly > fine. I don't really get what the point of the 32-bit int loads and > stores are in AVX2, beyond maybe syntax sugar? > > Change-Id: I81fa55fb09daea4f5546f8c9ebbc886015edce51 > Reviewed-on: https://skia-review.googlesource.com/17452 > Reviewed-by: Herb Derby <herb@google.com> > Commit-Queue: Ravi Mistry <rmistry@google.com> > TBR=mtklein@chromium.org,rmistry@google.com,herb@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I3a48f006c20475f6334ff94998281f381c696c93 Reviewed-on: https://skia-review.googlesource.com/17524 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "add tilers against 1"Gravatar Brian Osman2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8110b849d60455d6fb594f26919f0f38c3ec9925. Reason for revert: Valgrind requires reverting ancestor commit. Original change's description: > add tilers against 1 > > Change-Id: I2482972a43cb89a93cbfb9e708614e0334002e53 > Reviewed-on: https://skia-review.googlesource.com/17483 > Reviewed-by: Herb Derby <herb@google.com> > Commit-Queue: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,herb@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Icbc3a2212f800854ef7b2b17aa99fedad182d53e Reviewed-on: https://skia-review.googlesource.com/17523 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "mark SkRasterPipelineBlitter final"Gravatar Brian Osman2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 317a1857f80ffc18d591dd6b1ac0988184b1ed2b. Reason for revert: Valgrind requires reverting ancestor commit. Original change's description: > mark SkRasterPipelineBlitter final > > This devirtualizes the call from blitAntiH to blitH, > and makes sure no future self calls will be virtual. > > Change-Id: I2a277bbc1450a96e07794791792d59e5f806bde0 > Reviewed-on: https://skia-review.googlesource.com/17418 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Reviewed-by: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,herb@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ic726fd6b9bf18c397812ecc256353ab4a0a336c5 Reviewed-on: https://skia-review.googlesource.com/17522 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "fix ubsan warning"Gravatar Brian Osman2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4d1c5d676eb32ed304ee4aa410cebbc6467b59c2. Reason for revert: Valgrind requires reverting ancestor commit. Original change's description: > fix ubsan warning > > CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN > > Change-Id: Ic8c5d95fdb899cb5293b2bc456f61b1637ec3aed > Reviewed-on: https://skia-review.googlesource.com/17489 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,herb@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN Change-Id: Idbfdc4773756aa475829c1421d10d6f341081d7b Reviewed-on: https://skia-review.googlesource.com/17521 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove kZeroCopy_GrSurfaceFlagGravatar Brian Salomon2017-05-22
| | | | | | | Change-Id: I2869f97a14f3a1363ebfef5d657bd6468fc991f7 Reviewed-on: https://skia-review.googlesource.com/17491 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* fix ubsan warningGravatar Mike Klein2017-05-22
| | | | | | | | | CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN Change-Id: Ic8c5d95fdb899cb5293b2bc456f61b1637ec3aed Reviewed-on: https://skia-review.googlesource.com/17489 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>