aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Revert "remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS"Gravatar Mike Reed2016-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8e7432b7f98dd592e529a0c8bb038d73ebfb0478. Reason for revert: <INSERT REASONING HERE> external/skia/bench/../tools/android/SkAndroidSDKCanvas.h:103:36: error: C++ requires a type specifier for all declarations void onClipRect(const SkRect&, ClipOp, ClipEdgeStyle) override; Original change's description: > remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS > > > switch over to SkClipOps now that SK_SUPPORT_LEGACY_CLIP_REGIONOPS is gone > > BUG=skia: > > Change-Id: Ifdc8b3746d508348a40cc009a4e529a1cb3c405d > Reviewed-on: https://skia-review.googlesource.com/5714 > Commit-Queue: Mike Reed <reed@google.com> > Reviewed-by: Mike Reed <reed@google.com> > TBR=reed@google.com,reviews@skia.org BUG=skia: NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: If26ea91d7464615e43c1d3d2f726e337ff56b55c Reviewed-on: https://skia-review.googlesource.com/5721 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Add the ability to use different mallocs.Gravatar Herb Derby2016-12-09
| | | | | | | | | | | | | gn gen --args='malloc="tcmalloc"' gn gen --args='malloc="jemalloc"' or if the library is in a non-standard directory gn gen --args='malloc="tcmalloc" extra_ldflags="-L<path-to-library>"' Change-Id: Icacd837d11392a1971f298ccddd69a5a6781f6cf Reviewed-on: https://skia-review.googlesource.com/5629 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* fix fuzzersGravatar Cary Clark2016-12-08
| | | | | | | | | | | | | | Two crashes and a hang. Abort and return false in these cases. TBR=kjlubick@google.com BUG=skia:5983 Change-Id: I41ac3e56d47ee423b634b2f4886085b9caada76b Reviewed-on: https://skia-review.googlesource.com/5716 Reviewed-by: Cary Clark <caryclark@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* remove SK_SUPPORT_LEGACY_CLIP_REGIONOPSGravatar Mike Reed2016-12-08
| | | | | | | | | | | switch over to SkClipOps now that SK_SUPPORT_LEGACY_CLIP_REGIONOPS is gone BUG=skia: Change-Id: Ifdc8b3746d508348a40cc009a4e529a1cb3c405d Reviewed-on: https://skia-review.googlesource.com/5714 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Remove documentation about emboss.Gravatar Joe Gregorio2016-12-08
| | | | | | | | | | | | | BUG=skia: NOTRY=true DOCS_PREVIEW= https://skia.org/?cl=5708 Change-Id: Iac133df3778061509f5754aa6a742cebc2ab6ba6 Reviewed-on: https://skia-review.googlesource.com/5708 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Heather Miller <hcm@google.com> Commit-Queue: Joe Gregorio <jcgregorio@google.com>
* simplify bugGravatar Cary Clark2016-12-08
| | | | | | | | | | | | | | | | | | | | | | | The path contains a cubic with a very tight curve. Split the cubic into pieces so that the individual curves are better behaved. Use both inflections and max curvature to potentially split cubics. Since this may require a bit of work, preflight to ignore cubics that monotonically change in x and y. Only one of the three tests referred to by the bug below repro'd. Use path.dumpHex() instead of path.dump() to capture the crashing data. TBR=reed@google.com BUG=skia:6041 Change-Id: I29a264f87242cacc7c421e7685b90aca81621c74 Reviewed-on: https://skia-review.googlesource.com/5702 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Cary Clark <caryclark@google.com>
* remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS flagGravatar Mike Reed2016-12-08
| | | | | | | | | | BUG=skia: Change-Id: I57871d008d3e630369edcef5473a1f1d1f0c0822 NOTRY=True Reviewed-on: https://skia-review.googlesource.com/5715 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* remove SK_SUPPORT_LEGACY_REFENCODEDDATA_NOCTX flagGravatar Mike Reed2016-12-08
| | | | | | | | | BUG=skia: Change-Id: I51b7778db8b596b2633b6be9488af984cee2af70 Reviewed-on: https://skia-review.googlesource.com/5713 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Removed non-Identity matrix in non-PCSXYZ Input check for ICC profilesGravatar raftias2016-12-08
| | | | | | | | | | | | | The presence seems to be disallowed in the specs (10.8/10.9), but two test images on the ICC website have them, and fail if we abort. Replaced the failure with a print warning. BUG=skia: Change-Id: I463f1a8861eaa0eb62081c3213017dba9012c890 Reviewed-on: https://skia-review.googlesource.com/5658 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Robert Aftias <raftias@google.com>
* Revert "Remove antialiasing control from GrPaint."Gravatar Brian Salomon2016-12-08
| | | | | | | | | | | This reverts commit 9f549358b3ac9f61e78b194e39d6ac6eb322e35e. Reason for revert: hitting asserts Change-Id: I542d34edc05ecf72b7646263f25736a0950c78e7 Reviewed-on: https://skia-review.googlesource.com/5707 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* libviewer.so on Android, delete hello_skia_appGravatar Mike Klein2016-12-08
| | | | | | | | | This spins off parts of 5620 to bake while we work through how to do the rest of libviewer.so -> viewer.apk. Change-Id: I1cbf135cc952eeb7593e80a5a752dcadaa2dbb00 Reviewed-on: https://skia-review.googlesource.com/5656 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Remove antialiasing control from GrPaint.Gravatar Brian Salomon2016-12-08
| | | | | | | | | | | | | This adds an additional param (of new enum type GrAA) to draws that can antialias and a new enum GrAAType to indicate the AA technique (none, fragment shader computed coverage, msaa). Some GMs change due to this: 1) In some places we weren't disabling MSAA when the draw was supposed to be unantialiased. 2) Some bounding rect draws that use GrFragmentProcessors were unnecessarily turning on antialiasing, by disabling it a very small number of pixel LSBs change. Change-Id: I7d8d8793dda70bcd373d09055beb9949c1a8a4d0 Reviewed-on: https://skia-review.googlesource.com/5608 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* On mips64el, use -B instead of linking .o manually.Gravatar Mike Klein2016-12-08
| | | | | | | | | | | These .o are only appropriate for linking executables; others would be used if we link an .so. -B turns out to be the flag we really wanted here anyway, adding that directory to the search path for all these .o files, letting Clang pick the right one. The existing comment is now correct for both the lib_dirs and ldflags +=. Change-Id: I66d9aada12477756142726828cf66c142ca76a48 Reviewed-on: https://skia-review.googlesource.com/5657 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Added some named gamma recognition to lutnType ICC profile parsingGravatar raftias2016-12-08
| | | | | | | | | | | | | | Most CMYK images I tested had linear gamma specified as tables, which is easily recognized and when present allows an entire SkRasterPipeline stage to be avoided for every single channel. This is likely due to the fact that gamma tables are required in lutntype A2B0 profiles. BUG=skia: Change-Id: I82b65848c4099035d61098abb66e9afe0b080930 Reviewed-on: https://skia-review.googlesource.com/5388 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Robert Aftias <raftias@google.com>
* Fix bitmap-image srgb gmGravatar Matt Sarett2016-12-08
| | | | | | | | | | | | | | This changed behavior when asLegacyBitmap() was modified to always initiate a decode in legacy mode. This fixes the gm to work as originally intended. BUG=skia: Change-Id: I34d35f6f445bd4606c6e28f83905702ec0b36bbb Reviewed-on: https://skia-review.googlesource.com/5696 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Added clamps in SkRasterPipeline's gamma stages.Gravatar raftias2016-12-08
| | | | | | | | | | | | | | Clamping stages were also removed from SkColorSpace_A2B as they are now not needed. BUG=skia: CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I24e2e411e12b463854e980cb10c0e6bafb4a7c42 Reviewed-on: https://skia-review.googlesource.com/5546 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Robert Aftias <raftias@google.com>
* Roll third_party/externals/freetype 4d3f7ca8cedb..ffd8f622360Gravatar Ben Wagner2016-12-08
| | | | | | | | | https://skia.googlesource.com/third_party/freetype2.git/+log/4d3f7ca8cedb..ffd8f622360 Change-Id: Ia9d8af09253d0aff343c2310f5eb8c934b2ebbda Reviewed-on: https://skia-review.googlesource.com/5685 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Add .clang-format file to include/gpu src/gpuGravatar Brian Salomon2016-12-08
| | | | | | | Change-Id: Ie686f043f4b3a0a2bbd7ab38cf6bab53bb825a79 Reviewed-on: https://skia-review.googlesource.com/5651 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* [SVGDom] ClipPath supportGravatar Florin Malita2016-12-08
| | | | | | | | | | | | | * clip-path attribute handling * clipPath container element * asPath() SkSVGNode virtual for capturing subtree geometry R=robertphillips@google.com,stephana@google.com Change-Id: I9597534fe3047b631da6309eafac055dff5696e9 Reviewed-on: https://skia-review.googlesource.com/5650 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Add fuzzing for decoding animated imagesGravatar Leon Scroggins III2016-12-08
| | | | | | | | | | | | | | Add a new mode to decode all frames of an animated image. Use incremental decoding, rather than getPixels, since the primary client uses incremental decoding. Do not decode animated as index 8, which is only supported for the first frame. Change-Id: I5d7ed1a81c1ef37df3701c483486d4beff0f62a7 Reviewed-on: https://skia-review.googlesource.com/5679 Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Make sure all the convolve functions are defined.Gravatar Mike Klein2016-12-08
| | | | | | | | | | CQ_INCLUDE_TRYBOTS=skia.primary:Build-Ubuntu-GCC-x86_64-Release-Fast,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I5ae1fdee957f796d8051bbb0eca9e037aef9b2c9 Reviewed-on: https://skia-review.googlesource.com/5655 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* add missing []Gravatar Mike Klein2016-12-08
| | | | | | | | | | | | BUG=skia:6039 NOTRY=true DOCS_PREVIEW= https://skia.org/?cl=5653 Change-Id: I8bb0e0fec71cea99a9804cc855371fd153b52ce1 Reviewed-on: https://skia-review.googlesource.com/5653 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add AVX2 version of ConvolveVerticallyGravatar xiangze.zhang2016-12-07
| | | | | | | | | | | | | | | | ConvolveVertically time is reduced about 60% using haswell cpu. Nanobench results: before after bitmap_scale_filter_64_256 611us 302us bitmap_scale_filter_80_90 101us 64.9us bitmap_scale_filter_30_90 82.3us 51.4us bitmap_scale_filter_10_90 73.6us 42.4us BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2526733002 CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Review-Url: https://codereview.chromium.org/2526733002
* Revert "Add antialiasing to SkDropShadowImageFilter's shadow draw"Gravatar Robert Phillips2016-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 78e8165ec3a408a88c394095bfbc43df2051449d. Reason for revert: Chrome pixel test Original change's description: > Add antialiasing to SkDropShadowImageFilter's shadow draw > > A BW draw in the SkDropShadowImageFilter can lead to unexpected popping of the shadow when the dest rect lies on half pixel boundaries. > > Change-Id: Ibc59dacc79bca8955981ec2889e79facd7d2de83 > Reviewed-on: https://skia-review.googlesource.com/5669 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I0b0073cd8d9f1502daaa452c2153af029c11e52a Reviewed-on: https://skia-review.googlesource.com/5652 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Rename GrBatchFlushState to GrOpFlushStateGravatar Brian Salomon2016-12-07
| | | | | | | Change-Id: I1a8052c61d7624929caf45ba44e2a465cd0dc1c2 Reviewed-on: https://skia-review.googlesource.com/5649 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Rename GrRTC::drawBatch to addDrawOp and local vars in GrRTC.cppGravatar Brian Salomon2016-12-07
| | | | | | | Change-Id: Ic8b896d7779844de5f82f9f0e630508578a8f61d Reviewed-on: https://skia-review.googlesource.com/5647 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* no need for SK_SUPPORT_LEGACY_CANVAS_IS_REFCNT anymoreGravatar Mike Reed2016-12-07
| | | | | | | | | BUG=skia: Change-Id: If0aa01beb8be9bd7d9a3a5b23c795223b02f02d3 Reviewed-on: https://skia-review.googlesource.com/5690 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* remove SK_SUPPORT_LEGACY_CANVAS_IS_REFCNT from androidGravatar Mike Reed2016-12-07
| | | | | | | | | | BUG=skia: Change-Id: I78db77832431d1847cef7de1f74613bfe6b87c7d NOTRY=True Reviewed-on: https://skia-review.googlesource.com/5691 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* SkBitmap::ComputeIsOpaque -> SkPixmap::computeIsOpaqueGravatar Hal Canary2016-12-07
| | | | | | | | | | | | | | Motivation: Twice internal Skia clients have to do something awkward like this: bool ComputeIsOpaque(const SkPixmap& pixmap) { SkBitmap bm; return bm.installPixels(pixmap) && SkBitmap::ComputeIsOpaque(bm); } Change-Id: I7263c06f754c1305ecb07c4c005d9cfb9d1f523d Reviewed-on: https://skia-review.googlesource.com/5684 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Revert "Fix SDF generation for pixel-aligned paths"Gravatar Jim Van Verth2016-12-07
| | | | | | | | | | | This reverts commit 92964124c5ff61729357a51dc212ca5938093e89. Reason for revert: Causing roll failure. Need to find images to rebaseline Change-Id: I09cad4c3a48fefcfc669fb1045613336c88cb33a Reviewed-on: https://skia-review.googlesource.com/5686 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* fix build. tests/BitmapTest w/ nogpuGravatar Hal Canary2016-12-07
| | | | | | | | | NOTRY=true TBR=herb@google.com Change-Id: I09d7bd262a805e109a0869a83dec05ae03cff747 Reviewed-on: https://skia-review.googlesource.com/5687 Reviewed-by: Hal Canary <halcanary@google.com>
* remove SK_SUPPORT_LEGACY_CLIP_REGIONOPS for androidGravatar Mike Reed2016-12-07
| | | | | | | | | | | | | ... to land *after* we land the change in master to use SkClipOps BUG=skia: Change-Id: I58d73866324aae9b9693afcd2a81aef503241a46 NOTRY=True TBR=djsollen Reviewed-on: https://skia-review.googlesource.com/5678 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* SkBitmap::ComputeIsOpaque and SkBitmap::eraseColor support F16Gravatar Hal Canary2016-12-07
| | | | | | | | | Also add a unit test. Change-Id: I9b6635ce9dd504788ca36b3246eaac2b37c2f3a6 Reviewed-on: https://skia-review.googlesource.com/5443 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Rename batch->op in GrOpList and subclassesGravatar Brian Salomon2016-12-07
| | | | | | | Change-Id: I9c82483c4ac0dc140fb1e5e3650d6ff1e5917e99 Reviewed-on: https://skia-review.googlesource.com/5646 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Rework GrRenderTargetOpList::setupDstReadIfNecessary.Gravatar Brian Salomon2016-12-07
| | | | | | | | | | | | | Move the necessary check to the caller. This removes the GrPipelineBuilder param which makes this useable with future GrDrawOps that can be recorded without one. Rename to setupDstTexture(). This only is involved in the texture method of getting the destination color to the XP. Change-Id: I1b781da3d42586534470a23a572805ec939cb730 Reviewed-on: https://skia-review.googlesource.com/5645 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* hide emboss from everyone (except android for now)Gravatar Mike Reed2016-12-07
| | | | | | | | | BUG=skia: Change-Id: Ibd453b0a63948e3e4950f02459d7bc01a6ed26c5 Reviewed-on: https://skia-review.googlesource.com/5671 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Derek Sollenberger <djsollen@google.com>
* Add NarrowRGB gamut mode to SampleAppGravatar Brian Osman2016-12-07
| | | | | | | | | | | | | Helpful for reproducing DM failures from this config, and comparing the results of out-of-gamut colors between gpu and raster. BUG=skia: Change-Id: I6f091ea47c40ac594bc9e1254bbdd01ac13796d2 Reviewed-on: https://skia-review.googlesource.com/5510 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Skip the sRGB mip-map testing on command bufferGravatar brianosman2016-12-07
| | | | | | | | | Chromium command buffer now has the sRGB decode extension, but it doesn't make any guarantees about the interaction with glGenerateMipmap. BUG=skia: Review-Url: https://codereview.chromium.org/2557603006
* gn_to_bp.py fixesGravatar Mike Klein2016-12-07
| | | | | | | | | | | - no u"" strings - more pervasive sorting - include sources from optional Skia components (e.g. gpu, codec, pdf) - cosmetic nits Change-Id: Ief0f293117dbfbc97584db185c067a8297067b74 Reviewed-on: https://skia-review.googlesource.com/5643 Reviewed-by: Leon Scroggins <scroggo@google.com>
* Add antialiasing to SkDropShadowImageFilter's shadow drawGravatar Robert Phillips2016-12-07
| | | | | | | | | A BW draw in the SkDropShadowImageFilter can lead to unexpected popping of the shadow when the dest rect lies on half pixel boundaries. Change-Id: Ibc59dacc79bca8955981ec2889e79facd7d2de83 Reviewed-on: https://skia-review.googlesource.com/5669 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "SkImageEncoder::* going away"Gravatar Hal Canary2016-12-07
| | | | | | | | | | | This reverts commit d7e16661bb36924b2c8f717c527b876dabb595f3. Reason for revert: breaking g3 NOTRY=true Change-Id: I56d53adca64a94b4f66dd0539634804a96e92ddf Reviewed-on: https://skia-review.googlesource.com/5672 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Hal Canary <halcanary@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Fix SDF generation for pixel-aligned pathsGravatar Jim Van Verth2016-12-07
| | | | | | | | | BUG=668550 Change-Id: Ib496db82c7391aca61b31afaeb5445260170cc49 Reviewed-on: https://skia-review.googlesource.com/5549 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* SkImageEncoder::* going awayGravatar Hal Canary2016-12-07
| | | | | | | | | | Approval from https://review.skia.org/5006 TBR=reed@google.com Change-Id: I43d1a24fa3e924b3c24b224f2451ab990b440dc8 Reviewed-on: https://skia-review.googlesource.com/5413 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Tighten up when a line requires aa in SkGpuDevice.Gravatar Brian Salomon2016-12-07
| | | | | | | | | For some reason this was dropping AA on horizontal/vertical lines at integers rather than half-integers. Change-Id: I291652778d9dfc46072edcb2a557b8aea332afff Reviewed-on: https://skia-review.googlesource.com/5633 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add gn_to_bp.py.Gravatar Mike Klein2016-12-06
| | | | | | | | | | | | | The general idea here is, run GN in --ide=json mode to get most information. Then, read a couple .gni files to get the rest (platform specific source lists, Android framework defines). For now, I'm generating Android.bp and SkUserConfig.h. I figure we can do DM and nanobench once these work? Change-Id: I8e7f60d6572f2d4769760cf872895518a15d841b Reviewed-on: https://skia-review.googlesource.com/5554 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* nanobench: Add per-run time reporting.Gravatar George Burgess IV2016-12-06
| | | | | | | | | | | | | | | | This patch adds per-benchmark-iteration times to our JSON output. Given that we already collect these statistics, giving them to the user would be nice. No unit-test provided, since `rgrep -i json tests` yielded nothing. Happy to add one if someone wants. BUG=None. TEST=nanobench now writes per-run timinings with the output JSON. Change-Id: I910f1d97fd3e0ee69fc8e78e011e67b9c866f18d Reviewed-on: https://skia-review.googlesource.com/5617 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Ravi Mistry <rmistry@google.com>
* Rewrite GrRenderTargetContext::drawRegion antialias logic.Gravatar Brian Salomon2016-12-06
| | | | | | | | | This will hopefully make a later change that refactors how aa is passed to GrRenderTargetContext a little easier to review. Change-Id: Ie750d237714a0407ec1e5604c0daa080da32519b Reviewed-on: https://skia-review.googlesource.com/5630 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add comment explaining the derivation of our Mitchell coefficientsGravatar Brian Osman2016-12-06
| | | | | | | | | BUG=skia: Change-Id: I8866df425ee9837e75f0b2f76777f7e5d68fb21d Reviewed-on: https://skia-review.googlesource.com/5624 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Refactor bilerp a little.Gravatar Mike Klein2016-12-06
| | | | | | | | | | | | | | | | | | | 1) rename to bilerp_xy, for x,y in {n[egative], p[ositive}; 2) pull out a save_xy stage to save off the original x,y; 3) also calculate the fractional x,y fx,fy once instead of 4 times. 1) is a pure refactor; 2) adds a stage but otherwise is nothing different; 3) changes images a little bit (fractional parts can vary a bit around powers of two). This extends naturally to naive bicubic using 16 bicubic_xy stages. CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I666de5c21e978abb4feb6e3225e5b5920ba6c5b9 Reviewed-on: https://skia-review.googlesource.com/5550 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* Apply linear gradient premul in 4fGravatar fmalita2016-12-06
| | | | | | | | | | | | | | | | | | | | | | | | (spotted by reed@) Instead of converting to SkPMColor first, apply the premul in 4f and then just store. A modified bench shows a significant speedup: 17/17 MB 1 690µs 695µs 695µs 700µs 0% █▅▁▄▆▅▁▅▆▃ 8888 gradient_linear_clamp_3color 17/17 MB 1 832µs 837µs 839µs 870µs 1% █▁▁▂▂▂▂▂▂▂ 8888 gradient_linear_clamp_hicolor 17/17 MB 1 651µs 659µs 665µs 701µs 3% ▆█▅▁▂▂▁▁▂▂ 8888 gradient_linear_clamp vs. 17/17 MB 1 1.03ms 1.03ms 1.04ms 1.08ms 2% ██▇▁▁▁▁▁▁▁ 8888 gradient_linear_clamp_3color 17/17 MB 1 1.17ms 1.18ms 1.18ms 1.22ms 1% █▄▂▁▁▁▁▁▁▁ 8888 gradient_linear_clamp_hicolor 17/17 MB 1 1.1ms 1.15ms 1.14ms 1.16ms 2% ▇▇▇▇▇▇██▁▁ 8888 gradient_linear_clamp R=reed@google.com,brianosman@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2409583003 Review-Url: https://codereview.chromium.org/2409583003