aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
...
* fixed type mismatches in SkSL comparison operatorsGravatar Ethan Nicholas2018-03-29
| | | | | | | | Bug: skia: Change-Id: I8f05088c561a80549264f7a65cb8161bbe7d8f4c Reviewed-on: https://skia-review.googlesource.com/116982 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Don't use gl_FragCoord on legacy Tegra hardwareGravatar Chris Dalton2018-03-29
| | | | | | | | | Bug: skia:7413 Bug: skia:7757 Change-Id: I588c49409fd630f4c15546d8be64fb46c87db3c3 Reviewed-on: https://skia-review.googlesource.com/117007 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Revert "GrTessellator: hang fix."Gravatar Mike Klein2018-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 050c86768a2c24c62655f53ef9b685d40477eccb. Reason for revert: layout test diff in Chrome roll? Original change's description: > GrTessellator: hang fix. > > Some edges are not coincident with their own endpoints (because floating > point). If this happens for an edge which is a right-enclosing-edge > during the Bentley-Ottman simplify() pass, we end up an infinite loop > attempting to split the edge, since the edge is never to the right of its > endpoint. > > The easiest fix is to simply remove the right-enclosing-edge splitting > code. This code was originally added before we had proper > active-edge-list rewinding, and should no longer be necessary. > > BUG=802896 > > Change-Id: Id9f2942b73f01152af8c0088e8c6b1389891d827 > Reviewed-on: https://skia-review.googlesource.com/116920 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Stephen White <senorblanco@chromium.org> TBR=robertphillips@google.com,senorblanco@chromium.org Change-Id: Icb928db6c052a21c6d327da9492cb991f769186f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 802896 Reviewed-on: https://skia-review.googlesource.com/117120 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add color fonts.Gravatar Ben Wagner2018-03-28
| | | | | | | | | | | | | BUG=skia:7624 Change-Id: I68a6bb4c6fa541ffad565d970438d93ff1bd8ed6 Reviewed-on: https://skia-review.googlesource.com/109521 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Herb Derby <herb@google.com> Reviewed-on: https://skia-review.googlesource.com/116541 Reviewed-on: https://skia-review.googlesource.com/116984 Reviewed-by: Ben Wagner <bungeman@google.com>
* GrTessellator: hang fix.Gravatar Stephen White2018-03-28
| | | | | | | | | | | | | | | | | | | Some edges are not coincident with their own endpoints (because floating point). If this happens for an edge which is a right-enclosing-edge during the Bentley-Ottman simplify() pass, we end up an infinite loop attempting to split the edge, since the edge is never to the right of its endpoint. The easiest fix is to simply remove the right-enclosing-edge splitting code. This code was originally added before we had proper active-edge-list rewinding, and should no longer be necessary. BUG=802896 Change-Id: Id9f2942b73f01152af8c0088e8c6b1389891d827 Reviewed-on: https://skia-review.googlesource.com/116920 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Add new GrResourceCache::purgeUnlockedResources variantGravatar Robert Phillips2018-03-28
| | | | | | | | | TBR=bsalomon@google.com Change-Id: I05bef1f8a271474db878a046cc1f6ac7b60a15f1 Reviewed-on: https://skia-review.googlesource.com/116801 Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* SkPDF: Accept non-monotonic text cluster indicesGravatar Hal Canary2018-03-28
| | | | | | | | BUG=skia:7055 Change-Id: Ic1540a15118dbe99db5bcff26dd1235adac5468a Reviewed-on: https://skia-review.googlesource.com/116725 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Hal Canary <halcanary@google.com>
* Delete GPU alpha clip masksGravatar Chris Dalton2018-03-28
| | | | | | | | | | | | | | | | The cost of switching render targets on each draw to make a custom clip is enormous. There are virtually no circumstances where this will outperform our cached, multi-threaded software mask generator. The tried-and-true approach to clipping on-GPU is with analytic FPs. And now that we support CCPR clip FPs, there ulitmately should be very few clip stacks that even require a mask as long as they don't use deprecated SkClipOps. Bug: skia: Change-Id: I79c5558c93c1b99179f1e933d029f69b14ad1ce3 Reviewed-on: https://skia-review.googlesource.com/116724 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Rename SkInsetConvexPolygon to SkOffsetPolygon.Gravatar Jim Van Verth2018-03-28
| | | | | | | | | Prep for adding new offset routines. Change-Id: I261c22d9998e5ae4567b697c5f20a31f20777ac1 Reviewed-on: https://skia-review.googlesource.com/116800 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Add handling for allocation failure in GrTextureOpListGravatar Robert Phillips2018-03-28
| | | | | | | | | I believe this is what has been causing the intermittent TSAN crash Change-Id: Ie7170a3eb0495cebe8b1398a00f98ad099f78944 Reviewed-on: https://skia-review.googlesource.com/116629 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Various cleanup to remote_demoGravatar Herb Derby2018-03-27
| | | | | | | | | | | | | Integrate SkRemoteGlyphCacheRenderer into SkStrikeServer Add a Timer. Remove unused code. BUG=skia:7515 Change-Id: Idffb477af71cbcc4035df190e29e8910b61aa6e5 Reviewed-on: https://skia-review.googlesource.com/116485 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* initial SkSLJIT checkinGravatar Ethan Nicholas2018-03-27
| | | | | | | | | Docs-Preview: https://skia.org/?cl=112204 Bug: skia: Change-Id: I10042a0200db00bd8ff8078467c409b1cf191f50 Reviewed-on: https://skia-review.googlesource.com/112204 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Revert "Add color fonts."Gravatar Ben Wagner2018-03-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d3b933f3e03d5c22e9e7c56d2110469e41509720. Reason for revert: we're not mirroring experimental/ everywhere. Original change's description: > Add color fonts. > > BUG=skia:7624 > > Change-Id: I1d0974282adce2fd7b13a003309e63593b6e1a9c > Reviewed-on: https://skia-review.googlesource.com/109521 > Commit-Queue: Ben Wagner <bungeman@google.com> > Reviewed-by: Mike Klein <mtklein@google.com> > Reviewed-by: Herb Derby <herb@google.com> > Reviewed-on: https://skia-review.googlesource.com/116541 TBR=mtklein@google.com,bungeman@google.com,herb@google.com Change-Id: Ic2d763244cbce663a23eb53321ac45201c466501 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7624 Reviewed-on: https://skia-review.googlesource.com/116680 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Add color fonts.Gravatar Ben Wagner2018-03-27
| | | | | | | | | | | BUG=skia:7624 Change-Id: I1d0974282adce2fd7b13a003309e63593b6e1a9c Reviewed-on: https://skia-review.googlesource.com/109521 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Herb Derby <herb@google.com> Reviewed-on: https://skia-review.googlesource.com/116541
* cache SkMatrix44 type in makeColorSpin()Gravatar Mike Klein2018-03-27
| | | | | | | | | | | This helps prevent races on getType() later, e.g. https://luci-milo.appspot.com/swarming/task/3c80715df637a810/steps/symbolized_dm/0/stdout Change-Id: I3dbc9f6bf2fddff9ca416b0001bfd5da123e6b25 Reviewed-on: https://skia-review.googlesource.com/116466 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* ccpr: Various cleanupsGravatar Chris Dalton2018-03-27
| | | | | | | | | | | | | Renames GrCCCoverageProcessor::RenderPass to PrimitiveType and handles corners as subpasses instead. Various touchups to coverage processors now that the overhaul is complete. This change should be strictly a refactor. Bug: skia: Change-Id: I52852463330d5ec71fae7e19fadccd9ede8b2c16 Reviewed-on: https://skia-review.googlesource.com/116169 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Pin color type when a cross-context image is constructedGravatar Brian Osman2018-03-27
| | | | | | | | | | Fixes issues with gray images that may be incorrectly re-interpreted as alpha when re-wrapped. (https://github.com/flutter/flutter/issues/15600) Change-Id: I4a78466073e14d212108d168eed0b2df1bc92ffe Reviewed-on: https://skia-review.googlesource.com/116484 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Fix TSAN race in SkPaintToGrPaintNoShaderGravatar Robert Phillips2018-03-27
| | | | | | | Change-Id: Id906e139db80e0c3b426a0e2318e77477989cf8d Reviewed-on: https://skia-review.googlesource.com/116545 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add SkColorSpaceXform_skcmsGravatar Brian Osman2018-03-27
| | | | | | | | | | | Currently only enabled in Skia dev builds. Has some diffs in GMs and images, but (hopefully) nothing major. Bug: skia: Change-Id: Ifdf5d2804e59f555a3dc84f657e438dd589a2751 Reviewed-on: https://skia-review.googlesource.com/116520 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Reland "Use DAA for small cubics and non-convex paths that fit into a mask"Gravatar Yuqian Li2018-03-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 107d53971dab5245e88885f095aef52fd52942d3. Reason for revert: Ready to rebaseline Original change's description: > Revert "Use DAA for small cubics and non-convex paths that fit into a mask" > > This reverts commit 1875e053845c4d377a0f64f7233bdb9dc00bdce1. > > Reason for revert: > > I don't think there's anything wrong with this, but it looks like Yuqian is out today and there is a large number of GM, SKP, and SVG images to triage from this. This is just a triage-by-revert... should be fine to reland when you're ready to triage. > > Original change's description: > > Use DAA for small cubics and non-convex paths that fit into a mask > > > > I forgot to benchmark svgs and it turns out that DAA is specifically > > good for the small cubics and small non-convex paths in svgs. This > > should make our svg performance fast again: > > > > 2.84% faster in svgparse_Florida-StateSeal.svg_1 > > 2.90% faster in svgparse_NewYork-StateSeal.svg_1 > > 2.95% faster in svgparse_Seal_of_Texas.svg_1 > > 3.05% faster in car.svg_1 > > 3.53% faster in svgparse_Vermont_state_seal.svg_1 > > 3.68% faster in svgparse_Wyoming-StateSeal.svg_1 > > 4.88% faster in svgparse_Minnesota-StateSeal.svg_1 > > 5.22% faster in svgparse_NewMexico-StateSeal.svg_1 > > 6.49% faster in svgparse_fsm.svg_1 > > > > > > Bug: skia: > > Change-Id: Ia149944443d72c12c3dda178cb5ebc89d6d0bf18 > > Reviewed-on: https://skia-review.googlesource.com/116185 > > Reviewed-by: Cary Clark <caryclark@google.com> > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > TBR=caryclark@google.com,liyuqian@google.com,reed@google.com,caryclark@skia.org > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: skia: > Change-Id: I232f34dcea1cdabef768879a261fe6796f3e4a79 > Reviewed-on: https://skia-review.googlesource.com/116400 > Reviewed-by: Mike Klein <mtklein@google.com> > Commit-Queue: Mike Klein <mtklein@google.com> TBR=mtklein@google.com,caryclark@google.com,liyuqian@google.com,reed@google.com,caryclark@skia.org Change-Id: I6a413e3a2f1ce9182f9e209f6e2654a602170378 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/116620 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Remove SkAutoGlyphCacheGravatar Herb Derby2018-03-27
| | | | | | | Change-Id: Ia485ce5acd70730d461ce81104595a6b961f5ca6 Reviewed-on: https://skia-review.googlesource.com/116183 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* ccpr: Use Manhattan distance for curve AAGravatar Chris Dalton2018-03-26
| | | | | | | | | | | | | | | Manhattan distance has the nice property that every pixel crossed anywhere by the curve gets a fractional coverage value, whereas pixels not touched by the curve will have zero coverage. This arguably looks better on its own merits, but it also helps the curves blend more seamlessly with their adjoining edges, which are already using Manhattan distance. Bug: skia: Change-Id: I31cf28171d0b74512c74dca1088e50f0f442b924 Reviewed-on: https://skia-review.googlesource.com/115781 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Move cache difference code into remote cache filesGravatar Herb Derby2018-03-26
| | | | | | | | | BUG=skia:7515 Change-Id: I59e75d460b4ed4d0a737c833520b2335808a4ce4 Reviewed-on: https://skia-review.googlesource.com/115706 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Cleanup SkAutoGlyphCache in SkXPSDevice.Gravatar Herb Derby2018-03-26
| | | | | | | Change-Id: Iadd405fa527a8d3746d9f0b9ff803caaf1e582cf Reviewed-on: https://skia-review.googlesource.com/116524 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* ccpr: Replace curve corner MSAA with analytic attenuationGravatar Chris Dalton2018-03-26
| | | | | | | | | | | | | Begins using the new triangle corner algorithm on curves as well. Updates the vertex backend to render curves in a single pass. Simplifies the cubic and quadratic shaders. Removes all code related to sample locations. Bug: skia: Change-Id: I96c6c401be765e96a8fe087deb7f84760e68dcf0 Reviewed-on: https://skia-review.googlesource.com/115746 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* added frexp support to SkSLGravatar Ethan Nicholas2018-03-26
| | | | | | | | | | | | | | | | | This includes an optimizer fix for the situation: int i; float f = frexp(foo, i); If we don't read the variable i, it is considered dead and eliminated - which then causes an error when we try to write the expression frexmp(foo, i). Bug: skia: Change-Id: Iac385e38e215455346fab62e1f4ec46fa65b3c21 Reviewed-on: https://skia-review.googlesource.com/116521 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Remove copy of TableColorFilter data when GPU renderingGravatar Robert Phillips2018-03-26
| | | | | | | Change-Id: I8cb6059a175e0ef6bd766e3ad2254c893c11bed3 Reviewed-on: https://skia-review.googlesource.com/116522 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* specialize arm64 allTrue()/anyTrue()Gravatar Mike Klein2018-03-26
| | | | | | | | | | | | | | | | | aarch64 added vector-wise add/mul/min/max instructions. We can use min and max to implement allTrue() and anyTrue(), respectively. (This CL is mostly so I don't forget these intrinsics exist.) In assembly, these actually compile to two instructions, the folding operation into a vector register, then a move from the vector register to a general purpose register. Change-Id: Ia6a999ac250740de765e871094e911979a8711c7 Reviewed-on: https://skia-review.googlesource.com/116482 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* detect ASIMDHP on ARM64Gravatar Mike Klein2018-03-26
| | | | | | | | | | | | | | (ASIMDHP == "advanced SIMD half-precision" == NEON half-float compute.) Testing: printed features after detection Pixel 1: 0x08 Galaxy S9: 0x18 (All as expected.) Change-Id: I3c6987d9ad50b0eb244c2be4354c1c13fdd24815 Reviewed-on: https://skia-review.googlesource.com/116480 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Use DAA for small cubics and non-convex paths that fit into a mask"Gravatar Mike Klein2018-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1875e053845c4d377a0f64f7233bdb9dc00bdce1. Reason for revert: I don't think there's anything wrong with this, but it looks like Yuqian is out today and there is a large number of GM, SKP, and SVG images to triage from this. This is just a triage-by-revert... should be fine to reland when you're ready to triage. Original change's description: > Use DAA for small cubics and non-convex paths that fit into a mask > > I forgot to benchmark svgs and it turns out that DAA is specifically > good for the small cubics and small non-convex paths in svgs. This > should make our svg performance fast again: > > 2.84% faster in svgparse_Florida-StateSeal.svg_1 > 2.90% faster in svgparse_NewYork-StateSeal.svg_1 > 2.95% faster in svgparse_Seal_of_Texas.svg_1 > 3.05% faster in car.svg_1 > 3.53% faster in svgparse_Vermont_state_seal.svg_1 > 3.68% faster in svgparse_Wyoming-StateSeal.svg_1 > 4.88% faster in svgparse_Minnesota-StateSeal.svg_1 > 5.22% faster in svgparse_NewMexico-StateSeal.svg_1 > 6.49% faster in svgparse_fsm.svg_1 > > > Bug: skia: > Change-Id: Ia149944443d72c12c3dda178cb5ebc89d6d0bf18 > Reviewed-on: https://skia-review.googlesource.com/116185 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com,caryclark@skia.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: I232f34dcea1cdabef768879a261fe6796f3e4a79 Reviewed-on: https://skia-review.googlesource.com/116400 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Hide GrBackendTexture/RenderTarget constructors that take a GrPixelConfigGravatar Brian Salomon2018-03-23
| | | | | | | | | | Make GrGLTexture use the version that takes GrMipMapped. Bug: skia:6718 Change-Id: Id3e801bcb5e781938e610bdea75bd92498117935 Reviewed-on: https://skia-review.googlesource.com/116221 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Revert "Implement Sk2f::Store2"Gravatar Chris Dalton2018-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8a8a8e9dd5c47f3fc930064bd030790f98af27af. Reason for revert: Needs non-SIMD impl Original change's description: > Implement Sk2f::Store2 > > Bug: skia: > Change-Id: Ieedd05ced376a7604936e9d2729fc20a8669496e > Reviewed-on: https://skia-review.googlesource.com/115531 > Commit-Queue: Chris Dalton <csmartdalton@google.com> > Reviewed-by: Mike Klein <mtklein@google.com> TBR=mtklein@google.com,csmartdalton@google.com Change-Id: I8dfbd87c5871b041a4fc6ef3816f121c72083a20 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/116240 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Remove legacy GrContext factories function and supporting code/types.Gravatar Brian Salomon2018-03-23
| | | | | | | Change-Id: I437a4a0a58bf70ea1b8b0659b099a2af2bfa64fe Reviewed-on: https://skia-review.googlesource.com/116197 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Move GrPixelConfig to GrTypesPrivGravatar Brian Salomon2018-03-23
| | | | | | | | | BUG= skia:6718 Change-Id: I254a5d289c1216e580b8f7fe613236c090d0e901 Reviewed-on: https://skia-review.googlesource.com/116196 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Remove legacy SkSurface::MakeFromBackendRenderTarget that does not take ↵Gravatar Brian Salomon2018-03-23
| | | | | | | | | | SkColorType Bug: skia:6718 Change-Id: Iefec5be49bf7450426c5ddb668f5525876f8ec2d Reviewed-on: https://skia-review.googlesource.com/116194 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Move a bunch of internal types from GrTypes to GrTypesPrivGravatar Brian Salomon2018-03-23
| | | | | | | Change-Id: I9fe1297ae7d185957c76681305bcf22cc972e53b Reviewed-on: https://skia-review.googlesource.com/116189 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Get @constructor feature of SKSL workingGravatar Robert Phillips2018-03-23
| | | | | | | | | | This is probably the only portion of https://skia-review.googlesource.com/c/skia/+/115900 that we want to keep TBR=ethannicholas@google.com Change-Id: Ife4d7bfbe454f705e93fb051b0bcf8e2b0a052b5 Reviewed-on: https://skia-review.googlesource.com/116192 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Implement Sk2f::Store2Gravatar Chris Dalton2018-03-23
| | | | | | | | Bug: skia: Change-Id: Ieedd05ced376a7604936e9d2729fc20a8669496e Reviewed-on: https://skia-review.googlesource.com/115531 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Use DAA for small cubics and non-convex paths that fit into a maskGravatar Yuqian Li2018-03-23
| | | | | | | | | | | | | | | | | | | | | | | I forgot to benchmark svgs and it turns out that DAA is specifically good for the small cubics and small non-convex paths in svgs. This should make our svg performance fast again: 2.84% faster in svgparse_Florida-StateSeal.svg_1 2.90% faster in svgparse_NewYork-StateSeal.svg_1 2.95% faster in svgparse_Seal_of_Texas.svg_1 3.05% faster in car.svg_1 3.53% faster in svgparse_Vermont_state_seal.svg_1 3.68% faster in svgparse_Wyoming-StateSeal.svg_1 4.88% faster in svgparse_Minnesota-StateSeal.svg_1 5.22% faster in svgparse_NewMexico-StateSeal.svg_1 6.49% faster in svgparse_fsm.svg_1 Bug: skia: Change-Id: Ia149944443d72c12c3dda178cb5ebc89d6d0bf18 Reviewed-on: https://skia-review.googlesource.com/116185 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Disable DDL assert to unblock ChromeGravatar Robert Phillips2018-03-23
| | | | | | | | | | Chrome is replaying DDLs into FBO 0 which impacts several rendering capabilities. FBO 0-ness of the final destination currently isn't part of SkSurfaceCharacterization so the surface flags aren't being set appropriately for the expected capabilities. Bug: skia:7748 Change-Id: I0d2bf3f689f8f75990443a0d5959f016d16f5d97 Reviewed-on: https://skia-review.googlesource.com/116188 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add error return, upon mask creation failure, in sw_draw_with_mask_filterGravatar Robert Phillips2018-03-23
| | | | | | | | | Bug: 822680 Change-Id: I7296c5be4faf1f706ad1cc05198559771e324841 Reviewed-on: https://skia-review.googlesource.com/116180 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Add color fonts."Gravatar Jim Van Verth2018-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c912d6133c66df7cde3d64adc76941856a12da64. Reason for revert: Causing TSAN issues. Original change's description: > Add color fonts. > > BUG=skia:7624 > > Change-Id: Id2b7449048591892ff802484d5e3745a7e1402bb > Reviewed-on: https://skia-review.googlesource.com/109521 > Commit-Queue: Ben Wagner <bungeman@google.com> > Reviewed-by: Mike Klein <mtklein@google.com> > Reviewed-by: Herb Derby <herb@google.com> TBR=mtklein@google.com,bungeman@google.com,herb@google.com Change-Id: I2ccd1f00e91bb92b7059323c95da0dd3de954164 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7624 Reviewed-on: https://skia-review.googlesource.com/116141 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Revert "Remove std::move from GrSimpleTextureEffect"Gravatar Robert Phillips2018-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 0a4b13cdea208946a59c612e0743f28533124166. Reason for revert: incorrect change Original change's description: > Remove std::move from GrSimpleTextureEffect > > Bug:822680 > Change-Id: I4780ce12a6ce244a2165bfb7b293adb06ae577c5 > Reviewed-on: https://skia-review.googlesource.com/115900 > Reviewed-by: Ethan Nicholas <ethannicholas@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> TBR=bsalomon@google.com,robertphillips@google.com,ethannicholas@google.com Change-Id: Ib4123d50b02eeac3f5112bf2702b12fc080f0d1c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 822680 Reviewed-on: https://skia-review.googlesource.com/116140 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Remove SkAutoGlyphCache decls that happen to workGravatar Herb Derby2018-03-22
| | | | | | | | | | ...and fix sample code. Change-Id: I673770125064f8451e3d88ec4929a68409935ad1 Reviewed-on: https://skia-review.googlesource.com/115995 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Add color fonts.Gravatar Ben Wagner2018-03-22
| | | | | | | | | | BUG=skia:7624 Change-Id: Id2b7449048591892ff802484d5e3745a7e1402bb Reviewed-on: https://skia-review.googlesource.com/109521 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Remove std::move from GrSimpleTextureEffectGravatar Robert Phillips2018-03-22
| | | | | | | | | Bug:822680 Change-Id: I4780ce12a6ce244a2165bfb7b293adb06ae577c5 Reviewed-on: https://skia-review.googlesource.com/115900 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Always validate GrBackendTextures passed to YUV image factoriesGravatar Brian Salomon2018-03-22
| | | | | | | Change-Id: I73a301fcdf13fceb82c94b0c68ac9386aa38e16d Reviewed-on: https://skia-review.googlesource.com/115126 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* GrGLES Interface: GL_OES_vertex_array_object extGravatar Hal Canary2018-03-22
| | | | | | | Change-Id: I712ec637b5699587a77ab4a6cd48784df075d8c5 Reviewed-on: https://skia-review.googlesource.com/115933 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* lock before using fCacheKeys in ~SkImageFilter()Gravatar Mike Klein2018-03-22
| | | | | | | | | | | | | | | | | | No other code can be using an SkImageFilter() while it's being destroyed, so there's not a chance of a race per-se here. But, because we have not acquired fMutex, there is technically a possibility that the destructor sees an outdated version of fCacheKeys, not necessarily reflecting the last change(s) made while another core held the mutex. This is an unlikely case, but it's worth fixing by locking in the destructor. This will always be uncontended, and so very cheap. Bug: skia:7666 Change-Id: I9f705bc6e8e99162b90d59b30b8dd51c4f238970 Reviewed-on: https://skia-review.googlesource.com/115929 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Remove the last uses of auto glyph cache.Gravatar Herb Derby2018-03-22
| | | | | | | Change-Id: I15fdc5bbe29aaa969fe6ec57010919b52249fd7f Reviewed-on: https://skia-review.googlesource.com/115886 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Herb Derby <herb@google.com>