bsalomon [Tue, 5 Aug 2014 14:50:06 +0000 (07:50 -0700)]
Move functions from GrDrawState.h to GrDrawState.cpp and delete unused functions.
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
427713005
krajcevski [Tue, 5 Aug 2014 14:37:26 +0000 (07:37 -0700)]
Add ETC1 format to SkTextureCompressor
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
432143002
bsalomon [Tue, 5 Aug 2014 14:35:56 +0000 (07:35 -0700)]
Don't compare constant color and coverage between GrDrawStates when they are provided by vertex attributes.
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
439273007
mtklein [Tue, 5 Aug 2014 14:19:46 +0000 (07:19 -0700)]
For some reason, starting tests before gms makes DM run much faster.
Must be getting the path ops tests going early helps?
On my desktop,
Release: 50s -> 24s
Debug: 62s -> 40s
BUG=skia:
R=bsalomon@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
435423003
bsalomon [Tue, 5 Aug 2014 14:15:57 +0000 (07:15 -0700)]
Replace op== with CombineIfPossible in GrDrawState.
R=egdaniel@google.com, robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
439853002
rmistry [Tue, 5 Aug 2014 13:55:14 +0000 (06:55 -0700)]
Test new CQ bot
TBR=
(SkipBuildbotRuns)
BUG=skia:
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/
441833004
tomhudson [Tue, 5 Aug 2014 13:36:11 +0000 (06:36 -0700)]
Test and generalize font configuration parser
Add a basic unit test for the Android font configuration parser.
Add a check for the new LMP file format; on detection, switch to a new
(as-yet unwritten) parser.
R=bungeman@google.com, djsollen@google.com, tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/
439813002
mtklein [Tue, 5 Aug 2014 10:51:04 +0000 (03:51 -0700)]
Revert of whitespace change to force a build (https://codereview.chromium.org/
432183002/)
Reason for revert:
force
Original issue's description:
> whitespace change to force a build
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
490d49c5dcc4b2242c9b25f082b23ec5e842c4e7
R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
442603005
mtklein [Mon, 4 Aug 2014 21:10:19 +0000 (14:10 -0700)]
Print max memory usage on Linux.
This is meant to help debug http://skbug.com/2793
BUG=skia:2793
R=halcanary@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
433403005
mtklein [Mon, 4 Aug 2014 20:57:39 +0000 (13:57 -0700)]
Fix calibration loop failure condition.
With the old logic, if the last attempt succeeded, we'd say we failed.
We also print two lines for loop calibration failures. Quiet that down.
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
431503004
mtklein [Mon, 4 Aug 2014 20:11:19 +0000 (13:11 -0700)]
disable all warnings from nanomsg
They're annoying.
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
437323002
egdaniel [Mon, 4 Aug 2014 19:54:39 +0000 (12:54 -0700)]
Enable gpu Debug markers if tracing category skia.gpu is enabled
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
438023004
mtklein [Mon, 4 Aug 2014 19:51:19 +0000 (12:51 -0700)]
Force linking as C++ library.
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
420183004
cdalton [Mon, 4 Aug 2014 18:19:11 +0000 (11:19 -0700)]
Adds a GrGLPathRendering class that wraps the NV_path_rendering
extension and manages its various API versions. It also provides
backup implementations when certain NVpr methods from later API
versions are not present on the current system.
R=bsalomon@google.com, kkinnunen@nvidia.com, markkilgard@gmail.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
437473002
mtklein [Mon, 4 Aug 2014 18:10:14 +0000 (11:10 -0700)]
Don't call out -lstdc++ -lm explicitly.
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
440643004
bsalomon [Mon, 4 Aug 2014 17:56:39 +0000 (10:56 -0700)]
Don't compare coord change matrices to determine effect compatibility when using explicit local coords.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
438053002
mtklein [Mon, 4 Aug 2014 17:18:27 +0000 (10:18 -0700)]
Remove dependency on std::string
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
437253003
dandov [Mon, 4 Aug 2014 17:02:00 +0000 (10:02 -0700)]
SkCanvas interface for drawing a patch.
Added function SkCanvas::drawPatch to the API. This function
receives the patch to draw and the paint.
Added function SkBaseDevice::drawPatch to the API. This function also receives the patch to draw and the paint.
Currently SkGpuDevice and SkBitmapDevice generate the mesh taking into
account the scale factor and call the corresponding device's drawVertices.
BUG=skia:
R=jvanverth@google.com, egdaniel@google.com, bsalomon@google.com
Author: dandov@google.com
Review URL: https://codereview.chromium.org/
424663006
mtklein [Mon, 4 Aug 2014 16:57:37 +0000 (09:57 -0700)]
Stop building tests in the Android tree.
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
440653004
krajcevski [Mon, 4 Aug 2014 16:47:31 +0000 (09:47 -0700)]
Revert of Add ETC1 format to SkTextureCompressor (https://codereview.chromium.org/
432143002/)
Reason for revert:
Breaking Chrome.
Original issue's description:
> Add ETC1 format to SkTextureCompressor
>
> Committed: https://skia.googlesource.com/skia/+/
5d8b1b44ea7636fc8e98247cb311568f277ce3a5
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
438443004
mtklein [Mon, 4 Aug 2014 16:36:45 +0000 (09:36 -0700)]
small skia_shared_lib=1 build fix for cross-process picture demo
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
439333002
mtklein [Mon, 4 Aug 2014 16:36:16 +0000 (09:36 -0700)]
Stop building tests.
BUG=skia:
R=borenet@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
423073011
bsalomon [Mon, 4 Aug 2014 16:21:30 +0000 (09:21 -0700)]
Remove unused matrix param from GrContext/GrDrawTarget rect drawing functions.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
441623005
krajcevski [Mon, 4 Aug 2014 16:08:29 +0000 (09:08 -0700)]
Add ETC1 format to SkTextureCompressor
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
432143002
Mike Klein [Mon, 4 Aug 2014 15:50:32 +0000 (11:50 -0400)]
Rename skimage expectations for renamed bot.
BUG=skia:
Review URL: https://codereview.chromium.org/
436253004
bsalomon [Mon, 4 Aug 2014 15:31:39 +0000 (08:31 -0700)]
Exit early when draw can be skipped. Be more robust against abandoned GrContext.
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
428103003
humper [Mon, 4 Aug 2014 15:31:34 +0000 (08:31 -0700)]
fix missing return in error case for bitmap scaler
BUG=skia:
R=bsalomon@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/
431613003
kkinnunen [Mon, 4 Aug 2014 06:19:46 +0000 (23:19 -0700)]
Make GrGLProgram be available to GrGLProgramDataManager
GL APIs such as glProgramPathFragmentInputGenNV need the explicit program id in
order to set the program resources. For GrGLProgramDataManager to call the APIs,
the program id needs to be available to the GrGLProgramDataManager.
One GrGLProgramDataManager is used to explicitly manage the resources of one
GrGLProgram. Refactor the classes to reflect this: make GrGLProgram create and
own GrGLProgramDataManager. This way the program id can be made available through
GrGLProgram backpointer.
In order to do this, remove the population of the program link results
information for uniforms in GrGLProgramDataManager during shader generation.
Instead, accumulate the info to the uniform list of GrGLShaderBuilder. After the
generation, compilation and link is successful, this info can be used to
construct both GrGLProgram and GrGLProgramDataManager.
Changes names of functions to create UniformHandles and convert them to list
indices. This tries to highlight that they're different lists, even though at
the moment they match index-wise. E.g the contract is that handles can be
created based on the shader builder state, and the object can later be set with
the handle and the manager that was created with the builder.
This is needed to support NV_path_rendering for GLES.
R=bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
426553011
jvanverth [Sat, 2 Aug 2014 00:15:20 +0000 (17:15 -0700)]
Fix for Chrome Canaries.
R=bsalomon@google.com
TBR=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
434623010
jvanverth [Fri, 1 Aug 2014 21:05:19 +0000 (14:05 -0700)]
Rollback text allocation changes.
This also addresses an inadvertantly introduced distance field bug.
BUG=399125
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
438683006
bungeman [Fri, 1 Aug 2014 19:00:20 +0000 (15:00 -0400)]
No longer ignore and rebaseline fontmgr gms.
george [Fri, 1 Aug 2014 19:02:07 +0000 (12:02 -0700)]
Ensure that SkDebugf is exported from the library.
This was caused by the change to always call SkDebugf() in SkASSERT(). There are many headers in Skia that call SkASSERT and so we were seeing linking issues in Gecko where we were using Skia across DLL boundaries.
R=reed@google.com, bsalomon@google.com, reed1
BUG=skia:
Author: george@mozilla.com
Review URL: https://codereview.chromium.org/
438783002
halcanary [Fri, 1 Aug 2014 18:54:48 +0000 (11:54 -0700)]
Revert of Memory improvements to render_pdfs; better DM pool size defaults (https://codereview.chromium.org/
433063002/)
Reason for revert:
breaking android tests
Original issue's description:
> Memory improvements to render_pdfs; better DM pool size defaults
>
> Make SK_DEFAULT_GLOBAL_DISCARDABLE_MEMORY_POOL_SIZE equal to
> skia_resource_cache_mb_limit, if that value is >0 (true for some
> low-memory Android devices).
>
> render_pdfs test program uses lazy decoding (and the discardable
> memory pool).
>
> BUG=skia:2743
>
> Committed: https://skia.googlesource.com/skia/+/
66058b614d9c8cb63c24b1c779dd1a9a80752217
R=djsollen@google.com, mtklein@google.com
TBR=djsollen@google.com, mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2743
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
418173012
halcanary [Fri, 1 Aug 2014 17:31:48 +0000 (10:31 -0700)]
add a libjpeg test
This tests for a bug in libjpeg where INT32 is typedefed to long
and memory is written to outside of the array.
BUG=skia:2791
R=djsollen@google.com, mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
435753002
halcanary [Fri, 1 Aug 2014 16:25:11 +0000 (09:25 -0700)]
Memory improvements to render_pdfs; better DM pool size defaults
Make SK_DEFAULT_GLOBAL_DISCARDABLE_MEMORY_POOL_SIZE equal to
skia_resource_cache_mb_limit, if that value is >0 (true for some
low-memory Android devices).
render_pdfs test program uses lazy decoding (and the discardable
memory pool).
BUG=skia:2743
R=djsollen@google.com, mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
433063002
mtklein [Fri, 1 Aug 2014 15:23:39 +0000 (08:23 -0700)]
Skip all .skps in 565.
More SKPs are failing with a 565 target on other platforms:
http://108.170.220.120:10117/builders/Test-Win7-ShuttleA-HD2000-x86-Debug/builds/2938/steps/RunNanobench/logs/stdio
BUG=skia:2797
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
431983006
mtklein [Fri, 1 Aug 2014 14:46:52 +0000 (07:46 -0700)]
SKPs-as-benches in nanobench
This is meant to replace bench_pictures.
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Release-iOS-Trybot
BUG=skia:
R=bsalomon@google.com, jcgregorio@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
425393004
Florin Malita [Fri, 1 Aug 2014 14:17:42 +0000 (10:17 -0400)]
Remove SK_IGNORE_QUAD_RR_CORNERS_OPT-related code.
Now that the flag is no longer used in Chromium
(https://codereview.chromium.org/
426593006/), we can remove it.
R=bsalomon@google.com, reed@google.com, robertphillips@google.com
Review URL: https://codereview.chromium.org/
430473012
joshualitt [Fri, 1 Aug 2014 13:44:53 +0000 (06:44 -0700)]
FBFetch refactor + arm support
BUG=skia:
R=krajcevski@google.com, bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
433603002
Derek Sollenberger [Fri, 1 Aug 2014 13:21:19 +0000 (09:21 -0400)]
Remove copile time enabling of SK_ARM_HAS_NEON.
We need to know this in our build system so that we can include
the necessary neon CPP files.
R=mtklein@google.com
Review URL: https://codereview.chromium.org/
432453003
djsollen [Fri, 1 Aug 2014 12:32:32 +0000 (05:32 -0700)]
Update NEON compiler defines to use SK_ prefix
BUG=skia:2785
R=mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
433513004
mtklein [Fri, 1 Aug 2014 00:36:07 +0000 (17:36 -0700)]
whitespace change to force a build
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
432183002
mtklein [Thu, 31 Jul 2014 22:31:08 +0000 (15:31 -0700)]
Clean up skia_directwrite GYP variable.
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
435553004
krajcevski [Thu, 31 Jul 2014 21:12:50 +0000 (14:12 -0700)]
Add initial pipeline for decompressors
Committed: https://skia.googlesource.com/skia/+/
14a1df0bcd00734e6efbe4a21629fe95118815ef
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
432503002
mtklein [Thu, 31 Jul 2014 19:47:37 +0000 (12:47 -0700)]
Add missing source file for iOSShell.
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Release-iOS-Trybot
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
430273003
mtklein [Thu, 31 Jul 2014 19:13:48 +0000 (12:13 -0700)]
nanobench: support GMs-as-benches
BUG=skia:
R=jcgregorio@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
438683002
mtklein [Thu, 31 Jul 2014 18:26:58 +0000 (11:26 -0700)]
DM: only depend on GpuTest when it's a GPU build.
This seems to fix DM dynamic linking errors on IntelRHB.
Not clear why this device is the only one with this problem. It does set
skia_gpu=0, but I can't reproduce the same failure on my desktop (skia_gpu=0,
skia_shared_lib=1, skia_arch_width=32).
BUG=skia:
R=bsalomon@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
435673002
robertphillips [Thu, 31 Jul 2014 18:02:38 +0000 (11:02 -0700)]
Add CTM to the cached layers' key and reduce render target pingponging in layer pre-rendering
The CTM is required on the key so we will re-render when necessary.
The SkGpuDevice change ensures big layers in the midst of atlas-able layers don't cause a render target switch.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
433553002
mtklein [Thu, 31 Jul 2014 16:34:21 +0000 (09:34 -0700)]
Revert of Add initial pipeline for decompressors (https://codereview.chromium.org/
432503002/)
Reason for revert:
New test is crashing on Android.
http://108.170.220.21:10117/builders/Test-Android-Nexus10-MaliT604-Arm7-Debug/builds/2509/steps/RunTests/logs/stdio
http://108.170.220.21:10117/builders/Test-Android-Nexus4-Adreno320-Arm7-Debug/builds/2313/steps/RunTests/logs/stdio
Original issue's description:
> Add initial pipeline for decompressors
>
> Committed: https://skia.googlesource.com/skia/+/
14a1df0bcd00734e6efbe4a21629fe95118815ef
R=robertphillips@google.com, krajcevski@google.com
TBR=krajcevski@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
425223006
krajcevski [Thu, 31 Jul 2014 15:42:06 +0000 (08:42 -0700)]
Add initial pipeline for decompressors
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
432503002
mtklein [Thu, 31 Jul 2014 15:31:56 +0000 (08:31 -0700)]
sk_tool_utils_flags.cpp depends on GetResourcePath
BUG=skia:
R=caryclark@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
432033002
joshualitt [Thu, 31 Jul 2014 14:26:36 +0000 (07:26 -0700)]
Fix for texture domain on imagination gpus
BUG=skia:
R=bsalomon@chromium.org, bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
421823003
caryclark [Thu, 31 Jul 2014 13:36:45 +0000 (06:36 -0700)]
fix signed mismatch
R=egdaniel@google.com
TBR=egdaniel
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/
433903002
Cary Clark [Thu, 31 Jul 2014 12:58:44 +0000 (08:58 -0400)]
Add standard fonts to all GMs.
Allow GM results to be compared across machines and platforms by
standardizing the fonts used by all tests.
This adds runtime flags to DM to use either the system font context (the
default), the fonts in the resources directory ( --resourceFonts ) or a set
of canonical paths generated from the fonts ( --portableFonts ).
This CL should leave the current DM results unchanged by default.
If the portable font data or resource font is missing when DM is run, it
falls back to using the system font context.
The create_test_font tool generates the paths and metrics read by DM
with the --portableFonts flag set, and generates the font substitution
tables read by DM with the --resourceFonts flag set.
If DM is run in SkDebug mode with the --reportUsedChars flag set, it
generates the corresponding data compiled into the create_test_font tool.
All GM tests set their typeface information by calling either
sk_tool_utils::set_portable_typeface or
sk_tool_utils::portable_typeface .
(The former takes the paint, the latter returns a SkTypeface.) These calls
can be removed in the future when the Font Manager can be superceded.
BUG=skia:2687
R=mtklein@google.com
Review URL: https://codereview.chromium.org/
407183003
dneto [Wed, 30 Jul 2014 22:42:22 +0000 (15:42 -0700)]
Fix end-of-pattern matching for Skia recording optimization.
The recorder optimizer's pattern matcher was accepting command sequences
when it shouldn't have.
In the submitted case, and the pattern matcher was looking for:
saveLayer, drawBitmap, restore
and in the rendering for the submitted case, the sequence of commands
were:
saveLayer, drawBitmap, drawBitmap, restore
This sequence was improperly accepted by the matcher, and the optimizer
reduced the sequence to:
drawBitmap, drawBitmap
where the opacity from the saveLayer paint argument was applied
to the first drawBitmap only.
The user-visible effect in Chrome was a flashing effect on an image
caused by incorrect (too-high) opacity.
The patch adds a Skia test to check for pixel colour values in
a similarly structured recording. All other Skia tests pass.
Blink layout tests also pass with this change.
BUG=chromium:344987
R=robertphillips@google.com, reed@google.com, mtklein@google.com
Author: dneto@chromium.org
Review URL: https://codereview.chromium.org/
430503004
senorblanco [Wed, 30 Jul 2014 21:49:31 +0000 (14:49 -0700)]
Intersect SkPictureImageFilter bounds against clip bounds.
Intersect SkPictureImageFilter bounds against clip bounds
to avoid unnecessary processing. This is how the other
filters work (via applyCropRect()), but SkPictureImageFilter
maintains its own crop.
BUG=skia:
R=bsalomon@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
428263003
egdaniel [Wed, 30 Jul 2014 20:18:32 +0000 (13:18 -0700)]
Remove kDisableBlend_BlendOptFlag as it is no longer needed
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
425153003
krajcevski [Wed, 30 Jul 2014 20:08:11 +0000 (13:08 -0700)]
Start the process of choosing the correct compression format
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
427093004
mtklein [Wed, 30 Jul 2014 19:37:19 +0000 (12:37 -0700)]
Add some debugging to PremulAlphaRoundTrip test.
BUG=skia:2782
R=bensong@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
429313002
joshualitt [Wed, 30 Jul 2014 18:49:12 +0000 (11:49 -0700)]
Test removal of mesa specific version parse
BUG=skia:
R=bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
430833002
senorblanco [Wed, 30 Jul 2014 18:26:46 +0000 (11:26 -0700)]
Implement a persistent uniqueID-based cache for SkImageFilter.
Add a unique ID to SkImageFilter, and use it as part
of a persistent cache of image-filtered results. This is used for
caching frame-to-frame coherent filters.
We also keep track of which filter subtrees do not reference the
src input, and use a GenID of zero for the src input in that case.
That way, subtrees which are not dependent on the filter input can be
cached independently of it.
This gives approximately a 4X speedup on
letmespellitoutforyou.com/samples/svg/filter_terrain.svg on Z620
and Nexus10. The cache key consists of the uniqueID of the filter, the
clip bounds, the CTM and the genID of the input bitmap.
Since this does not yet handle the case where the input primitives
(and part of the resulting filter tree) are unchanged, we have
to keep around the external cache for that painting case.
When the work to cache unchanging input primitives is done, the
old cache can be removed, and the new UniqueIDCache will be renamed
to Cache.
R=bsalomon@google.com, mtklein@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
414483003
krajcevski [Wed, 30 Jul 2014 18:25:44 +0000 (11:25 -0700)]
Add query for whether or not we have compressedTexSubImage
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
430773004
bungeman [Wed, 30 Jul 2014 18:05:22 +0000 (11:05 -0700)]
Correct Android FontMgr use of ttc index and remove unused code.
R=djsollen@chromium.org, tomhudson@google.com, djsollen@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/
433503003
joshualitt [Wed, 30 Jul 2014 17:31:10 +0000 (10:31 -0700)]
Enabling texture_domain_effect
BUG=skia:
REVIEW=tbr
R=rmistry@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
425253003
george [Wed, 30 Jul 2014 16:58:17 +0000 (09:58 -0700)]
Explicitly typedef GetUserDefaultLocaleName as WINVER may not be high enough when compiling to allow visibility of the function prototype in windows.h
R=bungeman@google.com, bungeman1
Author: george@mozilla.com
Review URL: https://codereview.chromium.org/
422823008
mtklein [Wed, 30 Jul 2014 16:17:54 +0000 (09:17 -0700)]
Fix way-over-allocation in pipe.
https://codereview.chromium.org/
283093002 fixed some bugs in pipe memory
allocation, but also introduced one of its own: nearly every block requested
from needOpBytes() got its own 16K allocation.
The correct logic is to take the requested size, add four more bytes for a
DrawOp, make sure that's 4-byte aligned, then check to see if there's enough
space for that in the current block. If there's not, allocate at least
MIN_BLOCK_SIZE bytes to fit the request.
The bug is that I moved that round-up-to-MIN_BLOCK_SIZE step before checking
for space in the current block. This means most (all?) blocks will be 16K but
never seem to have room to fit another allocation. You need 8 bytes? You get
16K. You need 8 more bytes? Nope, can't fit that. Here's a new 16K...
This reverts the change to the test I made then, which really should have
tipped me off. It was testing exactly this bug.
BUG=372671
R=tomhudson@chromium.org, tomhudson@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
433463003
jvanverth [Wed, 30 Jul 2014 16:16:33 +0000 (09:16 -0700)]
Add vertex bounds check for distance field rendering.
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
432443002
bsalomon [Wed, 30 Jul 2014 15:58:20 +0000 (08:58 -0700)]
Add rotated rects benchmarks
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
425263003
krajcevski [Wed, 30 Jul 2014 15:34:51 +0000 (08:34 -0700)]
Bring LATC in line with other formats (i.e. write a blitter and
an "optimized" compression routine).
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
429683003
robertphillips [Wed, 30 Jul 2014 14:31:35 +0000 (07:31 -0700)]
Fix ref counting of cached layer's texture
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
431603002
rmistry [Wed, 30 Jul 2014 14:24:17 +0000 (07:24 -0700)]
Whitespace change to test the CQ.
(SkipBuildbotRuns)
BUG=skia:
R=bensong@google.com
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/
428183007
Brian Salomon [Wed, 30 Jul 2014 14:08:09 +0000 (10:08 -0400)]
Mark bleed GM images on GPU configs as baselined but associated with bug 2762
BUG=skia:2762
Review URL: https://codereview.chromium.org/
431453006
Brian Salomon [Wed, 30 Jul 2014 13:40:56 +0000 (09:40 -0400)]
Rebaseline some images from ignored-tests.txt
BUG=skia:
Review URL: https://codereview.chromium.org/
431583004
Brian Salomon [Wed, 30 Jul 2014 13:27:19 +0000 (09:27 -0400)]
Rebaseline currently failing images. All look better or insignificantly different
Review URL: https://codereview.chromium.org/
423283005
jvanverth [Wed, 30 Jul 2014 13:17:59 +0000 (06:17 -0700)]
Add effect caching to distance field text.
This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect.
Committed: https://skia.googlesource.com/skia/+/
137bac067306c5446bc4f9797bedc3bbaf302822
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
424103002
kkinnunen [Wed, 30 Jul 2014 07:04:16 +0000 (00:04 -0700)]
Rename GrGLUniformManager to GrGLProgramDataManager
Rename GrGLUniformManager to GrGLProgramDataManager in anticipation that the
class would be used to manage shader resources that are not uniforms.
This is needed in order to implement NVPR on GLES.
R=bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
365853002
borenet [Wed, 30 Jul 2014 05:57:43 +0000 (22:57 -0700)]
Update SKP version to 63
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
426183002
cdalton [Tue, 29 Jul 2014 22:25:51 +0000 (15:25 -0700)]
Incorporate glStencilThenCover* nvpr methods
Adds the glStencilThenCover* nvpr methods to GrGLInterface and starts
using them. When drawing multible paths, this will make it so we only
have to send the index/transform data once. It will also allow the
driver to save time internally.
The glStencilThenCover* methods are a newer addition, so they aren't
available on every driver. In the event that they are not present, we
emulate them using the existing glStencil*/glCover* methods.
BUG=skia:
R=markkilgard@gmail.com, bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
423173004
krajcevski [Tue, 29 Jul 2014 20:19:05 +0000 (13:19 -0700)]
fRight -> fBottom
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
428963005
egdaniel [Tue, 29 Jul 2014 20:15:47 +0000 (13:15 -0700)]
Remove support in the gpu to use hardware AA lines. Current code paths could not reach this code and thus was never used.
The blend opt flag kDisableBlend should now be able to be removed, however it is left in this CL and will removed in its own.
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
427823002
joshualitt [Tue, 29 Jul 2014 19:59:27 +0000 (12:59 -0700)]
Adding repeat mode to texture domain
BUG=skia:
R=bsalomon@chromium.org, senorblanco@chromium.org, bsalomon@google.com, junov@chromium.org
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
422123003
djsollen [Tue, 29 Jul 2014 19:38:25 +0000 (12:38 -0700)]
Add ability to generate/use FDO profiles for Android
R=scroggo@google.com, bungeman@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
420803003
caryclark [Tue, 29 Jul 2014 19:13:28 +0000 (12:13 -0700)]
add cubic red option to pathops tool
R=reed@google.com
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/
428963004
krajcevski [Tue, 29 Jul 2014 18:44:26 +0000 (11:44 -0700)]
Add query for block dimensions of a given format
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
422023006
robertphillips [Tue, 29 Jul 2014 17:37:02 +0000 (10:37 -0700)]
Optimize correct picture in bench_pictures when using --bbh
Almost all PictureRenderer::init implementations have the power to overwrite the picture. Retrieve the correct SkPicture from the renderer for optimization.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
428883008
bensong [Tue, 29 Jul 2014 17:35:46 +0000 (10:35 -0700)]
Revert of Add effect caching to distance field text. (https://codereview.chromium.org/
424103002/)
Reason for revert:
breaking Chrome canary.
Original issue's description:
> Add effect caching to distance field text.
>
> This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect.
>
> Committed: https://skia.googlesource.com/skia/+/
137bac067306c5446bc4f9797bedc3bbaf302822
R=robertphillips@google.com, jvanverth@google.com
TBR=jvanverth@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: bensong@google.com
Review URL: https://codereview.chromium.org/
424173002
egdaniel [Tue, 29 Jul 2014 15:52:23 +0000 (08:52 -0700)]
Revert of Remove gpu support for willUseHWAALines. (https://codereview.chromium.org/
423943003/)
Reason for revert:
Breaking windows 7 compare gm's
Original issue's description:
> Remove gpu support for willUseHWAALines.
>
> By removing willUseHWAALines, we also no long reference the blend opt flag kDisableBlend so it has been removed
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
e6dfba868c19b00562f8c733b9bf37dd4ec9e68c
R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
430493003
jvanverth [Tue, 29 Jul 2014 15:29:50 +0000 (08:29 -0700)]
Add effect caching to distance field text.
This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect.
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
424103002
epoger [Tue, 29 Jul 2014 15:27:11 +0000 (08:27 -0700)]
enable SKP rendering on 2 platforms, 2 configs each
The presence of the expectations file (even if empty) causes the bots to render the SKPs and record results.
2 platforms, 2 configs each should be good for exercising rebaselining tools.
BUG=skia:1942
NOTRY=true
R=rmistry@google.com
TBR=rmistry
Author: epoger@google.com
Review URL: https://codereview.chromium.org/
426023002
bsalomon [Tue, 29 Jul 2014 15:01:52 +0000 (08:01 -0700)]
Some fixes around GrContext::abandonContext:
Fix debug crash when GrResourceCache is destroyed after GrContext is abandoned while GrTextures are in the exlusive list.
Notify debug GL context that GL resources are expected to remain undeleted when context is destroyed after being abandoned.
Stop leaking program cache entries when context is abandoned.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
422323002
egdaniel [Tue, 29 Jul 2014 14:51:02 +0000 (07:51 -0700)]
Remove gpu support for willUseHWAALines.
By removing willUseHWAALines, we also no long reference the blend opt flag kDisableBlend so it has been removed
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
423943003
krajcevski [Tue, 29 Jul 2014 14:24:58 +0000 (07:24 -0700)]
Add function for creating ASTC blitter
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
427693002
krajcevski [Tue, 29 Jul 2014 14:21:41 +0000 (07:21 -0700)]
Pass clip blitter rows preserved request
R=robertphillips@google.com, reed@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
413403005
robertphillips [Tue, 29 Jul 2014 14:14:49 +0000 (07:14 -0700)]
Now always use Atlas for layer cache
This is setup for running cluster telemetry tests
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
429593002
tomhudson [Tue, 29 Jul 2014 13:52:38 +0000 (06:52 -0700)]
Fix debug output compile error and minor style nits
R=djsollen@google.com, tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/
420333002
robertphillips [Tue, 29 Jul 2014 13:17:49 +0000 (06:17 -0700)]
Finish removing GrTHashTable
This class is no longer used in Ganesh (in favor of SkTDynamicHash)
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
421253003
kkinnunen [Tue, 29 Jul 2014 13:12:49 +0000 (06:12 -0700)]
Use if instead of ifdef SK_SUPPORT_GPU
The SK_SUPPORT_GPU is always defined.
R=reed@google.com, bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
331353003
robertphillips [Tue, 29 Jul 2014 13:07:19 +0000 (06:07 -0700)]
Add plot-based purging to GrLayerCache
This CL allows a GrPlot full of atlased layer to be purged from the atlas to make room for new layers.
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
411703003
borenet [Tue, 29 Jul 2014 07:56:39 +0000 (00:56 -0700)]
Update SKP version to 62
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
428733004
tfarina [Tue, 29 Jul 2014 02:26:58 +0000 (19:26 -0700)]
Cleanup: Rename SkOSPath functions.
Mostly for brevity and matches better with Python:
Python | Old C++ | New C++
os.path.join | SkOSPath::SkPathJoin | SkOSPath::Join
os.path.basename | SkOSPath::SkBasename | SkOSPath::Basename
BUG=None
TEST=make all
R=mtklein@google.com, bsalomon@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/
428443002