aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Sketch splitting SkPicture into an interface and SkBigPicture.Gravatar mtklein2015-05-07
| | | | | | | | | | | | | | | | | | | | | | | | | | Adds small pictures for drawRect(), drawTextBlob(), and drawPath(). These cover about 89% of draw calls from Blink SKPs, and about 25% of draw calls from our GMs. SkPicture handles: - serialization and deserialization - unique IDs Everything else is left to the subclasses: - playback(), cullRect() - hasBitmap(), hasText(), suitableForGPU(), etc. - LayerInfo / AccelData if applicable. The time to record a 1-op picture improves a good chunk (2 mallocs to 1), and the time to record a 0-op picture greatly improves (2 mallocs to none): picture_overhead_draw: 450ns -> 350ns picture_overhead_nodraw: 300ns -> 90ns BUG=skia: Review URL: https://codereview.chromium.org/1112523006
* tesselating path renderer unit testsGravatar joshualitt2015-05-07
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1127183006
* SkPDF: detect YUV-JPEG without relying on ImageGeneratorGravatar halcanary2015-05-07
| | | | | | | | | | | JPEG/JFIF References: * http://www.w3.org/Graphics/JPEG/itu-t81.pdf * http://www.w3.org/Graphics/JPEG/jfif3.pdf BUG=476721 BUG=446940 Review URL: https://codereview.chromium.org/1133443003
* Iterate over instanced draws in GrGpu rather than above GrBatchTargetGravatar bsalomon2015-05-07
| | | | Review URL: https://codereview.chromium.org/1127273007
* Initial CL to create Reorder command builder behind a flagGravatar joshualitt2015-05-07
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1129943004
* We don't use boxBlurY.Gravatar mtklein2015-05-07
| | | | | | | | Also noticed nobody sets SK_DISABLE_BLUR_DIVISION_OPTIMIZATION. BUG=skia: Review URL: https://codereview.chromium.org/1134513003
* Isolate GrBufferAllocPools inside GrBatchTargetGravatar robertphillips2015-05-07
| | | | | | This CL refactors the location of the GrBufferAllocPools so they reside entirely inside the GrBatchTarget. This is in preparation for making them use scratch resources. Review URL: https://codereview.chromium.org/1131553002
* adding uniqueID to GrContextGravatar joshualitt2015-05-07
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1128873009
* Adding unit tests for limited subset of DefaultPathRendererGravatar joshualitt2015-05-07
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1129203002
* Re-enable validation for glBlendBarrierKHR and glBlendEquationGravatar cdalton2015-05-06
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1103673002
* Implement support for KHR_blend_equation_advancedGravatar cdalton2015-05-06
| | | | | | | | | Uses KHR(or NV)_blend_equation_advanced to implement custom Xfer modes in hardware. BUG=skia: Review URL: https://codereview.chromium.org/1037123003
* Really use SSE4 (and SSSE3) in SkBlurImage_SSE4Gravatar mtklein2015-05-06
| | | | | | | | | | | | We don't seem to be making good use of the available instruction set. SSE4.1 gives us an easy way to unpack a pixel into an __m128i, and SSSE3 gave us an easy way to do the reverse. This should be bit-perfect and about a 10% speedup. BUG=skia: Review URL: https://codereview.chromium.org/1123263003
* Place nvpr above tesselating path renderer in the chainGravatar cdalton2015-05-06
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1123343003
* use floor for mip-level choiceGravatar reed2015-05-06
| | | | | | | | this chrome change must land first: https://codereview.chromium.org/1131663002/ BUG=skia: Review URL: https://codereview.chromium.org/1131613002
* Make drawImage a virtual on SkDeviceGravatar reed2015-05-06
| | | | | | | | This reverts commit 06dad4b92f1fcb593bc686f9537d3e0d866b2241. BUG=485243 Review URL: https://codereview.chromium.org/1129843003
* Add layout qualifiers to GrGLShaderBuilderGravatar cdalton2015-05-06
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1114813002
* SkPDF: Move utility fns to SkPDFUtilsGravatar halcanary2015-05-06
| | | | | | BUG=skia:3585 Review URL: https://codereview.chromium.org/1124193003
* Revert of Revert of Revert of Make drawImage a virtual on SkDevice (patchset ↵Gravatar reed2015-05-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | #1 id:1 of https://codereview.chromium.org/1126273002/) Reason for revert: still breaking webglconformance Original issue's description: > Revert of Revert of Make drawImage a virtual on SkDevice (patchset #1 id:1 of https://codereview.chromium.org/1124003002/) > > Reason for revert: > retry now that some fixes (onDrawImage overrides) have landed in chrome/blink > > Original issue's description: > > Revert of Make drawImage a virtual on SkDevice (patchset #4 id:60001 of https://codereview.chromium.org/1122643005/) > > > > Reason for revert: > > speculative to see if it unblocks DEPS roll > > > > Original issue's description: > > > Make drawImage a virtual on SkDevice > > > > > > Now with patch for SkDeferredCanvas > > > > > > This reverts commit 119468b71f8f4f45657ab30ead331be665de5a57. > > > > > > BUG=skia: > > > > > > Committed: https://skia.googlesource.com/skia/+/14fe8fd3e53b5e988aac189a8bc3ed28904d85c8 > > > > TBR=robertphillips@google.com,mtklein@google.com,reed@google.com > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG=skia: > > > > Committed: https://skia.googlesource.com/skia/+/3538e3bfe2e00bc1b5b48d977fa7adff64d8c96b > > TBR=robertphillips@google.com,mtklein@google.com,reed@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/620ba3afe09d4173c87537040fe50c1c1895fb1a TBR=robertphillips@google.com,mtklein@google.com,reed@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1127993004
* Revert of Revert of Make drawImage a virtual on SkDevice (patchset #1 id:1 ↵Gravatar reed2015-05-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1124003002/) Reason for revert: retry now that some fixes (onDrawImage overrides) have landed in chrome/blink Original issue's description: > Revert of Make drawImage a virtual on SkDevice (patchset #4 id:60001 of https://codereview.chromium.org/1122643005/) > > Reason for revert: > speculative to see if it unblocks DEPS roll > > Original issue's description: > > Make drawImage a virtual on SkDevice > > > > Now with patch for SkDeferredCanvas > > > > This reverts commit 119468b71f8f4f45657ab30ead331be665de5a57. > > > > BUG=skia: > > > > Committed: https://skia.googlesource.com/skia/+/14fe8fd3e53b5e988aac189a8bc3ed28904d85c8 > > TBR=robertphillips@google.com,mtklein@google.com,reed@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/3538e3bfe2e00bc1b5b48d977fa7adff64d8c96b TBR=robertphillips@google.com,mtklein@google.com,reed@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1126273002
* Make SkFunction copyable so it can go in containers.Gravatar mtklein2015-05-06
| | | | | | | | | | | | This totally overhauls the implementation to use ordinary inheritance-based type erasure. I give up for now getting my manual vtable shenanigans to work with MSVC. Still those same "expected ; before ), also expected ) before ;" errors. I added support for uninitialized SkFunctions and operator=(), because it was fairly straightforward with this implementation. The main downside here is that I've removed the inline implementation. All SkFunctions involve a heap allocation, even when just wrapping function pointers. BUG=skia: Review URL: https://codereview.chromium.org/1056673002
* small fix to correct bounds on distance field textGravatar joshualitt2015-05-06
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1122253003
* Add GrAAConvexTessellator classGravatar robertphillips2015-05-06
| | | | | | This CL adds a GrAAConvexTessellator class. It does not connect it to the GrAAConvexPathRenderer. Review URL: https://codereview.chromium.org/1084943003
* Reduce the API surface of GrBufferAllocPool and its derivativesGravatar robertphillips2015-05-06
| | | | | | This utility class is going to be revamped and moved. This CL shrinks it a bit so there will be less to shuffle around. Review URL: https://codereview.chromium.org/1126753003
* Revert of Make drawImage a virtual on SkDevice (patchset #4 id:60001 of ↵Gravatar reed2015-05-05
| | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1122643005/) Reason for revert: speculative to see if it unblocks DEPS roll Original issue's description: > Make drawImage a virtual on SkDevice > > Now with patch for SkDeferredCanvas > > This reverts commit 119468b71f8f4f45657ab30ead331be665de5a57. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/14fe8fd3e53b5e988aac189a8bc3ed28904d85c8 TBR=robertphillips@google.com,mtklein@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1124003002
* small cleanup in GrOvalRendererGravatar joshualitt2015-05-05
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1126723004
* trivial fix for drawvertices boundsGravatar joshualitt2015-05-05
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1127633003
* Fix vertex/index buffer leaksGravatar bsalomon2015-05-05
| | | | | | TBR=robertphillips@google.com Review URL: https://codereview.chromium.org/1123823004
* Make drawImage a virtual on SkDeviceGravatar reed2015-05-05
| | | | | | | | | | Now with patch for SkDeferredCanvas This reverts commit 119468b71f8f4f45657ab30ead331be665de5a57. BUG=skia: Review URL: https://codereview.chromium.org/1122643005
* create GrInOrderCommandBuilderGravatar joshualitt2015-05-05
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1118403003
* remove dead code behind BOOL_ONGETINFOGravatar reed2015-05-05
| | | | | | | | | need this to land in chrome first https://codereview.chromium.org/1125573002 BUG=skia: TBR= Review URL: https://codereview.chromium.org/1123473004
* SkPDF: Remove unused deprecated functions in SkPDFTypesGravatar halcanary2015-05-05
| | | | | | | | | | | | | depends on: http://crrev.com/1107923002 http://crrev.com/1103163002 http://crrev.com/1110533002 http://crrev.com/1107913002 http://crrev.com/1106163002 BUG=skia:3585 Review URL: https://codereview.chromium.org/1113583002
* Move RectBatch to GrRectGravatar joshualitt2015-05-05
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1127713002
* SkPDF: clean up uses of deprecated calls in SkPDFFontGravatar halcanary2015-05-05
| | | | | | BUG=skia:3585 Review URL: https://codereview.chromium.org/1110533002
* Move DrawInfo out from GrDrawTarget and rename to GrVertices.Gravatar bsalomon2015-05-05
| | | | Review URL: https://codereview.chromium.org/1124733004
* Create GrCommandBuilderGravatar joshualitt2015-05-05
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1113313003
* Adjust tolerance to fix GPU hairline curve issuesGravatar jvanverth2015-05-05
| | | | | | BUG=chromium:472847 Review URL: https://codereview.chromium.org/1126793003
* SkPDF: clean up uses of deprecated calls in SkDocument_PDFGravatar halcanary2015-05-05
| | | | | | BUG=skia:3585 Review URL: https://codereview.chromium.org/1107913002
* Avoid using SkPathEffect::DashInfo in GrStrokeInfoGravatar kkinnunen2015-05-05
| | | | | | | | | | | | | | | Avoid using SkPathEffect::DashInfo for storing the phase in GrStrokeInfo. Instead, just use normal instance variables. Fixes the copy constructor pointing the DashInfo interval pointer to the wrong interval data. Also fixes GrStrokeInfo::setDashInfo(const SkPathEffect::DashInfo&) by updating the fDashType correctly. Makes it simpler to write code such as the operator== in the future. Review URL: https://codereview.chromium.org/1110093002
* remove dead code for SK_SUPPORT_LEGACY_RADIAL_GRADIENT_SQRTGravatar reed2015-05-05
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1122933002
* remove dead SK_SUPPORT_LEGACY_CUBIC_CHOPPER codeGravatar reed2015-05-05
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1116263005
* Start on simplifying generateGeometry() overridesGravatar bsalomon2015-05-05
| | | | | | Committed: https://skia.googlesource.com/skia/+/f28381c6866cad92af8ebe5b9d2db074613b1963 Review URL: https://codereview.chromium.org/1122673002
* Revert of Make drawImage a virtual on SkDevice (patchset #3 id:40001 of ↵Gravatar reed2015-05-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/11188… (patchset #2 id:20001 of https://codereview.chromium.org/1122813002/) Reason for revert: did not update DeferredCanvas Original issue's description: > Make drawImage a virtual on SkDevice (patchset #3 id:40001 of https://codereview.chromium.org/1118823004/)" > > Fixed serialization from prev CL > > This reverts commit 973d1f1f60f2710a268a3165aa4f3460502d4be5. > > BUG=skia:3803 > TBR= > > Committed: https://skia.googlesource.com/skia/+/5392785080001fe737fac9e5801fc2127a78d4fb TBR= NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:3803 Review URL: https://codereview.chromium.org/1123743006
* Remove canTweakAlphaForCoverage from XP's since batch reads flag.Gravatar egdaniel2015-05-04
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1127693002
* Fix typeface ids on Mac.Gravatar bungeman2015-05-04
| | | | | | | | | | The current typeface ids with CoreText rely on ATS (which causes memory use issues) or font data (which is unreliable, and will not work with axes and synthetics). This changes the code so that stream fonts never end up in the cache and always get a unique id, and system fonts will be given an id as they are used. Review URL: https://codereview.chromium.org/1125763002
* Don't attempt to draw path if dashing or stroking failsGravatar bsalomon2015-05-04
| | | | | | | | TBR=egdaniel@google.com Committed: https://skia.googlesource.com/skia/+/39202f12d37b6ef69ffaddcaa8cc92c621fcda41 Review URL: https://codereview.chromium.org/1119393002
* Revert of Start on simplifying generateGeometry() overrides (patchset #10 ↵Gravatar bsalomon2015-05-04
| | | | | | | | | | | | | | | | | | | id:160001 of https://codereview.chromium.org/1122673002/) Reason for revert: Breaking bots Original issue's description: > Start on simplifying generateGeometry() overrides > > Committed: https://skia.googlesource.com/skia/+/f28381c6866cad92af8ebe5b9d2db074613b1963 TBR=joshualitt@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1124633003
* Start on simplifying generateGeometry() overridesGravatar bsalomon2015-05-04
| | | | Review URL: https://codereview.chromium.org/1122673002
* Revert of Don't attempt to draw path if dashing or stroking fails (patchset ↵Gravatar bsalomon2015-05-04
| | | | | | | | | | | | | | | | | | | | | | #1 id:1 of https://codereview.chromium.org/1119393002/) Reason for revert: Doesn't draw Original issue's description: > Don't attempt to draw path if dashing or stroking fails > > > TBR=egdaniel@google.com > > Committed: https://skia.googlesource.com/skia/+/39202f12d37b6ef69ffaddcaa8cc92c621fcda41 TBR=egdaniel@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1119423002
* Make drawImage a virtual on SkDevice (patchset #3 id:40001 of ↵Gravatar reed2015-05-04
| | | | | | | | | | | | | https://codereview.chromium.org/1118823004/)" Fixed serialization from prev CL This reverts commit 973d1f1f60f2710a268a3165aa4f3460502d4be5. BUG=skia:3803 TBR= Review URL: https://codereview.chromium.org/1122813002
* Move state management to GrInOrderDrawBufferGravatar joshualitt2015-05-04
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/5d6bb6f795143ca360b868560b52165de51fa269 Review URL: https://codereview.chromium.org/1120143002