aboutsummaryrefslogtreecommitdiffhomepage
path: root/gn
Commit message (Collapse)AuthorAge
* Revert "Transform vertices for distance field glyphs on CPU."Gravatar Greg Daniel2017-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 0215e39d7e415d0530231df6ad20d5f215c72152. Reason for revert: break intel 540 and HD2000 intel release bots on gltestthreading gm dftext_blob_pers Original change's description: > Transform vertices for distance field glyphs on CPU. > > This allows batching of DF draws with different view matrices. > > For perspective matrices this means the transformed position vertex > attribute must have w values. Currently, non-perspective DF draws still > use 2 component positions, though this could be changed in the future. > Consequently, perspective draws can batch with other perspective draws > but not non-perspective draws. > > Adds a GM to test batching and reusing the same blobs with both perspective > and non-perspective matrices. > > Change-Id: I0e42c5449ebf3a5a54025dbcdec824d904d5bd9e > Reviewed-on: https://skia-review.googlesource.com/79900 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Jim Van Verth <jvanverth@google.com> TBR=jvanverth@google.com,bsalomon@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Idc658d9263976d5b5e00a5026c5d6d3c8f4bdc2d Reviewed-on: https://skia-review.googlesource.com/86560 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Revert "Remove SkImage deferred texture image data APIs."Gravatar Eric Karl2017-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4f5e1d4ff3fa9f240398c9a08be94beb1c16dad0. Reason for revert: Unfortunately, we need this in Chrome for a bit longer. Working on understanding why the new path led to regressions. Will re-land this once the new path sticks. Original change's description: > Remove SkImage deferred texture image data APIs. > > These APIs existed for Chrome. Chrome is no longer using them. > > Change-Id: I15a5e2f88c7e8d1356188748fc68d4658f6f1849 > Reviewed-on: https://skia-review.googlesource.com/81021 > Reviewed-by: Brian Osman <brianosman@google.com> > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,brianosman@google.com,caryclark@google.com,caryclark@skia.org # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Ic9f683f262f2e1d0469156360f5ffaee977ca44a Reviewed-on: https://skia-review.googlesource.com/86280 Reviewed-by: Eric Karl <ericrk@chromium.org> Commit-Queue: Eric Karl <ericrk@chromium.org>
* Transform vertices for distance field glyphs on CPU.Gravatar Brian Salomon2017-12-15
| | | | | | | | | | | | | | | | | | This allows batching of DF draws with different view matrices. For perspective matrices this means the transformed position vertex attribute must have w values. Currently, non-perspective DF draws still use 2 component positions, though this could be changed in the future. Consequently, perspective draws can batch with other perspective draws but not non-perspective draws. Adds a GM to test batching and reusing the same blobs with both perspective and non-perspective matrices. Change-Id: I0e42c5449ebf3a5a54025dbcdec824d904d5bd9e Reviewed-on: https://skia-review.googlesource.com/79900 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* Try /Z7 on Windows builds.Gravatar Mike Klein2017-12-15
| | | | | | | | | | | | | | | | | | | | | Right now /FS and /Zi together serialize debug information into .pdb files through another process. I tried just dropping /FS, so that each cl.exe instance writes to the .pdb file directly, but the bots don't like that. Instead, let's try switching /Zi to /Z7, to embed debug information directly into the object file instead of alongside in a .pdb. This is all about trying to improve build times. https://docs.microsoft.com/en-us/cpp/build/reference/z7-zi-zi-debug-information-format https://docs.microsoft.com/en-us/cpp/build/reference/fs-force-synchronous-pdb-writes Change-Id: If636f8fa21c639eff81d9c335c5223908c0fdcea Reviewed-on: https://skia-review.googlesource.com/85661 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Don't set /GS- on Windows builds.Gravatar Mike Klein2017-12-15
| | | | | | | | | | | | | I'm not sure why we're setting this... it disables buffer overrun protection. That seems like something we'd like on all test bots, not just the Debug ones. https://docs.microsoft.com/en-us/cpp/build/reference/gs-buffer-security-check Change-Id: I0bc3ec146812b4ad3d1d39488caf6e78633830fc Reviewed-on: https://skia-review.googlesource.com/85660 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Suppress warnings of unused variables.Gravatar Derek Sollenberger2017-12-14
| | | | | | | | | | Prepare to compile with default -Werror. Bug: b/66996870 Change-Id: I2dbff68e7482085683adb6b9d214e1af009e7479 Reviewed-on: https://skia-review.googlesource.com/85004 Reviewed-by: Stephen Hines <srhines@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* make SkColorSpace_New realGravatar Mike Klein2017-12-14
| | | | | | | | | | | | | | | | | | | Some interesting things are starting to fall out already, like the fact that I needed to add a gamma_dst stage to be able to draw into gamma-transfer-fn destinations. I've also had to pass an SkAlphaType through to the linearize functions so that they can maintain premul invariants. I'm not sure this is actually a good idea... if you can, please double- check my logic at SkRasterPipeline.cpp:128? If it's correct logic, I'm going to need to do it all over the place. But I imagine you don't do this and somehow get away with it. Change-Id: I42cd9b161b54287d674225103ad9e19f8b388959 Reviewed-on: https://skia-review.googlesource.com/84680 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* Turn on PGO for skia_nanobench, skia_dmGravatar Pirama Arumuga Nainar2017-12-14
| | | | | | | | | | | | | | These libraries link libskia statically and hence need to do/use PGO instrumentation whenever libskia is instrumented. Test: Build skia_nanobench with ANDROID_PGO_INSTRUMENT=skia Bug: skia: Change-Id: I6b3e64f98f28c7236b47a46c213230ad1c6b95fc Reviewed-on: https://skia-review.googlesource.com/84609 Reviewed-by: Stephen Hines <srhines@google.com> Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Pirama Arumuga Nainar <pirama@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* Remove SkClampRange (unused)Gravatar Brian Osman2017-12-14
| | | | | | | | Bug: skia: Change-Id: I57fbdd39079a92e803902524a7950dd5f571639c Reviewed-on: https://skia-review.googlesource.com/84961 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* converted GrMagnifierEffect to SkSLGravatar Ethan Nicholas2017-12-13
| | | | | | | | Bug: skia: Change-Id: I6dc14ac66d5b911117e71fa23fef49a897082781 Reviewed-on: https://skia-review.googlesource.com/71342 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Add stubbed out GrContextGravatar Robert Phillips2017-12-13
| | | | | | | | | | | | This CL mainly just: stores the GrContextOptions in GrContextThreadSafeProxy (so they can be passed on to a stubbed out GrContext) adds a method to create a stubbed out GrContext that has a GrStubGpu - the stubbed out GrContext isn't quite ready for prime time yet Change-Id: I31be6763640e406c5963e6f0714489ac358339e4 Reviewed-on: https://skia-review.googlesource.com/79601 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* resources: optionally link them into our binaryGravatar Hal Canary2017-12-11
| | | | | | | | | | | To enable, set skia_embed_resources=true in args.gn. Also add *-EmbededResouces bots. Change-Id: Ia69b26e926a3ad4676a4fa021894432ea2104538 Reviewed-on: https://skia-review.googlesource.com/82626 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Filter Windows SDK and Compiler directoriesGravatar Brian Osman2017-12-11
| | | | | | | | | | | This avoids bugs when other directories (like the Driver SDK) show up in those folders. Bug: skia:7395 Change-Id: Iee316a7daf8d71223b999de736d63e1dc7fa31f7 Reviewed-on: https://skia-review.googlesource.com/83542 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Turn on PGO for Skia on AndroidGravatar Zhizhou Yang2017-12-11
| | | | | | | | | | | | | | | | | | | | | | | This patch is to turn on PGO for skia on Android, which will provide a performance improvement of 7.6% for hwui when applied PGO for both. The patch specified a skia.profdata file, which locates in internal google_data/pgo_profile directory, to work as the profile to feed PGO. This profdata can be re-collected with PGO build system support. PGO can be turned off by setting ANDROID_PGO_NO_PROFILE_USE environment variable or set variable to false. Test: Build skia successfully and verified the performance improvement on device through benchmark. BUG=skia: Change-Id: I826f417569b2853630f6d4fcce236b5bc36547fa Reviewed-on: https://skia-review.googlesource.com/82880 Commit-Queue: Derek Sollenberger <djsollen@google.com> Reviewed-by: Derek Sollenberger <djsollen@google.com> Reviewed-by: John Reck <jreck@google.com>
* Add GrGLMakeNativeInterface factory that returns sk_sp<const GrGLInterface>.Gravatar Brian Salomon2017-12-11
| | | | | | | | | | | | | | | Removes the concept of a configurable "default" interface and makes the default always be the "native" interface. Also removes unused functions: GrGLInterfaceAddTestDebugMarker and GrGLInterface::NewClone. Keeps around legacy GrGLCreateNativeInterface() until clients can be weened. Change-Id: I4a3bdafa8cf8c68ed13318393abd55686b045ccb Reviewed-on: https://skia-review.googlesource.com/83000 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add Goma support in gn_flavor.Gravatar Ben Wagner2017-12-08
| | | | | | | | | | | | Using full paths in skia.h causes "file not found" with Goma. All other Builds seem fine without the path, so I changed find_headers.py to use the basename. Change-Id: Ib520e91a92ebffe36a736eb53f643d359f5bb2ce Reviewed-on: https://skia-review.googlesource.com/79360 Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Eric Boren <borenet@google.com> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
* resources: orgainize directory.Gravatar Hal Canary2017-12-08
| | | | | | | | | Should make it easier to ask just for images. Change-Id: If821743dc924c4bfbc6b2b2d29b14affde7b3afd Reviewed-on: https://skia-review.googlesource.com/82684 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* Remove instanced renderingGravatar Brian Salomon2017-12-08
| | | | | | | Change-Id: I4219b1d23a647b849ee41fe71b53e1c45edfc3f4 Reviewed-on: https://skia-review.googlesource.com/82241 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Updated MSVC toolchain to 2017, and further refactored GNGravatar Brian Osman2017-12-08
| | | | | | | | | | | | | | | | | | | | | | 'windk' is no longer a thing. There are two separate variables to point at your compiler (win_vc), and SDK (win_sdk). 'msvc' is no longer a thing, either. By default, we look for 2017 and then 2015 (in the default locations). If neither is located, use an assert to let users know they should set win_vc. Then, detect if win_vc points at a 2017 or 2015 installation, and configure it automatically. Because the toolchain is now 2017, update the GN files to handle building x86 in that configuration. In fact, we only support x86 builds (with 2017 or 2015) using the toolchain assets. Keep a 2015 toolchain around as a new asset, so we can add bot coverage. Docs-Preview: https://skia.org/?cl=81841 Bug: skia: Change-Id: I8c68a6f949e54c0e798a219450bbb9406f8dc6ac Reviewed-on: https://skia-review.googlesource.com/81841 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Allow different identities for iOS code signingGravatar Jim Van Verth2017-12-07
| | | | | | | | | Docs-Preview: https://skia.org/?cl=81340 Bug: skia: Change-Id: I9a0e52ba4ce3c0c4b40cc65ce6b26bd3cebdbe4d Reviewed-on: https://skia-review.googlesource.com/81340 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* quiet down Mac linker warningsGravatar Mike Klein2017-12-07
| | | | | | | Change-Id: I9a2a061e7a021587441f3f39427306309e0341e8 Reviewed-on: https://skia-review.googlesource.com/82042 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Revert "Add define to use customize vulkan header.""Gravatar Greg Daniel2017-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b351817588baf94ac725e35f10ee1d5ff8178834. Reason for revert: Relanding with android fixes Original change's description: > Revert "Add define to use customize vulkan header." > > This reverts commit a492eb0e1f08311bfa47f46c660144e7bc8a6c0e. > > Reason for revert: Breaking Android roll (b/c builds tools?) > > Original change's description: > > Add define to use customize vulkan header. > > > > Bug: skia: > > Change-Id: Ia87c81a54603a02b2f8f51a735bf173a49afe6c7 > > Reviewed-on: https://skia-review.googlesource.com/81121 > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com > > Change-Id: I80a685bf88af909865f274ffc61686be57e8c313 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/81740 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=egdaniel@google.com,bsalomon@google.com Change-Id: Ia701e884bfa3799dc73002f892feb2ecafe9da12 Reviewed-on: https://skia-review.googlesource.com/81742 Reviewed-by: Derek Sollenberger <djsollen@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Delete GLBench and subclassesGravatar Brian Salomon2017-12-07
| | | | | | | | Bug: skia:6305 Change-Id: I3b2f2a8898f25d3dd0ec47668895dd4d00668575 Reviewed-on: https://skia-review.googlesource.com/82040 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Remove SkImage deferred texture image data APIs.Gravatar Brian Salomon2017-12-07
| | | | | | | | | | These APIs existed for Chrome. Chrome is no longer using them. Change-Id: I15a5e2f88c7e8d1356188748fc68d4658f6f1849 Reviewed-on: https://skia-review.googlesource.com/81021 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Only look for WinSDK when building _for_ WindowsGravatar Mike Klein2017-12-06
| | | | | | | | | | | (Not when we're merely building _on_ Windows.) CQ_INCLUDE_TRYBOTS=skia.primary:Build-Win-Clang-arm64-Release-Android Change-Id: I7ab7663fcac6e3631ebe82f440927a077d476528 Reviewed-on: https://skia-review.googlesource.com/81483 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Reland "Always use the Win 10 SDK, and optionally detect/use the latest version"Gravatar Brian Osman2017-12-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of 6da1d32c16a0598e9b32a4e5b60f99aca871a399 Original change's description: > Always use the Win 10 SDK, and optionally detect/use the latest version > > For bot toolchain builds, we were already using the Win 10 SDK. Local > 2015 builds were using a strange hybrid of Win 10 and Win 8 SDKs. Now > we always use the Win 10 SDK exclusively. > > This adds two new GN arguments: win_sdk, which points at the top level > Windows 10 SDK directory, and win_sdk_version, which can be used to > pin to a specific version. (Otherwise we use a script to detect the > most recent version). > > Bug: skia: > Change-Id: I5aabb5eb9e7f483e3676b67b50356ddd0421cf7d > Reviewed-on: https://skia-review.googlesource.com/81304 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Brian Osman <brianosman@google.com> Bug: skia: Change-Id: Ide0d6bd3413c4fe7a8bada7d3d32bdba9709d11b Reviewed-on: https://skia-review.googlesource.com/81501 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Revert "Always use the Win 10 SDK, and optionally detect/use the latest version"Gravatar Ravi Mistry2017-12-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 6da1d32c16a0598e9b32a4e5b60f99aca871a399. Reason for revert: Caused Build-Win-Clang-arm64-Release-Android to fail. Eg: https://chromium-swarm.appspot.com/task?id=3a467f1ddd15fb10&refresh=10 Original change's description: > Always use the Win 10 SDK, and optionally detect/use the latest version > > For bot toolchain builds, we were already using the Win 10 SDK. Local > 2015 builds were using a strange hybrid of Win 10 and Win 8 SDKs. Now > we always use the Win 10 SDK exclusively. > > This adds two new GN arguments: win_sdk, which points at the top level > Windows 10 SDK directory, and win_sdk_version, which can be used to > pin to a specific version. (Otherwise we use a script to detect the > most recent version). > > Bug: skia: > Change-Id: I5aabb5eb9e7f483e3676b67b50356ddd0421cf7d > Reviewed-on: https://skia-review.googlesource.com/81304 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Brian Osman <brianosman@google.com> TBR=mtklein@chromium.org,borenet@google.com,bungeman@google.com,brianosman@google.com Change-Id: Id044114fc685d570741e3f5ed003c4be2ffa84a3 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/81500 Reviewed-by: Ravi Mistry <rmistry@google.com> Commit-Queue: Ravi Mistry <rmistry@google.com>
* upgrade SkReadBuffer to always validateGravatar Mike Reed2017-12-06
| | | | | | | | Bug: skia: Change-Id: I054560b66c6cde346d939015326d8547879d2c4b Reviewed-on: https://skia-review.googlesource.com/81160 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Always use the Win 10 SDK, and optionally detect/use the latest versionGravatar Brian Osman2017-12-06
| | | | | | | | | | | | | | | | | For bot toolchain builds, we were already using the Win 10 SDK. Local 2015 builds were using a strange hybrid of Win 10 and Win 8 SDKs. Now we always use the Win 10 SDK exclusively. This adds two new GN arguments: win_sdk, which points at the top level Windows 10 SDK directory, and win_sdk_version, which can be used to pin to a specific version. (Otherwise we use a script to detect the most recent version). Bug: skia: Change-Id: I5aabb5eb9e7f483e3676b67b50356ddd0421cf7d Reviewed-on: https://skia-review.googlesource.com/81304 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* add SkVptr()Gravatar Mike Klein2017-12-06
| | | | | | | | | | I was wondering how feasible using this to make downcasts safe would be. These tests would need to build and pass on all our bots, at least. Change-Id: I1753ba58841bf6c17d6ac3af7374518356e1bb05 Reviewed-on: https://skia-review.googlesource.com/81180 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Add win_toolchain_version to support MSVC 2017 UpdatesGravatar Brian Osman2017-12-06
| | | | | | | | | | | | | | | | | | To make this simpler in the future, add a python script that finds the most recent 2017 toolchain, and use that. If/when we update the bot toolchain, this will be even more helpful, because the Chromium toolchain isn't perfectly in sync with the general update channel, so people are likely to have a newer/older release locally. Note that explicitly setting win_toolchain_version in your GN args suppresses the python script, so you can choose to build with whatever version you need. Bug: skia: Change-Id: Iaf6d0dd9be2623472118c3ad27b20023a205d67c Reviewed-on: https://skia-review.googlesource.com/81162 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* add serial procs to picturesGravatar Mike Reed2017-12-05
| | | | | | | | | Bug: skia:7380 Change-Id: Ic1b7e437316c7913711cf5cb119e3fe904cd2c05 Reviewed-on: https://skia-review.googlesource.com/76980 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Reland "Hide SkEncodedInfo"Gravatar Leon Scroggins III2017-12-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially reverts commit 1793e7bb46c1f9d430c1a699a1c3d3168159b659. Hide SkEncodedInfo Bug: skia:7353 Bug: skia:6839 This contains information that is not necessary for clients to know. The Color enum tells the number of components in the input, but this is only interesting internally (to the SkSwizzler). Similarly, the Alpha enum differs from SkAlphaType in that it has kBinary instead of kPremul. This is useful information only internally for determining whether the SkColorSpaceXform needs to premultiply. The bitsPerComponent is potentially useful for a client; Android (in SkAndroidCodec) uses it to determine the SkColorType. Rather than exposing bitsPerComponent, make SkAndroidCodec a friend so it can access the SkEncodedInfo. A future change will change SkCodec to recommend F16 for bitsPerComponent > 8, but that will be more involved; it was the reason for the revert of this CL. Switch conversionSupported to use an SkColorType, which is enough info. Replace the SkEncodedInfo::Alpha field on SkCodec::FrameInfo with an SkAlphaType. SkCodec still needs an SkEncodedInfo, so move its header (which is already not SK_API) to include/private. TBR=mtklein@chromium.org,reed@google.com Change-Id: I928b1f55317602cb37d29da63b53026c8d139cee Reviewed-on: https://skia-review.googlesource.com/80860 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Add analytic clip FPs that read from the CCPR atlasGravatar Chris Dalton2017-12-05
| | | | | | | | Bug: skia:7190 Change-Id: Ie31d368f52910e6917efdeb1b024370b06fc11ee Reviewed-on: https://skia-review.googlesource.com/77160 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* remove mips support and botsGravatar Mike Klein2017-12-05
| | | | | | | | | | | The NDK has deprecated mips and mips64: https://developer.android.com/ndk/guides/abis.html Might as well clean this up now while I remember. Change-Id: Ie4b2334c75208082067cc16fe355d0349c7e0904 Reviewed-on: https://skia-review.googlesource.com/80560 Reviewed-by: Derek Sollenberger <djsollen@google.com>
* Revert "Hide SkEncodedInfo"Gravatar Leon Scroggins2017-12-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c6f7a4ffa9522159efc42f7c948bba5e66bb8844. Reason for revert: Causing differences in Gold, stemming from the fact that this changes the recommended SkImageInfo for 16 bits-per-component PNG from N32 to F16. - an F16 bitmap already png-encodes to a 16 bits-per-component PNG, but it does not encode a linear colorspace (possibly a bug?). when we decode this PNG using getInfo(), it fails because it has an F16 color type and non-linear colorspace. (In the encode-srgb-png gm, this results in blank results for F16.) We could correct this on the encoder side, but it seems possible that a 16 bits-per-component PNG could be encoded with a different color space. In that case, we'd want SkCodec to recommend F16/SRGBLinear, but I think we'd want the SkCodec to store the encoded SkColorSpace so that we can Xform between the two. Currently SkCodec only stores one color space, so that will require a refactor. - When decoding 16-bits-per-component PNGs, we are now decoding them to F16. This shows differences in Gold. The srgb/gpu results now look more like F16. I think this is fine. Original change's description: > Hide SkEncodedInfo > > Bug: skia:7353 > Bug: skia:6839 > > This contains information that is not necessary for clients to know. The > Color enum tells the number of components in the input, but this is only > interesting internally (to the SkSwizzler). > > Similarly, the Alpha enum differs from SkAlphaType in that it has > kBinary instead of kPremul. This is useful information only internally > for determining whether the SkColorSpaceXform needs to premultiply. > > The bitsPerComponent is potentially useful for a client; Android (in > SkAndroidCodec) uses it to determine the SkColorType. Rather than > exposing bitsPerComponent, use it to make the same decision that Android > would have made - 16 bits per component means to set the info to F16. Add > a test that computeOutputColorType behaves as expected. > > Switch conversionSupported to use an SkColorType, which is enough info. > > Replace the SkEncodedInfo::Alpha field on SkCodec::FrameInfo with an > SkAlphaType. > > SkCodec still needs an SkEncodedInfo, so move its header (which is > already not SK_API) to include/private. > > Change-Id: Ie2cf11339bf999ebfd4390c0f448f7edd6feabda > Reviewed-on: https://skia-review.googlesource.com/79260 > Reviewed-by: Mike Reed <reed@google.com> > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Leon Scroggins <scroggo@google.com> TBR=mtklein@chromium.org,scroggo@google.com,reed@google.com Change-Id: I0c5dd1461e1b70d1e55349a8e7ee6b029c3f556e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7353, skia:6839 Reviewed-on: https://skia-review.googlesource.com/80660 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Hide SkEncodedInfoGravatar Leon Scroggins III2017-12-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: skia:7353 Bug: skia:6839 This contains information that is not necessary for clients to know. The Color enum tells the number of components in the input, but this is only interesting internally (to the SkSwizzler). Similarly, the Alpha enum differs from SkAlphaType in that it has kBinary instead of kPremul. This is useful information only internally for determining whether the SkColorSpaceXform needs to premultiply. The bitsPerComponent is potentially useful for a client; Android (in SkAndroidCodec) uses it to determine the SkColorType. Rather than exposing bitsPerComponent, use it to make the same decision that Android would have made - 16 bits per component means to set the info to F16. Add a test that computeOutputColorType behaves as expected. Switch conversionSupported to use an SkColorType, which is enough info. Replace the SkEncodedInfo::Alpha field on SkCodec::FrameInfo with an SkAlphaType. SkCodec still needs an SkEncodedInfo, so move its header (which is already not SK_API) to include/private. Change-Id: Ie2cf11339bf999ebfd4390c0f448f7edd6feabda Reviewed-on: https://skia-review.googlesource.com/79260 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Fix ANGLE build with extended clang warningsGravatar Chris Dalton2017-12-04
| | | | | | | | | | | Add newline-eof to the list of ignroed warnings. Fix shadowed fields. Bug: skia: Change-Id: I4985ce2495194a7f805af98c4f42c44691086e36 Reviewed-on: https://skia-review.googlesource.com/79681 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* turn on extended Clang warnings on Windows tooGravatar Chris Dalton2017-12-04
| | | | | | | | | | Plus some small rearrangements of the various warning lists. Change-Id: Ied58f940341d69ddab971a529fd01b1e96b65641 Reviewed-on: https://skia-review.googlesource.com/67720 Commit-Queue: Chris Dalton <csmartdalton@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Add unit test for SkDeferredDisplayLists (take 2)Gravatar Robert Phillips2017-12-04
| | | | | | | Change-Id: I76a4c77d5b9418cb7fe677bd55ba32a2e336924d Reviewed-on: https://skia-review.googlesource.com/79820 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Merge UBSAN_float_cast_overflow into ASAN.Gravatar Ben Wagner2017-12-04
| | | | | | | | | | | | The new check was a different config while we fixed the errors. Most errors are now fixed, and merging these will help with running both on the CQ. No-Try: true Change-Id: I5804ecea84a8dbbaacf6a4ea96e2af9505641d49 Reviewed-on: https://skia-review.googlesource.com/79323 Commit-Queue: Ben Wagner <benjaminwagner@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Revert "Add unit test for SkDeferredDisplayLists"Gravatar Robert Phillips2017-12-04
| | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8458a2807b4a7220c9849f8032dc611438818641. Reason for revert: ?? Original change's description: > Add unit test for SkDeferredDisplayLists > > Change-Id: I015094145cb0af6cfe368c570a5d5280c11c8f28 > Reviewed-on: https://skia-review.googlesource.com/78660 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: Iec3abb18d3ed41fcfbec72bc2de14603f659f8ce No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/79720 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add unit test for SkDeferredDisplayListsGravatar Robert Phillips2017-12-04
| | | | | | | Change-Id: I015094145cb0af6cfe368c570a5d5280c11c8f28 Reviewed-on: https://skia-review.googlesource.com/78660 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Revert "Fix rendering of drrects with small circular inner rrects.""Gravatar Brian Salomon2017-12-01
| | | | | | | | | This reverts commit ec727c981dd7ed83e98c7713c2828c6ab144937b. Change-Id: Id3164619016d58b2bcc0b8af606215653f553fce Reviewed-on: https://skia-review.googlesource.com/79422 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Revert "Fix rendering of drrects with small circular inner rrects."Gravatar Brian Salomon2017-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 096074af2c6fcbf622f0a42b2f7c56d0c66fbd80. Reason for revert: failing processor validation test Original change's description: > Fix rendering of drrects with small circular inner rrects. > > Previously when the inner rrect was a circle with a radius of 1 we would > cause a inf * 0 in the shader which would lead to the shape not rendering. > > This change also makes concentric circle drrects draw as stroked circles. > > bug: chromium:789262 > > Change-Id: I6efbe3fdde25d6c4e031c7412d83df009afe014a > Reviewed-on: https://skia-review.googlesource.com/79141 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Robert Phillips <robertphillips@google.com> TBR=bsalomon@google.com,robertphillips@google.com Change-Id: Ie9b9c81380c0f98a6fc6c6dc350ec56402c4ff2b No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/79264 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Fix rendering of drrects with small circular inner rrects.Gravatar Brian Salomon2017-12-01
| | | | | | | | | | | | | | Previously when the inner rrect was a circle with a radius of 1 we would cause a inf * 0 in the shader which would lead to the shape not rendering. This change also makes concentric circle drrects draw as stroked circles. bug: chromium:789262 Change-Id: I6efbe3fdde25d6c4e031c7412d83df009afe014a Reviewed-on: https://skia-review.googlesource.com/79141 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Try to bypass the false-positive clang thread analysis warningGravatar Yuqian Li2017-12-01
| | | | | | | | | | | | | | | | This is identical to 70221 except for 3 lines inside SkFlexibleTaskGroup2D::work to bypass the false-positive warning. We cannot reproduce the error the android roller generated so we'll have to try and see. The detailed warning can be found in: https://skia-review.googlesource.com/c/skia/+/78720 TBR: mtklein@google.com Bug: skia: Change-Id: I3e2f414581dbd1398482cf45cf4f43eaf0535651 Reviewed-on: https://skia-review.googlesource.com/79321 Commit-Queue: Yuqian Li <liyuqian@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Add comments explaining use of "-Wno-over-aligned"Gravatar Leon Scroggins III2017-12-01
| | | | | | | | | | Follow up to I04a5b013dd0ec8f162046388e89cf08cb9476bab Change-Id: I5ab77564fe867ad1fef48fb322ff75869c025776 Reviewed-on: https://skia-review.googlesource.com/79040 Commit-Queue: Leon Scroggins <scroggo@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Revert "Renaming and refactoring to prepare for init-once threaded backend"Gravatar Leon Scroggins2017-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 07a42411f8d4a00d992bafdd18f2183f58c4547a. Reason for revert: This looks to be breaking the Android roll. See https://googleplex-android-review.googlesource.com/c/platform/external/skia/+/3295488 external/skia/src/core/SkTaskGroup2D.cpp:73:28: error: releasing mutex 'rowData.fMutex' that was not held [-Werror,-Wthread-safety-analysis] rowData.fMutex.unlock(); Original change's description: > Renaming and refactoring to prepare for init-once threaded backend > > Bug: skia: > Change-Id: I39b1d73b612a9c133847dd7361d634a0351659f1 > Reviewed-on: https://skia-review.googlesource.com/70221 > Reviewed-by: Herb Derby <herb@google.com> > Commit-Queue: Yuqian Li <liyuqian@google.com> TBR=mtklein@google.com,herb@google.com,liyuqian@google.com Change-Id: I701e6c62f6f437a6a285953b45b2e58cf7f0b6e5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/78720 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* Add "-Wno-over-aligned" to Android.bp for x86 AndroidGravatar Leon Scroggins III2017-11-30
| | | | | | | | | | | | | | | | | | | | Speculative fix for Android roll, broken here: ag/3293969. We used to make an exception for this warning on Skia builds, until I disabled it in https://skia-review.googlesource.com/c/skia/+/60530, because it no longer seemed necessary: Turning on most warnings without this exception in Android framework builds, as I did in https://skia-review.googlesource.com/55703 did not break Android. I'm not sure why Skia's waterfall did not show the problem, but this should fix it on the Android framework side. TBR=mtklein@chromium.org Change-Id: I04a5b013dd0ec8f162046388e89cf08cb9476bab Reviewed-on: https://skia-review.googlesource.com/78580 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>