aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
Commit message (Collapse)AuthorAge
* Add Histogram Macros to SkiaGravatar ericrk2016-02-05
| | | | | | | | | | | | | | | | | | | | | | | | Adds a set of histogram macros to Skia, modeled after Chrome's UMA_HISTOGRAM_* macros. These allow logging of high frequency events, and are useful to analyze real world usage of certain features. By default, these macros are no-ops. Users can provide a custom header file which defines these macros if they wish to collect histogram data. Chrome will provide such a header. I've currently only added two macros: - SK_HISTOGRAM_BOOLEAN - logs a true/false type relationship (whether we are tiling a texture or not on each draw). - SK_HISTOGRAM_ENUMERATION - logs a set of potential values (which of a number of choices were selected for the texture upload path). We could add more unused macros at the moment, but it seems easier to add these as needed, WDYT? BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1652053004 Review URL: https://codereview.chromium.org/1652053004
* increase subdivision for very large cubicsGravatar caryclark2016-02-05
| | | | | | | | | | | | Allow 512 subdivisions for hairline cubics instead of 64 to allow very large cubics to be properly approximated with lines. R=reed@google.com BUG=339297 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1674813002 Review URL: https://codereview.chromium.org/1674813002
* add kRGBA_F16_SkColorTypeGravatar reed2016-02-05
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1666343002 Review URL: https://codereview.chromium.org/1666343002
* Fix memory leak in SkSpecialSurfaceGravatar robertphillips2016-02-04
| | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1666373002 TBR=jcgregorio@google.com NOTRY=true Review URL: https://codereview.chromium.org/1666373002
* Add SkAutoPixmapStorage::detachPixelsAsData()Gravatar fmalita2016-02-04
| | | | | | | | | | Allows passing pixels ownership to clients. BUG=skia:4896 R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1662353002 Review URL: https://codereview.chromium.org/1662353002
* extend compose-colorfilter to 4fGravatar reed2016-02-04
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1664663003 Review URL: https://codereview.chromium.org/1664663003
* Add SkSpecialImage & SkSpecialSurface classesGravatar robertphillips2016-02-04
| | | | | | | | Initial classes. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1579323002 Review URL: https://codereview.chromium.org/1579323002
* don't get dismayed by negative scales for HQGravatar reed2016-02-03
| | | | | | | | | needs https://codereview.chromium.org/1663793003/ to land first BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1668033002 Review URL: https://codereview.chromium.org/1668033002
* Revert of Work around exasperating Google3 Android build error. (patchset #1 ↵Gravatar benjaminwagner2016-02-03
| | | | | | | | | | | | | | | | | | | | | id:1 of https://codereview.chromium.org/1649493005/ ) Reason for revert: This workaround no longer seems to be necessary. Original issue's description: > Work around exasperating Google3 Android build error. > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1649493005 > > Committed: https://skia.googlesource.com/skia/+/900901fb1ba5170549670829fc8f9d9b590ff5f0 TBR=mtklein@google.com,reed@google.com # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=skia: Review URL: https://codereview.chromium.org/1669663003
* Clean up GrGLSLFragmentProcessor-derived classesGravatar robertphillips2016-02-03
| | | | | | | | In some other patches it was observed that many of the GrGLSLFragmentProcessor-derived classes needlessly pass a parameter to their constructors. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1666773002 Review URL: https://codereview.chromium.org/1666773002
* NEON optimizations for GrayAlpha -> RGBA/BGRA Premul/UnpremulGravatar msarett2016-02-03
| | | | | | | | | | | | | | PNG Decode Time Nexus 6P (for a test set of GrayAlpha encoded PNGs) Regular Unpremul 0.91x Zero Init Unpremul 0.92x Regular Premul 0.84x Zero Init Premul 0.86x BUG=skia:4767 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1663623002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1663623002
* Rename SkBitmapProcStateAutoMapper methodsGravatar fmalita2016-02-03
| | | | | | | | | | | | | | x(),y() -> fractionalIntX(), fractionalIntY() (to clarify the return type) Also add fixed & int helpers. R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1666433003 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1666433003
* use left-shift macro to fix/avoid undefined behvarior warningsGravatar reed2016-02-03
| | | | | | | | | motivated by https://codereview.chromium.org/1657333002/ BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1661873003 Review URL: https://codereview.chromium.org/1661873003
* optimize src mode (opaque src in srcover) singleton with aa (e.g. a8 text mask)Gravatar reed2016-02-03
| | | | | | | | | | | | | | | Before: 8/8 MB 1 9.09ms 10.8ms 10.3ms 11.5ms 9% █▆▆▁▁▁▂▅█▆ nonrendering xfer4f_srcover_aa_1_opaque_linear 8/8 MB 1 10.2ms 12.1ms 11.7ms 13.2ms 9% ▅▇▁▂▁▄█▆▅▆ nonrendering xfer4f_srcover_aa_1_opaque_srgb After: 8/8 MB 1 1.6ms 1.68ms 1.73ms 2.17ms 10% ▄▄█▁▃▁▁▂▁▁ nonrendering xfer4f_srcover_aa_1_opaque_linear 8/8 MB 1 3.13ms 3.62ms 3.97ms 5.81ms 21% █▃▁▂▆▂▂▂▃▂ nonrendering xfer4f_srcover_aa_1_opaque_srgb BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1664713003 Review URL: https://codereview.chromium.org/1664713003
* extend gm to test aa[] parameter on xfer4f procsGravatar reed2016-02-03
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1663643002 Review URL: https://codereview.chromium.org/1663643002
* Hack together MSAN build.Gravatar mtklein2016-02-03
| | | | | | | | | | | | | | | | | | | | | | - Build our own: freetype. - Avoid using: fontconfig, expat, GPU drivers. - Lie about safety: libjpeg (only from src/images... need to in src/codec?) To run: $ tools/xsan_build memory dm $ out/Debug/dm -v --match ~Codec ~BlurLargeImage ~FontMgrAndroidParser Notes: - Codec triggers issues in piex. - BlurLargeImage probably has bugs in the GM only. - FontMgrAndroidParser uses expat. BUG=skia:4550 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1665823002 NOTREECHECKS=true Review URL: https://codereview.chromium.org/1665823002
* Add SkMSAN.hGravatar mtklein2016-02-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This lets us tag up pieces of code as requiring initialized inputs. Almost all code requires initialized inputs, of course. This is for code that works correctly with uninitialized data but triggers false positive warnings in MSAN. E.g., imagine MSAN's found use of uninitialized data in this max function: static uint8_t max(uint8_t x, uint8_t y) { return x > y ? x : y; } There's no bug in here... if there's uninitialized data being branched upon here for the first time, it's sure not max's fault, it's its caller's fault. So we might do this: static uint8_t max(uint8_t x, uint8_t y) { // This function uses branching, so if MSAN finds a problem here, // we can assert x and y are initialized. This will remind us the // problem somewhere in the caller or above, not here. sk_msan_assert_initialized(&x, &x+1); sk_masn_assert_initialized(&y, &y+1); return x > y ? x : y; } By allowing code to assert its inputs must be initialized, we can make the blame for use of uninitialized data more clear. (Sometimes we have another option, to rewrite the code to avoid branching: static uint8_t max(uint8_t x, uint8_t y) { // This function is branchfree, so MSAN won't complain here. // No real need to assert anything as requiring initialization. int diff = x - y; int negative = diff >> (sizeof(int)*8 - 1); return (y & negative) | (x & ~negative); } These approaches to fixing MSAN false positives are orthogonal.) BUG=chromium:574114 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1658913005 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1658913005
* Use SkBitmapProcStateAutoMapper for filter samplers alsoGravatar fmalita2016-02-03
| | | | | | | | | | | | | | | | | | | | | Observation: filter procs are also biased by s.fFilterOne{X,Y} / 2. They all do something along these lines: s.fInvProc(s.fInvMatrix, SkIntToScalar(x) + SK_ScalarHalf, SkIntToScalar(y) + SK_ScalarHalf, &srcPt); SkFixed fx = SkScalarToFixed(srcPt.fX) - (s.fFilterOneX >> 1); SkFixed fy = SkScalarToFixed(srcPt.fY) - (s.fFilterOneX >> 1); It's trivial to extend SkBitmapProcStateAutoMapper to handle this internally, and convert everyone off explicit mapping. R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1661613002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1661613002
* Fix for rounded-rect clips with filters.Gravatar senorblanco2016-02-02
| | | | | | | | | | | | Don't use the base canvas size to limit raster of complex clips, since the top canvas size may actually be larger (e.g., a blur filter which expands the clip bounds to accommodate filter margins). Use the top canvas bounds instead. BUG=skia:4879,471212 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1657333002 Review URL: https://codereview.chromium.org/1657333002
* NEON optimizations for gray -> RGBA (or BGRA) conversionsGravatar msarett2016-02-02
| | | | | | | | | | | | | | | | Swizzle Bench Runtime Nexus 6P 0.32x Nexus 9 0.89x PNG Decode Time (for test set of gray encoded PNGs) Nexus 6P 0.88x Nexus 9 0.91x BUG=skia:4767 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1656383002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1656383002
* unroll srcover_1 for blending a single colorGravatar reed2016-02-02
| | | | | | | | | | | | | | | | | Before: curr/maxrss loops min median mean max stddev samples config bench 8/8 MB 1 1.59ms 1.82ms 1.89ms 2.59ms 14% ▁█▃▃▃▃▃▃▃▃ nonrendering xfer4f_srcover_1_alpha_linear 8/8 MB 1 3.25ms 4.25ms 4.16ms 5.87ms 21% ▁▅▂▁▁▄█▄▅▂ nonrendering xfer4f_srcover_1_alpha_srgb After: curr/maxrss loops min median mean max stddev samples config bench 8/8 MB 1 915µs 915µs 946µs 1.02ms 4% █▄▇▁▁▁▆▁▁▁ nonrendering xfer4f_srcover_1_alpha_linear 8/8 MB 1 2.69ms 3.08ms 3.03ms 3.63ms 10% ▁▃▂▁▁█▄▄▄▆ nonrendering xfer4f_srcover_1_alpha_srgb BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1653943002 Review URL: https://codereview.chromium.org/1653943002
* Remove SK_SUPPORT_LEGACY_SAMPLER_BIASGravatar fmalita2016-02-02
| | | | | | | | | The guard has been removed from Chromium, this is now dead code. TBR=reed@google.com,caryclark@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1658563002 Review URL: https://codereview.chromium.org/1658563002
* Sampler bias for all nofilter flavorsGravatar fmalita2016-02-02
| | | | | | | | | | | | Instead of a piecemeal approach to sampler bias (http://crrev.com/1642273002, http://crrev.com/1539083002), audit all nofilter procs (grep "fInvProc(") and convert them to SkBitmapProcStateAutoMapper. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1656833002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot R=reed@google.com Review URL: https://codereview.chromium.org/1656833002
* Fix fuzzer-found deserialization bug in SkPathRefGravatar ajuma2016-02-02
| | | | | | | | | | This fixes a bug in SkPathRef::CreateFromBuffer found by fuzzing SkPaintImageFilter. BUG=582705 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1653003004 Review URL: https://codereview.chromium.org/1653003004
* Add ability to extract YUV planes from SkImageGravatar bsalomon2016-02-01
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1513393002 Review URL: https://codereview.chromium.org/1513393002
* Move SkColorMatrixFilter implementation to core.Gravatar bsalomon2016-02-01
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1648933002 Review URL: https://codereview.chromium.org/1648933002
* SkPictureShader cleanupGravatar fmalita2016-02-01
| | | | | | | | | Minor cleanup following http://crrev.com/1405103003. R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1652943002 Review URL: https://codereview.chromium.org/1652943002
* Replace the id<-->key hashmap in SkImageFilter by a SkTArrayGravatar xidachen2016-02-01
| | | | | | | | | | | | | | | | | | In the current implementation, SkImageFilter::Cache maintains a hash map that maps SkImageFilter's uniqueID to an array of keys, and its purpose is to remove the values in Cache that are associated with this array of keys that are indexed by uniqueID. However, maintaining this hash map causes perf regression to smoothness.tough_filters_cases. This CL removes the id<-->key hashmap. Instead, we maintain an array of keys in SkImageFilter. Whenever there is a new key, we push it into the array. In ~SkImageFilter(), we call Cache::purgeByKeys to remove all the values that are associated with the keys that are maintained by SkImageFilter. BUG=571655 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1651433002 Review URL: https://codereview.chromium.org/1651433002
* Fix S32_D32_constX_shaderproc assertGravatar fmalita2016-02-01
| | | | | | | | | | | | | | | After https://crrev.com/1642273002, fFilterOneY includes a rounding bias which is not accounted for in the debug-mode S32_D32_constX_shaderproc check. Update the S32_D32_constX_shaderproc assert to use the (biased) SkBitmapProcStateAutoMapper utility. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1655823002 R=reed@google.com BUG=skia:4874 Review URL: https://codereview.chromium.org/1655823002
* batch merge new edgesGravatar caryclark2016-02-01
| | | | | | | | | | | | | Find where newly introduced edges go in the edge list once, then stitch all of them into the edge list. R=reed@google.com BUG=573166 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1647223002 Committed: https://skia.googlesource.com/skia/+/ae658e15477df86d1a864feb48d0274af2784f40 Review URL: https://codereview.chromium.org/1647223002
* Suppress SkBitmapProcState assert temporarilyGravatar fmalita2016-02-01
| | | | | | | | TBR=jcgregorio@google.com,reed@google.com BUG=skia:4874 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1658573002 Review URL: https://codereview.chromium.org/1658573002
* Remove SkDEPRECATED_InstallDiscardablePixelRef from SkPictureShaderGravatar fmalita2016-02-01
| | | | | | | | | | Use an SkImage generator/shader instead. R=reed@google.com Committed: https://skia.googlesource.com/skia/+/fa694ad067976a5b713eec0b6f92ba5efeb0aa9d Review URL: https://codereview.chromium.org/1405103003
* SkNx Load/store: take any pointer.Gravatar mtklein2016-01-31
| | | | | | | | | | This means we can remove a lot of explicit casts in code that uses SkNx. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1650653002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1650653002
* Remove SkBitmapProcStateAutoMapper's overflow checkGravatar fmalita2016-01-30
| | | | | | | | | | | | (follow-up to https://codereview.chromium.org/1642273002) Add an optional SkPoint outparam, and relocate the overflow check to the only client which needs it. R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1650403002 Review URL: https://codereview.chromium.org/1650403002
* float components in xfermodesGravatar reed2016-01-30
| | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1623483002 TBR=mtklein Review URL: https://codereview.chromium.org/1634273002
* combine vertical overlapping edgesGravatar caryclark2016-01-30
| | | | | | | | | | | | Paths outside clips, and sometimes paths inside clips, devolve to multiple adjacent or overlapping vertical edges. Combine these edges when possible to reduce the overall edge count. R=reed@google.com BUG=573166 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1654433002 Review URL: https://codereview.chromium.org/1654433002
* Revert of batch merge new edges (patchset #1 id:1 of ↵Gravatar msarett2016-01-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1647223002/ ) Reason for revert: Breaks the roll. Original issue's description: > batch merge new edges > > Find where newly introduced edges go in the edge list once, > then stitch all of them into the edge list. > > R=reed@google.com > BUG=573166 > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1647223002 > > Committed: https://skia.googlesource.com/skia/+/ae658e15477df86d1a864feb48d0274af2784f40 TBR=reed@google.com,caryclark@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=573166 Review URL: https://codereview.chromium.org/1654593002
* Add sampler bias for the nofilter/translate specializationsGravatar fmalita2016-01-30
| | | | | | | | | | | | | | | | Convert SkBitmapProcState::setupForTranslate() to use SkBitmapProcStateAutoMapper. This adds bias for the translate procs: Clamp_S32_D32_nofilter_trans_shaderproc, Repeat_S32_D32_nofilter_trans_shaderproc Since the original impl checks for int overflow, extend SkBitmapProcStateAutoMapper to detect this condition. BUG=chromium:581870 R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1642273002 Review URL: https://codereview.chromium.org/1642273002
* batch merge new edgesGravatar caryclark2016-01-30
| | | | | | | | | | | Find where newly introduced edges go in the edge list once, then stitch all of them into the edge list. R=reed@google.com BUG=573166 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1647223002 Review URL: https://codereview.chromium.org/1647223002
* fix teeny dashed path bugGravatar caryclark2016-01-29
| | | | | | | | | | | If the path dashed is sufficiently small, there may be no segments generated to dash. Check for an empty segment list. R=reed@google.com BUG=skia:4871 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1645613006 Review URL: https://codereview.chromium.org/1645613006
* Consolidate SK_CRASH and sk_throw into SK_ABORTGravatar djsollen2016-01-29
| | | | | | | TBR=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1648343003 Review URL: https://codereview.chromium.org/1648343003
* starter procs for blending with pm4fGravatar reed2016-01-29
| | | | | | | | | | | | | | | | | | | | curr/maxrss loops min median mean max stddev samples config bench 8/8 MB 4 87.1µs 91µs 89.8µs 92µs 2% ▇▇▇▇█▇▅▁▁▁ nonrendering xfer4f_srcover_N_opaque_linear 9/9 MB 2 196µs 196µs 215µs 383µs 27% ▁▁▁▁█▁▁▁▁▁ nonrendering xfer4f_srcover_N_opaque_srgb 9/9 MB 1 313µs 313µs 313µs 313µs 0% ▁▄▅▅▅▂████ nonrendering xfer4f_srcover_N_alpha_linear 9/9 MB 1 580µs 580µs 582µs 602µs 1% ▁▁▁▁▁▁▂▁▁█ nonrendering xfer4f_srcover_N_alpha_srgb 9/9 MB 23 13.1µs 13.1µs 13.1µs 13.1µs 0% ▆▄▄█▂▂▂▁▂▁ nonrendering xfer4f_srcover_1_opaque_linear 9/9 MB 23 13.2µs 13.2µs 13.2µs 13.2µs 0% █▄▂▁▃▁▂▂▂▂ nonrendering xfer4f_srcover_1_opaque_srgb 9/9 MB 2 178µs 183µs 183µs 185µs 1% ▇▇▇█▇▇▇▇▇▁ nonrendering xfer4f_srcover_1_alpha_linear 9/9 MB 1 517µs 517µs 517µs 517µs 0% ▇█▄▃▄▁▂▁▂▄ nonrendering xfer4f_srcover_1_alpha_srgb BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1642703003 TBR= landing now so these incremental types/functions can be used to collaborate with herb's work. nothing is active at this point Review URL: https://codereview.chromium.org/1642703003
* SaveFlags begone!Gravatar fmalita2016-01-28
| | | | | | | | | This is now dead code (post https://codereview.chromium.org/1636103002). R=reed@google.com,robertphillips@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1648773002 Review URL: https://codereview.chromium.org/1648773002
* Work around exasperating Google3 Android build error.Gravatar benjaminwagner2016-01-28
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1649493005 Review URL: https://codereview.chromium.org/1649493005
* Image filters: Make a recursive, forward-mapping boundsGravatar senorblanco2016-01-28
| | | | | | | | | | | | | | | | | traversal which respects the CropRect. This is useful when you want the device-space bounds of a primitive after filtering. (This may also eventually subsume computeFastBounds()). This CL generalizes filterBounds() and onFilterBounds() to take a mapping direction. It also makes filterBounds() responsible for calling onFilterNodeBounds() and applying the crop rect, simplifying onFilterBounds(). BUG=skia:4627 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1612953004 Review URL: https://codereview.chromium.org/1612953004
* kill SkValueGravatar mtklein2016-01-27
| | | | | | | | | | | This is clearly not what we're going to do. TBR=reed@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643753002 Review URL: https://codereview.chromium.org/1643753002
* Revert of Consolidate SkStream copying methods (patchset #1 id:1 of ↵Gravatar msarett2016-01-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1640793002/ ) Reason for revert: Test to see if this fixes the bots. Original issue's description: > Consolidate SkStream copying methods > > Make SkCopyStreamToData call SkStreamCopy, removing duplicate code. > > The former still has its own method of copying with a length, since > it saves one copy. > > BUG=skia:4788 > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1640793002 > > Committed: https://skia.googlesource.com/skia/+/440c5a98dee428c661b77d149e30c794d264b8cd TBR=halcanary@google.com,scroggo@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4788 Review URL: https://codereview.chromium.org/1641853002
* Consolidate SkStream copying methodsGravatar scroggo2016-01-27
| | | | | | | | | | | | Make SkCopyStreamToData call SkStreamCopy, removing duplicate code. The former still has its own method of copying with a length, since it saves one copy. BUG=skia:4788 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1640793002 Review URL: https://codereview.chromium.org/1640793002
* move more geometry to simdGravatar caryclark2016-01-26
| | | | | | | | | | | | Remove duplicate quad and cubic code around computing the polynomial coefficients, and use common SIMD-based code instead. R=reed@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1633143002 Review URL: https://codereview.chromium.org/1633143002
* Cleaning up trailing spaces and typos.Gravatar cblume2016-01-26
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1631993002 Review URL: https://codereview.chromium.org/1631993002