aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
...
* Adding pinning to the strike cacheGravatar Herb Derby2018-04-19
| | | | | | | | | | | | Here is a simple API for the object that pins, and how it flows through the cache. BUG=skia:7515 Change-Id: I1b8304dc6f9d8652282300fc1e52d52debb5b6f4 Reviewed-on: https://skia-review.googlesource.com/122500 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Herb Derby <herb@google.com>
* Fix double counting of coverage in analytic round capped stroked circles.Gravatar Brian Salomon2018-04-19
| | | | | | | Change-Id: I28d39f8620d786180b0bf0204b18ca4d1fec597b Reviewed-on: https://skia-review.googlesource.com/122086 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* rm SkRRectsGaussianEdgeMaskFilterGravatar Robert Phillips2018-04-19
| | | | | | | | | Neat but unused. Change-Id: I1b2d160df274b05cfb5582a5385085cc2db89f7d Reviewed-on: https://skia-review.googlesource.com/121960 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* check if we fail to eval the conic in pathmeasureGravatar Mike Reed2018-04-19
| | | | | | | | Bug: oss-fuzz:7201 Change-Id: I9d40225b7827239d2a229dc056f7f2caa8a4eb31 Reviewed-on: https://skia-review.googlesource.com/122420 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Remove unused parameters from internalGetPath.Gravatar Ben Wagner2018-04-19
| | | | | | | | | | The fillPath and fillToDevMatrix parameters to SkScalerContext::internalGetPath are never used. Remove them. Change-Id: I4fda9b3a24232924e9f94be4abcf8ac10ac7901c Reviewed-on: https://skia-review.googlesource.com/122360 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* When creating testing backendTexture take colorspace into account.Gravatar Greg Daniel2018-04-19
| | | | | | | | | Bug: skia: Change-Id: Ifa8dbad3eca81790648476f9a6d3fa5a088fede9 Reviewed-on: https://skia-review.googlesource.com/122341 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Untangle strike cache and glyph cacheGravatar Herb Derby2018-04-19
| | | | | | | | | | | | The strike cache and the glpyh cache have been friends for a long time. Untangle this twisted relationship. BUG=skia:7515 Change-Id: Ie77393f6923e9886ec90ff7a60a1200e78319937 Reviewed-on: https://skia-review.googlesource.com/122084 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* disallow negative setReserve() callsGravatar Mike Klein2018-04-19
| | | | | | | | | | | | | | | | We already assert that setCount()'s argument is non-negative. This does the same for setReserve(). There was one call site I could find that was actually sometimes passing negative values to setReserve(), guarded here. Already reviewed: https://skia-review.googlesource.com/c/skia/+/115982 Change-Id: Ia52a286732bf4056e9baf09555d27bab9abf2554 Reviewed-on: https://skia-review.googlesource.com/122305 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* rm SkTDArray::select()Gravatar Mike Klein2018-04-19
| | | | | | | | | | | | It's only used in one call site, which is clearer without it. Already reviewed: https://skia-review.googlesource.com/c/skia/+/115982 Change-Id: I3d0f8c1f0756e01e29cdb9f9328b0f557d3650d3 Reviewed-on: https://skia-review.googlesource.com/122302 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* clean up setReserve() rule-bendingGravatar Mike Klein2018-04-19
| | | | | | | | | | | | | | | | | | | | | | These routines call setReserve(N), write M<N items into the reserved memory, and then setCount(M) afterwards. That happens to function with SkTDArray's current implementation, but really breaks the spirit of what setReserve() means. This CL switches those setReserve() calls to setCount(). Calling setCount(N), writing M<N items, then setCount(M) should have the exact same effect, and be completely within the rules. Already reviewed here: https://skia-review.googlesource.com/c/skia/+/115982 Change-Id: I462479488055cf1c99de2bc6dbc1707dbe24db7e Reviewed-on: https://skia-review.googlesource.com/122301 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org>
* Remove the limit on dng allocationsGravatar Leon Scroggins III2018-04-19
| | | | | | | | | | | | | | Bug: 78120086 Test: TODO The limit was artificial, and did not allow for certain transformations. SkRawCodec will already fail gracefully on failures to allocate, so just rely on that. Change-Id: Id9f92b6935d77dc6ff8a06b13bd157f476a3f84c Reviewed-on: https://skia-review.googlesource.com/121946 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Revert "Add stub gpu workaround generators"Gravatar Leon Scroggins2018-04-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 94d25b970b97c68ddd0b4ceb71f2233aac05e6b5. Reason for revert: Breaking the Chromium roll Original change's description: > Add stub gpu workaround generators > > Like https://chromium-review.googlesource.com/c/chromium/src/+/1005362, > this patch adds a way for Chrome and Skia to share a set of driver > workaround names so that they can be turned on by Chrome (or Skia) as > needed. > > To avoid weird cross-repository dependencies, the generator script is > duplicated in Skia. > > This patch just adds a few dummy workaround names to make sure the build > process is working. The followup to this is to add workaround init > to GrContext/GrContextOptions and to start implementing individual > workarounds. > > Implementing these workarounds is to support Chrome's "out of process > raster" which will use Ganesh without a command buffer, and so will not > have the workarounds that the command buffer provides. > > Bug: chromium:829614 > Change-Id: I40745a777a95805995991fedb81657ae418b52d9 > Reviewed-on: https://skia-review.googlesource.com/120608 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Adrienne Walker <enne@chromium.org> TBR=bsalomon@google.com,enne@chromium.org Change-Id: Ie0b69d7d028dabca1fd70813b6920386c8838247 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:829614 Reviewed-on: https://skia-review.googlesource.com/122240 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* path is rect track cornersGravatar Cary Clark2018-04-19
| | | | | | | | | | | | | | | | | | | | This was triggered by an exploit that started the first edge well outside the final rectangle, causing the captured to exceed the correct result. Ivan observes that we really only want the first and third corners to compute the bounds, so remove the tracking code that looks for a valid range of points, and record the corners instead. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: If228573d0f05c7158dba8142c144d13834e691ec Reviewed-on: https://skia-review.googlesource.com/122081 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org>
* Add stub gpu workaround generatorsGravatar Adrienne Walker2018-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | Like https://chromium-review.googlesource.com/c/chromium/src/+/1005362, this patch adds a way for Chrome and Skia to share a set of driver workaround names so that they can be turned on by Chrome (or Skia) as needed. To avoid weird cross-repository dependencies, the generator script is duplicated in Skia. This patch just adds a few dummy workaround names to make sure the build process is working. The followup to this is to add workaround init to GrContext/GrContextOptions and to start implementing individual workarounds. Implementing these workarounds is to support Chrome's "out of process raster" which will use Ganesh without a command buffer, and so will not have the workarounds that the command buffer provides. Bug: chromium:829614 Change-Id: I40745a777a95805995991fedb81657ae418b52d9 Reviewed-on: https://skia-review.googlesource.com/120608 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Adrienne Walker <enne@chromium.org>
* Move strike cache Find*() to strike cacheGravatar Herb Derby2018-04-18
| | | | | | | | | BUG=skia:7515 Change-Id: Ic1580d4752d51a62df5427a28f843bc7b3181797 Reviewed-on: https://skia-review.googlesource.com/122020 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Remove SK_SUPPORT_LEGACY_PATH_DAA_BITGravatar Yuqian Li2018-04-18
| | | | | | | | Change-Id: I5ff39063b1adc1c4f2bf5246fd69c6031c444908 Reviewed-on: https://skia-review.googlesource.com/122133 Commit-Queue: Yuqian Li <liyuqian@google.com> Auto-Submit: Yuqian Li <liyuqian@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Prevent unnecessary/unbounded growth of SkTDynamicHash capacityGravatar Florin Malita2018-04-18
| | | | | | | | | | | | | | | | | | | | | | | SkTDynamicHash doesn't immediately recycle slots for removed entries, but instead just marks them as deleted. The only way to reclaim deleted slots currently is when an exponential grow/resize is triggered. A consequence of this is that the capacity/allocated storage can grow indefinitely when the hash is long-lived and churning -- even if the number of active entries is small/stable. To prevent this, I propose we only grow the capacity when the number of active slots constitutes a significant portion. Otherwise (when most slots are deleted), we trigger a "purge" (resize to the same capacity) to clear the tombstones. Bug: chromium:832482 Change-Id: Iefdcd7439f7d62ac021e176b71007d207c8bc876 Reviewed-on: https://skia-review.googlesource.com/122082 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* DFT to draw A8 instead of incorrect vertical lcd.Gravatar Ben Wagner2018-04-18
| | | | | | | | | | | | | The distance field text renderer currently supports RGB and BGR striping but does not support vertical striping. Currently the vertical request is ignored and a horizontal striping is used when a vertical striping is requested. Instead of drawing the incorrect striping when vertical striping is requested, draw without the striping instead. Change-Id: Ic2b173fbfef7db1d2581bf22a5d52dd2a5a24e97 Reviewed-on: https://skia-review.googlesource.com/122085 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* ccpr: Implement conicsGravatar Chris Dalton2018-04-18
| | | | | | | | | | TBR=egdaniel@google.com Bug: skia: Change-Id: Idf7811dc285961db52db41c9ff145afda40c274d Reviewed-on: https://skia-review.googlesource.com/122127 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Always call endFlush on opLists that might survive a flushGravatar Chris Dalton2018-04-18
| | | | | | | | | | | | We were missing a few that got unreffed due to failed proxy instantiation. Bug: skia:7655 Bug: skia:7111 Change-Id: I95847a16890f2993a1433d4d9fdaa8a4a6c2f0b6 Reviewed-on: https://skia-review.googlesource.com/122121 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Convert A8 D32 mask blitters to Sk4pxGravatar Florin Malita2018-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | Improves the newly added bench by ~25% (hsw): -- before -- micros bench 2298.34 shadermaskfilter_picture_80 8888 2339.60 shadermaskfilter_picture_ff 8888 2287.11 shadermaskfilter_bitmap_80 8888 2223.14 shadermaskfilter_bitmap_ff 8888 -- after -- 1693.36 shadermaskfilter_picture_80 8888 1637.45 shadermaskfilter_picture_ff 8888 1691.65 shadermaskfilter_bitmap_80 8888 1637.70 shadermaskfilter_bitmap_ff 8888 But: skia:7810 Change-Id: I7274b10f517551ee2c0646842f72e0372d55e509 Reviewed-on: https://skia-review.googlesource.com/121642 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@google.com>
* Reland "Fix the fat rect bug in the threaded backend"Gravatar Yuqian Li2018-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1b637615144604a2d50cf983ac9aa5aab71cf73b. Reason for revert: add guard flag Original change's description: > Revert "Fix the fat rect bug in the threaded backend" > > This reverts commit c41569a29fde10c6fec43cc4593334e9a4b34b76. > > Reason for revert: maybe break the Chrome layout tests > > Original change's description: > > Fix the fat rect bug in the threaded backend > > > > Bug: skia:7813 > > Change-Id: I954232be1dccc63ce412ccde92c4f0e4617317b9 > > Reviewed-on: https://skia-review.googlesource.com/121641 > > Reviewed-by: Cary Clark <caryclark@google.com> > > Commit-Queue: Yuqian Li <liyuqian@google.com> > > TBR=caryclark@google.com,liyuqian@google.com,reed@google.com > > Change-Id: If35617a9774b3367561981e39a2fa89a972684b9 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia:7813 > Reviewed-on: https://skia-review.googlesource.com/121820 > Reviewed-by: Yuqian Li <liyuqian@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia:7813 Change-Id: I8b17be4251b5efc20142295cca787474f32e3a86 Reviewed-on: https://skia-review.googlesource.com/122100 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Support all destination profiles in SkColorSpaceXform_skcmsGravatar Brian Osman2018-04-18
| | | | | | | | | | | | | EnsureUsable forces the profile to something that we can target, so there may be some quality tradeoff (or complete fallback to sRGB for B2A profiles), but we will no longer fail to transform. Bug: skia: Change-Id: I6c5ffb8f092cd0aeffadc361c3ae95825916fa4f Reviewed-on: https://skia-review.googlesource.com/122080 Commit-Queue: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* With ES3, enable both ES2 and ES3 external image extensionsGravatar Brian Osman2018-04-18
| | | | | | | | Bug: skia:7713 Change-Id: If06c0368e91c33bbac9e7715227d619c4834684f Reviewed-on: https://skia-review.googlesource.com/121884 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* fix path is rect flaw exposed by goldGravatar Cary Clark2018-04-18
| | | | | | | | | | | | | | | | | | | One of the path is rect bug fixes changed the behavior of zero-length strokes which showed up as a change in Gold. The bug is if a rect is defined by a series of colinear movetos, the bounds did not work out if the rect started and stopped in the middle of a side. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I226545efeda03dedd928eebc120d2508b428fef0 Reviewed-on: https://skia-review.googlesource.com/122002 Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* Simplify strike cache NodeGravatar Herb Derby2018-04-18
| | | | | | | | Change-Id: Ia7d65d84ad0ebe2a62fbd98629c7c37273a6167a Reviewed-on: https://skia-review.googlesource.com/121980 Auto-Submit: Herb Derby <herb@google.com> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Remove text flag filtering from SkBitmapDevice.Gravatar Ben Wagner2018-04-18
| | | | | | | | | | The SkScaler context can do subpixel antialiasing for fake bold, path effects, and stroking. So don't disable LCD due to these reasons. Change-Id: I6688e96e7e3d2b3a1d610b3e46d87d33b9f08059 Reviewed-on: https://skia-review.googlesource.com/121881 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Move node information to SkStrikeCacheGravatar Herb Derby2018-04-17
| | | | | | | | | | | | | | Move all the information for handling nodes into SkStrikeCache. Having all the cache organization in SkStrikeCache will localize all the Chrome pinning machinery to this class. BUG=skia:7515 Change-Id: I5bc5488ddfe1806d62927d13148af36dac08eae9 Reviewed-on: https://skia-review.googlesource.com/121888 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* detect if we made an infinite rectGravatar Mike Reed2018-04-17
| | | | | | | | Bug: oss-fuzz:7747 Change-Id: I43897e90bb3f0929afa72c40336f771f3a878ecb Reviewed-on: https://skia-review.googlesource.com/121887 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* No long require copy as draw for vulkan wrapped resources.Gravatar Greg Daniel2018-04-17
| | | | | | | | | | | | | | With the recent changes to GrBackendTexture and the atomic ref counted GrVkImageLayout, this should not longer be an issue for cross context images. There still is the requirement that they need to manually synchronize the submission of work involving the image on two threads, but that is a requirement regardless of layout issues. Bug: skia: Change-Id: Ia86e51fda8606838dabd1bc36cf14c7679b46d49 Reviewed-on: https://skia-review.googlesource.com/121349 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* path is rect diag test is requiredGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | Removed a test that appeared to go uncalled; Ivan to the rescue, with a test case proving that it is required. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I7df9688072bd36b7597673148e3fe5dbbf82f5a7 Reviewed-on: https://skia-review.googlesource.com/121883 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* SkStrikeDifferences::operator() -> add()Gravatar Mike Klein2018-04-17
| | | | | | | | | | Am I crazy or is this use of operator() rather unclear? Change-Id: If388047f8a02be90f30e54452c75ebfec8b57a37 Reviewed-on: https://skia-review.googlesource.com/121880 Auto-Submit: Mike Klein <mtklein@chromium.org> Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Herb Derby <herb@google.com>
* avoid overflow by using tmp 64bitsGravatar Mike Reed2018-04-17
| | | | | | | | | Bug: oss-fuzz:7746 Cq-Include-Trybots: skia.primary:Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-All-SKNX_NO_SIMD Change-Id: Iba3ea50331fa06ca201ac316e33d4f79ab8ef459 Reviewed-on: https://skia-review.googlesource.com/121802 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Move external texture extension logic into SkSLGravatar Brian Osman2018-04-17
| | | | | | | | | | Automatically enable the extension if any external samplers are used. Bug: skia:7713 Change-Id: I1de2faddd7c8eda864873941b90d7a4c4606497a Reviewed-on: https://skia-review.googlesource.com/121797 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* path is rect bug number twelveGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | | | | Exposes that final close along a diagonal need not include a close verb if the subsequent verb is move; so we have to check for a diagonal then. The later check for diagonal included a comment that it may not be needed which does appear to be the case. R=robertphillips@google.com Bug: 824145,skia:7792 Change-Id: I17a9414e8b3e69b82c2eda28195696eae4e3d513 Reviewed-on: https://skia-review.googlesource.com/121801 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Fix the fat rect bug in the threaded backend"Gravatar Yuqian Li2018-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c41569a29fde10c6fec43cc4593334e9a4b34b76. Reason for revert: maybe break the Chrome layout tests Original change's description: > Fix the fat rect bug in the threaded backend > > Bug: skia:7813 > Change-Id: I954232be1dccc63ce412ccde92c4f0e4617317b9 > Reviewed-on: https://skia-review.googlesource.com/121641 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=caryclark@google.com,liyuqian@google.com,reed@google.com Change-Id: If35617a9774b3367561981e39a2fa89a972684b9 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7813 Reviewed-on: https://skia-review.googlesource.com/121820 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* only recheck fNeedsTiling if we computed fSrcBoundsGravatar Mike Reed2018-04-17
| | | | | | | | Bug: oss-fuzz:7363 Change-Id: I64cc83d31e8aaf8221e78c3b5301ffcce45449c1 Reviewed-on: https://skia-review.googlesource.com/121795 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add SkColorSpace::Make, taking an skcms_ICCProfileGravatar Brian Osman2018-04-17
| | | | | | | | | Bug: skia:7419 Change-Id: I912d4ae842d9cab09395fac3136e2e900611c8e5 Reviewed-on: https://skia-review.googlesource.com/121358 Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Reland "low-hanging bilerp_clamp_8888 wins"Gravatar Mike Klein2018-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of f946b41643e049f3b81f40316373ad22e1518818 Patches since the original make sure the sample area sums to 1. Original change's description: > low-hanging bilerp_clamp_8888 wins > > - support sampling bgra too > - lowp impl > > Bug: skia:7810 > > Change-Id: I21db805483f612024802f2b508c140c42a029c54 > Reviewed-on: https://skia-review.googlesource.com/121582 > Commit-Queue: Mike Klein <mtklein@google.com> > Reviewed-by: Florin Malita <fmalita@chromium.org> Bug: skia:7810 Change-Id: If20d31b4f8c4163bdb567b4f15a62035265b1b30 Reviewed-on: https://skia-review.googlesource.com/121464 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Reorganize strike cache and glyph cache codeGravatar Herbert Derby2018-04-17
| | | | | | | | | BUG=skia:7515 Change-Id: I05867890e88de7a7d23b60d9eec989d93d39d333 Reviewed-on: https://skia-review.googlesource.com/121783 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Fix the fat rect bug in the threaded backendGravatar Yuqian Li2018-04-17
| | | | | | | | Bug: skia:7813 Change-Id: I954232be1dccc63ce412ccde92c4f0e4617317b9 Reviewed-on: https://skia-review.googlesource.com/121641 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* yet another path is rect exploitGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | This one accumulates the othershoot when all four sides have the same direction, and the final side when closed should cause the overshoot to be ignored. Docs-Preview: https://skia.org/?cl=121787 Bug: 824145,skia:7792 Change-Id: I71ea0fcdd0f03a4fcac224b57220c65c321112f6 Reviewed-on: https://skia-review.googlesource.com/121787 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
* a more involved path is rect bugGravatar Cary Clark2018-04-17
| | | | | | | | | | | | | | | | | | This is bug number ten in the series, and is the most interesting. It exploits that the code tracks corners 0, 2, and 3 but not corner 1. Changing the code to track all corners is the biggest so far, and while it (hopefully) simplifies things, the presence of new code may signify more bugs to come. R=robertphillips@google.com Bug: 824145,skia::7792 Change-Id: Ia18e4d80fbed06ae6d9c89dcb4c462c5610213cc Reviewed-on: https://skia-review.googlesource.com/121487 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* Update our config fallback switch in GrContext.Gravatar Greg Daniel2018-04-17
| | | | | | | | | | | | | First we didn't have any of our new private configs in the fallback switch statement. Also this is a workaround for the case where we want to make a copy of a Gray8 image but we claim its not renderable so we fail the copy. Bug: skia: Change-Id: I68d29c91f07bb87eb1eec650594cc035ed823e3f Reviewed-on: https://skia-review.googlesource.com/121355 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "low-hanging bilerp_clamp_8888 wins"Gravatar Mike Klein2018-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f946b41643e049f3b81f40316373ad22e1518818. Reason for revert: nervous diffs Original change's description: > low-hanging bilerp_clamp_8888 wins > > - support sampling bgra too > - lowp impl > > Bug: skia:7810 > > Change-Id: I21db805483f612024802f2b508c140c42a029c54 > Reviewed-on: https://skia-review.googlesource.com/121582 > Commit-Queue: Mike Klein <mtklein@google.com> > Reviewed-by: Florin Malita <fmalita@chromium.org> TBR=mtklein@chromium.org,mtklein@google.com,fmalita@chromium.org Change-Id: Id91d583151091a082a2d3f301d85f3acb12f4b19 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7810 Reviewed-on: https://skia-review.googlesource.com/121589 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* low-hanging bilerp_clamp_8888 winsGravatar Mike Klein2018-04-16
| | | | | | | | | | | | - support sampling bgra too - lowp impl Bug: skia:7810 Change-Id: I21db805483f612024802f2b508c140c42a029c54 Reviewed-on: https://skia-review.googlesource.com/121582 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Don't support GrCubicEffect if float != fp32Gravatar Chris Dalton2018-04-16
| | | | | | | | | | Otherwise the cubic math is too unstable. Bug: skia: Change-Id: I2c8d8d9abcae517d42dd3eddb5bf455c7c7487dd Reviewed-on: https://skia-review.googlesource.com/121709 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Revert "ccpr: Implement conics"Gravatar Chris Dalton2018-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 98b241573e6083c4c7f0ce9e30cc214c4da1a8ba. Reason for revert: TSAN not happy Original change's description: > ccpr: Implement conics > > Bug: skia: > Change-Id: I4bae8b059072af987abb7b2d9c57fe08f783d680 > Reviewed-on: https://skia-review.googlesource.com/120040 > Commit-Queue: Chris Dalton <csmartdalton@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com Change-Id: Ic29bf660f042c20b7e4492b03400412e378dbb8a No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/121717 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* ccpr: Implement conicsGravatar Chris Dalton2018-04-16
| | | | | | | | Bug: skia: Change-Id: I4bae8b059072af987abb7b2d9c57fe08f783d680 Reviewed-on: https://skia-review.googlesource.com/120040 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Rename SkGlyphCacheGlobals to SkStrikeCacheGravatar Herb Derby2018-04-16
| | | | | | | Change-Id: I7773c1fff309bf9416f16fe9908191eeba94eb99 Reviewed-on: https://skia-review.googlesource.com/121356 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>