aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Add NewRGB() with float gamma to SkColorSpace public APIGravatar Matt Sarett2016-10-14
| | | | | | | | | | | | | Necessary because PNGs like to specify their gamma this way. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3402 Change-Id: I399984d611db907b115b345df1afc88d39326fbb Reviewed-on: https://skia-review.googlesource.com/3402 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Add support for Atrace and hook into SkEventTracer framework.Gravatar Greg Daniel2016-10-14
| | | | | | | | | | | | | | | This change is a different version of: https://skia-review.googlesource.com/c/3269/ BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3345 Change-Id: I49d4f2987740d3ad1307f6aba3add0d63a46b22d Reviewed-on: https://skia-review.googlesource.com/3345 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Greg Daniel <egdaniel@google.com>
* added SkSL support for mustForceNegatedAtanParamToFloat capGravatar ethannicholas2016-10-14
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2413363002 Review-Url: https://codereview.chromium.org/2413363002
* Slightly generalize GPU hard stop gradient implementation.Gravatar Brian Salomon2016-10-13
| | | | | | | | | | | | | | With this CL we handle single off-center hardstop gradients. BUG=chromium:543625 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3303 Change-Id: Ic754e87469475ce15865c54055b8ed492e1d826d Reviewed-on: https://skia-review.googlesource.com/3303 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* added basic dataflow analysis to skslcGravatar ethannicholas2016-10-13
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2405383003 Review-Url: https://codereview.chromium.org/2405383003
* Allow F16 color type on direct raster canvasesGravatar junov2016-10-13
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2416063002 Review-Url: https://codereview.chromium.org/2416063002
* remove SkErrorGravatar Mike Klein2016-10-13
| | | | | | | | | | | | | It has not caught on. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3321 Change-Id: Ib2ee4ef99bc89c8f4b7504e42a9d7d9dfc483015 Reviewed-on: https://skia-review.googlesource.com/3321 Reviewed-by: Leon Scroggins <scroggo@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Workaround unreachable code warning in GrGLCapsGravatar Brian Salomon2016-10-13
| | | | | | | | | | | BUG=skia:5833 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3179 Change-Id: I0b5ba57e533280e85b3672f476017dc12aefbbe5 Reviewed-on: https://skia-review.googlesource.com/3179 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Removed makeLinearGamma() from the public API for SkColorSpaceGravatar raftias2016-10-13
| | | | | | | | | | | | | | | It will now reside in SkColorSpace_Base. Future work for SkColorSpace will cause this function to not be desirable or sensible to call on all SkColorSpaces. Call sites were changed to make a kSRGBLinear_Named instead of kSRGB_Named -> makeLinearGamma() (the majority of cases), and if that was not possible, SkColorSpace_Base::makeLinearGamma() was called instead. TBR=reed@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2412613005 Review-Url: https://codereview.chromium.org/2412613005
* SkXPS: compile under clang on winGravatar halcanary2016-10-13
| | | | | | | BUG=chromium:616763 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2408133006 Review-Url: https://codereview.chromium.org/2408133006
* Revert of leave pixel memory uninitialized for opaque alpha type in ↵Gravatar mtklein2016-10-13
| | | | | | | | | | | | | | | | | | | | | | | | SkSurface::MakeRaster (patchset #1 id:1 of https://codereview.chromium.org/2412633002/ ) Reason for revert: Reverting while we think about skia:5854 so the bot doesn't regress further. Original issue's description: > leave pixel memory uninitialized for opaque alpha type in SkSurface::MakeRaster > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2412633002 > > Committed: https://skia.googlesource.com/skia/+/c64ef3563dc8badac3d64544513b03df826cf8c3 TBR=mtklein@chromium.org,bsalomon@google.com,reed@google.com,lsalzman@mozilla.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:5854 Review-Url: https://codereview.chromium.org/2421473003
* Preserve color space of images in deferred texture APIGravatar brianosman2016-10-13
| | | | | | | | | | | | | For raster images, this already worked (we were peeking the pixmap's info). But for generated images, we discarded format and color space information. Fixes an error with the deferred GMs in sRGB modes, and also should help the Chrome color correctness work. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2416453004 Review-Url: https://codereview.chromium.org/2416453004
* leave pixel memory uninitialized for opaque alpha type in SkSurface::MakeRasterGravatar lsalzman2016-10-12
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2412633002 Review-Url: https://codereview.chromium.org/2412633002
* Fix double-accounting of SkPictureShader bitmap memoryGravatar fmalita2016-10-12
| | | | | | | | | | | The pixels RAM is accounted via SkImageGenerator/SkImageCacherator, we don't need to report it as part of SkPictureShader's BitmapShaderRec. R=reed@google.com BUG=chromium:619929 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2415673002 Review-Url: https://codereview.chromium.org/2415673002
* Add SkRasterPipeline support to SkModeColorFilter.Gravatar Mike Klein2016-10-12
| | | | | | | | | | | | | | | | The shader leaves its color in r,g,b,a, so to implement this color filter, we move {r,g,b,a} into {dr,dg,db,da}, then load the filter's color in {r,g,b,a}, then apply the xfermode as usual. I've left a note about how we could sometimes cut a stage for some xfermodes. Similarly we really only need to move_src_dst instead of swap_src_dst, but it seemed handy and less error prone to do a full two way swap. As usual, we can always circle back and fine-tune these things if we want. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3243 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Change-Id: I928c0fb25236eb75cf238134c6bebb53af5ddf07 Reviewed-on: https://skia-review.googlesource.com/3243 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Matt Sarett <msarett@google.com>
* Remove workaround for old compilers that do not support SSSE3.Gravatar Mike Klein2016-10-12
| | | | | | | | | | | | | We now require SSSE3, SSE4.1, SSE4.2, AVX, F16C, AVX2, and FMA compiler support on x86. This lone workaround for missing SSSE3 support is incongruous. It's also unlikely that there's any x86 compiler that supports C++11 but not SSSE3, certainly none we care about. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3244 Change-Id: Ie83f5ebb3f214eec726fedd0df6f46e72f735f38 Reviewed-on: https://skia-review.googlesource.com/3244 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* SkRasterPipeline: 8x pipelines, without any 8x code enabled.Gravatar Mike Klein2016-10-12
| | | | | | | | | | | | | | | | | Original review here: https://skia-review.googlesource.com/c/2990/ Second attempt here: https://skia-review.googlesource.com/c/3064/ This is the same as the second attempt, but with the change to SkOpts_hsw.cpp left out. That omitted part is the key piece... this just lands the refactoring. CQ_INCLUDE_TRYBOTS=master.client.skia:Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot,Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-GN,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot;master.client.skia.compile:Build-Win-MSVC-x86_64-Debug-Trybot GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3242 Change-Id: Iaafa793a4854c2c9cd7e85cca3701bf871253f71 Reviewed-on: https://skia-review.googlesource.com/3242 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Don't pass in RT to individual Gpu CommandBuffer callsGravatar Greg Daniel2016-10-12
| | | | | | | | | | | | | | | | The Vulkan backend already stored a GrVkRT, but was inconsistent in sometimes using the stored value and sometimes the passed in value (though they should be the same). This just cleans up the code so that everyone uses a stored RT. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3126 Change-Id: I571de4bfb1da612d61171321d5224a9a19d8e545 Reviewed-on: https://skia-review.googlesource.com/3126 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Fix interface validation in Vulkan.Gravatar Greg Daniel2016-10-12
| | | | | | | | | | | | | TBR=bsalomon@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3176 Change-Id: Ifad3249e6839e9b4aa34792646b2d54ff9304da7 Reviewed-on: https://skia-review.googlesource.com/3176 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* GrTessellator: make inverse fill types more sane.Gravatar senorblanco2016-10-12
| | | | | | | | | | | | | | | | | | | | | In the screenspace AA tessellator, a path's fill types would be applied twice: once when extracting contours, and then again when filling polys. It was supposed to be forced to kWinding_FillType by the second call to mesh_to_polys(), but for hysterical reasons this parameter is unused! For kInverseWinding_FillType (the only mode where this actually caused a bug), I unwittingly papered over the problem by reversing the outer contour for the inverse fill types, and comparing against -1 instead of 1. The better fix is to actually pass a winding mode of kWinding_FillType to polys_to_triangles(), and remove the (ignored) param from mesh_to_polys(). Then we can pass a clockwise outer contour as before, and compare against 1 instead of -1. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2404403003 Review-Url: https://codereview.chromium.org/2404403003
* Turned on SkSL->GLSL compilerGravatar ethannicholas2016-10-12
| | | | | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003 Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3 Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310 Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89 Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c Committed: https://skia.googlesource.com/skia/+/ccb1dd8f267f9d7fe7c9d0ce222ebc81b41853b3 Review-Url: https://codereview.chromium.org/2288033003
* Add SkColorSpaceTransferFn to SkColorSpaceGravatar Matt Sarett2016-10-11
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3178 Change-Id: I354342d4469cee0e25a7b0d189e925e431da623c Reviewed-on: https://skia-review.googlesource.com/3178 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* implement A8 destination fast-path for SkPixelInfo::CopyPixelsGravatar lsalzman2016-10-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2407093002 Review-Url: https://codereview.chromium.org/2407093002
* fix vertex alpha calculation in GrTesselatorGravatar lsalzman2016-10-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2405813003 Review-Url: https://codereview.chromium.org/2405813003
* Add AA Analytic Compile Flag (and small fixes)Gravatar liyuqian2016-10-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2410303002 Review-Url: https://codereview.chromium.org/2410303002
* Add SkColorSpaceXform to the public APIGravatar msarett2016-10-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2390263002 Review-Url: https://codereview.chromium.org/2390263002
* Revert of Turned on SkSL->GLSL compiler (patchset #49 id:1240001 of ↵Gravatar jvanverth2016-10-11
| | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2288033003/ ) Reason for revert: Pre-emptive revert. Sorry, but we're getting back up on our roll and Chrome reverted our last one for apparently no reason. Original issue's description: > Turned on SkSL->GLSL compiler > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003 > > Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3 > Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310 > Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89 > Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b > Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c > Committed: https://skia.googlesource.com/skia/+/ccb1dd8f267f9d7fe7c9d0ce222ebc81b41853b3 TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2408193002
* Add SkColorSpacePrimaries to help with making D50 matricesGravatar msarett2016-10-11
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2304753002 Review-Url: https://codereview.chromium.org/2304753002
* Remove restrictive format pattern for Fontconfig matchingGravatar drott2016-10-11
| | | | | | | | | | | This pattern pushes CFF fonts too far low in the list. Instead it is enough to rely on the isValidPattern function to skip Type 1 fonts. BUG=skia:5846 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2410063002 Review-Url: https://codereview.chromium.org/2410063002
* Turned on SkSL->GLSL compilerGravatar ethannicholas2016-10-11
| | | | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003 Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3 Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310 Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89 Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c Review-Url: https://codereview.chromium.org/2288033003
* Revert of Turned on SkSL->GLSL compiler (patchset #48 id:1220001 of ↵Gravatar mtklein2016-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2288033003/ ) Reason for revert: https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/26798 Original issue's description: > Turned on SkSL->GLSL compiler > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003 > > Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3 > Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310 > Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89 > Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b > Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2408053002
* Simplify rowsDecoded returned by incrementalDecodeGravatar scroggo2016-10-10
| | | | | | | | | | | | | | | | | | When sampling, we previously had to figure out the number of rows that were written to the output based on the value reported by incrementalDecode. (We also messed up the first time - see the fix in crrev.com/2343153003.) Instead, make incrementalDecode report the actual number of rows written to. This can be provided directly to fill. Make SkPngCodec report the correct number of rows, by incrementing its count when it actually writes to the destination. This also will simplify my in progress GIF change. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2407543002 Review-Url: https://codereview.chromium.org/2407543002
* Turned on SkSL->GLSL compilerGravatar ethannicholas2016-10-10
| | | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003 Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3 Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310 Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89 Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b Review-Url: https://codereview.chromium.org/2288033003
* Revert of Turned on SkSL->GLSL compiler (patchset #47 id:1200001 of ↵Gravatar jvanverth2016-10-10
| | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2288033003/ ) Reason for revert: Looks like it introduces new static initializers, and it's failing the Chrome roll. Original issue's description: > Turned on SkSL->GLSL compiler > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003 > > Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3 > Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310 > Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89 > Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2403083002
* Update comment, move constant inside helper structGravatar Brian Osman2016-10-10
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3109 Change-Id: Ife8a2434ff591bd77be1cd0fbcce50430e18c86c Reviewed-on: https://skia-review.googlesource.com/3109 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "SkRasterPipeline: 8x pipelines, attempt 2"Gravatar Mike Klein2016-10-10
| | | | | | | | | | | | This reverts commit Id0ba250037e271a9475fe2f0989d64f0aa909bae. crbug.com/654213 Looks like Chrome Canary's picking up Haswell code on non-Haswell machines. Change-Id: I16f976da24db86d5c99636c472ffad56db213a2a Reviewed-on: https://skia-review.googlesource.com/3108 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Report 0 rowsDecoded for no rows (SkPngCodec interlaced)Gravatar scroggo2016-10-10
| | | | | | | | | incrementalDecode is supposed to report the number of rows decoded. It failed to if none were decoded (for an interlaced png). Fix the bug and add a test. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2402063002 Review-Url: https://codereview.chromium.org/2402063002
* Fix an assert statement in SkPngCodecGravatar scroggo2016-10-10
| | | | | | | | | | | | | | allRowsCallback was asserting that rowNum - fFirstRow == fLinesDecoded But it was expecting fFirstRow to be 0 (logically, it is, since we are decoding all rows), and it never set it (because it doesn't really need to, except for this assert). This is only a problem if we reuse an SkPngCodec after previously scaling with it. Add a test that triggers the assert, and fix it. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2401133002 Review-Url: https://codereview.chromium.org/2401133002
* Turned on SkSL->GLSL compilerGravatar ethannicholas2016-10-10
| | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003 Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3 Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310 Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89 Review-Url: https://codereview.chromium.org/2288033003
* Convert gradient params test helper to a structGravatar Brian Osman2016-10-10
| | | | | | | | | | | | | | Much less copy-pasted code, fewer implementation details leaking out, and going to be easier to extend for 4f and color space testing. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2900 Change-Id: Icc468c606aa35fbe82c64bcc398e7e348e0faa20 Reviewed-on: https://skia-review.googlesource.com/2900 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* fix another fuzzGravatar caryclark2016-10-07
| | | | | | | | | Add one more early exit. TBR=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2401673004 Review-Url: https://codereview.chromium.org/2401673004
* fix fuzz bustersGravatar caryclark2016-10-07
| | | | | | | | | | | When fuzz is hit just quit TBR=reed@google.com BUG=skia:5837, skia:5838, skia:5839 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2404483002 Review-Url: https://codereview.chromium.org/2404483002
* SkRasterPipeline: 8x pipelines, attempt 2Gravatar Mike Klein2016-10-07
| | | | | | | | | | | | | | | | | | | Original review here: https://skia-review.googlesource.com/c/2990/ Changes since: - simpler implementations of load_tail() / store_tail(): slower, but more obviously correct to all compilers - fleshed out math ops on Sk8i and Sk8u to make unit tests happy on -Fast bot (where we always have AVX2) - now storing stage functions as void(*)() to avoid undefined behavior and/or linker problems. This restores 32-bit Windows. - all AVX2 Sk8x methods are marked always-inline, to avoid linking the "wrong" version on Debug builds. CQ_INCLUDE_TRYBOTS=master.client.skia:Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot,Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-GN,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot;master.client.skia.compile:Build-Win-MSVC-x86_64-Debug-Trybot GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3064 Change-Id: Id0ba250037e271a9475fe2f0989d64f0aa909bae Reviewed-on: https://skia-review.googlesource.com/3064 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* GrTessellator: refactor Line out of Edge.Gravatar senorblanco2016-10-07
| | | | | | | | | | There are cases where we need only a line equation, and not a full Edge. Create a Line struct for this, and refactor Edge to use it. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2397963003 Review-Url: https://codereview.chromium.org/2397963003
* Reduce geometry size for circles to help fill rate.Gravatar jvanverth2016-10-07
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2391133004 Review-Url: https://codereview.chromium.org/2391133004
* Revert "SkRasterPipeline: 8x pipelines"Gravatar Mike Klein2016-10-07
| | | | | | | | | | | | | | | | This reverts commit I1c82e5755d8e44cc0b9c6673d04b117f85d71a3a. Reason for revert: lots of failing bots. TBR=mtklein@chromium.org,msarett@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I653bed3905187f43196504f19424985fa2a765b5 Reviewed-on: https://skia-review.googlesource.com/3063 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Disable antialiasing on interior of filled RRects that need distance vectorsGravatar Robert Phillips2016-10-07
| | | | | | | | | | | The interior antialiasing was causing a small transparent rectangle in the middle of filled rects GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3062 Change-Id: If0bf26b96c8969af6d81f3a3d6fee59e8c1d747e Reviewed-on: https://skia-review.googlesource.com/3062 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* SkRasterPipeline: 8x pipelinesGravatar Mike Klein2016-10-07
| | | | | | | | | | | | | | | | | | | | | | Bench runtime changes: sRGB: 7194 -> 3735 = 1.93x faster F16: 6531 -> 2559 = 2.55x faster Instead of building 4x and 1-3x pipelines and then maybe 8x and 1-7x, instead build either the short ones or the long ones, but not both. If we just take care to use a compatible run_pipeline(), there's some cross-module type disagreement but everything works out in the end. Oddly, a few places that looked like they'd be faster using SkNx_fma() or Sk4f_round()/Sk8f_round() are actually faster the long way, e.g. multiply, add 0.5, truncate. Curious! In all the other places you see here that I've used SkNx_fma(), it's been a significant speedup. This folds in a couple refactors and cleanups that I've been meaning to do. Hope you don't mind... if find the new code considerably easier to read than the old code. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2990 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Change-Id: I1c82e5755d8e44cc0b9c6673d04b117f85d71a3a Reviewed-on: https://skia-review.googlesource.com/2990 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add distance values to interior of filled RRectsGravatar Robert Phillips2016-10-06
| | | | | | | | | | | This doesn't compute the correct distance vector but it suffices for gaussian edges. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2986 Change-Id: I8bd9e37b0f3788c30d85c95a3c0845d093f22554 Reviewed-on: https://skia-review.googlesource.com/2986 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Harden SkPicturePlayback::handleOp() skipsGravatar fmalita2016-10-06
| | | | | | | | | | | SkValidatingReadBuffer::skip() may return null - tread more carefully around it. BUG=skia:5828 R=reed@google.com,mtklein@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2399043002 Review-Url: https://codereview.chromium.org/2399043002