aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Revert of Moving SkBlurImageFilter into core (patchset #9 id:160001 of ↵Gravatar bungeman2016-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2255803003/ ) Reason for revert: Breaking internal roll. Still needs 'Create'. Original issue's description: > Moving SkBlurImageFilter into core > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255803003 > > Committed: https://skia.googlesource.com/skia/+/dd3259eb95c3b47e11eefa3b176365a112a32b48 > Committed: https://skia.googlesource.com/skia/+/e426babe7552b1cb4e27cdf4e90826feabb9e3b0 > Committed: https://skia.googlesource.com/skia/+/4d760175686df8f61a11b66946eb307d89dd2c75 > Committed: https://skia.googlesource.com/skia/+/a97a1ab5719d5c355f7900b7f17dec1e467cf57e TBR=reed@google.com,fmalita@chromium.org,vjiaoblack@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/2274603003
* fix conic path fuzzGravatar caryclark2016-08-23
| | | | | | | | | | | | The test conic has a very large weight, so it reduces to a pair of lines. Detect this case rather than subdividing the conic so much that the answers are meaningless. R=herb@google.com, reed@google.com BUG=638223 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2268073004 Review-Url: https://codereview.chromium.org/2268073004
* SkMultiSKP: version 2Gravatar halcanary2016-08-23
| | | | | | | | | | Measurable size improvement. BUG=skia:5370 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255333003 Review-Url: https://codereview.chromium.org/2255333003
* SkPDF: PDFDevice cleanup.Gravatar halcanary2016-08-23
| | | | | | | | | | | | | Remove unused fContentSize. Combine SkPDFDevice::writeContent and SkPDFDevice::content. Remove unused SkPDFDevice::initialTransform(). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2264113003 Review-Url: https://codereview.chromium.org/2264113003
* f16<->f32 ftz is an optional thing for speed.Gravatar mtklein2016-08-23
| | | | | | | | | | | | | The ARMv8 asm path actually does it right... that should be okay. My Nexus 5x fails `dm -m _finite_ftz` before this and passes after it. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2276533002 TBR=msarett@google.com Review-Url: https://codereview.chromium.org/2276533002
* Moving SkBlurImageFilter into coreGravatar vjiaoblack2016-08-23
| | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255803003 Committed: https://skia.googlesource.com/skia/+/dd3259eb95c3b47e11eefa3b176365a112a32b48 Committed: https://skia.googlesource.com/skia/+/e426babe7552b1cb4e27cdf4e90826feabb9e3b0 Committed: https://skia.googlesource.com/skia/+/4d760175686df8f61a11b66946eb307d89dd2c75 Review-Url: https://codereview.chromium.org/2255803003
* fix pathops fuzzGravatar caryclark2016-08-23
| | | | | | | | | | | Extreme cubics may split so that one half is a point. Discard this rather than generating a degenerate line. TBR=reed@google.com BUG=640025 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2276503002 Review-Url: https://codereview.chromium.org/2276503002
* Reduce window rectangles cap to 8Gravatar csmartdalton2016-08-23
| | | | | | | | | | | | Lowers the cap to 8 and adds a warning message if this value is ever exceeded. The largest (only) implementation currently supports 8, so there isn't yet reason to go higher. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2254013002 Committed: https://skia.googlesource.com/skia/+/52d721580ee22525c285e2d13cf3975a7a1b2843 Review-Url: https://codereview.chromium.org/2254013002
* Fix valgrind issue in CircleBatch__TestGravatar robertphillips2016-08-23
| | | | | | | TBR=bsalomon@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2271653002 Review-Url: https://codereview.chromium.org/2271653002
* Fix Ganesh analytic blurred rect drawsGravatar robertphillips2016-08-22
| | | | | | | | | | | | | | This CL does two things: It fixes the SkBlurMaskFilterImpl::directFilterRRectMaskGPU draw path to explicitly handle rects It fixes the SkGpuDevice::drawTextureProducerImpl draw path to provide the correct (src & device space) inputs to directFilterRRectMaskGPU. How this was working before was that GrRRectBlurEffect::Make would reject rect-rrects and the code would fallback to GrBlurUtils::drawPathWithMaskFilter which mapped the rect-rrect into device space correctly (of course, the rect-ness of the path was removed at that point so it was going through the slow path). GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2268583002 Review-Url: https://codereview.chromium.org/2268583002
* Fix GLSL int to float error in arc code in GrOvalRenderer.Gravatar bsalomon2016-08-22
| | | | | | | | | | | BUG=skia: TBR=robertphillips@google.com NOTRY=true NOTREECHECKS=true GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2263213004 Review-Url: https://codereview.chromium.org/2263213004
* More robust check for sRGB gamma tablesGravatar msarett2016-08-22
| | | | | | | | | | | | | | | This is in response to a UMA showing that 5% dst gammas are unidentified tables. We want to see if some of these tables should be marked as sRGB. https://uma.googleplex.com/p/chrome/histograms?endDate=latest&dayCount=1&histograms=Blink.ColorSpace.Destination&fixupData=true&showMax=true&filters=isofficial%2Ceq%2CTrue&implicitFilters=isofficial This check is not fast. If we find that it doesn't help us recognize sRGB curves, we should delete it. BUG=skia:5656 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2263233003 Review-Url: https://codereview.chromium.org/2263233003
* Remove virtual from overrides in SkGpuDevice.hGravatar bsalomon2016-08-22
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2265323002 Review-Url: https://codereview.chromium.org/2265323002
* Fix CircleBatch::TestCreate to always use a legal matrixGravatar bsalomon2016-08-22
| | | | | | | | | | TBR=robertphillips@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2267953002 NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2267953002
* Mark temporary paths created by SkCanvas for clipping as volatileGravatar bsalomon2016-08-22
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2268723002 Review-Url: https://codereview.chromium.org/2268723002
* Flush denorm half floats to zero.Gravatar mtklein2016-08-22
| | | | | | | | | | | | | | | | | | I think we convinced ourselves that denorms, while a good chunk of half floats, cover a rather small fraction of the representable range, which is always close enough to zero to flush. This makes both paths of the conversion to or from float considerably simpler. These functions now work for zero-or-normal half floats (excluding infinite, NaN). I'm not aware of a term for this class so I've called them "ordinary". A handful of GMs and SKPs draw differently in --config f16, but all imperceptibly. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2256023002 Review-Url: https://codereview.chromium.org/2256023002
* GPU implementation of drawArc.Gravatar bsalomon2016-08-22
| | | | | | | | | This adds analytic shaders for filled arcs and butt-cap stroked arcs where the center point is not used. BUG=skia:5227 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2259323003 Review-Url: https://codereview.chromium.org/2259323003
* check for wide-open inside quickContainsGravatar reed2016-08-22
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2263373002 Review-Url: https://codereview.chromium.org/2263373002
* Fix MSAN - mark temporary memory as kNo_ZeroInitializedGravatar msarett2016-08-22
| | | | | | | | TBR=mtklein@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2261173004 Review-Url: https://codereview.chromium.org/2261173004
* Fix Equals and serialization for rare pngsGravatar msarett2016-08-22
| | | | | | | | | | | | | | | | PNGs may contain a gAMA chunk that specifies gamma values as floats. If so, we will use these floats to create an SkColorSpace. This CL fixes Equals(), serialize(), and Deserialize() to correctly handle SkColorSpaces with strange gammas, where we are unable to fall back on the profile data. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2221983002 Review-Url: https://codereview.chromium.org/2221983002
* Revert of Moving SkBlurImageFilter into core (patchset #8 id:140001 of ↵Gravatar vjiaoblack2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2255803003/ ) Reason for revert: Misnamed function. Original issue's description: > Moving SkBlurImageFilter into core > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255803003 > > Committed: https://skia.googlesource.com/skia/+/dd3259eb95c3b47e11eefa3b176365a112a32b48 > Committed: https://skia.googlesource.com/skia/+/e426babe7552b1cb4e27cdf4e90826feabb9e3b0 > Committed: https://skia.googlesource.com/skia/+/4d760175686df8f61a11b66946eb307d89dd2c75 TBR=reed@google.com,fmalita@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/2265263002
* Moving SkBlurImageFilter into coreGravatar vjiaoblack2016-08-22
| | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255803003 Committed: https://skia.googlesource.com/skia/+/dd3259eb95c3b47e11eefa3b176365a112a32b48 Committed: https://skia.googlesource.com/skia/+/e426babe7552b1cb4e27cdf4e90826feabb9e3b0 Review-Url: https://codereview.chromium.org/2255803003
* Remove quantization of device-space dest rect for Ganesh analytic rrect blursGravatar robertphillips2016-08-22
| | | | | | | | At least on Windows, this fixes a lot of the horrible banded blurs. AFAICT there is no good reason to quantize the device space rect passed to the GrRectBlurEffect. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2262263002 Review-Url: https://codereview.chromium.org/2262263002
* Mark temp paths in SkBaseDevice::drawArc and ::drawDRRect as volatileGravatar bsalomon2016-08-22
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2261123004 Review-Url: https://codereview.chromium.org/2261123004
* Revert of Moving SkBlurImageFilter into core (patchset #8 id:140001 of ↵Gravatar vjiaoblack2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2255803003/ ) Reason for revert: Fixed it wrong, needs to revert to re-discuss and re-land. Original issue's description: > Moving SkBlurImageFilter into core > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255803003 > > Committed: https://skia.googlesource.com/skia/+/dd3259eb95c3b47e11eefa3b176365a112a32b48 > Committed: https://skia.googlesource.com/skia/+/e426babe7552b1cb4e27cdf4e90826feabb9e3b0 TBR=reed@google.com,fmalita@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/2266063002
* Moving SkBlurImageFilter into coreGravatar vjiaoblack2016-08-22
| | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255803003 Committed: https://skia.googlesource.com/skia/+/dd3259eb95c3b47e11eefa3b176365a112a32b48 Review-Url: https://codereview.chromium.org/2255803003
* Detect all named gammasGravatar msarett2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | | Our DstColorSpace UMA is showing some named gammas that are not appropriately detected and placed in named categories. https://uma.googleplex.com/p/chrome/histograms?endDate=latest&dayCount=1&histograms=Blink.ColorSpace.Destination&fixupData=true&showMax=true&filters=isofficial%2Ceq%2CTrue&implicitFilters=isofficial This CL should fix that. I'm not sure (yet) how I feel about this landing permanently. Seems a little messy. But it will be interesting to see how this affects the UMA. My best guess is that we are hitting this case when all three gammas are "invalid" in different ways. I'm expecting to see some profiles end up in the "invalid" category now. It's also possible that we'll see these cases being absorbed into sRGB or somewhere else. BUG=skia:5656 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2261213002 Review-Url: https://codereview.chromium.org/2261213002
* compress_r11eac_blocks() required more alignment than dst has.Gravatar mtklein2016-08-22
| | | | | | | | | | | | | | This shouldn't change any behavior except that the stores to dst will no longer require 8-byte alignment. Empirically it seems like we can use 4-byte alignment here, but u8 (i.e. 1-byte alignment) is always safe. BUG=skia:5637 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2264103002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review-Url: https://codereview.chromium.org/2264103002
* Revert of Moving SkBlurImageFilter into core (patchset #6 id:100001 of ↵Gravatar mtklein2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/2255803003/ ) Reason for revert: It looks like this breaks our roll into Google3: https://test.corp.google.com/ui#id=OCL:130943857:BASE:130944046:1471881622765:61dbdd3 Original issue's description: > Moving SkBlurImageFilter into core > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255803003 > > Committed: https://skia.googlesource.com/skia/+/dd3259eb95c3b47e11eefa3b176365a112a32b48 TBR=reed@google.com,fmalita@chromium.org,vjiaoblack@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/2263283002
* Use ARMv8 CRC32 instructions for SkOpts::hash().Gravatar mtklein2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | For large inputs, this runs ~11x faster than Murmur3. My bench drops from 1µs to 88ns. Like x86-64, this runs fastest if we work in 24 byte chunks. 16 byte chunks run at about 0.75x this speed, 8 byte chunks at about 0.4x (which would still be about 5x faster than Murmur3). This'll require plumbing support for opts_crc32 into Chrome first before it can roll. perf.skia.org charts we want to watch: https://perf.skia.org/#5490 Seach for compute_hash in these logs to see the difference: baseline: https://luci-milo.appspot.com/swarming/task/30ba22f3dfe30e10/steps/nanobench/0/stdout trybot: https://luci-milo.appspot.com/swarming/task/30bbc406cbf62d10/steps/nanobench/0/stdout BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2260823002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review-Url: https://codereview.chromium.org/2260823002
* Moving SkBlurImageFilter into coreGravatar vjiaoblack2016-08-22
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255803003 Review-Url: https://codereview.chromium.org/2255803003
* Support color xforms for kIndex8 pngsGravatar msarett2016-08-22
| | | | | | | | | | | | | | This change started as: "Always use color xforms to premultiply". We need to be in a linear space to premultiply correctly. It became clear that we also need to support kIndex8 color xforms in order to make this change. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246143002 Review-Url: https://codereview.chromium.org/2246143002
* Supply a color space in sRGB/F16 mode of SampleAppGravatar brianosman2016-08-22
| | | | | | | | | | | Ganesh now uses this to decide if it should perform gamma-correct rendering, so the color space is necessary to get correct results in S32/F16. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2266763004 Review-Url: https://codereview.chromium.org/2266763004
* Fix color xform width bug when scaling/subsettingGravatar msarett2016-08-22
| | | | | | | | | | | | | This was not caught by the bots because we don't test color correct modes with our many image decoding tests (takes too long). Adding a unit test. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2247743002 Review-Url: https://codereview.chromium.org/2247743002
* add SkMatrixPriv for specialized helpersGravatar reed2016-08-22
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2268443002 Review-Url: https://codereview.chromium.org/2268443002
* Simplify the gradient color stop optimizerGravatar fmalita2016-08-22
| | | | | | | | | | We're just discarding the leftmost/rightmost stops -- this can be achieved by simply adjusting the start offset and count. R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2265803002 Review-Url: https://codereview.chromium.org/2265803002
* remove unused field from SkDrawIterGravatar reed2016-08-20
| | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2267553002 TBR= Review-Url: https://codereview.chromium.org/2267553002
* store info in basedevice, change getter to non-virtual const&Gravatar reed2016-08-20
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2261003003 Review-Url: https://codereview.chromium.org/2261003003
* src/utils/SkBitSet: simplifyGravatar halcanary2016-08-19
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2265623002 Review-Url: https://codereview.chromium.org/2265623002
* Move GrFixedClip into src directoryGravatar csmartdalton2016-08-19
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2254343003 Review-Url: https://codereview.chromium.org/2254343003
* Plumb drawArc to SkDevice.Gravatar bsalomon2016-08-19
| | | | | | | | | Plumbs the drawArc canvas method down to SkDevice without converting to a path. Plumbs through the various recording canvas classes. BUG=skia:5227 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2257023003 Review-Url: https://codereview.chromium.org/2257023003
* Added SkColor4f::FromColor3f(SkColor3f, float a)Gravatar dvonbeck2016-08-19
| | | | | | | | | Planning to use this for the ColorDisplay widget in https://codereview.chromium.org/2259183003/ BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2264643002 Review-Url: https://codereview.chromium.org/2264643002
* Fast path translate() in SkCanvas and SkLiteDL.Gravatar mtklein2016-08-19
| | | | | | | | | | | | | | | | | | | | | | | This adds didTranslate() so that SkLiteDL (and other canvas recorders) can record the translate rather than the full concat. It also adds a case to SkMatrix::preTranslate() to fast path translate x translate -> translate (i.e. +=). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255283002 Committed: https://skia.googlesource.com/skia/+/5fa47f4fd13b3158de4599414c86d17649c2dd1c Misc bots failing in pictureimagefilter replay modes. https://luci-milo.appspot.com/swarming/task/30b8e53f3a1f4f10/steps/dm/0/stdout Problem is FMA vs. not. CQ_INCLUDE_TRYBOTS=master.client.skia: Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot Review-Url: https://codereview.chromium.org/2255283002
* Implement gradient simplification for 0,0,1 and 0,1,1 gradientsGravatar fmenozzi2016-08-19
| | | | | | | | | Depends on https://codereview.chromium.org/2259823005/ BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2256843004 Review-Url: https://codereview.chromium.org/2256843004
* Simplify embeddability test.Gravatar bungeman2016-08-19
| | | | | | | | | There is no reason to read the whole OS/2 table, and no need to spell out the full names of all the types over and over. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2256783002 Review-Url: https://codereview.chromium.org/2256783002
* Fix bug, always keep fIsScaleTranslate in correct stateGravatar msarett2016-08-19
| | | | | | | BUG:639179 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2263513003 Review-Url: https://codereview.chromium.org/2263513003
* Some assert fixes for running the Fuzzer sample in GPU mode.Gravatar senorblanco2016-08-19
| | | | | | | | | | | | | | | quadraticPointCount, cubicPointCount: passing NaN to GrNextPow2 causes it to assert, so detect that and return the max points per curve instead. Passing a zero scale to GrStyle::applyToPath() makes it assert, so draw nothing (likely what drawing with a zero scale is going to do anyway). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2257423002 Review-Url: https://codereview.chromium.org/2257423002
* Return color shader instead of 2-color gradient when color count is 1Gravatar fmenozzi2016-08-19
| | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2259823005 Committed: https://skia.googlesource.com/skia/+/da082a5767d7edfd3abe74fc683392422565a606 Review-Url: https://codereview.chromium.org/2259823005
* fix fuzzesGravatar caryclark2016-08-19
| | | | | | | | TBR=reed@google.com BUG=639157, 638783 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255243003 Review-Url: https://codereview.chromium.org/2255243003
* SkFontMgr_android clean up.Gravatar bungeman2016-08-19
| | | | | | | | | | This removes the never used defaultTypeface, uses 'StyleSet' in field names consistently, fixes potential leaks of names, and moves fields to sk_sp. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2256253003 Review-Url: https://codereview.chromium.org/2256253003