aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
...
* Allow GrSingleTextureEffect to take GrTextureProxiesGravatar Robert Phillips2017-01-24
| | | | | | | Change-Id: I1dd441a5838f665c6815a5c629f5763f43f66e09 Reviewed-on: https://skia-review.googlesource.com/7429 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Use appropriate options in SkJpegCodec readRows()Gravatar Matt Sarett2017-01-24
| | | | | | | | | b/34637813 Change-Id: Ibebac2ef8cfe004beb2272c266b580946cedcb08 Reviewed-on: https://skia-review.googlesource.com/7451 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* Make the footer big to handle bug 684061.Gravatar Herb Derby2017-01-24
| | | | | | | | | | | | R=mtklein@google.com BUG=chromium:684061 Change-Id: I210ca93e00ec6fa5d166c0fde5cdcff0f60c26ca Reviewed-on: https://skia-review.googlesource.com/7450 Commit-Queue: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* SkPixelInfo::CopyPixels() refactor part 0: only one memcpy() caseGravatar Matt Sarett2017-01-24
| | | | | | | | | | | | | | | I envision this eventually looking like the following: Fast Path 1: memcpy Fast Path 2: Legacy RGBA/BGRA unpremul/premul Fast Path 3: SkColorSpaceXform Fallback: Raster pipeline BUG=skia:6021 Change-Id: I3f0e36b08b051ab4ba3949f04474f20d0c20a963 Reviewed-on: https://skia-review.googlesource.com/7435 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Matt Sarett <msarett@google.com>
* move sk_memset16,32,64 out-of-lineGravatar Mike Klein2017-01-24
| | | | | | | | | | | | | This helps pick it out on profiles and when debugging. This will have a negligible impact on speed in most cases (small memsets are always fast, large memsets dwarf function call overhead), and clients like Chrome that use link-time optimization should see exactly zero impact. This does however affect code size: it makes libskia 43K smaller on my laptop. Change-Id: I55bdc75b7429a63024ab3b7d55dc1f886bde102a Reviewed-on: https://skia-review.googlesource.com/6589 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* Make GrConvolutionEffect only support Gaussian kernels and rename.Gravatar Brian Salomon2017-01-24
| | | | | | | Change-Id: Ia874ad5bacc550b7ecec579719242e3354dca34b Reviewed-on: https://skia-review.googlesource.com/7432 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Remove SkTDict and calls from SkView.Gravatar Herb Derby2017-01-24
| | | | | | | | | | R=reed@google.com Change-Id: Iebfddf752a2ac210a3f5c69de8decd06d0c35617 Reviewed-on: https://skia-review.googlesource.com/7436 Commit-Queue: Herb Derby <herb@google.com> Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Do not embed glyph image data in SkGlyphCache.Gravatar Herb Derby2017-01-24
| | | | | | | | | | | | | | Instead of allocating memory for glyph images eagerly by embedding the memory in the glyph cache, allocate memory dynamically on need. TBR=bungeman@google.com BUG=chromium:684366 Change-Id: If32bbc4d2608c976b93868feb519dcfa1212ce59 Reviewed-on: https://skia-review.googlesource.com/7433 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Add F16 and gamma correct support to webp encoderGravatar Matt Sarett2017-01-24
| | | | | | | | | BUG=skia: Change-Id: Ib788466fa1e2bed26e7ffd8f03bee42930eae1d6 Reviewed-on: https://skia-review.googlesource.com/7425 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* restore bool version of clip-boundsGravatar Mike Reed2017-01-24
| | | | | | | | | BUG=skia: Change-Id: I94e35566cf5bcd250515c71a566dd79030e2acb4 Reviewed-on: https://skia-review.googlesource.com/7430 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Reenable index8 dstsGravatar Matt Sarett2017-01-24
| | | | | | | | | | | | | | | | | | | This is causing problems with image-cacherator-from-ctable gm. In that gm, we use an index8->index8 readPixels() to take a subset. I think we need to keep this as long as we support index8 in the generator/cacherator. Though it's really strange because we don't really bother to verify that color tables are the same and we don't try to overwrite the dst color table... BUG=skia: Change-Id: Icf008caa571c4b81a52a23b8b7d9226789626ef5 Reviewed-on: https://skia-review.googlesource.com/7424 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Make GrYUVEffect take GrTextureProxiesGravatar Robert Phillips2017-01-24
| | | | | | | | | This opens the door for swapping all the effects over to taking GrTextureProxies. Change-Id: I3b03ba93a68f9945c9a8fee008fd170ed57616eb Reviewed-on: https://skia-review.googlesource.com/7344 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Fix comparison that overflows for addresses near uint max.Gravatar Herb Derby2017-01-23
| | | | | | | | | | | | - Fix Assert TBR=mtklein@google.com BUG=chromium:683578 Change-Id: Iba503d1febace367c71f79a3b9accc0ec3e50f11 Reviewed-on: https://skia-review.googlesource.com/7418 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* make SkPath::conservativelyContainsRect consume degenerate segmentsGravatar Lee Salzman2017-01-23
| | | | | | | | | BUG=skia: Change-Id: I3a39318bceaf6c95a50d84961d93af4ba62550e3 Reviewed-on: https://skia-review.googlesource.com/6900 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* rename virtuals for clipbounds, and deprecate older bool/var-arg patternGravatar Mike Reed2017-01-23
| | | | | | | | | BUG=skia: Change-Id: I08bcc2d0559e02838772538816b928e0716dd3aa Reviewed-on: https://skia-review.googlesource.com/7412 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Stop tracking whether GrFragmentProcessors read their inputGravatar Brian Salomon2017-01-23
| | | | | | | Change-Id: Id5338901978b97289798eaef873527597bd8dfd6 Reviewed-on: https://skia-review.googlesource.com/7414 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Move shader register setup to SkRasterPipelineBlitter.Gravatar Mike Klein2017-01-23
| | | | | | | | | | | | | | | | | | | | | We've been seeding the initial values of our registers to x+0.5,y+0.5, 1,0, 0,0,0,0 (useful values for shaders to start with) in all pipelines. This CL changes that to do so only when blitting, and only when we have a shader. The nicest part of this change is that SkRasterPipeline itself no longer needs to have a concept of y, or what x means. It just marches x through [x,x+n), and the blitter handles y and layers the meaning of "dst x coordinate" onto x. This ought to make SkSplicer a little easier to work with too. dm --src gm --config f16 srgb 565 all draws the same. Change-Id: I69d8c1cc14a06e5dfdd6a7493364f43a18f8dec5 Reviewed-on: https://skia-review.googlesource.com/7353 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Fix comparison that overflows for addresses near uint max."Gravatar Ethan Nicholas2017-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit db8b8376b09cec9656b0ab864413b7911d81a84c. Reason for revert: Assertion failure, see https://luci-milo.appspot.com/swarming/task/33e5ae4d2bb25210/steps/dm/0/stdout Original change's description: > Fix comparison that overflows for addresses near uint max. > > BUG=chromium:683578 > > Change-Id: I3f9b79eeeba3c68cccb72bd6423811c8ff8f2067 > Reviewed-on: https://skia-review.googlesource.com/7410 > Commit-Queue: Herb Derby <herb@google.com> > Commit-Queue: Mike Klein <mtklein@chromium.org> > Reviewed-by: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:683578 Change-Id: I198ea4c7209d060d0d15dfa3f6e555fa06e1a632 Reviewed-on: https://skia-review.googlesource.com/7415 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
* SkRasterPipeline: implement support for SkTableColorFilterGravatar Mike Klein2017-01-23
| | | | | | | | | | | | | This adds and uses a byte_tables stage that converts to bytes, looks up in the tables, then converts back to floats. We treat this as color filter as pure math, not considering anything colorspace related: no transfer functions, no gamut to change, etc. Change-Id: If5fefc1bcef61a0fb0ae279002a0dd1547e429ea Reviewed-on: https://skia-review.googlesource.com/7413 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Fix comparison that overflows for addresses near uint max.Gravatar Herb Derby2017-01-23
| | | | | | | | | | BUG=chromium:683578 Change-Id: I3f9b79eeeba3c68cccb72bd6423811c8ff8f2067 Reviewed-on: https://skia-review.googlesource.com/7410 Commit-Queue: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Update SkTDict to use SkArenaAlloc.Gravatar Herb Derby2017-01-23
| | | | | | | Change-Id: I7ac33faa59bcad25b0580193af965a8525eb18e7 Reviewed-on: https://skia-review.googlesource.com/7360 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Track clear counts in vulkan render passesGravatar Greg Daniel2017-01-23
| | | | | | | | | | | | | | Though not required by spec, the validation layers have started spitting out warnings if the clearValueCount in BeginRenderPass is greater than the number of attachments actually being cleared. This just adds tracking of the count to appease the validation layers. BUG=skia: Change-Id: Iac6500df3ed5ad3f5df5f045c6e533bb021857aa Reviewed-on: https://skia-review.googlesource.com/7401 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Make SkWEBPImageEncoder use transform_scanline_procsGravatar Matt Sarett2017-01-23
| | | | | | | | | | | | This refactor will make it simple to add F16 and GammaCorrect support to the webp encoder. BUG=skia: Change-Id: I379ba2ff0b44d865847877322e86d0c138e727c8 Reviewed-on: https://skia-review.googlesource.com/7356 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Reland "Refactor trimming logic for read/writePixels()"Gravatar Matt Sarett2017-01-23
| | | | | | | | | | | | | | | | | | | | | | | Original CL: https://skia-review.googlesource.com/c/7326/ (1) Move trimming logic into Bitmap/Pixmap level for raster. Everything goes through here, so we'll only do the work once. (2) This means it also goes to GPU level. (3) Always use SkReadPixelsRec rather than inlining the logic. (4) Create an SkWritePixelsRec to encapsulate write trimming. (5) Disabled kIndex8 as a dst - always. CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug BUG=skia:6021 Change-Id: I25a964e3c610c4e36d195a255e2150657baec649 Reviewed-on: https://skia-review.googlesource.com/7404 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Support fCapHeight in SkScalerContext_DWGravatar Koji Ishii2017-01-23
| | | | | | | | | BUG=chromium:681857 Change-Id: Ia97354d7798eb685351a98ff559bcf176a67af18 Reviewed-on: https://skia-review.googlesource.com/7380 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* change clip-bounds getters to always return the rectGravatar Mike Reed2017-01-23
| | | | | | | | | | | | | | | | | | (actually fixes undefined result in getClipBounds) future CLs - update all callers to new apis - move/rename virtuals BUG=skia: DOCS_PREVIEW= https://skia.org/?cl=7400 Change-Id: I45b93014e915c0d1c36d97d948c9ac8931f23258 Reviewed-on: https://skia-review.googlesource.com/7400 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Remove public APIs that use SkDataTable.Gravatar Herb Derby2017-01-23
| | | | | | | | Change-Id: Ibb8f987efc585713a6f8061c72fb416d07be13b1 Reviewed-on: https://skia-review.googlesource.com/7352 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Revert "Refactor trimming logic for read/writePixels()"Gravatar Matt Sarett2017-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 977f64cbfad1ecd7fd4b1231c694c7e828fda1f0. Reason for revert: Triggering nanobench asserts Original change's description: > Refactor trimming logic for read/writePixels() > > (1) Move trimming logic into Bitmap/Pixmap level for > raster. Everything goes through here, so we'll > only do the work once. > (2) This means it also goes to GPU level. > (3) Always use SkReadPixelsRec rather than inlining > the logic. > (4) Create an SkWritePixelsRec to encapsulate write > trimming. > (5) Disabled kIndex8 as a dst - always. > > BUG=skia:6021 > > Change-Id: I748f50c3b726f7c6de5462e2b1ccb54bc387a510 > Reviewed-on: https://skia-review.googlesource.com/7326 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Matt Sarett <msarett@google.com> > TBR=msarett@google.com,brianosman@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:6021 Change-Id: If9aacc6ce8b20e3dfe8a0f22ebca653f28356175 Reviewed-on: https://skia-review.googlesource.com/7379 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Matt Sarett <msarett@google.com>
* Allow conversion from non-opaque to opaqueGravatar Matt Sarett2017-01-23
| | | | | | | | | BUG:683787 Change-Id: I1b78cc8d1b5d3917a2a952da036b93022e99e053 Reviewed-on: https://skia-review.googlesource.com/7374 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Revert "offset angle check edge in common"Gravatar Cary Clark2017-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d2eb581ebc8f8009e80cccccd74d5b341ef5bd5b. Reason for revert: broke Google3 MSAN run of dm Original change's description: > offset angle check edge in common > > When curves cross, their intersection points may be nearby, but not exactly the same. > Sort the angles formed by the crossing curves when all angles don't have the same > origin. > > This sets up the framework to solve test case that currently fail (e.g., joel6) but > does not fix all related test cases (e.g., joel9). > > All older existing test cases, including extended tests, pass. > > Rework the test framework to better report when tests expected to produce failing > results now pass. > > Add new point and vector operations to support offset angles. > > TBR=reed@google.com > BUG=skia:6041 > > Change-Id: I67c651ded0a25e99ad93d55d6a35109b3ee3698e > Reviewed-on: https://skia-review.googlesource.com/6624 > Commit-Queue: Cary Clark <caryclark@google.com> > Reviewed-by: Cary Clark <caryclark@google.com> > TBR=caryclark@google.com,reviews@skia.org # Not skipping CQ checks because original CL landed > 1 day ago. BUG=skia:6041 Change-Id: I43db0808522ac44aceeb4f70e296167ea84a3663 Reviewed-on: https://skia-review.googlesource.com/7373 Commit-Queue: Cary Clark <caryclark@google.com> Reviewed-by: Cary Clark <caryclark@google.com>
* Get rid of level of indirection, noticed by VC++ 2017 bugGravatar Bruce Dawson2017-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building Chrome with VC++ 2017 the QuickFDot6Inverse::table pointer is initialized to zero. This is certainly a bug, and it has been reported to the VC++ team. But, the table pointer appears to be unnecessary. Changing the code to reference the array directly should give identical or perhaps even better code. The change to the array indexing code is as follows: - return table[x]; + gFDot6INVERSE[kInverseTableSize + x]; This looks like a step backwards, but it isn't. 'table' is a pointer. So, by default the compiler will load this pointer and then load the value from the array. gFDot6INVERSE is an array, not a pointer. This means that the adding of kInverseTableSize is trivially done at compile time, and there is no loading of a pointer - only one data segment memory access is needed. The compiler may have realized that this optimization was ready before, but now it is more trivial. And, this works around the VC++ 2017 bug so that Chrome with VC++ 2017 will launch. https://connect.microsoft.com/VisualStudio/feedback/details/3119337 BUG=683729 Change-Id: Iad443b59a70af83b39260e244e3242e782fafdbb Reviewed-on: https://skia-review.googlesource.com/7284 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Refactor trimming logic for read/writePixels()Gravatar Matt Sarett2017-01-23
| | | | | | | | | | | | | | | | | | | (1) Move trimming logic into Bitmap/Pixmap level for raster. Everything goes through here, so we'll only do the work once. (2) This means it also goes to GPU level. (3) Always use SkReadPixelsRec rather than inlining the logic. (4) Create an SkWritePixelsRec to encapsulate write trimming. (5) Disabled kIndex8 as a dst - always. BUG=skia:6021 Change-Id: I748f50c3b726f7c6de5462e2b1ccb54bc387a510 Reviewed-on: https://skia-review.googlesource.com/7326 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Fix performance issue and compute intersections more often.Gravatar Yuqian Li2017-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | (This CL also turned on Analytic AA for concave paths by removing SK_SUPPORT_LEGACY_AAA flag.) Performance: The SK_ALWAYS_INLINE was restored because it could bring 30%-50% speedup in certain convex cases (e.g., fill_big_triangle). We also have to reduce the number of branchings in the concave code path to enable such speedup. (Although the speedup is for convex cases. The assembly code is so strange...) Intersection: Previously, the criterion is too loose and that caused some bad pixels (mostly unnoticeable by human eyes without magnifying). For example, pixel (198, 222) of https://gold.skia.org/detail?test=parsedpaths&digest=979e81de6f7b3f9e7e8dc810e31cad8d BUG=skia: Change-Id: I5e8191865c3df625f895cd4588c67c283fcbeaec Reviewed-on: https://skia-review.googlesource.com/7318 Reviewed-by: Cary Clark <caryclark@google.com> Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Look for GenerateMipMapEXTGravatar Brian Salomon2017-01-23
| | | | | | | Change-Id: I1ced904f0929653aa9bac09fee86607533e28be6 Reviewed-on: https://skia-review.googlesource.com/7359 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* SkSplicer: favor 1.0f as a constant.Gravatar Mike Klein2017-01-21
| | | | | | | | | 1.0f is the most commonly used constant, so we put it first in the constant struct. This usually cuts an instruction off loading it. Change-Id: Ie54a9482aa3e90e9e5d8fcaa40dbd353af0fa1ca Reviewed-on: https://skia-review.googlesource.com/7367 Reviewed-by: Mike Klein <mtklein@chromium.org>
* SkSplicer: move armv7 ABI settings into build_stages.py.Gravatar Mike Klein2017-01-21
| | | | | | | | | | | | | | | This just tidies up the .cpp files a bit, and makes it easier to make sure all exported functions use the aapcs-vfp callig convention, which hard-float implies. As a small simplification, fold -march=armv7-a into --target. No generated code changes. Change-Id: I2694970a6e48bd69c41dd280a44ddd0029e52ae8 Reviewed-on: https://skia-review.googlesource.com/7371 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* mild tweaks to build_stages.py to run on my desktopGravatar Mike Klein2017-01-21
| | | | | | | Change-Id: Ie193e5bf576b8d3ddbd4c99d3707e3211557cc01 Reviewed-on: https://skia-review.googlesource.com/7368 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Remove SkColorCubeFilter. It is unused.Gravatar Mike Klein2017-01-21
| | | | | | | Change-Id: Iec5fc759e331de24caea1347f9510917260d379b Reviewed-on: https://skia-review.googlesource.com/7363 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* minor cleanups in newly privatized device headersGravatar Mike Reed2017-01-21
| | | | | | | | | | BUG=skia: Change-Id: Id6ebd54f404b5f0869d96368b98957ac10a2083f NOTREECHECKS=True Reviewed-on: https://skia-review.googlesource.com/7369 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Remove SkImage::MakeTextureFromPixmapGravatar Brian Osman2017-01-20
| | | | | | | | | | | Another step towards reducing the number of texture upload paths. BUG=skia: Change-Id: Ica185e7334f52dc9ebf87e21fe6f60589ef87bb3 Reviewed-on: https://skia-review.googlesource.com/7346 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Replace raster pipeline nextafter() calls with SkNu nudgingGravatar Florin Malita2017-01-20
| | | | | | | | | | | | | | | | | | (courtesy of mtklein@) nanobench -m gradient_linear_clamp\$ --config f16 --ms 2000 -q Before: 753.66 After: 658.69 R=mtklein@google.com,herb@google.com CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: Ie1442da340f6cfc9aef65bec1f114c0e5db89fcb Reviewed-on: https://skia-review.googlesource.com/7351 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Revert "Revert "Make it possible to query GrXPFactory for dst texture ↵Gravatar Brian Salomon2017-01-20
| | | | | | | | | | | | | without GrPipelineAnalysis."" This reverts commit 3329cceab5feca230df1caee16be045249228dc1. Reason for revert: Bot failures are unrelated to the original change. Change-Id: I21b5927dc4384a25930bdefe16e57bcc9276ffa4 Reviewed-on: https://skia-review.googlesource.com/7347 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Force Index8 to N32 in deferred texture path.Gravatar Brian Osman2017-01-20
| | | | | | | | | | | | | | | | | Ganesh doesn't support Index8, because GPUs don't really support it. So serializing it in the deferred blob just meant doing an expansion before upload. This forces that to happen when we build the blob. It also paves the way for removing the last usage of MakeTextureFromPixmap, which I'd like to remove. BUG=skia: Change-Id: I7c0292098d71e2f8ec1f9910e1234761822ce957 Reviewed-on: https://skia-review.googlesource.com/7340 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Make it possible to query GrXPFactory for dst texture without ↵Gravatar Brian Salomon2017-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | GrPipelineAnalysis." This reverts commit f833215420847565b4c9945aebdc2e7ae182937f. Reason for revert: <INSERT REASONING HERE> Original change's description: > Make it possible to query GrXPFactory for dst texture without GrPipelineAnalysis. > > Change-Id: I8c140eb4e3e5f2d21ecbf8f8f3c8533dc7f50e7c > Reviewed-on: https://skia-review.googlesource.com/7316 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> > TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I790afb9a01422cb4c2d3a4be4ecd20e8c4466b29 Reviewed-on: https://skia-review.googlesource.com/7342 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Continue making Ganesh use absolute texture coordinates - take 2Gravatar Robert Phillips2017-01-20
| | | | | | | | | | | | The idea here is that the GrCoordTransform will actually hold a GrTextureProxy (rather than a GrTexture) and then, in GrGLSLPrimitiveProcessor::GetTransformMatrix, use the instantiated width & height (when uploading the transform matrix) Relanding of: https://skia-review.googlesource.com/c/6977/ Change-Id: Ibc9b9e354f7fc23b1a6e6e4fe7c9fe3cef771c02 Reviewed-on: https://skia-review.googlesource.com/7265 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Remove unused struct.Gravatar Herb Derby2017-01-20
| | | | | | | | | | TBR=mtklein@google.com Change-Id: Iad5cda6bc9b9728ade249e8e88ae830798955a3e Reviewed-on: https://skia-review.googlesource.com/7339 Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Herb Derby <herb@google.com>
* Move from SkChunkAlloc to SkArenaAlloc for SkGlyphCache.Gravatar Herb Derby2017-01-20
| | | | | | | Change-Id: I221dd1c35898fe2703584f90d14192c8b546af40 Reviewed-on: https://skia-review.googlesource.com/7112 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Just clamp to limit-epsilon.Gravatar Mike Klein2017-01-20
| | | | | | | | | | | | | I think the -0.5f was an implementation detail of Herb's bilerp that we don't need here. It happened to also be clamping us to something less than limit (limit-0.5), so we do need to replace that with a little nudge to keep us on tile. Change-Id: I4ebd32e0ad38c724a17dc8bc35d9ea228eeeca32 Reviewed-on: https://skia-review.googlesource.com/7338 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* offset angle check edge in commonGravatar Cary Clark2017-01-20
| | | | | | | | | | | | | | | | | | | | | | | | When curves cross, their intersection points may be nearby, but not exactly the same. Sort the angles formed by the crossing curves when all angles don't have the same origin. This sets up the framework to solve test case that currently fail (e.g., joel6) but does not fix all related test cases (e.g., joel9). All older existing test cases, including extended tests, pass. Rework the test framework to better report when tests expected to produce failing results now pass. Add new point and vector operations to support offset angles. TBR=reed@google.com BUG=skia:6041 Change-Id: I67c651ded0a25e99ad93d55d6a35109b3ee3698e Reviewed-on: https://skia-review.googlesource.com/6624 Commit-Queue: Cary Clark <caryclark@google.com> Reviewed-by: Cary Clark <caryclark@google.com>
* Make it possible to query GrXPFactory for dst texture without ↵Gravatar Brian Salomon2017-01-20
| | | | | | | | | GrPipelineAnalysis. Change-Id: I8c140eb4e3e5f2d21ecbf8f8f3c8533dc7f50e7c Reviewed-on: https://skia-review.googlesource.com/7316 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>