aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* PDF: Canon now owns a reference to all interned objectsGravatar halcanary2015-02-27
| | | | | | | | | | | | | Add SkPDFCanon::reset function to unref all objects. No longer possible to remove object from canon Motivation: this doesn't change these object's lifetime, (they will still be fully unrefed when SkDocument::close() is called, but we no longer have to remove them from the array when their destructor is called. Review URL: https://codereview.chromium.org/966863002
* Dash batchGravatar joshualitt2015-02-27
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/925673002
* Revert of Flate: fix valgrind miniz Conditional-jump-or-move-depends... ↵Gravatar schenney2015-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | error (patchset #2 id:20001 of https://codereview.chromium.org/964933003/) Reason for revert: Breaks the chrome build. ../../third_party/skia/src/core/SkFlate.cpp:37:22: error: assigning to 'MOZ_Z_alloc_func' (aka 'MOZ_Z_voidpf (*)(MOZ_Z_voidpf, MOZ_Z_uInt, MOZ_Z_uInt)') from incompatible type 'void *(*)(void *, size_t, size_t)': type mismatch at 2nd parameter ('MOZ_Z_uInt' (aka 'unsigned int') vs 'size_t' (aka 'unsigned long')) flateData.zalloc = &skia_alloc_func; ^ ~~~~~~~~~~~~~~~~ ../../third_party/skia/src/core/SkFlate.cpp:180:28: error: assigning to 'MOZ_Z_alloc_func' (aka 'MOZ_Z_voidpf (*)(MOZ_Z_voidpf, MOZ_Z_uInt, MOZ_Z_uInt)') from incompatible type 'void *(*)(void *, size_t, size_t)': type mismatch at 2nd parameter ('MOZ_Z_uInt' (aka 'unsigned int') vs 'size_t' (aka 'unsigned long')) fImpl->fZStream.zalloc = &skia_alloc_func; Original issue's description: > Flate: fix valgrind miniz Conditional-jump-or-move-depends... error > > Committed: https://skia.googlesource.com/skia/+/e0638f8ecfb609c89cab1aa8b498ad3f368b89d3 TBR=mtklein@google.com,halcanary@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/964953002
* Flate: fix valgrind miniz Conditional-jump-or-move-depends... errorGravatar halcanary2015-02-27
| | | | Review URL: https://codereview.chromium.org/964933003
* Revert of Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType ↵Gravatar reed2015-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #1 id:1 of https://codereview.chromium.org/966753002/) Reason for revert: Android has been updated, so we can re-land this. Original issue's description: > Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #3 id:40001 of https://codereview.chromium.org/964613002/) > > Reason for revert: > This breaks Android framework build. See > > https://android-build.storage.googleapis.com/builds/git_master-skia-linux-volantisg-userdebug/1759130/7f0fcdbf3c0d47530d770a15c912298dac20dd7d90a01de63ecb9ba16c96b25c/logs/build_error.log?Expires=1425047630&GoogleAccessId=701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Signature=BHPS1lffyH7WykwyEw5RXVVXWqQK5rab%2B6Pl1VaUrTlmWT%2FXb6fq%2FBe22AUDZYFPG24MBR%2F2IzIDzTqH3mihQS9wIkcKJ4kJpA2G%2BI3l8jCX20brZSr3bsDSx%2F4wsLwU1bBpIxI%2FbrauoPRqddbXP8sNI1l51u6ZCxpvRQms9Mc%3D > > We need to stop them from using kIgnore before we can reland this. > > Original issue's description: > > replace kIgnore_SkAlphaType with kUnknown_SkAlphaType > > > > BUG=skia: > > TBR= > > > > Committed: https://skia.googlesource.com/skia/+/1c8aeeaebce9675197be31bd769e8ffa2531bf86 > > TBR=reed@google.com,reed@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/574290f61a47bd1ce1f9e2d941533bda9c8f03fe TBR=reed@chromium.org,scroggo@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/966853002
* Test msaa on bots using dm. 4 samples for Android, 16 elsewhereGravatar bsalomon2015-02-27
| | | | Review URL: https://codereview.chromium.org/958033004
* Context batchesGravatar joshualitt2015-02-27
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/913253003
* Decrease GrInOrderDrawBuffer::Cmd's reliance on GrInOrderDrawBufferGravatar robertphillips2015-02-27
| | | | Review URL: https://codereview.chromium.org/940533003
* Clang warnings for SkFontHost_FreeType_common.cppGravatar fmalita2015-02-27
| | | | | | | | | Signed/unsigned comparison warnings while attempting to build with Clang on Linux. R=bungeman@google.com,joshualitt@chromium.org Review URL: https://codereview.chromium.org/961103002
* Add rewind capability to SkChunkAllocGravatar robertphillips2015-02-27
| | | | | | Split off from https://codereview.chromium.org/940533003/ (Decrease GrInOrderDrawBuffer::Cmd's reliance on GrInOrderDrawBuffer) Review URL: https://codereview.chromium.org/967553003
* [SkSVGDevice] drawBitmap* supportGravatar fmalita2015-02-27
| | | | | | | | | | Also fix a clip transform issue: clips are tracked in device space, but if applied directly to leaf elements they are also subject to local transforms ("transform='...'"). Instead, apply via <g> wrapper elements. R=reed@google.com,mtklein@google.com Review URL: https://codereview.chromium.org/959883003
* Make the glyph array entries inline.Gravatar herb2015-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Perf Reports bin/c --match nytimes --config 8888 desk_nytimes.skp_1_mpd 1.41ms -> 1.38ms 0.98x desk_nytimes.skp_1 1.94ms -> 1.87ms 0.97x bin/c --match nytimes --config gpu desk_nytimes.skp_1_mpd 1.63ms -> 1.59ms 0.97x desk_nytimes.skp_1 1.56ms -> 1.5ms 0.97x Here are results from mac instruments: --match nytimes --config gpu --samples 10000 --skps /Users/herb/src/skia/skps Inline: Total Samples Running Time Self Symbol Name 94335 94335.0ms 98.3% 0.0 start 2365 2365.0ms 2.4% 2365.0 SkGlyphCache::getGlyphIDMetrics(unsigned short, int, int) 975 975.0ms 1.0% 975.0 SkGlyphCache::lookupMetrics(unsigned int, SkGlyphCache::MetricsType) Clean: Total Samples Running Time Self Symbol Name 96833 96833.0ms 97.3% 0.0 start 3418 3418.0ms 3.4% 3418.0 SkGlyphCache::getGlyphIDMetrics(unsigned short, int, int) 1961 1961.0ms 1.9% 1961.0 SkGlyphCache::lookupMetrics(unsigned int, SkGlyphCache::MetricsType) BUG=skia: Committed: https://skia.googlesource.com/skia/+/4c08f16b252a55e438a61f26e5581394ed177da1 Committed: https://skia.googlesource.com/skia/+/b4c29ac173e6f8844327338687248b98bc94132d Review URL: https://codereview.chromium.org/885903002
* Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #3 ↵Gravatar scroggo2015-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | id:40001 of https://codereview.chromium.org/964613002/) Reason for revert: This breaks Android framework build. See https://android-build.storage.googleapis.com/builds/git_master-skia-linux-volantisg-userdebug/1759130/7f0fcdbf3c0d47530d770a15c912298dac20dd7d90a01de63ecb9ba16c96b25c/logs/build_error.log?Expires=1425047630&GoogleAccessId=701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Signature=BHPS1lffyH7WykwyEw5RXVVXWqQK5rab%2B6Pl1VaUrTlmWT%2FXb6fq%2FBe22AUDZYFPG24MBR%2F2IzIDzTqH3mihQS9wIkcKJ4kJpA2G%2BI3l8jCX20brZSr3bsDSx%2F4wsLwU1bBpIxI%2FbrauoPRqddbXP8sNI1l51u6ZCxpvRQms9Mc%3D We need to stop them from using kIgnore before we can reland this. Original issue's description: > replace kIgnore_SkAlphaType with kUnknown_SkAlphaType > > BUG=skia: > TBR= > > Committed: https://skia.googlesource.com/skia/+/1c8aeeaebce9675197be31bd769e8ffa2531bf86 TBR=reed@google.com,reed@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/966753002
* replace kIgnore_SkAlphaType with kUnknown_SkAlphaTypeGravatar reed2015-02-27
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/964613002
* Initialize three locals to avoid the risk of uninitialized reads.Gravatar brucedawson2015-02-26
| | | | | | | | | | | | | | | | | | | | /analyze recently reported two new warnings about reading from potentially uninitialized local variables: src\third_party\skia\src\gpu\grclipmaskmanager.cpp(290) : warning C6001: Using uninitialized memory 'requiresAA'. src\third_party\skia\src\gpu\grclipmaskmanager.cpp(336) : warning C6001: Using uninitialized memory 'genID'. It is not clear whether the uninitialized reads can actually happen, but the guarantees seem sufficiently non-obvious that the prudent thing to do to guarantee future stability is to initialized them -- it's cheap. I also initialized initialState because it seemed to fall in the same class, despite there being no warning for it. BUG=427616 Review URL: https://codereview.chromium.org/957133002
* miniz support in SkFlate / PDFGravatar mtklein2015-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | - Adds miniz.c v115_r4 (latest release) to third_party. - Merges SkDeflateWStream into SkFlate so including "miniz.c" links without duplicating symbols. The only interesting code change I've made is to remove the line fImpl->fZStream.data_type = Z_BINARY; from SkDeflateWStream::SkDeflateWStream(). miniz doesn't have Z_BINARY defined, and as far as I can tell, both zlib and miniz ignore data_type. We should be able to swap skflate.gyp's dependency between zlib.gyp:zlib and zlib.gyp:miniz at will (except of course on Windows) if we're interested in zlib itself. I've left android framework on its own zlib. I think this all means we can stop defining SK_NO_FLATE on Windows. I'll leave the possible cleanup of SK_NO_FLATE itself for another time. Might be we always want to keep this dependency optional. CQ_EXTRA_TRYBOTS=client.skia:Test-Win8-ShuttleA-HD7770-x86-Debug-Trybot BUG=skia: Review URL: https://codereview.chromium.org/957323003
* Cleanup in GrPipelineBuilderGravatar bsalomon2015-02-26
| | | | Review URL: https://codereview.chromium.org/956363003
* Add sqrt() and rsqrt() to Sk4f.Gravatar mtklein2015-02-26
| | | | | | | | | This doesn't add them to the second-stringer Sk4i. It's unclear we should be doing that often, and we don't have efficient ways to do it except via floats. BUG=skia: Review URL: https://codereview.chromium.org/964603002
* Think implicit promotion is a good idea?Gravatar mtklein2015-02-26
| | | | | | | | Things like foo.multiply(Sk4f(t,t,t,t)) can just be foo.multiply(t). BUG=skia: Review URL: https://codereview.chromium.org/960773005
* Automatically add NOTREECHECKS when uploading CLs from non master branchesGravatar rmistry2015-02-26
| | | | | | | | | These changes are possible due to the recently submitted depot_tools change https://codereview.chromium.org/949273002/ ('Add ability to specify and run post upload hooks'). BUG=skia: Review URL: https://codereview.chromium.org/963553002
* Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #6 id:100001 ↵Gravatar bsalomon2015-02-26
| | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/949263002/) Reason for revert: breaking hd2000 windows bots Original issue's description: > Improve tracking of bound FBOs in GrGLGpu. > > Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0 TBR=egdaniel@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/964543002
* remove unnecessary and confusing error message from scalerGravatar humper2015-02-26
| | | | | | | | (also fix whitespace) BUG=skia: Review URL: https://codereview.chromium.org/958013004
* add auto SkPMFloat <-> Sk4f conversionGravatar mtklein2015-02-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/954323002
* Automatically add a docs preview link and NOTRY=true when there are only ↵Gravatar rmistry2015-02-26
| | | | | | | | | | | docs changes. These changes are possible due to the recently submitted depot_tools change https://codereview.chromium.org/949273002/ ('Add ability to specify and run post upload hooks'). BUG=skia:3474 Review URL: https://codereview.chromium.org/960203002
* Spin off some fixes to land right away.Gravatar mtklein2015-02-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/960023002
* Fix SampleApp build on iOS.Gravatar scroggo2015-02-26
| | | | | | Remove references to kNullGPU_DeviceType, which has been removed. Review URL: https://codereview.chromium.org/960133004
* Some small code tidyingGravatar joshualitt2015-02-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/961813002
* Improve tracking of bound FBOs in GrGLGpu.Gravatar bsalomon2015-02-26
| | | | Review URL: https://codereview.chromium.org/949263002
* Win64 warning fix for GrTessellatingPathRenderer.Gravatar Stephen White2015-02-26
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/956293003
* Tessellating GPU path renderer.Gravatar senorblanco2015-02-26
| | | | | | | | | | This path renderer converts paths to linear contours, resolves intersections via Bentley-Ottman, implements a trapezoidal decomposition a la Fournier and Montuno to produce triangles, and renders those with a single draw call. It does not currently do antialiasing, so it must be used in conjunction with multisampling. A fair amount of the code is to handle floating point edge cases in intersections. Rather than perform exact computations (which would require arbitrary precision arithmetic), we reconnect the mesh to reflect the intersection points. For example, intersections can occur above the current vertex, and force edges to be merged into the current vertex, requiring a restart of the intersections. Splitting edges for intersections can also force them to merge with formerly-distinct edges in the same polygon, or to violate the ordering of the active edge list, or the active edge state of split edges. BUG=skia: Review URL: https://codereview.chromium.org/855513004
* Revert of Use an image generator to back SkPictureShader tiles. (patchset #4 ↵Gravatar fmalita2015-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:60001 of https://codereview.chromium.org/866773002/) Reason for revert: TSAN troubles. Original issue's description: > Use an image generator to back SkPictureShader tiles. > > To avoid lifetime issues for tiles backed by discardable memory, use an > image generator to re-generate them on the fly. > > With this CL, we are now caching bitmap shaders wrapping discardable > pixel ref bitmaps backed by picture image generators. > > (the CL also includes some minor/unrelated SkPictureShader cleanup) > > BUG=skia:3220 > R=reed@google.com,halcanary@google.com > > Committed: https://skia.googlesource.com/skia/+/4739955e98ba86900a5bbac0e3661601427a54d4 TBR=reed@google.com,halcanary@google.com,mtklein@google.com,reed@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:3220 Review URL: https://codereview.chromium.org/956143002
* adding preabandon flag to DMGravatar joshualitt2015-02-25
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/929243004
* I'd really like to land this before the branch so speedy reviews are ↵Gravatar joshualitt2015-02-25
| | | | | | | | | | appreciated. BUG=skia: Committed: https://skia.googlesource.com/skia/+/586d5d640b19860dfbbd903a5188da1bbbe87336 Review URL: https://codereview.chromium.org/936943002
* Revert of Pass clip to context (patchset #8 id:180001 of ↵Gravatar joshualitt2015-02-25
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/936943002/) Reason for revert: Strange blur problems on nexus 5 Original issue's description: > I'd really like to land this before the branch so speedy reviews are appreciated. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/586d5d640b19860dfbbd903a5188da1bbbe87336 TBR=jvanverth@google.com,senorblanco@google.com,bsalomon@google.com,senorblanco@chromium.org,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/956083002
* Clean up ColorRectProc plumbing.Gravatar mtklein2015-02-25
| | | | | | | | | | | | | | | | | | | We've always been using the portable ColorRect32, so we don't need the ColorRectProc plumbing. Furthermore, ColorRect32 doesn't seem to be very important (we're only using it in the opaque case, which our row-by-row procs already specialize for). Remove that too. If we find we want specialization for really narrow rects again, let's put it in blitRect() directly. It's pretty unlikely we're going to get platform-specific speedup for blits to non-contiguous memory. My local SKP comparison is +- 3%... most neutral I've ever seen. BUG=skia: Review URL: https://codereview.chromium.org/959873002
* Fix the race to set the new gen ID.Gravatar mtklein2015-02-25
| | | | | | | | | | | | | | | There's a small window where two threads can both see the gen ID is zero, both go get new distinct genIDs, but race to write them. This now uses compare_exchange to read and leave the winner's ID in place when there's a race. SkAtomics isn't public. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/956013002
* Remove SK_USE_LEGACY_AA_COVERAGE guarded code.Gravatar bungeman2015-02-25
| | | | | | It doesn't appear anyone uses this flag anymore. Review URL: https://codereview.chromium.org/943053004
* Shorten up some site titles, also remove some trailing whitespace.Gravatar jcgregorio2015-02-25
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/956853005
* I'd really like to land this before the branch so speedy reviews are ↵Gravatar joshualitt2015-02-25
| | | | | | | | appreciated. BUG=skia: Review URL: https://codereview.chromium.org/936943002
* Steal a bit from the gen ID instead of managing two atomic values.Gravatar mtklein2015-02-25
| | | | | | | | | | | | This extra atomic bool is hard to think about, and I'm worried about how updates to fGenerationID and fUniqueGenerationID interlace. By storing them in the same int, they can't ever race. CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot BUG=skia: Review URL: https://codereview.chromium.org/955043002
* fuzzer fixesGravatar caryclark2015-02-25
| | | | | | | | | | | | | | | | | | | Fix path bugs exposed by the path fuzzer. Changes to existing gm and samplecode files defer their calls to construct SkPath objects until the first draw instead of at test initialization. Add an experimental call to SkPath to validate the internal SkPathRef. Fix SkPath::addPoly to set the last moveto after adding a close verb. Fix stroke to handle failures when computing the unit normal. Add a unit test for the unit normal failure. R=reed@google.com Review URL: https://codereview.chromium.org/953383002
* SkPDF: remove SK_API on no-longer-public functions.Gravatar halcanary2015-02-25
| | | | | | CQ_INCLUDE_TRYBOTS=client.skia:Mac Builder-Trybot,Linux Builder-Trybot,Win Builder-Trybot Review URL: https://codereview.chromium.org/953053002
* roll gypGravatar bsalomon2015-02-25
| | | | | | TBR=mtklein@google.com Review URL: https://codereview.chromium.org/954673003
* Revert of fAddedToCache doesn't need to be atomic. (patchset #1 id:1 of ↵Gravatar mtklein2015-02-25
| | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/960573002/) Reason for revert: Yes it does. notifyAddedToCache() must be thread-safe. Original issue's description: > fAddedToCache doesn't need to be atomic. > > It's only ever read or set from non-threadsafe methods. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/fbe0edfec4fed2a09e12b049d527d280f16e75b3 TBR=reed@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/959763002
* Revert of Default SK_ANGLE to true on Windows, run angle whenever possible ↵Gravatar mtklein2015-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | on bots. (patchset #3 id:40001 of https://codereview.chromium.org/946933006/) Reason for revert: Needs bot upgrades. Original issue's description: > Default SK_ANGLE to true on Windows, run angle whenever possible on bots. > > nanobench doesn't need an update. It uses the default for --config, > which includes angle. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/88ec329b580a081d9d56cbcaad0ee46cb941c849 TBR=bsalomon@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/954243002
* fAddedToCache doesn't need to be atomic.Gravatar mtklein2015-02-25
| | | | | | | | It's only ever read or set from non-threadsafe methods. BUG=skia: Review URL: https://codereview.chromium.org/960573002
* Default SK_ANGLE to true on Windows, run angle whenever possible on bots.Gravatar mtklein2015-02-25
| | | | | | | | | nanobench doesn't need an update. It uses the default for --config, which includes angle. BUG=skia: Review URL: https://codereview.chromium.org/946933006
* Remove SSE2 ColorRect32 code/filesGravatar henrik.smiding2015-02-25
| | | | | | | | | | | | | | Removes the disabled SSE2 optimization of ColorRect32 and deletes the two files containing the code. Measured on both Core Haswell and Atom Silvermont, and only got some miniscule improvement compared to the default implementation. Also tried to write a new, ultimate, version of this optimization, but only got ~5% improvement on ColorRect32-heavy tests. Signed-off-by: Henrik Smiding <henrik.smiding@intel.com> Review URL: https://codereview.chromium.org/957433002
* only notify bitmaps that have been added to the cacheGravatar reed2015-02-25
| | | | | | | | | | | | old code: - calls=2677 hit-rate=3.51139% new code: - calls=94 hit-rate=97.8723% BUG=skia: Review URL: https://codereview.chromium.org/960563002
* Doc: user/quick/linux mentions 32-bit compilingGravatar halcanary2015-02-25
| | | | | | NOTRY=true Review URL: https://codereview.chromium.org/952193002