aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
* Strip font name of special characters before dumpingGravatar ssid2015-10-01
| | | | | | | | | | | | | The font name can contain special characters in some OS that is considered as delimiters ('/') by the traces. This causes error in the dump name. This CL strips the fone name obtained before adding it to traces. This also adds discardable memory size for resources in cache. BUG=532838 Review URL: https://codereview.chromium.org/1346993006
* Base SkAutoTUnref on skstd::unique_ptr.Gravatar bungeman2015-10-01
| | | | | | | | | To further consolidate the various unique owning classes, this bases SkAutoTUnref on skstd::unique_ptr. Users are updated because of two breaking changes, swap now takes a reference and reset no longer returns its argument. Review URL: https://codereview.chromium.org/1370803002
* Revert of Blacklist GLVertexAttributesBench and GLVec4ScalarBench for ↵Gravatar joshualitt2015-10-01
| | | | | | | | | | | | | | | | | | | | | | GalaxyS4 due to skia:4373 (patchset #1 id:1 of https://codereview.chromium.org/1365683003/ ) Reason for revert: should hopefully be fixed, please reland if not. Original issue's description: > Blacklist GLVertexAttributesBench and GLVec4ScalarBench for GalaxyS4 due to skia:4373 > > BUG=skia:4373 > > Committed: https://skia.googlesource.com/skia/+/3420d2796bad5ce553efb9909790ea72e578dc47 TBR=borenet@google.com,benjaminwagner@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4373 Review URL: https://codereview.chromium.org/1382933002
* Basic CPU support for VisualBench.Gravatar mtklein2015-10-01
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1378393002
* Fix for texture width or height are greater than 2^16Gravatar joshualitt2015-10-01
| | | | | | | BUG=skia:3467 TBR= Review URL: https://codereview.chromium.org/1380153002
* add hard-coded limit for tmp allocations when HQ image scalingGravatar reed2015-10-01
| | | | | | BUG=528628 Review URL: https://codereview.chromium.org/1368393003
* SkPDF: ASAN fix: don't double ref new SkPDFBitmap objectsGravatar halcanary2015-10-01
| | | | | | TBR=robertphillips@google.com,tomhudson@google.com, Review URL: https://codereview.chromium.org/1381073005
* Update libwebp and resume testing scaled webpGravatar scroggo2015-10-01
| | | | | | | | | | | | | | | | | libwebp has a fix for [1]. Update to the commit that contains the fix. Update libwebp.gypi, corresponding to libwebp's latest makefile. Turn back on DM testing for scaled webp, now that it should no longer use uninitialized memory. [1] https://code.google.com/p/webp/issues/detail?id=254 BUG=skia:4038 Committed: https://skia.googlesource.com/skia/+/0575d3e6c272744a66ab3281f9871366717df339 Review URL: https://codereview.chromium.org/1280073002
* Enable image is opaque test seems to pass nowGravatar joshualitt2015-10-01
| | | | | | BUG=skia:2857 Review URL: https://codereview.chromium.org/1375293003
* Remove const from `const int loops`.Gravatar mtklein2015-10-01
| | | | | | | | This drives me nuts, and prevents `while (loops --> 0)`. BUG=skia: Review URL: https://codereview.chromium.org/1379923005
* Fix drawVertices when there is a paint alphaGravatar bsalomon2015-10-01
| | | | Review URL: https://codereview.chromium.org/1382753002
* Automatically add extra CQ trybots for predetermined pathsGravatar rmistry2015-10-01
| | | | | | | | | | | | | | If the CL does not contain a "CQ_EXTRA_TRYBOTS=" section then it constructs one from the paths modified in your CL. If you already have an existing "CQ_EXTRA_TRYBOTS=" section in your CL then it parses it, preserves your options, and only adds the builders and masters that were missing. Also ensures no trybots are repeated (i.e. each master trybot combination only shows up once). And I killed the hashtags feature in this CL, nobody was using it. BUG=skia:4364 Review URL: https://codereview.chromium.org/1383743002
* Resolve TODOs in PRESUBMIT.pyGravatar rmistry2015-10-01
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1384453004
* Add overrides to SkAndroidSDKCanvas, update SkHwuiRendererGravatar tomhudson2015-10-01
| | | | | | | | | | | | | | We can not call android::uirenderer::DisplayListCanvas::reset() after the object has been constructed (due to an assert), so remove that call. Add two missing overrides to SkAndroidSDKCanvas: onDrawAtlas() and onDrawImageNine(). BUG=skia:4216 R=djsollen@google.com patch from issue 1377533003 at patchset 20001 (http://crrev.com/1377533003#ps20001) Review URL: https://codereview.chromium.org/1369923003
* SkPDF: Implement drawImage*() properlyGravatar halcanary2015-10-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | drawImage calls now properly embeds the original jpeg. NOTE: drawBitmap*() calls no longer embed JPEG files when possible (this is in advance of eliminating bitmaps backed by encoded data). Chromium has already moved from drawBitmap to drawImage. Comparisons: control: total PDF drawImage/drawBitmap calls: 8010 total PDF jpeg images: 0 total PDF regular images: 3581 experiament: total PDF drawImage/drawBitmap calls: 8014 total PDF jpeg images: 271 total PDF regular images: 3311 total PDF regular images: 3582 (271 + 3311) When comparing rendered output there were perceptual differences in the following four GMs: colorcube, emboss, colormatrix, and tablecolorfilter. All of these differences were improvements (that is, closer to the 8888 rendering) due fixing a bug with colorfilters and forgetting to call notifyPixelsChanged. No SKPs had perceptual differences. Total PDF size dropped from 133964 kB to 126276 kB, a 5.7% improvement (mostly due to restoring use of JPG images in SKPs). BUG=skia:4370 Review URL: https://codereview.chromium.org/1372783003
* Fix for 2056Gravatar joshualitt2015-10-01
| | | | | | BUG=skia:2056 Review URL: https://codereview.chromium.org/1376293003
* Revert of Have GrRectBlurEffect use Linear filtering (rather than Nearest ↵Gravatar robertphillips2015-10-01
| | | | | | | | | | | | | | | | | | | Neighbor) (patchset #1 id:1 of https://codereview.chromium.org/1378023004/ ) Reason for revert: Failing some Blink layout tests - will wait until after branch. Original issue's description: > Have GrRectBlurEffect use Linear filtering (rather than Nearest Neighbor) > > Committed: https://skia.googlesource.com/skia/+/2d70bcccc9ba8f3898a7ae506ba7410ed8e9c9db TBR=bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1378323002
* Implement stencil clipping in mixed sampled render targetsGravatar vbuzinov2015-09-30
| | | | | | | | | | | | | | This change enables multisampled clipping for mixed sampled render targets. Previously clipping in mixed samples config behaved the same as in the gpu config. In order to retrofit non-MSAA draw methods, programmable sample locations are used in order to colocate all samples at (0.5, 0.5). Requires support for NV_sample_locations. BUG=skia:4399 Review URL: https://codereview.chromium.org/1232103002
* Small DM cleanupGravatar scroggo2015-09-30
| | | | | | | We set a value to bounds, and then immediately replace it. Skip the first one. Review URL: https://codereview.chromium.org/1378923002
* Have GrRectBlurEffect use Linear filtering (rather than Nearest Neighbor)Gravatar robertphillips2015-09-30
| | | | Review URL: https://codereview.chromium.org/1378023004
* Avoid copies in SkMasks constructorGravatar scroggo2015-09-30
| | | | | | Also mark const methods as const. Review URL: https://codereview.chromium.org/1364463005
* Add some of my favorite headers to gyp.Gravatar herb2015-09-30
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1378133003
* Revert[4] of add ImageShader, sharing code with its Bitmap cousinGravatar reed2015-09-30
| | | | | | | | | | Now with GrTextureMaker subclasses to handle npot usage. This reverts commit 476506d070dbc59b158acc1a00c34bff95ab2968. BUG=skia: Review URL: https://codereview.chromium.org/1370223002
* Fix for nexus 5 crashing in GL benchesGravatar joshualitt2015-09-30
| | | | | | | | | | GLBenches do not expect gl state to change between onPerCanvasPreDraw and *PostDraw, but we do a clear and sometimes we clear as draw. This causes us to bind vertex objects / programs / etc. This change creates two new virtual methods which are called right before and immediately after timing. BUG=skia: Review URL: https://codereview.chromium.org/1379853003
* Fix bug testing SkCodec for ICOGravatar scroggo2015-09-30
| | | | | | | | | | | | | | | | | | | | | Looking in Gold, I see some ICO images that only show the upper left corner of the originals. It is happening because we use different ways of deciding what the dimensions are: In CodecSrc::size(), we use an SkScaledCodec to get the dimensions, even when fMode is not kScaledCodec_Mode. In CodecSrc::draw(), we only use SkScaledCodec in kScaledCodec_Mode. My recent CL to combine SkScanlineDecoder with SkCodec revealed this bug, because now SkScaledCodec::NewFromStream will succeed on ICO. (Previously, it failed because we do not yet have a scanline decoder for ICO (skbug.com/4404). Now that they are combined, we would need to specially flag ICO to stop returning an SkScaledCodec.) Switch size() to use the correct type of codec. Review URL: https://codereview.chromium.org/1373253004
* CMake for WindowsGravatar mtklein2015-09-30
| | | | | | | | | | | | | | | | | | | | | | | Except for some small edits, this is mainly: patch from issue 1353953004 at patchset 80001 (http://crrev.com/1353953004#ps80001) CMake configuration file for compiling Windows x64 VS2013 with CMake. Things to be fixed: - only x64 is supported - I didn't try SKIA_GDI (experimental) and directly went for the DirectWrite - this should need an option in the CMake configuration - make sure yasm and custom build rules paths are set correctly - if the hierarchy changes CMake will just blow things up - compilation works but there are LOTS and LOTS of warnings (over 9000), if this is okay nevermind but since most of them are related to deprecated functions either consider fixing or suppressing them - Release mode is untested - I suppose it won't be a big deal but might need some fixing More info here: https://groups.google.com/forum/#!topic/skia-discuss/HLu-Hesfbg4 BUG=skia:4269 CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot,Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot Review URL: https://codereview.chromium.org/1370263004
* Call rewindIfNeeded in SkCodecGravatar scroggo2015-09-30
| | | | | | | | | | Rather than calling it in each subclass, call it once in the base class. Call it first, since other steps may modify internal structures which would be replaced by a call to onRewind. BUG=skia:4284 Review URL: https://codereview.chromium.org/1381483002
* Merge SkCodec with SkScanlineDecoderGravatar scroggo2015-09-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Benefits: - This mimics other decoding APIs (including the ones SkCodec relies on, e.g. a png_struct, which can be used to decode an entire image or one line at a time). - It allows a client to ask us to do what we can do efficiently - i.e. start from encoded data and either decode the whole thing or scanlines. - It removes the duplicate methods which appeared in both SkCodec and SkScanlineDecoder (some of which, e.g. in SkJpegScanlineDecoder, just call fCodec->sameMethod()). - It simplifies moving more checks into the base class (e.g. the examples in skbug.com/4284). BUG=skia:4175 BUG=skia:4284 ===================================================================== SkScanlineDecoder.h/.cpp: Removed. SkCodec.h/.cpp: Add methods, enums, and variables which were previously in SkScanlineDecoder. Default fCurrScanline to -1, as a sentinel that start has not been called. General changes: Convert SkScanlineDecoders to SkCodecs. General changes in SkCodec subclasses: Merge SkScanlineDecoder implementation into SkCodec. Most (all?) owned an SkCodec, so they now call this-> instead of fCodec->. SkBmpCodec.h/.cpp: Replace the unused rowOrder method with an override for onGetScanlineOrder. Make getDstRow const, since it is called by onGetY, which is const. SkCodec_libpng.h/.cpp: Make SkPngCodec an abstract class, with two subclasses which handle scanline decoding separately (they share code for decoding the entire image). Reimplement onReallyHasAlpha so that it can return the most recent result (e.g. after a scanline decode which only decoded part of the image) or a better answer (e.g. if the whole image is known to be opaque). Compute fNumberPasses early, so we know which subclass to instantiate. Make SkPngInterlaceScanlineDecoder use the base class' fCurrScanline rather than a separate variable. CodexTest.cpp: Add tests for the state changes in SkCodec (need to call start before decoding scanlines; calling getPixels means that start will need to be called again before decoding more scanlines). Add a test which decodes in stripes, currently only used for an interlaced PNG. TODO: Add tests for onReallyHasAlpha. Review URL: https://codereview.chromium.org/1365313002
* fix for default path renderer draws harlines without bloatingGravatar joshualitt2015-09-30
| | | | | | BUG=skia:3883 Review URL: https://codereview.chromium.org/1372973003
* Add support for light dumps in SkTraceMemoryDump interface.Gravatar ssid2015-09-30
| | | | | | | | | | | SkGlyphCache dumps too many glyphs, and to reduce the trace size, RequestDetails enum is added to SkTraceMemoryDump interface. This would tell caches to dump only requested details or not a detailed dump. BUG=499731 Review URL: https://codereview.chromium.org/1310123007
* remove unused helper functionGravatar reed2015-09-29
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1376603006
* Unify ThreadID.Gravatar herb2015-09-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1371303003
* try texture-maker to generalize stretching for npot and min-tex-sizeGravatar reed2015-09-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1376603002
* cmake tweaksGravatar mtklein2015-09-29
| | | | | | | | | | | | | | | | | | • -w silences all warnings current and future. We're not using this for development. • There's no real need to exclude files in Release mode. The linker may whine a little, but that's fine. • Quiet down message() calls that run every time. They're fine if you can figure out how to run them only when doing the detection and cache them like all the others, but I don't like the noise seeing them every run. • cheaders is hard to read. c_headers. • ../src/*mac* erroneously picks up SkLumaColorFilter on non-case-sensitive file systems. ../src/*_mac* seems fine. CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot,Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot BUG=skia: Review URL: https://codereview.chromium.org/1376923003
* Revert of Implement SkImageFilter::Cache with SkResourceCache. (patchset #8 ↵Gravatar mtklein2015-09-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:140001 of https://codereview.chromium.org/1370323002/ ) Reason for revert: Landed PS8 temporarily to trigger the perf bots. Original issue's description: > Implement SkImageFilter::Cache with SkResourceCache. > > The single global cache now uses the global SkResourceCache, > and any Create()ed cache uses a local SkResourceCache. > > No real public API changes (and only deletes). > > I don't see any pixel diffs on .skps or GMs. > Don't see any significant perf difference on 8888 or gpu configs. > DM peak memory usage did drop by about 113M, close to the 128M cache size. > > BUG=skia:3662 > > Landing PS8 temporarily to trigger the perf bots. > TBR=reed@google.com > > Committed: https://skia.googlesource.com/skia/+/75135d8ae1aa12e8e6bfce63291e5e876a77546f TBR=reed@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:3662 Review URL: https://codereview.chromium.org/1381523002
* Implement SkImageFilter::Cache with SkResourceCache.Gravatar mtklein2015-09-29
| | | | | | | | | | | | | | | | | | The single global cache now uses the global SkResourceCache, and any Create()ed cache uses a local SkResourceCache. No real public API changes (and only deletes). I don't see any pixel diffs on .skps or GMs. Don't see any significant perf difference on 8888 or gpu configs. DM peak memory usage did drop by about 113M, close to the 128M cache size. BUG=skia:3662 Landing PS8 temporarily to trigger the perf bots. TBR=reed@google.com Review URL: https://codereview.chromium.org/1370323002
* Move Mutexy things to private.Gravatar herb2015-09-29
| | | | | | | | | | There is no API change. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/1368333004
* Handle inverted rects in SkRRect creation methodsGravatar robertphillips2015-09-29
| | | | | | | | An alternative way of addressing this is to alter SkCanvas::drawRoundRect to just reject isEmpty (i.e., un-sorted or truly empty) input rects. BUG=skia:3786 Review URL: https://codereview.chromium.org/1373293002
* update memset16/32 inlining heuristicsGravatar mtklein2015-09-29
| | | | | | | | | | | | | | | | | | | | | I spent some time looking at perf.skia.org and it looks like we can do better. It is weird, weird, weird that on x86, we see three completely different behaviors: - x86 Android: inlining better for small N, custom better for large N; - Windows: inlining better for large N, custom better for small N; - other x86: inlining generally better BUG=skia:4316,chromium:516426 Committed: https://skia.googlesource.com/skia/+/b68fa409fc00ce2f38e2a0fd6f9dc2379b372481 Summaries: https://perf.skia.org/#4179 All traces, log scale: https://perf.skia.org/#4180 TBR=reed@google.com No public API changes. Review URL: https://codereview.chromium.org/1357193002
* skia: roll ANGLE and remove compile flagsGravatar hendrikw2015-09-29
| | | | | | | Recent angle change allows us to remove some of the ANGLE specific compile flags Review URL: https://codereview.chromium.org/1376803003
* Revert of By default purge resources that haven't been used for 64 flushes ↵Gravatar bsalomon2015-09-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #5 id:80001 of https://codereview.chromium.org/1316233003/ ) Reason for revert: Breaking conformance test again Original issue's description: > By default purge resources that haven't been used for 64 flushes > > BUG=skia:4258 > > Committed: https://skia.googlesource.com/skia/+/85047175508a24f43eef49359bed215a2a3bb104 > > R=robertphillips@google.com > > Committed: https://skia.googlesource.com/skia/+/71d0c33068d41878cc3117f3761f49300f6b3d54 > > Committed: https://skia.googlesource.com/skia/+/bd783cd5b62118277b75933c3cd7b9097129259a > > Committed: https://skia.googlesource.com/skia/+/198a350051824229aa89a5d6348f5a7fc875c9ca TBR=robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4258 Review URL: https://codereview.chromium.org/1374933004
* Have /src files use header directly.Gravatar herb2015-09-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1373253003
* By default purge resources that haven't been used for 64 flushesGravatar bsalomon2015-09-29
| | | | | | | | | | | | | | BUG=skia:4258 Committed: https://skia.googlesource.com/skia/+/85047175508a24f43eef49359bed215a2a3bb104 R=robertphillips@google.com Committed: https://skia.googlesource.com/skia/+/71d0c33068d41878cc3117f3761f49300f6b3d54 Committed: https://skia.googlesource.com/skia/+/bd783cd5b62118277b75933c3cd7b9097129259a Review URL: https://codereview.chromium.org/1316233003
* Use child processors to implement compose color filter.Gravatar bsalomon2015-09-29
| | | | Review URL: https://codereview.chromium.org/1368423003
* SkImage::NewFromBitmap works with Index8Gravatar halcanary2015-09-28
| | | | | | BUG=skia:4390 Review URL: https://codereview.chromium.org/1377473002
* DM: PDFSink sets rasterizer keywordGravatar halcanary2015-09-28
| | | | Review URL: https://codereview.chromium.org/1376573002
* Move SkAtomics.h to private.Gravatar herb2015-09-28
| | | | | | | | | | There are no API changes. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/1369333004
* Move code search info to sub-page. Add additional code search options.Gravatar benjaminwagner2015-09-28
| | | | | | | | BUG=skia: NOTRY=true DOCS_PREVIEW= https://skia.org/?cl=1375523003 Review URL: https://codereview.chromium.org/1375523003
* Make SkPath fFirstDirection atomic to fix tsan.Gravatar herb2015-09-28
| | | | | | | | | | There is no API change. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/1372103003
* simplify code in SkRecords.hGravatar mtklein2015-09-28
| | | | | | | | | | | | | | | | - use C++11 features ({} init, move constructors) to eliminate the need for explicit constructors - collapse RECORD0...RECORD8 into just one RECORD macro - explicitly tag record types instead of using member detectors. Removing member detectors makes this code significantly less fragile. This exposes a few places where we didn't really think through what to do with SkDrawable. I've marked them TODO for now. BUG=skia: Review URL: https://codereview.chromium.org/1360943003