aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/private
Commit message (Collapse)AuthorAge
* remove SkTCastGravatar Mike Klein2018-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | SkTCast is functionally equivalent to reinterpret_cast. The comment about SkTCast helping to avoid strict alising issues is not true. Dereferencing a pointer cast to a pointer of an unrelated type is always undefined, even if smuggled through a union like in SkTCast. To really avoid aliasing issues, you need to make a union[1] of the two value types, or better, memcpy between values. I've had to fix MatrixText.cpp where switching to reinterpret_cast actually let Clang notice and warn that we're exploiting undefined behavior, and GrSwizzle.h and SkCamera.cpp caught by GCC. I've switched SkTLList over to use SkAlignedSTStorage, which seems to help convince some GCC versions that fObj is used in a sound way. [1] The union punning trick is non-standard in C++, but GCC and MSVC both explicitly support it. I believe Clang does not officially explicitly support it, but probably does quietly for GCC compatibility. Change-Id: I71822e82c962f9aaac8be24d3c0f39f4f8b05026 Reviewed-on: https://skia-review.googlesource.com/134947 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Salomon <bsalomon@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Change how vertex/instance attributes are handled in geometry processors.Gravatar Brian Salomon2018-06-18
| | | | | | | | | | | | | * No longer register vertex/instance attributes on base class, just counts * Separate instance and vertex attributes and remove InputRate and offset * Make attributes constexpr where possible Change-Id: I1f1d5e772fa177a96d2aeb805aab7b69f35bfae6 Reviewed-on: https://skia-review.googlesource.com/132405 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* ccpr: Use lazy proxies with GrCCAtlasGravatar Chris Dalton2018-06-18
| | | | | | | | Bug: skia: Change-Id: I576d9303d451352778de0425e3ecbc561331cd09 Reviewed-on: https://skia-review.googlesource.com/135362 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Remove string.h from SkTypes.hGravatar Ben Wagner2018-06-15
| | | | | | | Change-Id: I2be84f37ea11a386206a96d2fef6e0fc9464e21b Reviewed-on: https://skia-review.googlesource.com/135264 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Revert "Move op memory storage to GrContext"Gravatar Robert Phillips2018-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c8cee446bf9c07da8848bbd032abf26e79966ac1. Reason for revert: TSAN issues Original change's description: > Move op memory storage to GrContext > > TBR=bsalomon@google.com > Change-Id: Ifa95bf0073b9d948f2c937d10088b7734b971f90 > Reviewed-on: https://skia-review.googlesource.com/131500 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: Ia0d2b7408314d9b67d57388315376bbea23d3780 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/135181 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Move op memory storage to GrContextGravatar Robert Phillips2018-06-15
| | | | | | | | | TBR=bsalomon@google.com Change-Id: Ifa95bf0073b9d948f2c937d10088b7734b971f90 Reviewed-on: https://skia-review.googlesource.com/131500 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* SkTHashTable no longer uses SkNoncopyGravatar Hal Canary2018-06-14
| | | | | | | | | Change-Id: I0944195d3087c97353994ff219f77464d94f1ba8 Reviewed-on: https://skia-review.googlesource.com/135045 Commit-Queue: Hal Canary <halcanary@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Auto-Submit: Hal Canary <halcanary@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* SkTemplates no longer uses SknoncopyableGravatar Hal Canary2018-06-14
| | | | | | | | Change-Id: I142ff4f6b05e633b92d982f3c39a0e58617c1c0e Reviewed-on: https://skia-review.googlesource.com/135040 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* ccpr: Generalize GrCCAtlas to work for cached atlases as wellGravatar Chris Dalton2018-06-14
| | | | | | | | | | | Converts atlas offsets to SkIVector, adds a GrCCAtlasStack class, moves the Op that renders the atlases into GrCCPerFlushResources, etc. Bug: skia: Change-Id: I5110be8e74da709f3ce84bb6798ead572142d0fa Reviewed-on: https://skia-review.googlesource.com/134701 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Revert "SkTypes: extract SkTo""Gravatar Hal Canary2018-06-14
| | | | | | | | | | | | | | | | This reverts commit fdcfb8b7c23fbf18f872d2c31d27978235033876. > Original change's description: > > SkTypes: extract SkTo > > > > Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 > > Reviewed-on: https://skia-review.googlesource.com/133620 > > Reviewed-by: Mike Klein <mtklein@google.com> Change-Id: Ida74fbc5c21248a724a5edbf9fae18a33bcb23aa Reviewed-on: https://skia-review.googlesource.com/134506 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Reland "use std::enable_if instead of assert()"Gravatar Mike Klein2018-06-14
| | | | | | | | | | | | | | | | | | | | | This is a reland of c6530d1e5ecce640e0255d66a01f9db73add7df9 Original change's description: > use std::enable_if instead of assert() > > Crazy? Genius? > > Change-Id: I6033ab5f1af1a6bee84c27025b988e1143d59293 > Reviewed-on: https://skia-review.googlesource.com/134512 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Commit-Queue: Ben Wagner <bungeman@google.com> > Auto-Submit: Mike Klein <mtklein@chromium.org> > Reviewed-by: Ben Wagner <bungeman@google.com> Change-Id: I50849c89a37255396706ce659e20f00c0b0f08c6 Reviewed-on: https://skia-review.googlesource.com/134860 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Reland "simplify SkTFitsIn, try 2"Gravatar Mike Klein2018-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of 009f51e43fee199a579ecdd773e3aa35aaa3b8b8 Original change's description: > simplify SkTFitsIn, try 2 > > Originally we wrote this in C++14 constexpr, > but because this is used from public headers, we can't use > C++14 yet. Now a somewhat sillier looking C++11 version. > > All the old tests still pass, and one new added. > Updated the comments a bit for correctness and readability. > > Change-Id: I99c01e1346c1a5a36278cc08f30538112e5259aa > Reviewed-on: https://skia-review.googlesource.com/134425 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Commit-Queue: Ben Wagner <bungeman@google.com> > Auto-Submit: Mike Klein <mtklein@chromium.org> > Reviewed-by: Ben Wagner <bungeman@google.com> Change-Id: I99676faac6153830538c1396a325ca1456dfb126 Reviewed-on: https://skia-review.googlesource.com/134800 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* ccpr: Initialize the atlas size more intelligentlyGravatar Chris Dalton2018-06-13
| | | | | | | | | | | | | Rather than always starting the atlas at 1024 x 1024, begin with the first pow2 dimensions whose area is theoretically large enough to contain the pending paths. Bug: skia: Change-Id: I263e77ff6a697e865f6b3b62b9df7002225f9544 Reviewed-on: https://skia-review.googlesource.com/133660 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "simplify SkTFitsIn, try 2"Gravatar Mike Klein2018-06-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 009f51e43fee199a579ecdd773e3aa35aaa3b8b8. Reason for revert: unintentional header consequences in Chromium... will reland after fixing Chromium Original change's description: > simplify SkTFitsIn, try 2 > > Originally we wrote this in C++14 constexpr, > but because this is used from public headers, we can't use > C++14 yet. Now a somewhat sillier looking C++11 version. > > All the old tests still pass, and one new added. > Updated the comments a bit for correctness and readability. > > Change-Id: I99c01e1346c1a5a36278cc08f30538112e5259aa > Reviewed-on: https://skia-review.googlesource.com/134425 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Commit-Queue: Ben Wagner <bungeman@google.com> > Auto-Submit: Mike Klein <mtklein@chromium.org> > Reviewed-by: Ben Wagner <bungeman@google.com> TBR=mtklein@chromium.org,bungeman@google.com Change-Id: Ic73f8800bd022ffea125b3b1bf138fe49c0db926 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/134621 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Revert "use std::enable_if instead of assert()"Gravatar Mike Klein2018-06-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c6530d1e5ecce640e0255d66a01f9db73add7df9. Reason for revert: going to revert SkTFitsIn refactor temporarily Original change's description: > use std::enable_if instead of assert() > > Crazy? Genius? > > Change-Id: I6033ab5f1af1a6bee84c27025b988e1143d59293 > Reviewed-on: https://skia-review.googlesource.com/134512 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Commit-Queue: Ben Wagner <bungeman@google.com> > Auto-Submit: Mike Klein <mtklein@chromium.org> > Reviewed-by: Ben Wagner <bungeman@google.com> TBR=mtklein@chromium.org,bungeman@google.com Change-Id: Id7c91e3a12756defe194379579cc5fd88fd4b164 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/134620 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* use std::enable_if instead of assert()Gravatar Mike Klein2018-06-13
| | | | | | | | | | | Crazy? Genius? Change-Id: I6033ab5f1af1a6bee84c27025b988e1143d59293 Reviewed-on: https://skia-review.googlesource.com/134512 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Ben Wagner <bungeman@google.com>
* simplify SkTFitsIn, try 2Gravatar Mike Klein2018-06-13
| | | | | | | | | | | | | | | | Originally we wrote this in C++14 constexpr, but because this is used from public headers, we can't use C++14 yet. Now a somewhat sillier looking C++11 version. All the old tests still pass, and one new added. Updated the comments a bit for correctness and readability. Change-Id: I99c01e1346c1a5a36278cc08f30538112e5259aa Reviewed-on: https://skia-review.googlesource.com/134425 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Ben Wagner <bungeman@google.com>
* Revert "SkTypes: extract SkTo"Gravatar Hal Canary2018-06-13
| | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2a2f67592602b18527bc3fd449132d420cd5b62e. Reason for revert: this appears to be what is holding up the Chrome roll. Original change's description: > SkTypes: extract SkTo > > Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 > Reviewed-on: https://skia-review.googlesource.com/133620 > Reviewed-by: Mike Klein <mtklein@google.com> TBR=mtklein@google.com,halcanary@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: Iafd738aedfb679a23c061a51afe4b98a8d4cdfae Reviewed-on: https://skia-review.googlesource.com/134504 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Remove SkBool8.Gravatar Ben Wagner2018-06-12
| | | | | | | | | | | | This typedef was created at a time when compilers often used sizeof(int) storage for a bool. This is no longer the case and in all compilers currently supported 'sizeof(bool) == 1'. Removing this also revealed one field which was actually not a bool but a tri-state enum. Change-Id: I9240ba457335ee3eff094d6d3f2520c1adf16960 Reviewed-on: https://skia-review.googlesource.com/134420 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Revert "simplify SkTFitsIn"Gravatar Mike Klein2018-06-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b82c3d6ff2ac62c8a14b38b0d658a51e7d8cf81e. Reason for revert: SkTFitsIn makes its way into public headers via SkTo<T>, so it cannot use C++14isms. Original change's description: > simplify SkTFitsIn > > Now that we're C++14, a constexpr SkTFitsIn() is a lot easier. > All the old tests still pass, and one new added. > > Updated the comments a bit for correctness and readability. > > Change-Id: I0f60e32e545fe4f2fb14e66a2bf25d562dbd680f > Reviewed-on: https://skia-review.googlesource.com/133831 > Reviewed-by: Ben Wagner <bungeman@google.com> > Commit-Queue: Mike Klein <mtklein@chromium.org> TBR=mtklein@chromium.org,halcanary@google.com,bungeman@google.com Change-Id: Icfb19c77b450cf3525d11225d4237f9bfa68c7fc No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/134440 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* SkTypes: more into SkMacrosGravatar Hal Canary2018-06-12
| | | | | | | | Change-Id: I4c9a2d81a1bc4ccebc78eea56c0de116b98d415e Reviewed-on: https://skia-review.googlesource.com/134330 Commit-Queue: Hal Canary <halcanary@google.com> Auto-Submit: Hal Canary <halcanary@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* SkMacros split from SkTypes.hGravatar Hal Canary2018-06-12
| | | | | | | Change-Id: I383719ee181c6925ebf62ffc70e1c0f12ee7cf84 Reviewed-on: https://skia-review.googlesource.com/134326 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* simplify SkTFitsInGravatar Mike Klein2018-06-12
| | | | | | | | | | | | Now that we're C++14, a constexpr SkTFitsIn() is a lot easier. All the old tests still pass, and one new added. Updated the comments a bit for correctness and readability. Change-Id: I0f60e32e545fe4f2fb14e66a2bf25d562dbd680f Reviewed-on: https://skia-review.googlesource.com/133831 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* SkTypes: extract SkToGravatar Hal Canary2018-06-12
| | | | | | Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 Reviewed-on: https://skia-review.googlesource.com/133620 Reviewed-by: Mike Klein <mtklein@google.com>
* Plumb GrContext everywhereGravatar Robert Phillips2018-06-12
| | | | | | | | | | There is no good way to split the monster CL up. This breaks out the GrContext plumbing but doesn't use it. Change-Id: I90856d428d372bcec3f8821e6364667b367927d4 Reviewed-on: https://skia-review.googlesource.com/133382 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Clean up a few IWYU issuesGravatar Mike Klein2018-06-11
| | | | | | | | | Spun off from the SkTFitsIn CL. Change-Id: I686d680df6a36ebc02db3847ad5e2cedcbcd67ef Reviewed-on: https://skia-review.googlesource.com/134083 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* trim #include <new> from SkPostConfig.hGravatar Mike Klein2018-06-11
| | | | | | | Change-Id: I693ddcd4ade101ba4eb4102e03adce183aa1d672 Reviewed-on: https://skia-review.googlesource.com/133829 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Reland "Reland "Require mips to be allocated at texture creation time and ↵Gravatar Greg Daniel2018-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | disable late allocations."" This reverts commit 01422bc8eff0c317b9c234b3b4f5a82f1011dfce. Reason for revert: follow on change may be ready Original change's description: > Revert "Reland "Require mips to be allocated at texture creation time and disable late allocations."" > > This reverts commit 9eb36b9eb8e81e970e02fa985ae82fe64de0a8f0. > > Reason for revert: Alpha8 isn't renderable on es2 so we end up dropping draws on certain A8 mip requests > > Original change's description: > > Reland "Require mips to be allocated at texture creation time and disable late allocations." > > > > This reverts commit 0c78238e2991c95b6fb3c945d4ad2b5d941ae21b. > > > > Reason for revert: <INSERT REASONING HERE> > > > > Original change's description: > > > Revert "Require mips to be allocated at texture creation time and disable late allocations." > > > > > > This reverts commit cd2c3f9055452d413d6be7ea6dc63fd1922fe994. > > > > > > Reason for revert: Looks to be causing angle failures on initial clear test > > > > > > Original change's description: > > > > Require mips to be allocated at texture creation time and disable late allocations. > > > > > > > > If we get a non-mipped texture for a draw that wants to be use mip map filter, we > > > > will copy the texture into a new mipped texture. > > > > > > > > Clean up of unused code in the GPU backends for reallocating for mips will be done > > > > in a follow up CL. > > > > > > > > Bug: skia: > > > > Change-Id: Idab588c1abf4bbbf7eeceb3727d500e5df274188 > > > > Reviewed-on: https://skia-review.googlesource.com/132830 > > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > > > > > > > > > Change-Id: I49f0ace52f2586d61b451630b2e6aae84b420b81 > > > No-Presubmit: true > > > No-Tree-Checks: true > > > No-Try: true > > > Bug: skia: > > > Reviewed-on: https://skia-review.googlesource.com/133041 > > > Reviewed-by: Greg Daniel <egdaniel@google.com> > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > Bug: skia: > > Change-Id: I004447a5f1ec72c3be2318ddea803f57efb12ea4 > > Reviewed-on: https://skia-review.googlesource.com/133340 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com > > Change-Id: I9e9718d380c4d9927ec39e46008750ab7396391f > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/133680 > Reviewed-by: Greg Daniel <egdaniel@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: Ic3df69f65a89962b21cdb50ee436a29fd121ab1f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/133740 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Stop passing GrPrimitiveProcessor to GrMesh::sendToGpu.Gravatar Brian Salomon2018-06-08
| | | | | | | | | | | | | It is currently used in GrGLGpu::setupGeometry. Instead: 1) Make GrMesh track whether primitive restart should be enabled. 2) Make GrGLProgram track program attributes. Change-Id: Ice411a495961fcbc3cedc81e8ae0583537f42153 Reviewed-on: https://skia-review.googlesource.com/132267 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* Glyph search of desperationGravatar Herb Derby2018-06-08
| | | | | | | Change-Id: I0ae768c5517c3ee3f6822fea0926b3f27214a0e4 Reviewed-on: https://skia-review.googlesource.com/132260 Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Revert "Reland "Require mips to be allocated at texture creation time and ↵Gravatar Greg Daniel2018-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | disable late allocations."" This reverts commit 9eb36b9eb8e81e970e02fa985ae82fe64de0a8f0. Reason for revert: Alpha8 isn't renderable on es2 so we end up dropping draws on certain A8 mip requests Original change's description: > Reland "Require mips to be allocated at texture creation time and disable late allocations." > > This reverts commit 0c78238e2991c95b6fb3c945d4ad2b5d941ae21b. > > Reason for revert: <INSERT REASONING HERE> > > Original change's description: > > Revert "Require mips to be allocated at texture creation time and disable late allocations." > > > > This reverts commit cd2c3f9055452d413d6be7ea6dc63fd1922fe994. > > > > Reason for revert: Looks to be causing angle failures on initial clear test > > > > Original change's description: > > > Require mips to be allocated at texture creation time and disable late allocations. > > > > > > If we get a non-mipped texture for a draw that wants to be use mip map filter, we > > > will copy the texture into a new mipped texture. > > > > > > Clean up of unused code in the GPU backends for reallocating for mips will be done > > > in a follow up CL. > > > > > > Bug: skia: > > > Change-Id: Idab588c1abf4bbbf7eeceb3727d500e5df274188 > > > Reviewed-on: https://skia-review.googlesource.com/132830 > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > > > > > Change-Id: I49f0ace52f2586d61b451630b2e6aae84b420b81 > > No-Presubmit: true > > No-Tree-Checks: true > > No-Try: true > > Bug: skia: > > Reviewed-on: https://skia-review.googlesource.com/133041 > > Reviewed-by: Greg Daniel <egdaniel@google.com> > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > Bug: skia: > Change-Id: I004447a5f1ec72c3be2318ddea803f57efb12ea4 > Reviewed-on: https://skia-review.googlesource.com/133340 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: I9e9718d380c4d9927ec39e46008750ab7396391f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/133680 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Make the SkPathRef GenIDChangeListener ref countedGravatar Chris Dalton2018-06-08
| | | | | | | | Bug: skia: Change-Id: I2780e3fc76153373b4efca6059ded82f4f749325 Reviewed-on: https://skia-review.googlesource.com/133502 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Reland "Require mips to be allocated at texture creation time and disable ↵Gravatar Greg Daniel2018-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | late allocations." This reverts commit 0c78238e2991c95b6fb3c945d4ad2b5d941ae21b. Reason for revert: <INSERT REASONING HERE> Original change's description: > Revert "Require mips to be allocated at texture creation time and disable late allocations." > > This reverts commit cd2c3f9055452d413d6be7ea6dc63fd1922fe994. > > Reason for revert: Looks to be causing angle failures on initial clear test > > Original change's description: > > Require mips to be allocated at texture creation time and disable late allocations. > > > > If we get a non-mipped texture for a draw that wants to be use mip map filter, we > > will copy the texture into a new mipped texture. > > > > Clean up of unused code in the GPU backends for reallocating for mips will be done > > in a follow up CL. > > > > Bug: skia: > > Change-Id: Idab588c1abf4bbbf7eeceb3727d500e5df274188 > > Reviewed-on: https://skia-review.googlesource.com/132830 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > Change-Id: I49f0ace52f2586d61b451630b2e6aae84b420b81 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/133041 > Reviewed-by: Greg Daniel <egdaniel@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> Bug: skia: Change-Id: I004447a5f1ec72c3be2318ddea803f57efb12ea4 Reviewed-on: https://skia-review.googlesource.com/133340 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* remove final SkTypes dependencies in SkArenaAllocGravatar Mike Klein2018-06-08
| | | | | | | | Change-Id: I09ab433fecdba01f8e652816be08817da68eea56 Reviewed-on: https://skia-review.googlesource.com/132926 Commit-Queue: Hal Canary <halcanary@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Herb Derby <herb@google.com>
* tweak SkArenaAlloc comments, parameter namesGravatar Mike Klein2018-06-07
| | | | | | | Change-Id: Ie7518f2ad2e0f11f0acd5a3bfeff4e5ca7188311 Reviewed-on: https://skia-review.googlesource.com/132925 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Herb Derby <herb@google.com>
* remove unused stat tracking from SkArenaAllocGravatar Mike Klein2018-06-07
| | | | | | | | | | | | I'm really only trying to remove the dependency on SkDebugf(). If we want to keep this, I could switch it to take an optional stats callback called in the destructor? Change-Id: I5aa2a58ccc7c8e17e61f29b482b2851be056fa07 Reviewed-on: https://skia-review.googlesource.com/132922 Auto-Submit: Mike Klein <mtklein@chromium.org> Commit-Queue: Herb Derby <herb@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Revert "Require mips to be allocated at texture creation time and disable ↵Gravatar Greg Daniel2018-06-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | late allocations." This reverts commit cd2c3f9055452d413d6be7ea6dc63fd1922fe994. Reason for revert: Looks to be causing angle failures on initial clear test Original change's description: > Require mips to be allocated at texture creation time and disable late allocations. > > If we get a non-mipped texture for a draw that wants to be use mip map filter, we > will copy the texture into a new mipped texture. > > Clean up of unused code in the GPU backends for reallocating for mips will be done > in a follow up CL. > > Bug: skia: > Change-Id: Idab588c1abf4bbbf7eeceb3727d500e5df274188 > Reviewed-on: https://skia-review.googlesource.com/132830 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: I49f0ace52f2586d61b451630b2e6aae84b420b81 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/133041 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Require mips to be allocated at texture creation time and disable late ↵Gravatar Greg Daniel2018-06-07
| | | | | | | | | | | | | | | | allocations. If we get a non-mipped texture for a draw that wants to be use mip map filter, we will copy the texture into a new mipped texture. Clean up of unused code in the GPU backends for reallocating for mips will be done in a follow up CL. Bug: skia: Change-Id: Idab588c1abf4bbbf7eeceb3727d500e5df274188 Reviewed-on: https://skia-review.googlesource.com/132830 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* require std::is_trivially_destructibleGravatar Mike Klein2018-06-07
| | | | | | | | Change-Id: I78cbaf420ad1e16f07eacb8b4c6c825fe849b08a Reviewed-on: https://skia-review.googlesource.com/132825 Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* clean up some unused parts of SkArenaAllocGravatar Mike Klein2018-06-07
| | | | | | | | | | | | | | I'm looking at making SkArenaAlloc independent of Skia. Here's a bit of low-hanging fruit. Nothing is using makeSkSp(). Good... it seems real dangerous. Change-Id: Ib7154e7948a3c6d828376ef37935636b3b4695ff Reviewed-on: https://skia-review.googlesource.com/132824 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Herb Derby <herb@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* simplify SK_FloatNaNGravatar Mike Klein2018-06-05
| | | | | | | | | | | math.h contains NAN, an expression that evaluates to a quiet float NaN While here, INFINITY is also a float, so the casts aren't needed. Change-Id: Ibdd8f5a2767651cd4382d700e9125b832473a304 Reviewed-on: https://skia-review.googlesource.com/132087 Auto-Submit: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Remove color space restrictions from image infosGravatar Brian Osman2018-06-04
| | | | | | | | | | | What makes an info valid (or invalid)? Nothing to do with color space. Bug: skia: Change-Id: I6795efa9aa74ab0d65935c5ddccc1058f8e0b112 Reviewed-on: https://skia-review.googlesource.com/131780 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Dest color space no longer impacts mipmaps or texture samplingGravatar Brian Osman2018-06-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PS5: Removes SkDestinationSurfaceColorMode, tracking of mipmap mode on GrTexture, sRGB decode state per-texture. Because we were often choosing sRGB configs for RGB color types, legacy rendering would then be incorrect (too dark). So... PS7: Stops ever using sRGB pixel configs when translating image info or color type. Also removes a bunch of GrCaps bits and a GrContextOption that are no longer relevant. PS9: Adjusts surface creation unit test expectations, and changes the raster rules accordingly. At this point, sRGB configs are (obviously) going to be broken. Locally, I ran 8888, gl, and the gbr- versions of both. Across all GMs x configs, there are 13 diffs. 12 are GMs that create surfaces with a color-space attached (and thus, the offscreen is no longer getting sRGB pixel config). The only remainder constructs an SkPictureImageGenerator, (with an attached color space) and renders it to the gbr-gl canvas, which triggers a a tagged surface inside the generator. Bug: skia: Change-Id: Ie5edfa157dd799f3121e8173fc4f97f6c8ed6789 Reviewed-on: https://skia-review.googlesource.com/131282 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Allow CCPR in DDL mode (take 2)Gravatar Robert Phillips2018-05-31
| | | | | | | | | | | | A lot of the changes to get this compiling on the win_chromium_compile_dbg_ng bot (i.e., moving a lot of header files to private) should be undone if that bot is ever "fixed". Bug: skia:7988 Change-Id: I704ff793d80b18e7312048538874498824803580 Reviewed-on: https://skia-review.googlesource.com/130920 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Allow CCPR in DDL mode"Gravatar Robert Phillips2018-05-30
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 93540dd15715057e00b4f136977f441720317b60. Reason for revert: Chrome! > Allow CCPR in DDL mode > > Bug: skia:7988 > Change-Id: If757f29e0156c0ef7045b437b04e17aebe4de851 > Reviewed-on: https://skia-review.googlesource.com/130509 > Commit-Queue: Robert Phillips <robertphillips@google.com> > Reviewed-by: Chris Dalton <csmartdalton@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,robertphillips@google.com,csmartdalton@google.com Change-Id: Ibb5017d1bf307545969069b94987e0a51a22e333 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7988 Reviewed-on: https://skia-review.googlesource.com/130880 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Allow CCPR in DDL modeGravatar Robert Phillips2018-05-30
| | | | | | | | | Bug: skia:7988 Change-Id: If757f29e0156c0ef7045b437b04e17aebe4de851 Reviewed-on: https://skia-review.googlesource.com/130509 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Reland "Turn off domain in GrTextureOp when src rect contains entire proxy"Gravatar Brian Salomon2018-05-26
| | | | | | | | | | | | | | | | | | This is a reland of 869433fa113d1573d5d91fcafdca413b247ce1b0 Original change's description: > Turn off domain in GrTextureOp when src rect contains entire proxy > > Move check for turning off domain when nearest/no-aa to GrRenderTargetContext. > > Change-Id: I3c071b5f73fb3134218453204f30c3020c9dad9a > Reviewed-on: https://skia-review.googlesource.com/130143 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> Change-Id: I29a21e26de8a246a74bd40fd0cda044f8f18327e Reviewed-on: https://skia-review.googlesource.com/130307 Reviewed-by: Stephen White <senorblanco@chromium.org>
* Revert "Turn off domain in GrTextureOp when src rect contains entire proxy"Gravatar Stephen White2018-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 869433fa113d1573d5d91fcafdca413b247ce1b0. Reason for revert: possibly preventing Chromium roll (layout tests) Original change's description: > Turn off domain in GrTextureOp when src rect contains entire proxy > > Move check for turning off domain when nearest/no-aa to GrRenderTargetContext. > > Change-Id: I3c071b5f73fb3134218453204f30c3020c9dad9a > Reviewed-on: https://skia-review.googlesource.com/130143 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,robertphillips@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I8afc3c05b504ccde7d44e973d707f4cba1dc51b1 Reviewed-on: https://skia-review.googlesource.com/130302 Reviewed-by: Stephen White <senorblanco@chromium.org> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Turn off domain in GrTextureOp when src rect contains entire proxyGravatar Brian Salomon2018-05-25
| | | | | | | | | Move check for turning off domain when nearest/no-aa to GrRenderTargetContext. Change-Id: I3c071b5f73fb3134218453204f30c3020c9dad9a Reviewed-on: https://skia-review.googlesource.com/130143 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* fix 0.499999f rounding case for trianglesGravatar Mike Reed2018-05-23
| | | | | | | | Bug: skia:7994 Change-Id: I83bb309a2c8fb0bddaf78ba32c0a07537e483900 Reviewed-on: https://skia-review.googlesource.com/129648 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@google.com>