platform/upstream/libSkiaSharp.git
10 years agoExpose SkColorTable class
ch.dumez [Tue, 5 Aug 2014 19:20:19 +0000 (12:20 -0700)]
Expose SkColorTable class

Expose SkColorTable class as it is used in SkBitmap::allocPixels(SkColorTable*)
API, which is already exposed.

R=reed@google.com, ben@chromium.org

Author: ch.dumez@samsung.com

Review URL: https://codereview.chromium.org/418173011

10 years agoGreenify bench bot Perf-Ubuntu12-ShuttleA-GTX660-x86-Release at build 1551
senorblanco [Tue, 5 Aug 2014 19:05:03 +0000 (12:05 -0700)]
Greenify bench bot Perf-Ubuntu12-ShuttleA-GTX660-x86-Release at build 1551

R=bensong@google.com, bensong@chromium.org

Bypassing trybots:
NOTRY=true
BUG=2794

Author: senorblanco@chromium.org

Review URL: https://codereview.chromium.org/442903002

10 years agoFix bad gypi
tomhudson [Tue, 5 Aug 2014 19:01:09 +0000 (12:01 -0700)]
Fix bad gypi

Must not depend directly on ports; depend on skialib!

R=bungeman@google.com

Author: tomhudson@chromium.org

Review URL: https://codereview.chromium.org/442883002

10 years agoCalculate rough approximations for nvpr path sizes
cdalton [Tue, 5 Aug 2014 17:58:19 +0000 (10:58 -0700)]
Calculate rough approximations for nvpr path sizes

Calculates a rough approximation of the actual value for gpuMemorySize
in GrGLPath and GrGLPathRange, instead of assuming every path is the
same fixed size.

BUG=skia:
R=bsalomon@google.com, markkilgard@gmail.com

Author: cdalton@nvidia.com

Review URL: https://codereview.chromium.org/442603002

10 years agoteach rebaseline_server to generate diffs of rendered SKPs
epoger [Tue, 5 Aug 2014 17:07:22 +0000 (10:07 -0700)]
teach rebaseline_server to generate diffs of rendered SKPs

Creates a new live-view.html page, served by the rebaseline_server, that will display diffs between two sets of rendered SKP images.

BUG=skia:1942
NOTRY=true
R=rmistry@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/424263005

10 years agoMove functions from GrDrawState.h to GrDrawState.cpp and delete unused functions.
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

10 years agoAdd ETC1 format to SkTextureCompressor
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

10 years agoDon't compare constant color and coverage between GrDrawStates when they are provided...
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

10 years agoFor some reason, starting tests before gms makes DM run much faster.
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

10 years agoReplace op== with CombineIfPossible in GrDrawState.
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

10 years agoTest new CQ bot
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

10 years agoTest and generalize font configuration parser
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

