aboutsummaryrefslogtreecommitdiffhomepage
path: root/gyp
Commit message (Collapse)AuthorAge
* DM: also run benches once.Gravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | | | | | | | | | Also: - make GrMemoryPoolBenches threadsafe - some tweaks to various DM code - rename GM::shortName() to getName() to match benches and tests On my desktop, (289 GMs, 617 benches) x 4 configs, 227 tests takes 46s in Debug, 14s in Release. (Still minutes faster than running tests && bench && gm.) GPU singlethreading is definitely the limiting factor again; going to reexamine whether that's helpful to thread it again. BUG=skia: R=reed@google.com, bsalomon@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/178473006 git-svn-id: http://skia.googlecode.com/svn/trunk@13603 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Revert of Add getReducedClipStack to lua canvas ↵Gravatar bsalomon@google.com2014-02-26
| | | | | | | | | | | | (https://codereview.chromium.org/180283004/)" This reverts commit efded03a38d6147caaf2d951638d27fdd47eed64. Fixes builds Review URL: https://codereview.chromium.org/181903002 git-svn-id: http://skia.googlecode.com/svn/trunk@13599 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Add getReducedClipStack to lua canvas ↵Gravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/180283004/) Reason for revert: breaking a bunch of builds Original issue's description: > Add getReducedClipStack to lua canvas > > Committed: http://code.google.com/p/skia/source/detail?r=13594 R=reed@google.com TBR=reed@google.com NOTREECHECKS=true NOTRY=true Author: bsalomon@google.com Review URL: https://codereview.chromium.org/181653004 git-svn-id: http://skia.googlecode.com/svn/trunk@13597 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix SampleApp buildGravatar bsalomon@google.com2014-02-26
| | | | | | | | TBR=reed@google.com Review URL: https://codereview.chromium.org/181833002 git-svn-id: http://skia.googlecode.com/svn/trunk@13596 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add getReducedClipStack to lua canvasGravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | R=reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/180283004 git-svn-id: http://skia.googlecode.com/svn/trunk@13594 2bbb7eff-a529-9590-31e7-b0007b416f81
* Let DM run unit tests.Gravatar commit-bot@chromium.org2014-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | - refactor GYPs and a few flags - make GPU tests grab a thread-local GrContextFactory when needed as we do in DM for GMs - add a few more UI features to make DM more like tests I believe this makes the program 'tests' obsolete. It should be somewhat faster to run the two sets together than running the old binaries serially: - serial: tests 20s (3m18s CPU), dm 21s (3m01s CPU) - together: 27s (6m21s CPU) Next up is to incorporate benches. I'm only planning there on a single-pass sanity check, so that won't obsolete the program 'bench' just yet. Tested: out/Debug/tests && out/Debug/dm && echo ok BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=13586 R=reed@google.com, bsalomon@google.com, mtklein@google.com, tfarina@chromium.org Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/178273002 git-svn-id: http://skia.googlecode.com/svn/trunk@13592 2bbb7eff-a529-9590-31e7-b0007b416f81
* Check in today's exhaustive blend experiments.Gravatar commit-bot@chromium.org2014-02-25
| | | | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/179733005 git-svn-id: http://skia.googlecode.com/svn/trunk@13588 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Let DM run unit tests. (https://codereview.chromium.org/178273002/)Gravatar commit-bot@chromium.org2014-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reason for revert: broke tests Original issue's description: > Let DM run unit tests. > - refactor GYPs and a few flags > - make GPU tests grab a thread-local GrContextFactory when needed as we do in DM for GMs > - add a few more UI features to make DM more like tests > > I believe this makes the program 'tests' obsolete. > > It should be somewhat faster to run the two sets together than running the old binaries serially: > - serial: tests 20s (3m18s CPU), dm 21s (3m01s CPU) > - together: 27s (6m21s CPU) > > Next up is to incorporate benches. I'm only planning there on a single-pass sanity check, so that won't obsolete the program 'bench' just yet. > > Tested: out/Debug/tests && out/Debug/dm && echo ok > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=13586 R=bsalomon@google.com, mtklein@google.com, tfarina@chromium.org, mtklein@chromium.org TBR=bsalomon@google.com, mtklein@chromium.org, mtklein@google.com, tfarina@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Author: reed@google.com Review URL: https://codereview.chromium.org/179403010 git-svn-id: http://skia.googlecode.com/svn/trunk@13587 2bbb7eff-a529-9590-31e7-b0007b416f81
* Let DM run unit tests.Gravatar commit-bot@chromium.org2014-02-25
| | | | | | | | | | | | | | | | | | | | | | | | - refactor GYPs and a few flags - make GPU tests grab a thread-local GrContextFactory when needed as we do in DM for GMs - add a few more UI features to make DM more like tests I believe this makes the program 'tests' obsolete. It should be somewhat faster to run the two sets together than running the old binaries serially: - serial: tests 20s (3m18s CPU), dm 21s (3m01s CPU) - together: 27s (6m21s CPU) Next up is to incorporate benches. I'm only planning there on a single-pass sanity check, so that won't obsolete the program 'bench' just yet. Tested: out/Debug/tests && out/Debug/dm && echo ok BUG=skia: R=reed@google.com, bsalomon@google.com, mtklein@google.com, tfarina@chromium.org Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/178273002 git-svn-id: http://skia.googlecode.com/svn/trunk@13586 2bbb7eff-a529-9590-31e7-b0007b416f81
* allow skia flags to be specified in a skia file, but reference by chrome's ↵Gravatar reed@google.com2014-02-25
| | | | | | | | | | | | skia_common.gypi in support of https://codereview.chromium.org/180083002/ which will land after this CL is visible in Chrome R=bungeman@google.com Review URL: https://codereview.chromium.org/180063003 git-svn-id: http://skia.googlecode.com/svn/trunk@13582 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix valgrind bot errors introduced in f84722e4777.Gravatar commit-bot@chromium.org2014-02-25
| | | | | | | | | | | | NOTREECHECKS=true NOTRY=true R=robertphillips@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/179843003 git-svn-id: http://skia.googlecode.com/svn/trunk@13580 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-02-25
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13576 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix ChromeOS build broken in f84722e4777Gravatar commit-bot@chromium.org2014-02-24
| | | | | | | | | | | | NOTREECHECKS=true NOTRY=true R=scroggo@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/178413003 git-svn-id: http://skia.googlecode.com/svn/trunk@13571 2bbb7eff-a529-9590-31e7-b0007b416f81
* Build Skia for a bare-bones embedded Linux system.Gravatar commit-bot@chromium.org2014-02-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Motivation: I have downloaded a barebones Linux system built for 64-bit ARM from linaro.org and a ARMv8 Foundation Model from arm.com to run it on. This will let us build and test Skia on ARM64 before we aquire hardware to allow that. This CL introduces the changes to the build files necessary to build Skia on a barebones embedded Linux system. I tested it with the aarch64 GCC compiler provided by linaro.org. Changes: Add a "barelinux" target_os for the DEPS file. Add an optional git download of zlib. Changes to gyp files: these changes abstract out libpng, libz, and giflib so that images.gyp doesn't know whether they are static or dynamically linked. I also add the variables skia_giflib_static, skia_libpng_static, skia_zlib_static, and skia_freetype_static, all of which default to false but when set to true will override the behavior of the giflib, libpng, zlib, and freetype build targets to require them to build statically. Also, the skia_no_fontconfig variable turns off use of the fontconfig service. Scripts in platform_tools/barelinux/bin: arm64_download - this script downloads the Linaro's ARMv8 Aarch64 toolchain and minimal embedded Linux system as well as ARM's foundation model. The required files are mirrored on Google Cloud. The script then starts a emulated Arm64 Linux system in the background. After the boot is complete, you can SSH into the system at port 8022 via user@localhost. The SSH key will be downloaded into the working directery as well. download_deps - Uses gclient to download Skia's dependencies for a bare Linux system (the normal dependecies plus giflib, libpng, and zlib.) barelinux_make - this script builds a version of skia that does not depend on external libraries, perfect for putting in an embedded system running Linux. Assumes you have run download_deps first. To test: To build a barelinux target, use the barelinux_make script. To build for a armv8 system: skia_arch_type=arm arm_neon=0 armv7=1 armv8=1 arm_thumb=0 skia_arch_width=64 and set the CC and CXX variables to point at the cross-compiler downloaded by arm64_download. R=djsollen@google.com, scroggo@google.com, borenet@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/152513007 git-svn-id: http://skia.googlecode.com/svn/trunk@13570 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix warnings on Ubuntu13Gravatar commit-bot@chromium.org2014-02-21
| | | | | | | | | | | | | | | | | | | Turn off warnings when building libwebp. Turn off warnings when building libjpeg. Initialize some variables immediately. NOTRY=True NOTREECHECKS=True BUG=skia:2213 BUG=skia:2214 R=bsalomon@google.com, halcanary@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/175383002 git-svn-id: http://skia.googlecode.com/svn/trunk@13545 2bbb7eff-a529-9590-31e7-b0007b416f81
* add SkCanvas::drawDRRectGravatar commit-bot@chromium.org2014-02-21
| | | | | | | | | | | BUG=skia: R=bsalomon@google.com, robertphillips@google.com, humper@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/174243003 git-svn-id: http://skia.googlecode.com/svn/trunk@13524 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix NaCl build for pepper_32Gravatar commit-bot@chromium.org2014-02-21
| | | | | | | | | | | BUG=skia: R=rmistry@google.com, djsollen@google.com Author: borenet@google.com Review URL: https://codereview.chromium.org/171233015 git-svn-id: http://skia.googlecode.com/svn/trunk@13523 2bbb7eff-a529-9590-31e7-b0007b416f81
* Re-enable imageresizetiled, but skip it in tilegrid and rtree.Gravatar senorblanco@chromium.org2014-02-20
| | | | | | | | | | | | | | | | | | | This change makes kSkipTiled_Flag also skip --tileGrid and --rtree. All GMs which were passing kSkipTiled_Flag before were also passing kSkipPicture_Flag, which also skips tilegrid and rtree, so this should have no effect on them, but provides a smaller hammer for GMs which still want to test picture playback, but not tiling. The exception is magnifier, which was passing only kSkipTiled_Flag, but magnifier is an odd beast and not web-exposed, so I'm not worried about reducing its coverage slightly. R=scroggo@google.com BUG=skia: Review URL: https://codereview.chromium.org/165723009 git-svn-id: http://skia.googlecode.com/svn/trunk@13514 2bbb7eff-a529-9590-31e7-b0007b416f81
* Disable imageresizetiled GM for now due to rtree and tilegrid failures.Gravatar senorblanco@chromium.org2014-02-19
| | | | | | | | | TBR=scroggo@google.com BUG=skia: Review URL: https://codereview.chromium.org/172793006 git-svn-id: http://skia.googlecode.com/svn/trunk@13507 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix CTM application in SkResizeImagefilter; implement bounds traversals.Gravatar senorblanco@chromium.org2014-02-19
| | | | | | | | | | | | | | | | | SkResizeImageFilter resizes all the pixels from its input (subject to the input's crop rect), but the offset to be applied was incorrect. It should take the CTM into account, so that the origin of the resize is the world space origin, unaffected by whatever clipping is applied. New GM imageresizetiled exercises the behaviour under impl-side-painting-like conditions, and existing GMs now have resize cases added. R=reed@google.com, robertphillips@google.com Review URL: https://codereview.chromium.org/168283006 git-svn-id: http://skia.googlecode.com/svn/trunk@13506 2bbb7eff-a529-9590-31e7-b0007b416f81
* Analytic rrect clip for cicular corners, radius >= 0.5Gravatar commit-bot@chromium.org2014-02-19
| | | | | | | | | | | BUG=skia:2181 R=robertphillips@google.com, jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/171413004 git-svn-id: http://skia.googlecode.com/svn/trunk@13498 2bbb7eff-a529-9590-31e7-b0007b416f81
* Small fixes for auto generating Android.mkGravatar commit-bot@chromium.org2014-02-17
| | | | | | | | | | | | | | | | | | Turn off -Wno-c++11-extensions for Android. The Android framework does not support this flag. Using it gives a bunch of warnings when building, so remove it. Remove skia_chrome_utils from framework. They are experimental and not used by Android. BUG=skia:1975 R=djsollen@google.com, robertphillips@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/164793002 git-svn-id: http://skia.googlecode.com/svn/trunk@13475 2bbb7eff-a529-9590-31e7-b0007b416f81
* Gyp flag to disable inlining.Gravatar commit-bot@chromium.org2014-02-13
| | | | | | | | | | | | | | | | | To turn off all inlining, rebuild after running the command $ GYP_DEFINES=skia_disable_inlining=1 ./gyp_skia Provides an initial value in one GM to avoid an uninitialized variable warning. BUG=skia:2126 R=scroggo@google.com, mtklein@google.com, tomhudson@google.com Author: tomhudson@chromium.org Review URL: https://codereview.chromium.org/163363004 git-svn-id: http://skia.googlecode.com/svn/trunk@13437 2bbb7eff-a529-9590-31e7-b0007b416f81
* add peekPixels to SkCanvas and SkSurfaceGravatar commit-bot@chromium.org2014-02-13
| | | | | | | | | | | | | | fix reference to SkBaseDevice, which was only a problem in no-gpu build This reverts commit 4fa44a6bf73891b21917fb90d02beef9143bffa3. R=reed@google.com Author: reed@chromium.org Review URL: https://codereview.chromium.org/163603003 git-svn-id: http://skia.googlecode.com/svn/trunk@13432 2bbb7eff-a529-9590-31e7-b0007b416f81
* Update directions and lib paths for ninja.Gravatar commit-bot@chromium.org2014-02-13
| | | | | | | | | | | BUG=skia: R=robertphillips@google.com Author: jcgregorio@google.com Review URL: https://codereview.chromium.org/161163003 git-svn-id: http://skia.googlecode.com/svn/trunk@13429 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of add peekPixels to SkCanvas and SkSurface ↵Gravatar commit-bot@chromium.org2014-02-13
| | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/161733002/) Reason for revert: compile issues with gm/xfermodes3 Original issue's description: > add peekPixels to SkCanvas and SkSurface > > clone of https://codereview.chromium.org/159723006/ > > Committed: https://code.google.com/p/skia/source/detail?r=13427 R=jvanverth@google.com NOTREECHECKS=true NOTRY=true Author: reed@chromium.org Review URL: https://codereview.chromium.org/163823002 git-svn-id: http://skia.googlecode.com/svn/trunk@13428 2bbb7eff-a529-9590-31e7-b0007b416f81
* add peekPixels to SkCanvas and SkSurfaceGravatar mike@reedtribe.org2014-02-13
| | | | | | | | clone of https://codereview.chromium.org/159723006/ Review URL: https://codereview.chromium.org/161733002 git-svn-id: http://skia.googlecode.com/svn/trunk@13427 2bbb7eff-a529-9590-31e7-b0007b416f81
* Collapse matrix & clip stack in PictureRecordGravatar robertphillips@google.com2014-02-11
| | | | | | | | https://codereview.chromium.org/137093004/ git-svn-id: http://skia.googlecode.com/svn/trunk@13402 2bbb7eff-a529-9590-31e7-b0007b416f81
* Split opts_check_arm.cpp into per-class filesGravatar commit-bot@chromium.org2014-02-10
| | | | | | | | | | | | | Signed-off-by: Kévin PETIT <kevin.petit@arm.com> BUG=skia: R=djsollen@google.com Author: kevin.petit@arm.com Review URL: https://codereview.chromium.org/157863003 git-svn-id: http://skia.googlecode.com/svn/trunk@13381 2bbb7eff-a529-9590-31e7-b0007b416f81
* add inital gm for colorfiltersGravatar reed@google.com2014-02-06
| | | | | | | | | BUG=skia: R=djsollen@google.com Review URL: https://codereview.chromium.org/140393005 git-svn-id: http://skia.googlecode.com/svn/trunk@13346 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add test harness for matrix/clip state collapsingGravatar robertphillips@google.com2014-02-06
| | | | | | | | https://codereview.chromium.org/133003006/ git-svn-id: http://skia.googlecode.com/svn/trunk@13340 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement correct clipping for image filters.Gravatar senorblanco@chromium.org2014-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | Image filters in Skia currently clip the size of the the offscreen bitmap used for filtering to the device clip bounds. This means that any pixel-moving filter (e.g., blur) has edge artifacts at the clip boundaries. This is problematic for tiling, where a single SkPicture is played back with a clip set to the tile boundaries. By implementing the onFilterBounds() traversal, and using it in saveLayer() when a filter is present, we can clip the layer to the expanded clip rect. Note that this requires that the traversal be performed in reverse as compared to computeFastBounds(). (It's also done in device space, unlike computeFastBounds()). New test imagefiltersclipped tests pixel-moving filters when clipped by various clip rects. New test imageblurtiled tests tiled (compositor-style) rendering of blurred text. There should be no artifacts at the tile boundaries. BUG=337831 R=reed@google.com Review URL: https://codereview.chromium.org/23011012 git-svn-id: http://skia.googlecode.com/svn/trunk@13323 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reland "Gyp file changes for the android framework."Gravatar scroggo@google.com2014-02-05
| | | | | | | | | | | | | | Relands https://codereview.chromium.org/153093003/, which was reverted with https://skia.googlesource.com/skia.git/+/eb6295044b97db05ec40625dcebc2459b2a38a98 This reverts commit 6b32be1402eb6c549d5ba1db71860e24f9de2991. BUG=skia:1975 R=djsollen@google.com Review URL: https://codereview.chromium.org/154053002 git-svn-id: http://skia.googlecode.com/svn/trunk@13321 2bbb7eff-a529-9590-31e7-b0007b416f81
* Gyp file changes for the android framework.Gravatar scroggo@google.com2014-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Split off from https://codereview.chromium.org/140503007/. The eventual goal is to create our Android.mk from gyp. This patch adds an option for skia_android_framework with the right settings. The follow-up (https://codereview.chromium.org/140503007/) will use scripts to create the final makefile. gyp/android_deps.gyp: Use different dependencies for the framework than for building Skia normally. gyp/android_framework_lib.gyp: Like skia_lib, specifies the minimum needed for building Skia, in this case for the framework. gyp/common_conditions.gypi: Add settings specific to skia_android_framework. In some cases this means turning off flags and defines. gyp/common.gypi Turn off SK_DEBUG and SK_DEVELOPER when building for the framework. This allows the framework to create a single makefile which can be modified to add SK_DEBUG and SK_DEVELOPER as desired. gyp/common_variables.gypi: Add skia_android_framework. gyp/core.gyp: Don't depend on cpufeatures, and add the cutils library for skia_android_framework. gyp/freetype.gyp: skia_android_framework-specific options: Don't include freetype_static as a dependency. Include the proper folders. Include the android library. gyp/images.gyp: Don't export libjpeg as a dependency for targets that include images for the framework. Also reorder image decoders to match the Android order, leaving our most commonly used ones last (and therefore first in the chain for trying them). gyp/libwebp.gyp: Use the system webp when building for the Android framework. Specify the correct settings for the framework. gyp/opts.gyp: Specify a default set of files to compile when there are no possible optimizations. gyp/pdf.gyp: Add dependencies for Android framework. gyp/zlib.gyp: Include the zlib folder, and undefine SK_ZLIB_INCLUDE. BUG=skia:1975 R=djsollen@google.com Committed: https://code.google.com/p/skia/source/detail?r=13298 Review URL: https://codereview.chromium.org/153093003 git-svn-id: http://skia.googlecode.com/svn/trunk@13304 2bbb7eff-a529-9590-31e7-b0007b416f81
* Gyp file changes for the android framework.Gravatar scroggo@google.com2014-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Split off from https://codereview.chromium.org/140503007/. The eventual goal is to create our Android.mk from gyp. This patch adds an option for skia_android_framework with the right settings. The follow-up (https://codereview.chromium.org/140503007/) will use scripts to create the final makefile. gyp/android_deps.gyp: Use different dependencies for the framework than for building Skia normally. gyp/android_framework_lib.gyp: Like skia_lib, specifies the minimum needed for building Skia, in this case for the framework. gyp/common_conditions.gypi: Add settings specific to skia_android_framework. In some cases this means turning off flags and defines. gyp/common.gypi Turn off SK_DEBUG and SK_DEVELOPER when building for the framework. This allows the framework to create a single makefile which can be modified to add SK_DEBUG and SK_DEVELOPER as desired. gyp/common_variables.gypi: Add skia_android_framework. gyp/core.gyp: Don't depend on cpufeatures, and add the cutils library for skia_android_framework. gyp/freetype.gyp: skia_android_framework-specific options: Don't include freetype_static as a dependency. Include the proper folders. Include the android library. gyp/images.gyp: Don't export libjpeg as a dependency for targets that include images for the framework. Also reorder image decoders to match the Android order, leaving our most commonly used ones last (and therefore first in the chain for trying them). gyp/libwebp.gyp: Use the system webp when building for the Android framework. Specify the correct settings for the framework. gyp/opts.gyp: Specify a default set of files to compile when there are no possible optimizations. gyp/pdf.gyp: Add dependencies for Android framework. gyp/zlib.gyp: Include the zlib folder, and undefine SK_ZLIB_INCLUDE. BUG=skia:1975 R=djsollen@google.com Review URL: https://codereview.chromium.org/153093003 git-svn-id: http://skia.googlecode.com/svn/trunk@13298 2bbb7eff-a529-9590-31e7-b0007b416f81
* Initial QuadTree implementationGravatar commit-bot@chromium.org2014-02-03
| | | | | | | | | | | | | | | | | | In an effort to find a faster bounding box hierarchy than the R-Tree, a QuadTree has been implemented here. For now, the QuadTree construction is generally faster than the R-Tree and the queries are a bit slower, so overall, SKP local tests showed QuadTree performance similar to the R-Tree performance. Tests and bench are included in this cl. At this point, I'd like to be able to commit this in order to more easily use the bots to test multiple configurations and a larger number of SKPs. The R-Tree BBH is still used by default so this change shouldn't affect chromium. BUG=skia: R=junov@chromium.org, junov@google.com, senorblanco@google.com, senorblanco@chromium.org, reed@google.com, sugoi@google.com, fmalita@google.com Author: sugoi@chromium.org Review URL: https://codereview.chromium.org/131343011 git-svn-id: http://skia.googlecode.com/svn/trunk@13282 2bbb7eff-a529-9590-31e7-b0007b416f81
* Allow GMs to be used as benchmarks. Make convex_poly_clip opt in.Gravatar commit-bot@chromium.org2014-02-03
| | | | | | | | | | R=reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/151843002 git-svn-id: http://skia.googlecode.com/svn/trunk@13279 2bbb7eff-a529-9590-31e7-b0007b416f81
* Split GrUnitTests.cpp into two separate unit tests.Gravatar tfarina@chromium.org2014-01-31
| | | | | | | | | | | | | GrUnitTests is too generic. Instead we split this file between the two APIs being tested there, GrTBSearch and GrBinHashKey. BUG=None TEST=tests -m GrTBSearchTest && tests -m GrBinHashKeyTest R=brian@thesalomons.net, robertphillips@google.com Review URL: https://codereview.chromium.org/150943002 git-svn-id: http://skia.googlecode.com/svn/trunk@13273 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix bad gyp file moveGravatar commit-bot@chromium.org2014-01-31
| | | | | | | | | | | BUG=skia: R=robertphillips@google.com Author: humper@google.com Review URL: https://codereview.chromium.org/151353004 git-svn-id: http://skia.googlecode.com/svn/trunk@13264 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add GM with convex polygon clipsGravatar commit-bot@chromium.org2014-01-31
| | | | | | | | | | | BUG=skia:2051 R=reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/136563004 git-svn-id: http://skia.googlecode.com/svn/trunk@13262 2bbb7eff-a529-9590-31e7-b0007b416f81
* initial import of Chrome's trace_event into skia frameworkGravatar commit-bot@chromium.org2014-01-31
| | | | | | | | | | | | | | | | | | | | | | | This patch includes a modified version of Chrome's trace_event.h, which provides tracing macros that can easily integrate into the about://tracing framework. Currently the macros link to a default implementation of the (narrow) tracing class SkDefaultEventTracer which does nothing; next step will be to have Chrome subclass the SkEventTracer with a shim that bolts Skia's trace events to its own, allowing Skia's trace events to show up in about://tracing. I've verified that this file builds properly, and when I added a simple scoped TRACE_EVENT0 to SkCanvas::drawRect, along with some debug prints in the NOP implementation of tracing, I saw what I expected printed to the screen. BUG=skia: R=nduca@chromium.org, reed@google.com, mtklein@google.com, bsalomon@google.com Author: humper@google.com Review URL: https://codereview.chromium.org/149563004 git-svn-id: http://skia.googlecode.com/svn/trunk@13256 2bbb7eff-a529-9590-31e7-b0007b416f81
* Port SkBase64 test to our test driver.Gravatar tfarina@chromium.org2014-01-30
| | | | | | | | | | BUG=None TESTS=tests --match SkBase64Test R=mtklein@google.com, reed@google.com Review URL: https://codereview.chromium.org/132233060 git-svn-id: http://skia.googlecode.com/svn/trunk@13254 2bbb7eff-a529-9590-31e7-b0007b416f81
* Refactor read and write buffers.Gravatar commit-bot@chromium.org2014-01-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eliminates SkFlattenable{Read,Write}Buffer, promoting SkOrdered{Read,Write}Buffer a step each in the hierarchy. What used to be this: SkFlattenableWriteBuffer -> SkOrderedWriteBuffer SkFlattenableReadBuffer -> SkOrderedReadBuffer SkFlattenableReadBuffer -> SkValidatingReadBuffer is now SkWriteBuffer SkReadBuffer -> SkValidatingReadBuffer Benefits: - code is simpler, names are less wordy - the generic SkFlattenableFooBuffer code in SkPaint was incorrect; removed - write buffers are completely devirtualized, important for record speed This refactoring was mostly mechanical. You aren't going to find anything interesting in files with less than 10 lines changed. BUG=skia: R=reed@google.com, scroggo@google.com, djsollen@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/134163010 git-svn-id: http://skia.googlecode.com/svn/trunk@13245 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add convex polygon rendering effect and GM to test it.Gravatar commit-bot@chromium.org2014-01-30
| | | | | | | | | | | BUG=skia:2051 R=robertphillips@google.com, jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/149683004 git-svn-id: http://skia.googlecode.com/svn/trunk@13242 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move GrTextContext to private interfaceGravatar commit-bot@chromium.org2014-01-30
| | | | | | | | | | | NOTRY=true R=bsalomon@google.com, reed@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/145073005 git-svn-id: http://skia.googlecode.com/svn/trunk@13239 2bbb7eff-a529-9590-31e7-b0007b416f81
* patch from issue 119343003Gravatar commit-bot@chromium.org2014-01-30
| | | | | | | | | | | | | | | compile on 10.6, exclude failing gms Sorry for making another CL; rebasing ToT on the old one ended up with code in a tangled mess; was easier to start over. NOTRY=true R=bsalomon@google.com, epoger@google.com, reed@google.com Author: humper@google.com Review URL: https://codereview.chromium.org/148883005 git-svn-id: http://skia.googlecode.com/svn/trunk@13238 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reland "Unwrap GrRedBlackTree unit test and use REPORTER_ASSERT()."Gravatar tfarina@chromium.org2014-01-29
| | | | | | | | | | BUG=None TEST=tests R=robertphillips@google.com Review URL: https://codereview.chromium.org/137423009 git-svn-id: http://skia.googlecode.com/svn/trunk@13233 2bbb7eff-a529-9590-31e7-b0007b416f81
* ARM Skia NEON patches - 20 - New improved BitmapProcState codeGravatar commit-bot@chromium.org2014-01-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | BitmapProcState: new factorised code This one basically factorises the clamp and repeat transformations with some performance improvements. It has the benefit of being faster, much easier to maintain (nearly three times less code for more work done :-)), and more complete (all persp transformations weren't optimised in the previous version). It also introduces the use of can_truncate_to_fixed_for_decal where useful. The effect on benchmarks ranges from a 5% penalty to a 25% gain on a Cortex-A9 and from a 5% penalty to a 100% gain on a Cortex-A15. Signed-off-by: Kévin PETIT <kevin.petit@arm.com> BUG= R=djsollen@google.com, mtklein@google.com, luisjoseromeroesclusa@hotmail.com, reed@google.com Author: kevin.petit.arm@gmail.com Review URL: https://codereview.chromium.org/23835006 git-svn-id: http://skia.googlecode.com/svn/trunk@13218 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Fast blurred rectangles on GPU ↵Gravatar commit-bot@chromium.org2014-01-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/119343003/) Reason for revert: Two problems: 1. broke compile on Build-Mac10.6-* bots 2. broke GM expectations on many bots We'll need to examine the GM impact before re-landing. I can work with you to do this on Tuesday if you like; just IM or email me. Original issue's description: > Perform the same analytic blur calculation on the GPU that we do on the CPU. Results in significant performance gains when using Ganesh to render drop shadows in Chrome. > > BUG= > > Committed: http://code.google.com/p/skia/source/detail?r=13210 R=bsalomon@google.com, reed@google.com, humper@google.com, rmistry@google.com TBR=bsalomon@google.com, humper@google.com, reed@google.com NOTREECHECKS=true NOTRY=true BUG= Author: epoger@google.com Review URL: https://codereview.chromium.org/140853008 git-svn-id: http://skia.googlecode.com/svn/trunk@13213 2bbb7eff-a529-9590-31e7-b0007b416f81
* Perform the same analytic blur calculation on the GPU that we do on the CPU. ↵Gravatar commit-bot@chromium.org2014-01-27
| | | | | | | | | | | | | Results in significant performance gains when using Ganesh to render drop shadows in Chrome. BUG= R=bsalomon@google.com, reed@google.com Author: humper@google.com Review URL: https://codereview.chromium.org/119343003 git-svn-id: http://skia.googlecode.com/svn/trunk@13210 2bbb7eff-a529-9590-31e7-b0007b416f81