aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Revert "Revert "Re-enable deferred proxies in Chrome""Gravatar Robert Phillips2017-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 05814de6ba5087ad71f189d6413246ef1d518e4b. Reason for revert: Chrome layout test suppressions have landed Original change's description: > Revert "Re-enable deferred proxies in Chrome" > > This reverts commit 555c49c3479edf1692579c06a5c13c39d3741692. > > Reason for revert: layout tests > > Original change's description: > > Re-enable deferred proxies in Chrome > > > > Now that https://skia-review.googlesource.com/c/14605/ (Allow TextureSamplers to have null GrTexture pointer) has landed we should be able to re-enable deferred proxies in Chrome. > > > > Bug: 715488 > > Change-Id: Ibd38e5ddf0558b94f09e29f17837e6abfd22fa34 > > Reviewed-on: https://skia-review.googlesource.com/15252 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Robert Phillips <robertphillips@google.com> > > > > TBR=bsalomon@google.com,robertphillips@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: Ie90e64a2e4d5efc4b6909a04f8a862dd3a708d97 > Reviewed-on: https://skia-review.googlesource.com/15809 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I957e8e59af2b2f441c75bae2eda4dcd5ed82b34d Reviewed-on: https://skia-review.googlesource.com/15876 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Expand GrTextureProxy to handle highestFilterModeGravatar Robert Phillips2017-05-08
| | | | | | | | | | Once TextureProxies aren't instantiated in the TextureSamplers, the they will need to be able to supply this information. split out of: https://skia-review.googlesource.com/c/10484/ (Omnibus: Push instantiation of GrTextures later (post TextureSampler)) Change-Id: I66555c0746131f565862f7a30d54ff1d458d2062 Reviewed-on: https://skia-review.googlesource.com/15819 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Minimize computeTotalInverse()'s inputsGravatar Florin Malita2017-05-08
| | | | | | | | | The helper doesn't need a full context rec - it only looks at the CTM and external local matrix. Pass these explicitly instead. Change-Id: I6a5884f65cd383c2df0e8d83c9086789bd96f345 Reviewed-on: https://skia-review.googlesource.com/15870 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* GL: track enabled vertex arrays as a count rather than a maskGravatar Chris Dalton2017-05-08
| | | | | | | | Bug: skia: Change-Id: I63e70ab844a7e04df20165aba025b963efcafa9e Reviewed-on: https://skia-review.googlesource.com/15630 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Update minimum non-ES OpenGL spec to 2.0.Gravatar Brian Salomon2017-05-08
| | | | | | | | | | | As a consequence of removing support for GLs lacking separate stencil settings our effective minimum GL version is 2.0. This formalizes that by explicitly failing if the version in the version string is lower. As a consequence we will always have wrapping stencil operations available. Bug: skia: Change-Id: Ibe302f72a063dbadc773bda811cc0d0f6c08c61a Reviewed-on: https://skia-review.googlesource.com/15610 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Remove support for GLs without separate stencil.Gravatar Brian Salomon2017-05-08
| | | | | | | | | | | As a consequence we no longer need GrDrawFace. This effectively raises the minimum bar for non-ES OpenGL to 2.0 as there is no extension that adds the GL 2.0 separate stencil functionality. GL_ATI_separate_stencil is close but it does not have glStencilMaskSeparate. Bug: skia: Change-Id: I36d17a69400c8beeacb6dab8d8c5c3317814cfe4 Reviewed-on: https://skia-review.googlesource.com/15603 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Add filtering and zlib-level options to SkPngEncoderGravatar Matt Sarett2017-05-08
| | | | | | | | | | Bug: skia:6409 Bug: 713862 Change-Id: If287e2bcad5af990fac11e9091305f45ec903dbf Reviewed-on: https://skia-review.googlesource.com/15647 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Re-land of "eliminated GrGLSLExpr".Gravatar Ethan Nicholas2017-05-08
| | | | | | | | | | | This change is exactly the same as the last time it was landed; I believe the underlying optimizer bug that was causing this to cause problems has been fixed by a prior CL. Bug: skia: Change-Id: I5436422f094ea758caa3cd69e9338db31b1f93fa Reviewed-on: https://skia-review.googlesource.com/15768 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Allow wrapped resources to have unique keysGravatar Brian Osman2017-05-08
| | | | | | | | | | | | | | | Previously, wrapped resources were never budgeted. Now we explicitly allow wrapped, unbudgeted resources with unique keys. This allows code that wraps (and re-wraps) external resources with a deterministic key to find the same wrapped resource - saving time and ensuring a single wrapped copy, to preserve state on the resource (like texture sampler state). Bug: skia: Change-Id: I1dd7642f1ed8bb6c620029d46203cf5cb6b3c160 Reviewed-on: https://skia-review.googlesource.com/15241 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* GrTessellator AA: fix 1px wide paths.Gravatar Stephen White2017-05-08
| | | | | | | | | | | | | | Move 0 count check below the call to count outer polygons, so we don't abort on a path with outer but no inner geometry. This fixes the "thin_right_angle" and "thin_rect_and_triangle" samples when running GM:thinconcavepaths --pr tess. Change-Id: I9a75711787f729ce3a1d5313daa491098e397184 Reviewed-on: https://skia-review.googlesource.com/15661 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Remove Sk4fGradientInterval::fZeroRampGravatar Florin Malita2017-05-08
| | | | | | | | | | It's cheap enough to compute when needed, and we don't need it in hot loops anyway. Change-Id: Ib0242f98f8bee31bff939cfdc7356d51525092e4 Reviewed-on: https://skia-review.googlesource.com/15764 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* SkImage::isValidGravatar Brian Osman2017-05-08
| | | | | | | | | | | | Lets clients know if an image is drawable to a particular GrContext (or to CPU). Checks for abandoned GrContexts beneath GPU backed images, as well as context mis-match. Bug: skia: Change-Id: Ibe88c7ce8091f965c14f6023a3597be4b70c3f99 Reviewed-on: https://skia-review.googlesource.com/15801 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* jumper, finish blend modesGravatar Mike Klein2017-05-08
| | | | | | | | | | | | | | I've decided to ignore our existing CPU implementations and start from scratch, mostly referencing the GL ES 3.2 spec and w3 spec. This implementation ought to look a lot like the reference implementation I've written in gm/hsl.cpp, with the addition of handling alpha: unpremul, blend, re-premul with a simple SrcOver alpha. Change-Id: I38cf6be2dc66a6f46d7b18b91847f6933d2fab62 Reviewed-on: https://skia-review.googlesource.com/15316 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Re-enable deferred proxies in Chrome"Gravatar Robert Phillips2017-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 555c49c3479edf1692579c06a5c13c39d3741692. Reason for revert: layout tests Original change's description: > Re-enable deferred proxies in Chrome > > Now that https://skia-review.googlesource.com/c/14605/ (Allow TextureSamplers to have null GrTexture pointer) has landed we should be able to re-enable deferred proxies in Chrome. > > Bug: 715488 > Change-Id: Ibd38e5ddf0558b94f09e29f17837e6abfd22fa34 > Reviewed-on: https://skia-review.googlesource.com/15252 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Ie90e64a2e4d5efc4b6909a04f8a862dd3a708d97 Reviewed-on: https://skia-review.googlesource.com/15809 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Tighten up gradient clamp logic.Gravatar Mike Klein2017-05-08
| | | | | | | | | | This is just a little refactor. Shouldn't change any logic or pixels. Change-Id: I782df78f2d693dc7e35c286b049730e763aa3dc8 Reviewed-on: https://skia-review.googlesource.com/15653 Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add GrVkTexelBuffer classGravatar Greg Daniel2017-05-08
| | | | | | | | Bug: skia: Change-Id: I6111902f58df3af92702d974a52d9c7f267634d4 Reviewed-on: https://skia-review.googlesource.com/15628 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Re-enable deferred proxies in ChromeGravatar Robert Phillips2017-05-08
| | | | | | | | | | Now that https://skia-review.googlesource.com/c/14605/ (Allow TextureSamplers to have null GrTexture pointer) has landed we should be able to re-enable deferred proxies in Chrome. Bug: 715488 Change-Id: Ibd38e5ddf0558b94f09e29f17837e6abfd22fa34 Reviewed-on: https://skia-review.googlesource.com/15252 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* remove old 565 destination optsGravatar Mike Klein2017-05-06
| | | | | | | | | | This is not an important format, and the code is dead or close to it. The code is an occasional maintenance burden so I'd like it gone. Change-Id: I4ad921533abf3211e6a81e6e475b848795eea060 Reviewed-on: https://skia-review.googlesource.com/15600 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* impl 4f version for tricolor shaderGravatar Mike Reed2017-05-06
| | | | | | | | Bug: skia: Change-Id: I43f456aa115ce71a5d1acd9bc94984248a88319a Reviewed-on: https://skia-review.googlesource.com/15540 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Fix color blending for analytic shadowsGravatar Jim Van Verth2017-05-05
| | | | | | | Change-Id: I74e8c385a87a3f397b2df53679fcfd9120d82954 Reviewed-on: https://skia-review.googlesource.com/15645 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Allow custom GrAtlasGlyphCache texture sizesGravatar Eric Karl2017-05-05
| | | | | | | | | | | | A single glyph cache size doesn't make sense across the hardware Skia runs on. This change allows a custom size to be specified (via a byte limit), allowing cache size to be customized at context creation time. Bug: 717178 Change-Id: I4f7baddd1897b2eac4f6d6e4fff1f805e1cdd250 Reviewed-on: https://skia-review.googlesource.com/15135 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* More analytic shadow refactoring.Gravatar Jim Van Verth2017-05-05
| | | | | | | | | This is mostly to simplify and reduce redundant calculations. Change-Id: I895bd43fbc9defd812969870c2145f9f19d69a6b Reviewed-on: https://skia-review.googlesource.com/15462 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Stub encoding impls for clients without librariesGravatar Matt Sarett2017-05-05
| | | | | | | | Bug: skia: Change-Id: I447b071e50182a569af828dc7f62bf78f47f834d Reviewed-on: https://skia-review.googlesource.com/15644 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* composecolorfilter can now append stagesGravatar Mike Reed2017-05-05
| | | | | | | | Bug: skia: Change-Id: I46b54e5fd09de16b467142a5501b226273182d52 Reviewed-on: https://skia-review.googlesource.com/15615 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* SkTypeface: remove old virtual onGetAdvancedMetrics, since ↵Gravatar Hal Canary2017-05-05
| | | | | | | | | https://crrev.com/2860293003 Change-Id: Iad30b03fc8b34bdea2fe902f83a0dd979c16f1a7 Reviewed-on: https://skia-review.googlesource.com/15633 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* tweak the gaussian quarticGravatar Mike Reed2017-05-05
| | | | | | | | Bug: skia: Change-Id: I0e50568ddea344443ae80c24aad3eb43736f77bc Reviewed-on: https://skia-review.googlesource.com/15636 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* SkEncoder: Rename files, change webp API, for consistencyGravatar Matt Sarett2017-05-05
| | | | | | | | Bug: skia: Change-Id: I3dd6feb3d5661dcad3d2388b4d01fa9d3bbb15bb Reviewed-on: https://skia-review.googlesource.com/15631 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Fix clang compiler error in SkSLFileOutputStreamGravatar Matt Sarett2017-05-05
| | | | | | | | Bug: skia: Change-Id: Ic3b62ea82c12c9cc5ee8b56b05573e1d06342c0b Reviewed-on: https://skia-review.googlesource.com/15626 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Revert "GL: track enabled vertex arrays as a count rather than a mask"Gravatar Chris Dalton2017-05-05
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 288d041c64322fafc77cfaf23907180ebad933a1. Reason for revert: GL errors. Original change's description: > GL: track enabled vertex arrays as a count rather than a mask > > Bug: skia: > Change-Id: I46ba29cb32960a415ee1993a7b957ec49c0c56d3 > Reviewed-on: https://skia-review.googlesource.com/15520 > Commit-Queue: Chris Dalton <csmartdalton@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I63b0fd3c6f36326a13bf853d13ce8d28869a32cf Reviewed-on: https://skia-review.googlesource.com/15625 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* speed-up 4f version of modecolorfilter and modulateGravatar Mike Reed2017-05-05
| | | | | | | | | | | | | ~20% faster 1. Don't call color4f::premul on every invocation 2. Inline modulate as its own special case (used by shadows) Bug: skia: Change-Id: I49ca565f589b9a7caac88e95468da7f8c395804a Reviewed-on: https://skia-review.googlesource.com/15613 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Add support for row-by-row png encodesGravatar Matt Sarett2017-05-05
| | | | | | | | | | Also adds a SkEncoder base class. Bug: 713862 Change-Id: Ia3f009cd9f376514f6c19396245fab3a43ae6536 Reviewed-on: https://skia-review.googlesource.com/15152 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* Remove unnecessary non-UTF8 characterGravatar Leon Scroggins III2017-05-05
| | | | | | | | | | | | | | Google3 roll is complaining about this character, so remove it. (It does not look to be intentional.) The roll is affected because this file is changed (though this line is not). TBR=bsalomon@google.com, benjaminwagner@google.com Change-Id: I639a04c424ea11e1a5e7df10c9d6c7233031bf2b Reviewed-on: https://skia-review.googlesource.com/15612 Reviewed-by: Leon Scroggins <scroggo@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Add postFlush call to GrOnFlushCallbackObjectGravatar Chris Dalton2017-05-05
| | | | | | | | | | | | | | | Adds a new postFlush method and renames the class to GrOnFlushCallbackObject. Also removes the ref counting in favor of making the callback object a purely virtual interface. ref/unref on the callback interface would conflict with existing ref/unref methods on the subclass. It is now the caller’s responsibility to ensure the lifetime of the callback is tied to that of the context. Bug: skia: Change-Id: I2fc1f98c700032e296a36f3a9a09c0753ab47aea Reviewed-on: https://skia-review.googlesource.com/15463 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Avoid interpolating color lut with less than 2 pointsGravatar Matt Sarett2017-05-05
| | | | | | | | Bug: 717935 Change-Id: Ibf15b815891eef5a0239bc408bcbfe7c8b1507c5 Reviewed-on: https://skia-review.googlesource.com/15301 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* SkDiscardableMemoryPool: always have a mutex for testingGravatar Hal Canary2017-05-05
| | | | | | | Change-Id: I898058f1125f62832f2b2b661c661efb0f84da6d Reviewed-on: https://skia-review.googlesource.com/14274 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Split tracking of TexelBuffers from normal samplersGravatar Greg Daniel2017-05-05
| | | | | | | | | | | | | | This is precursor CL to add support for texel buffers in Vulkan. This change as includes fixes to the ordering of assigning locations and texture units so that they match in GrGLProgramDataManager and GrGLProgram. Bug: skia: Change-Id: I30c9578fb7dcb187256f744e07651e8564f93a6b Reviewed-on: https://skia-review.googlesource.com/15225 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* GL: track enabled vertex arrays as a count rather than a maskGravatar Chris Dalton2017-05-05
| | | | | | | | Bug: skia: Change-Id: I46ba29cb32960a415ee1993a7b957ec49c0c56d3 Reviewed-on: https://skia-review.googlesource.com/15520 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* sksl optimizer fixesGravatar Ethan Nicholas2017-05-05
| | | | | | | | | | | | | The main issue was a use-after-free due to removing (and thus destroying) the binary expression prior to re-adding part of it. Also cleaned up the way dead assignments are handled and added the test that originally identified these problems. Bug: skia: Change-Id: Icda93d69a66c4e57850ecdc88fc4a4f634e1aac2 Reviewed-on: https://skia-review.googlesource.com/15383 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
* optimize gaussian with herbs quarticGravatar Mike Reed2017-05-05
| | | | | | | | Bug: skia: Change-Id: Ia06ad1023129dfcade3f648087b2070eab29b4b2 Reviewed-on: https://skia-review.googlesource.com/15523 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Reed <reed@google.com>
* header cleanupGravatar Hal Canary2017-05-05
| | | | | | | | Change-Id: I9d93add4e7998d8a1aa37cba9e7829fcbda867d5 Reviewed-on: https://skia-review.googlesource.com/15318 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Revert "Revert "SkTypeface::getAdvancedMetrics(): cleanup""Gravatar Hal Canary2017-05-05
| | | | | | | | | | | | | | | | | | | This reverts commit 59ad782b2b05b07aa6eb961aa4d62e934093cbd1. - SkAdvancedTypefaceMetrics is a struct not a class - SkTypeface::PerGlyphInfo is gone - s/getAdvancedTypefaceMetrics/getAdvancedMetrics/g - s/onGetAdvancedTypefaceMetrics/onGetAdvancedMetrics/g - [on]getAdvancedMetrics now return unique_ptr rather than bare ptr. - [on]getAdvancedMetrics no longer has parameters. (Only caller always used same arguments.) - SkAdvancedTypefaceMetrics uses C++11 in-class member initializers. - SkAdvancedTypefaceMetrics no longer inherits from SkRefCnt Change-Id: I91b56e60f7d9de7d46c426c6bd34ce124e0cf00e Reviewed-on: https://skia-review.googlesource.com/15360 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Local matrix support for RP gradientsGravatar Florin Malita2017-05-05
| | | | | | | Change-Id: Id2cef26e0f91f14a0f1370fabe5ca15af9a4c07c Reviewed-on: https://skia-review.googlesource.com/15317 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Retry "Factor out common code from sweep and linear."Gravatar Mike Klein2017-05-05
| | | | | | | | | | | | | We weren't handing failure correctly, sending radials and two point conics and any other unsupported cases back too far out, instead of the default SkShader::onAppendStages(). This reverts commit 02ab8cc2909d99377e4200cd426a02c0b482a040. Change-Id: I80cb028c37071e0146ee4b48b210fc8bc87b290f Reviewed-on: https://skia-review.googlesource.com/15481 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Factor out common code from sweep and linear."Gravatar Mike Klein2017-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b7a330ff0048875e178b2d9a68cd5605d83baf8d. Reason for revert: Oof, I hate to do this, but we didn't expect this to change any drawing did we? This draws a bunch of GMs differently in both 565 and sRGB mode, some very noticeably. Original change's description: > Factor out common code from sweep and linear. > > And, some file cleanup. > > Change-Id: I804db924bce3b5834f6cda481315dd2da38df5ca > Reviewed-on: https://skia-review.googlesource.com/15226 > Commit-Queue: Herb Derby <herb@google.com> > Reviewed-by: Mike Klein <mtklein@chromium.org> > Reviewed-by: Florin Malita <fmalita@chromium.org> > TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com,fmalita@chromium.org,fmalita@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I75bb6c3e4045a0f70c7e9552b84b22f0fed73b80 Reviewed-on: https://skia-review.googlesource.com/15464 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* CRC32 no longer restricted to ARM64Gravatar Amaury Le Leyzour2017-05-04
| | | | | | | | | | | | On a simple benchmark the CRC32 version is about 3x faster on ARM Cortex A57 (Aarch32) than the Murmur3 scalar version. BUG=skia: Change-Id: I71515e8463a33924998b837ff9f32202690dd2fe Reviewed-on: https://skia-review.googlesource.com/15480 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Fix comma in vulkanGravatar Greg Daniel2017-05-04
| | | | | | | | | | Fixes bug where comma was suppose to be a semi colon. Bug: skia: Change-Id: I4bbd890fdef46775a1dd687cca06293114ad8a1c Reviewed-on: https://skia-review.googlesource.com/15460 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Add support for Geom shaders in Vulkan backend.Gravatar Greg Daniel2017-05-04
| | | | | | | | | | | | | | | | Still requires SkSL support before it will work. The main changes here involve support for uniforms in the geometry shader. We use the same buffer for vertex and geometry shader stages. These uniforms are not expected to be updated as often as frag data so we keep them separate to avoid larger buffer uploads to the gpu. BUG=skia: Change-Id: I10b631c24071b6ffa258907a02a009ec6c8accd0 Reviewed-on: https://skia-review.googlesource.com/8413 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Factor out common code from sweep and linear.Gravatar Herb Derby2017-05-04
| | | | | | | | | | And, some file cleanup. Change-Id: I804db924bce3b5834f6cda481315dd2da38df5ca Reviewed-on: https://skia-review.googlesource.com/15226 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Revert "SkTypeface::getAdvancedMetrics(): cleanup"Gravatar Hal Canary2017-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit cef018896e5cad8eb46a536b60cdf79ebe2b0191. Reason for revert: broke chromium roll (windows). Original change's description: > SkTypeface::getAdvancedMetrics(): cleanup > > - SkAdvancedTypefaceMetrics is a struct not a class > - SkTypeface::PerGlyphInfo is gone > - s/getAdvancedTypefaceMetrics/getAdvancedMetrics/g > - s/onGetAdvancedTypefaceMetrics/onGetAdvancedMetrics/g > - [on]getAdvancedMetrics now return unique_ptr rather than bare ptr. > - [on]getAdvancedMetrics no longer has parameters. (Only caller always > used same arguments.) > - SkAdvancedTypefaceMetrics uses C++11 in-class member initializers. > - SkAdvancedTypefaceMetrics no longer inherits from SkRefCnt > > Change-Id: I37571ebcc383ba9eb21bc20c60c734e3ca317582 > Reviewed-on: https://skia-review.googlesource.com/15311 > Reviewed-by: Ben Wagner <bungeman@google.com> > Commit-Queue: Hal Canary <halcanary@google.com> > TBR=halcanary@google.com,bungeman@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I84c7d53df566aaf83427e3368edaa02b7b5a9cb8 Reviewed-on: https://skia-review.googlesource.com/15319 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Make GrSimpleMeshDrawOpHelper consider blend barriers/dst textures for batching.Gravatar Brian Salomon2017-05-04
| | | | | | | Change-Id: Idc6f924e39a08da9fb4b441a72c4d9caa76b0fe0 Reviewed-on: https://skia-review.googlesource.com/15312 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>