aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
...
* Revert of Add initial pipeline for decompressors ↵Gravatar mtklein2014-07-31
| | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/432503002/) Reason for revert: New test is crashing on Android. http://108.170.220.21:10117/builders/Test-Android-Nexus10-MaliT604-Arm7-Debug/builds/2509/steps/RunTests/logs/stdio http://108.170.220.21:10117/builders/Test-Android-Nexus4-Adreno320-Arm7-Debug/builds/2313/steps/RunTests/logs/stdio Original issue's description: > Add initial pipeline for decompressors > > Committed: https://skia.googlesource.com/skia/+/14a1df0bcd00734e6efbe4a21629fe95118815ef R=robertphillips@google.com, krajcevski@google.com TBR=krajcevski@google.com, robertphillips@google.com NOTREECHECKS=true NOTRY=true Author: mtklein@google.com Review URL: https://codereview.chromium.org/425223006
* Add initial pipeline for decompressorsGravatar krajcevski2014-07-31
| | | | | | | | R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/432503002
* Fix for texture domain on imagination gpusGravatar joshualitt2014-07-31
| | | | | | | | | BUG=skia: R=bsalomon@chromium.org, bsalomon@google.com Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/421823003
* Add standard fonts to all GMs.Gravatar Cary Clark2014-07-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow GM results to be compared across machines and platforms by standardizing the fonts used by all tests. This adds runtime flags to DM to use either the system font context (the default), the fonts in the resources directory ( --resourceFonts ) or a set of canonical paths generated from the fonts ( --portableFonts ). This CL should leave the current DM results unchanged by default. If the portable font data or resource font is missing when DM is run, it falls back to using the system font context. The create_test_font tool generates the paths and metrics read by DM with the --portableFonts flag set, and generates the font substitution tables read by DM with the --resourceFonts flag set. If DM is run in SkDebug mode with the --reportUsedChars flag set, it generates the corresponding data compiled into the create_test_font tool. All GM tests set their typeface information by calling either sk_tool_utils::set_portable_typeface or sk_tool_utils::portable_typeface . (The former takes the paint, the latter returns a SkTypeface.) These calls can be removed in the future when the Font Manager can be superceded. BUG=skia:2687 R=mtklein@google.com Review URL: https://codereview.chromium.org/407183003
* Fix end-of-pattern matching for Skia recording optimization.Gravatar dneto2014-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The recorder optimizer's pattern matcher was accepting command sequences when it shouldn't have. In the submitted case, and the pattern matcher was looking for: saveLayer, drawBitmap, restore and in the rendering for the submitted case, the sequence of commands were: saveLayer, drawBitmap, drawBitmap, restore This sequence was improperly accepted by the matcher, and the optimizer reduced the sequence to: drawBitmap, drawBitmap where the opacity from the saveLayer paint argument was applied to the first drawBitmap only. The user-visible effect in Chrome was a flashing effect on an image caused by incorrect (too-high) opacity. The patch adds a Skia test to check for pixel colour values in a similarly structured recording. All other Skia tests pass. Blink layout tests also pass with this change. BUG=chromium:344987 R=robertphillips@google.com, reed@google.com, mtklein@google.com Author: dneto@chromium.org Review URL: https://codereview.chromium.org/430503004
* Intersect SkPictureImageFilter bounds against clip bounds.Gravatar senorblanco2014-07-30
| | | | | | | | | | | | | | Intersect SkPictureImageFilter bounds against clip bounds to avoid unnecessary processing. This is how the other filters work (via applyCropRect()), but SkPictureImageFilter maintains its own crop. BUG=skia: R=bsalomon@google.com Author: senorblanco@chromium.org Review URL: https://codereview.chromium.org/428263003
* Remove kDisableBlend_BlendOptFlag as it is no longer neededGravatar egdaniel2014-07-30
| | | | | | | | | BUG=skia: R=bsalomon@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/425153003
* Start the process of choosing the correct compression formatGravatar krajcevski2014-07-30
| | | | | | | | R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/427093004
* Test removal of mesa specific version parseGravatar joshualitt2014-07-30
| | | | | | | | | BUG=skia: R=bsalomon@google.com Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/430833002
* Implement a persistent uniqueID-based cache for SkImageFilter.Gravatar senorblanco2014-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a unique ID to SkImageFilter, and use it as part of a persistent cache of image-filtered results. This is used for caching frame-to-frame coherent filters. We also keep track of which filter subtrees do not reference the src input, and use a GenID of zero for the src input in that case. That way, subtrees which are not dependent on the filter input can be cached independently of it. This gives approximately a 4X speedup on letmespellitoutforyou.com/samples/svg/filter_terrain.svg on Z620 and Nexus10. The cache key consists of the uniqueID of the filter, the clip bounds, the CTM and the genID of the input bitmap. Since this does not yet handle the case where the input primitives (and part of the resulting filter tree) are unchanged, we have to keep around the external cache for that painting case. When the work to cache unchanging input primitives is done, the old cache can be removed, and the new UniqueIDCache will be renamed to Cache. R=bsalomon@google.com, mtklein@google.com Author: senorblanco@chromium.org Review URL: https://codereview.chromium.org/414483003
* Add query for whether or not we have compressedTexSubImageGravatar krajcevski2014-07-30
| | | | | | | | R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/430773004
* Correct Android FontMgr use of ttc index and remove unused code.Gravatar bungeman2014-07-30
| | | | | | | | R=djsollen@chromium.org, tomhudson@google.com, djsollen@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/433503003
* Explicitly typedef GetUserDefaultLocaleName as WINVER may not be high enough ↵Gravatar george2014-07-30
| | | | | | | | | | when compiling to allow visibility of the function prototype in windows.h R=bungeman@google.com, bungeman1 Author: george@mozilla.com Review URL: https://codereview.chromium.org/422823008
* Fix way-over-allocation in pipe.Gravatar mtklein2014-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/283093002 fixed some bugs in pipe memory allocation, but also introduced one of its own: nearly every block requested from needOpBytes() got its own 16K allocation. The correct logic is to take the requested size, add four more bytes for a DrawOp, make sure that's 4-byte aligned, then check to see if there's enough space for that in the current block. If there's not, allocate at least MIN_BLOCK_SIZE bytes to fit the request. The bug is that I moved that round-up-to-MIN_BLOCK_SIZE step before checking for space in the current block. This means most (all?) blocks will be 16K but never seem to have room to fit another allocation. You need 8 bytes? You get 16K. You need 8 more bytes? Nope, can't fit that. Here's a new 16K... This reverts the change to the test I made then, which really should have tipped me off. It was testing exactly this bug. BUG=372671 R=tomhudson@chromium.org, tomhudson@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/433463003
* Add vertex bounds check for distance field rendering.Gravatar jvanverth2014-07-30
| | | | | | | | R=bsalomon@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/432443002
* Bring LATC in line with other formats (i.e. write a blitter andGravatar krajcevski2014-07-30
| | | | | | | | | | an "optimized" compression routine). R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/429683003
* Fix ref counting of cached layer's textureGravatar robertphillips2014-07-30
| | | | | | | | R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/431603002
* Add effect caching to distance field text.Gravatar jvanverth2014-07-30
| | | | | | | | | | | | This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect. Committed: https://skia.googlesource.com/skia/+/137bac067306c5446bc4f9797bedc3bbaf302822 R=robertphillips@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/424103002
* Rename GrGLUniformManager to GrGLProgramDataManagerGravatar kkinnunen2014-07-30
| | | | | | | | | | | | | Rename GrGLUniformManager to GrGLProgramDataManager in anticipation that the class would be used to manage shader resources that are not uniforms. This is needed in order to implement NVPR on GLES. R=bsalomon@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/365853002
* Incorporate glStencilThenCover* nvpr methodsGravatar cdalton2014-07-29
| | | | | | | | | | | | | | | | | | Adds the glStencilThenCover* nvpr methods to GrGLInterface and starts using them. When drawing multible paths, this will make it so we only have to send the index/transform data once. It will also allow the driver to save time internally. The glStencilThenCover* methods are a newer addition, so they aren't available on every driver. In the event that they are not present, we emulate them using the existing glStencil*/glCover* methods. BUG=skia: R=markkilgard@gmail.com, bsalomon@google.com Author: cdalton@nvidia.com Review URL: https://codereview.chromium.org/423173004
* fRight -> fBottomGravatar krajcevski2014-07-29
| | | | | | | | R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/428963005
* Remove support in the gpu to use hardware AA lines. Current code paths could ↵Gravatar egdaniel2014-07-29
| | | | | | | | | | | | | not reach this code and thus was never used. The blend opt flag kDisableBlend should now be able to be removed, however it is left in this CL and will removed in its own. BUG=skia: R=bsalomon@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/427823002
* Adding repeat mode to texture domainGravatar joshualitt2014-07-29
| | | | | | | | | BUG=skia: R=bsalomon@chromium.org, senorblanco@chromium.org, bsalomon@google.com, junov@chromium.org Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/422123003
* Add query for block dimensions of a given formatGravatar krajcevski2014-07-29
| | | | | | | | R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/422023006
* Revert of Add effect caching to distance field text. ↵Gravatar bensong2014-07-29
| | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/424103002/) Reason for revert: breaking Chrome canary. Original issue's description: > Add effect caching to distance field text. > > This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect. > > Committed: https://skia.googlesource.com/skia/+/137bac067306c5446bc4f9797bedc3bbaf302822 R=robertphillips@google.com, jvanverth@google.com TBR=jvanverth@google.com, robertphillips@google.com NOTREECHECKS=true NOTRY=true Author: bensong@google.com Review URL: https://codereview.chromium.org/424173002
* Revert of Remove gpu support for willUseHWAALines. ↵Gravatar egdaniel2014-07-29
| | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/423943003/) Reason for revert: Breaking windows 7 compare gm's Original issue's description: > Remove gpu support for willUseHWAALines. > > By removing willUseHWAALines, we also no long reference the blend opt flag kDisableBlend so it has been removed > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/e6dfba868c19b00562f8c733b9bf37dd4ec9e68c R=bsalomon@google.com TBR=bsalomon@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: egdaniel@google.com Review URL: https://codereview.chromium.org/430493003
* Add effect caching to distance field text.Gravatar jvanverth2014-07-29
| | | | | | | | | | This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect. R=robertphillips@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/424103002
* Some fixes around GrContext::abandonContext:Gravatar bsalomon2014-07-29
| | | | | | | | | | | | | | Fix debug crash when GrResourceCache is destroyed after GrContext is abandoned while GrTextures are in the exlusive list. Notify debug GL context that GL resources are expected to remain undeleted when context is destroyed after being abandoned. Stop leaking program cache entries when context is abandoned. R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/422323002
* Remove gpu support for willUseHWAALines.Gravatar egdaniel2014-07-29
| | | | | | | | | | | By removing willUseHWAALines, we also no long reference the blend opt flag kDisableBlend so it has been removed BUG=skia: R=bsalomon@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/423943003
* Add function for creating ASTC blitterGravatar krajcevski2014-07-29
| | | | | | | | R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/427693002
* Pass clip blitter rows preserved requestGravatar krajcevski2014-07-29
| | | | | | | | R=robertphillips@google.com, reed@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/413403005
* Now always use Atlas for layer cacheGravatar robertphillips2014-07-29
| | | | | | | | | | This is setup for running cluster telemetry tests R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/429593002
* Fix debug output compile error and minor style nitsGravatar tomhudson2014-07-29
| | | | | | | | R=djsollen@google.com, tomhudson@google.com Author: tomhudson@chromium.org Review URL: https://codereview.chromium.org/420333002
* Finish removing GrTHashTableGravatar robertphillips2014-07-29
| | | | | | | | | | This class is no longer used in Ganesh (in favor of SkTDynamicHash) R=jvanverth@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/421253003
* Add plot-based purging to GrLayerCacheGravatar robertphillips2014-07-29
| | | | | | | | | | This CL allows a GrPlot full of atlased layer to be purged from the atlas to make room for new layers. R=jvanverth@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/411703003
* Cleanup: Rename SkOSPath functions.Gravatar tfarina2014-07-28
| | | | | | | | | | | | | | | | Mostly for brevity and matches better with Python: Python | Old C++ | New C++ os.path.join | SkOSPath::SkPathJoin | SkOSPath::Join os.path.basename | SkOSPath::SkBasename | SkOSPath::Basename BUG=None TEST=make all R=mtklein@google.com, bsalomon@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/428443002
* round and bevel hairline rects show the same as miter hairline rectsGravatar yunchao.he2014-07-28
| | | | | | | | | | | | | | | So round and bevel hairline rects can generate the vertices and indices the same as miter rects do. The original code behaves the same as bevel rects for round and bevel hairline rects. This small CL can save (vertices and indices) buffer memory as well as improve performance (draw less triangles). gm cases show no difference after this CL is applied. BUG=skia: R=robertphillips@google.com Author: yunchao.he@intel.com Review URL: https://codereview.chromium.org/417113002
* Generalize compressed blitter into its own templated classGravatar krajcevski2014-07-28
| | | | | | | | R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/421593004
* Test abandoning GL context in dm/nanobench.Gravatar bsalomon2014-07-28
| | | | | | | | | | | | Rename GrContext::contextDestroyed to GrContext::abandonContext. Remove GrContext::resetContext. R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/422903002
* SkDiscardablePixelRef returns correct indexed color on relock.Gravatar halcanary2014-07-28
| | | | | | | | R=djsollen@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/428603002
* Only lowercase names in Android font config parser.Gravatar bungeman2014-07-28
| | | | | | | | | BUG=chromium:397549 R=tomhudson@chromium.org, tomhudson@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/420223003
* Remove code only used by SkCreateTypefaceForScript which has already been ↵Gravatar djsollen2014-07-28
| | | | | | | | | | deleted R=tomhudson@google.com, bungeman@google.com Author: djsollen@google.com Review URL: https://codereview.chromium.org/425753002
* Remove redundant helper function as all clients pass localeGravatar Derek Sollenberger2014-07-28
| | | | | | R=tomhudson@google.com Review URL: https://codereview.chromium.org/426643003
* Remove unused code now that the android framework has move this logic elsewhere.Gravatar Derek Sollenberger2014-07-28
| | | | | | R=tomhudson@google.com Review URL: https://codereview.chromium.org/424663005
* Add vertex color support to distance field text.Gravatar jvanverth2014-07-25
| | | | | | | | | BUG=skia: R=bsalomon@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/421563002
* Move vertex buffer setup out of drawPackedGlyph().Gravatar jvanverth2014-07-25
| | | | | | | | | | | | This gets a very welcome ~10% speedup on my Mac. Committed: https://skia.googlesource.com/skia/+/1d38619389cc1100bd516b9acbf17b7bd42d33ce R=bsalomon@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/414573002
* Fix thread unsafe mutex initialization.Gravatar bungeman2014-07-25
| | | | | | | | | | | | BUG=skia:2779 Committed: https://skia.googlesource.com/skia/+/d6aeb6dc8fe21066f1a2c4813a4256a3acd3edf5 R=robertphillips@google.com, mtklein@google.com, reed@android.com, bsalomon@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/419113002
* Send less transform data when drawing text with nvprGravatar cdalton2014-07-25
| | | | | | | | | | | | | | | | | | Before this change, GrStencilAndCoverTextContext would send 6-float affine transforms to drawPaths for every glyph. This updates it to concat the text scale onto the context matrix, and then only send 2-float translates (or 1-float x-translates when possible). Also adds a glyph_pos_align test to gm that exercises the newly added codepaths, and starts ignoring a few gm tests with benign pixel diffs until we can rebaseline. BUG=skia: R=bsalomon@google.com, kkinnunen@nvidia.com, jvanverth@google.com, bungeman@google.com Author: cdalton@nvidia.com Review URL: https://codereview.chromium.org/406523003
* Fix image decoder memory overwrite bug.Gravatar scroggo2014-07-25
| | | | | | | | | | | | | | | | In SkPNGImageDecoder::onDecodeSubset, use png_read_rows to write to the scratch memory provided. This is what we should have been doing anyway. Further, writing directly to the bitmap can cause writing to the wrong memory since the bitmap may not be as big as the scratch memory in the case of sampling with a short bitmap. Bug=b/13921093 R=djsollen@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/423473003
* Fix thread unsafe mutex initialization.Gravatar bungeman2014-07-25
| | | | | | | | | BUG=skia:2779 R=robertphillips@google.com, mtklein@google.com, reed@android.com, bsalomon@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/419113002