10 years agoRevert of whitespace change to force a build (https://codereview.chromium.org/432183002/)
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

10 years agoPrint max memory usage on Linux.
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

10 years agoFix calibration loop failure condition.
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

10 years agodisable all warnings from nanomsg
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

10 years agoEnable gpu Debug markers if tracing category skia.gpu is enabled
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

10 years agoForce linking as C++ library.
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

10 years agoAdds a GrGLPathRendering class that wraps the NV_path_rendering
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

10 years agoDon't call out -lstdc++ -lm explicitly.
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

10 years agoDon't compare coord change matrices to determine effect compatibility when using...
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

10 years agoRemove dependency on std::string
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

10 years agoSkCanvas interface for drawing a patch.
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

10 years agoStop building tests in the Android tree.
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

10 years agoRevert of Add ETC1 format to SkTextureCompressor (https://codereview.chromium.org...
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

10 years agosmall skia_shared_lib=1 build fix for cross-process picture demo
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

10 years agoStop building tests.
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

10 years agoRemove unused matrix param from GrContext/GrDrawTarget rect drawing functions.
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

10 years agoAdd ETC1 format to SkTextureCompressor
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

10 years agoRename skimage expectations for renamed bot.
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

10 years agoExit early when draw can be skipped. Be more robust against abandoned GrContext.
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

10 years agofix missing return in error case for bitmap scaler
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

10 years agoMake GrGLProgram be available to GrGLProgramDataManager
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

10 years agoFix for Chrome Canaries.
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

10 years agoRollback text allocation changes.
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

10 years agoNo longer ignore and rebaseline fontmgr gms.
bungeman [Fri, 1 Aug 2014 19:00:20 +0000 (15:00 -0400)]
No longer ignore and rebaseline fontmgr gms.

10 years agoEnsure that SkDebugf is exported from the library.
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

10 years agoRevert of Memory improvements to render_pdfs; better DM pool size defaults (https...
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

10 years agoadd a libjpeg test
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

10 years agoMemory improvements to render_pdfs; better DM pool size defaults
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

10 years agoSkip all .skps in 565.
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

10 years agoSKPs-as-benches in nanobench
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

10 years agoRemove SK_IGNORE_QUAD_RR_CORNERS_OPT-related code.
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

10 years agoFBFetch refactor + arm support
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

10 years agoRemove copile time enabling of SK_ARM_HAS_NEON.
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

10 years agoUpdate NEON compiler defines to use SK_ prefix
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

10 years agowhitespace change to force a build
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

10 years agoClean up skia_directwrite GYP variable.
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

10 years agoAdd initial pipeline for decompressors
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

10 years agoAdd missing source file for iOSShell.
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

10 years agonanobench: support GMs-as-benches
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

10 years agoDM: only depend on GpuTest when it's a GPU build.
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

10 years agoAdd CTM to the cached layers' key and reduce render target pingponging in layer pre...
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

10 years agoRevert of Add initial pipeline for decompressors (https://codereview.chromium.org...
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

10 years agoAdd initial pipeline for decompressors
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

10 years agosk_tool_utils_flags.cpp depends on GetResourcePath
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

10 years agoFix for texture domain on imagination gpus
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

10 years agofix signed mismatch
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

10 years agoAdd standard fonts to all GMs.
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

10 years agoFix end-of-pattern matching for Skia recording optimization.
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

10 years agoIntersect SkPictureImageFilter bounds against clip bounds.
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

10 years agoRemove kDisableBlend_BlendOptFlag as it is no longer needed
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

10 years agoStart the process of choosing the correct compression format
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

10 years agoAdd some debugging to PremulAlphaRoundTrip test.
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

10 years agoTest removal of mesa specific version parse
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

10 years agoImplement a persistent uniqueID-based cache for SkImageFilter.
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

10 years agoAdd query for whether or not we have compressedTexSubImage
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

10 years agoCorrect Android FontMgr use of ttc index and remove unused code.
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

10 years agoEnabling texture_domain_effect
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

10 years agoExplicitly typedef GetUserDefaultLocaleName as WINVER may not be high enough when...
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

10 years agoFix way-over-allocation in pipe.
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

10 years agoAdd vertex bounds check for distance field rendering.
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

10 years agoAdd rotated rects benchmarks
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

10 years agoBring LATC in line with other formats (i.e. write a blitter and
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

10 years agoFix ref counting of cached layer's texture
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

10 years agoWhitespace change to test the CQ.
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

10 years agoMark bleed GM images on GPU configs as baselined but associated with bug 2762
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

10 years agoRebaseline some images from ignored-tests.txt
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

10 years agoRebaseline currently failing images. All look better or insignificantly different
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

10 years agoAdd effect caching to distance field text.
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

10 years agoRename GrGLUniformManager to GrGLProgramDataManager
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

10 years agoUpdate SKP version to 63
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

10 years agoIncorporate glStencilThenCover* nvpr methods
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

10 years agofRight -> fBottom
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

10 years agoRemove support in the gpu to use hardware AA lines. Current code paths could not...
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

10 years agoAdding repeat mode to texture domain
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

10 years agoAdd ability to generate/use FDO profiles for Android
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

10 years agoadd cubic red option to pathops tool
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

10 years agoAdd query for block dimensions of a given format
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

10 years agoOptimize correct picture in bench_pictures when using --bbh
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

10 years agoRevert of Add effect caching to distance field text. (https://codereview.chromium...
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

10 years agoRevert of Remove gpu support for willUseHWAALines. (https://codereview.chromium.org...
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

10 years agoAdd effect caching to distance field text.
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

10 years agoenable SKP rendering on 2 platforms, 2 configs each
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

10 years agoSome fixes around GrContext::abandonContext:
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

10 years agoRemove gpu support for willUseHWAALines.
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

10 years agoAdd function for creating ASTC blitter
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

10 years agoPass clip blitter rows preserved request
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

10 years agoNow always use Atlas for layer cache
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

10 years agoFix debug output compile error and minor style nits
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