platform/upstream/libSkiaSharp.git
10 years agoRevert of Add support for NEON intrinsics to speed up texture compression. We can...
krajcevski [Fri, 11 Jul 2014 20:15:15 +0000 (13:15 -0700)]
Revert of Add support for NEON intrinsics to speed up texture compression. We can (https://codereview.chromium.org/390453002/)

Reason for revert:
Breaking chrome.

Original issue's description:
> Add support for NEON intrinsics to speed up texture compression. We can
> now convert the time that we would have spent uploading the texture to
> compressing it giving a net 50% memory savings for these things.
>
> Committed: https://skia.googlesource.com/skia/+/bc9205be0a1094e312da098348601398c210dc5a

R=robertphillips@google.com, mtklein@google.com, kevin.petit@arm.com
TBR=kevin.petit@arm.com, mtklein@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true

Author: krajcevski@google.com

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

10 years agoNo need to cache local matrix in picture shader.
scroggo [Fri, 11 Jul 2014 19:19:00 +0000 (12:19 -0700)]
No need to cache local matrix in picture shader.

Now that the local matrix cannot be changed, we no longer need
to keep track of it to regenerate the bitmap shader.

Depends on https://codereview.chromium.org/379323002

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

Author: scroggo@google.com

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

10 years agoios fixes
caryclark [Fri, 11 Jul 2014 19:14:51 +0000 (12:14 -0700)]
ios fixes

skia_ios.mm
Get the app's Documents directory and pass use it to set the resource path.
This is a quick hack which will be replaced by a new application that is
a tiny shim around a command line tool.

SkImageEncoder.h
SkForceLinking.cpp
SkImageDecoder_CG.cpp
Add support for FORCE_LINKING so iOS sees the PNG encoder and others.

SkFloatBits.cpp
SkPoint.cpp
Handle denormalized numbers that are floored by the iOS ARM processor.

SkImageDecoder_iOS.mm
Remove empty encoder factory.

SkTouchGesture.cpp
Return early on empty state on touch rather than aborting (crashing)

JpegTest.cpp
Hal via stackoverflow.com says partial jpegs can be gray as well.

skia_test.cpp
Remove crash handler call for now to avoid link failure.

OverwriteLine.h
Remove fancy line overwrite for iOS.

Resources.cpp
Add interface to set resource directory based on runtime query.

BUG=skia:2736 skia:2737 skia:2738
R=reed@google.com, halcanary@google.com, mtklein@google.com, tfarina@chromium.org

Author: caryclark@google.com

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

10 years agoAdd support for NEON intrinsics to speed up texture compression. We can
krajcevski [Fri, 11 Jul 2014 19:12:27 +0000 (12:12 -0700)]
Add support for NEON intrinsics to speed up texture compression. We can
now convert the time that we would have spent uploading the texture to
compressing it giving a net 50% memory savings for these things.

R=robertphillips@google.com, mtklein@google.com, kevin.petit@arm.com

Author: krajcevski@google.com

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

10 years agonanobench: add a cute bar chart
mtklein [Fri, 11 Jul 2014 18:57:07 +0000 (11:57 -0700)]
nanobench: add a cute bar chart

Give this a try?  Helpful, or gets in the way?

BUG=skia:
R=krajcevski@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoRemove SK_SUPPORT_LEGACY_SHADER_LOCALMATRIX.
scroggo [Fri, 11 Jul 2014 18:33:52 +0000 (11:33 -0700)]
Remove SK_SUPPORT_LEGACY_SHADER_LOCALMATRIX.

This is no longer needed by Android.

BUG=skia:1976
R=reed@google.com

Author: scroggo@google.com

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

10 years agoresizeimagefiler is ok with a BBH now
mtklein [Fri, 11 Jul 2014 18:27:01 +0000 (11:27 -0700)]
resizeimagefiler is ok with a BBH now

BUG=skia:
R=senorblanco@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoUse unpremul for premul_and_unpremul_alpha_ bench.
scroggo [Fri, 11 Jul 2014 17:45:11 +0000 (10:45 -0700)]
Use unpremul for premul_and_unpremul_alpha_ bench.

Using the wrong color type resulted in invalid colors.

R=bsalomon@google.com, reed@google.com

Author: scroggo@google.com

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

10 years agoUse SkShader's localMat for SkLocalMatrixShader.
scroggo [Fri, 11 Jul 2014 17:42:12 +0000 (10:42 -0700)]
Use SkShader's localMat for SkLocalMatrixShader.

Instead of setting SkShader::fLocalMatrix to Identity and storing
a separate SkMatrix inside SkLocalMatrixShader, reuse
SkShader::fLocalMatrix.

R=reed@google.com

Author: scroggo@google.com

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

10 years agoNew Mac 10.6 x86_64 Debug baselines for perlin noise tests.
senorblanco [Fri, 11 Jul 2014 17:09:02 +0000 (10:09 -0700)]
New Mac 10.6 x86_64 Debug baselines for perlin noise tests.

R=jcgregorio@google.com
TBR=jcgregorio@google.com
NOTRY=true
NOTREECHECKS=true
BUG=skia:

Author: senorblanco@chromium.org

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

10 years agoThis moves us towards variable length effect keys. The overall program key now allows...
bsalomon [Fri, 11 Jul 2014 17:01:02 +0000 (10:01 -0700)]
This moves us towards variable length effect keys. The overall program key now allows for it. After the header it stores an array of offsets to effect keys. This allows us to grab the effect keys to pass to effects when they generate code. It also ensures that we can't get a collision by sets of keys that are different lengths but are the same when appended  together.

R=robertphillips@google.com, jvanverth@google.com, egdaniel@google.com

Author: bsalomon@google.com

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

10 years agoFix for saveLayer() with filters vs. the BBox Hierarchy.
senorblanco [Fri, 11 Jul 2014 16:56:03 +0000 (09:56 -0700)]
Fix for saveLayer() with filters vs. the BBox Hierarchy.

When building acceleration structures for SkPicture, we must transform
the primitive's bounds not only by its own SkPaint, but by the paints of
any saveLayer()s currently active above it.

We do this by pushing the SkPaint onto a stack on
saveLayer(), and popping them on restore(). We also push
a NULL paint in save(), so that the pushes and pops are
balanced.

BUG=skia:2734
R=mtklein@google.com, reed@google.com

Author: senorblanco@chromium.org

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

10 years agoRevert of Remove gpu shader optimatization for solid white or trans black colors...
egdaniel [Fri, 11 Jul 2014 16:13:37 +0000 (09:13 -0700)]
Revert of Remove gpu shader optimatization for solid white or trans black colors (https://codereview.chromium.org/375823005/)

Reason for revert:
possible test and gm failures

Original issue's description:
> Remove gpu shader optimatization for solid white or trans black colors
>
> Running test on the added bench which draws a grid of all white paths, all blue paths, or alternating checkered white/blue paths.
>
> With optimization in (ms):
>          White       Blue        Checkered
> Linux    ~80         ~80         ~160
> N7       ~800        ~1100       ~1500
> Moto-e   ~830        ~1100       ~2500
>
> Without optimization in (ms):
>          White       Blue        Checkered
> Linux    ~80         ~80         ~80
> N7       ~1100       ~1100       ~1100
> Moto-e   ~1100       ~1100       ~1500
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/5f78d2251a440443c9eaa321dad058d7a32bfef7

R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: egdaniel@google.com

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

10 years agoRevert of Remove public_headers.gypi, unneeded by Skia. (https://codereview.chromium...
scroggo [Fri, 11 Jul 2014 16:05:32 +0000 (09:05 -0700)]
Revert of Remove public_headers.gypi, unneeded by Skia. (https://codereview.chromium.org/381633003/)

Reason for revert:
Breaking canary: http://108.170.220.120:10117/builders/Canary-Chrome-Ubuntu13.10-Ninja-x86_64-ToT/builds/1207/steps/Update/logs/stdio

Original issue's description:
> Remove public_headers.gypi, unneeded by Skia.
>
> This file not needed by Skia, and is almost always out of date.
> We recommend generating this inside Android WebView, where it is
> used. Generating it is relatively straightforward; here is one way:
> https://codereview.chromium.org/198063002/diff/110001/platform_tools/android/gyp_gen/gen_public_headers.py
>
> BUG=skia:2350
>
> Committed: https://skia.googlesource.com/skia/+/a3fce46f7c85eb3eb5c5373c1eaa0336d9756252

R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2350

Author: scroggo@google.com

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

10 years agoRemove gpu shader optimatization for solid white or trans black colors
egdaniel [Fri, 11 Jul 2014 15:57:40 +0000 (08:57 -0700)]
Remove gpu shader optimatization for solid white or trans black colors

Running test on the added bench which draws a grid of all white paths, all blue paths, or alternating checkered white/blue paths.

With optimization in (ms):
         White       Blue        Checkered
Linux    ~80         ~80         ~160
N7       ~800        ~1100       ~1500
Moto-e   ~830        ~1100       ~2500

Without optimization in (ms):
         White       Blue        Checkered
Linux    ~80         ~80         ~80
N7       ~1100       ~1100       ~1100
Moto-e   ~1100       ~1100       ~1500

BUG=skia:
R=bsalomon@google.com

Author: egdaniel@google.com

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

10 years agoroll "common" DEPS, and replace tools/pyutils with it
epoger [Fri, 11 Jul 2014 15:52:35 +0000 (08:52 -0700)]
roll "common" DEPS, and replace tools/pyutils with it

BUG=skia:2682
R=borenet@google.com

Author: epoger@google.com

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

10 years agoUpdate find_name_and_attributes to take ttc index and rename to SkTypeface_FreeType...
bungeman [Fri, 11 Jul 2014 15:52:26 +0000 (08:52 -0700)]
Update find_name_and_attributes to take ttc index and rename to SkTypeface_FreeType::ScanFont.

The name 'ScanFont' is to mirror the naming convention of similar functions in FontConfig.

R=tomhudson@google.com

Author: bungeman@google.com

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

10 years agoexplicitly add /data/local/tmp to the library path to support new AOSP restrictions
djsollen [Fri, 11 Jul 2014 15:47:23 +0000 (08:47 -0700)]
explicitly add /data/local/tmp to the library path to support new AOSP restrictions

BUG=skia:2660
R=tomhudson@chromium.org, tomhudson@google.com

Author: djsollen@google.com

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

10 years agoRemove public_headers.gypi, unneeded by Skia.
scroggo [Fri, 11 Jul 2014 15:47:16 +0000 (08:47 -0700)]
Remove public_headers.gypi, unneeded by Skia.

This file not needed by Skia, and is almost always out of date.
We recommend generating this inside Android WebView, where it is
used. Generating it is relatively straightforward; here is one way:
https://codereview.chromium.org/198063002/diff/110001/platform_tools/android/gyp_gen/gen_public_headers.py

BUG=skia:2350
R=robertphillips@google.com

Author: scroggo@google.com

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

10 years agoSlim Skia down to just one murmur3 implementation.
mtklein [Fri, 11 Jul 2014 15:42:17 +0000 (08:42 -0700)]
Slim Skia down to just one murmur3 implementation.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/6ac0037b70410ff7d5ce5788bc89314223e1a587

Committed: https://skia.googlesource.com/skia/+/67a3271f0de9ccc32d559b042b862528272047cc

Committed: https://skia.googlesource.com/skia/+/53d435990bdb4d14df78013da45a9364d0287ebe

CQ_EXTRA_TRYBOTS=tryserver.skia:Perf-Mac10.6-MacMini4.1-GeForce320M-x86_64-Release-Trybot
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoAdd support for 64bit atomic inc/dec/cas
bsalomon [Fri, 11 Jul 2014 15:42:11 +0000 (08:42 -0700)]
Add support for 64bit atomic inc/dec/cas

R=mtklein@google.com

Author: bsalomon@google.com

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

10 years agoRevert of add readPixels() to SkBitmap (https://codereview.chromium.org/377303002/)
jcgregorio [Fri, 11 Jul 2014 14:48:20 +0000 (07:48 -0700)]
Revert of add readPixels() to SkBitmap (https://codereview.chromium.org/377303002/)

Reason for revert:
Maybe causing crashes in bench.

http://108.170.220.120:10117/builders/Test-ChromeOS-Daisy-MaliT604-Arm7-Debug/builds/2608/steps/RunBench/logs/stdio

Original issue's description:
> add readPixels() to SkBitmap
>
> BUG=chromium:390782
>
> Committed: https://skia.googlesource.com/skia/+/c4f216151b6ade70c35fade09a353052f40236b1

R=scroggo@google.com, bsalomon@google.com, reed@google.com
TBR=bsalomon@google.com, reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=chromium:390782

Author: jcgregorio@google.com

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

10 years agoPin to a newer version of ANGLE than M36 branch.
jcgregorio [Fri, 11 Jul 2014 13:51:59 +0000 (06:51 -0700)]
Pin to a newer version of ANGLE than M36 branch.

R=robertphillips@google.com
TBR=robertphillips@google.com

BUG=skia:

NOTRY=true

NOTREECHECKS=true

Author: jcgregorio@google.com

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

10 years agoRevert of Add alternate SkPicture::clone (https://codereview.chromium.org/381193002/)
robertphillips [Fri, 11 Jul 2014 13:45:58 +0000 (06:45 -0700)]
Revert of Add alternate SkPicture::clone (https://codereview.chromium.org/381193002/)

Reason for revert:
Going to try to just remove the many-at-once clone interface

Original issue's description:
> Add alternate SkPicture::clone
>
> This adds an alternate version of SkPicture::clone for two reasons:
>
> 1) Chromium uses the SkPicture copy constructor to unpack the pictures from the old-style clone interface (and I would like to remove the copy ctor)
>
> 2) This is part of the long term plan to wean Chrome off of cloning. Once pictures are thread safe we will switch the new SkPicture::clone call to just return 'this'. From there it is a small step to removing clone entirely.
>
> Note that the two versions of clone() is temporary. Once this is landed (and rolled) I will land a Chrome-side patch to remove their use of the old interface (Use new SkPicture::clone interface - https://codereview.chromium.org/380323002/)
>
> Committed: https://skia.googlesource.com/skia/+/e372e78223a8ce916d276d6e0420d552fb0267e9

R=mtklein@google.com, reed@google.com
TBR=mtklein@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true

Author: robertphillips@google.com

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

10 years agomanual bench rebase after bf0b9ce
bensong [Fri, 11 Jul 2014 13:34:58 +0000 (06:34 -0700)]
manual bench rebase after bf0b9ce

R=robertphillips@google.com, jcgregorio@google.com
TBR=robertphillips@google.com

Bypassing trybots:
NOTRY=true

NOTREECHECKS=true

Author: bensong@google.com

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

10 years agoPin to a specific version of ANGLE.
jcgregorio [Fri, 11 Jul 2014 13:30:55 +0000 (06:30 -0700)]
Pin to a specific version of ANGLE.

Pulling from HEAD is dangerous, as we now know. This change is a temporary fix
to open the tree, we need a system for which version of ANGLE we are pinning to.

BUG=skia:

NOTRY=true

NOTREECHECKS=true
R=robertphillips@google.com

Author: jcgregorio@google.com

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

10 years agoAdd file access modes to sk_exists.
bungeman [Thu, 10 Jul 2014 22:18:23 +0000 (15:18 -0700)]
Add file access modes to sk_exists.

Both Windows and Posix 'access' calls take a mode parameter which,
in addition to checking existence, checks access modes.
This change exposes this functionality.

R=mtklein@google.com, reed@google.com

Author: bungeman@google.com

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

10 years agoRevert of Slim Skia down to just one murmur3 implementation. (https://codereview...
reed [Thu, 10 Jul 2014 21:29:43 +0000 (14:29 -0700)]
Revert of Slim Skia down to just one murmur3 implementation. (https://codereview.chromium.org/376183004/)

Reason for revert:
broke 10.6 compile

[17:13:56.863876] [4/336] CXX obj/src/core/core.SkBBoxHierarchyRecord.o
[17:13:56.863997] FAILED: c++ -MMD -MF obj/src/core/core.SkBBoxRecord.o.d -DSK_INTERNAL -DSK_GAMMA_SRGB -DSK_GAMMA_APPLY_TO_A8 -DSK_SCALAR_TO_FLOAT_EXCLUDED -DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=1 -DSK_SUPPORT_GPU=1 -DSK_SUPPORT_OPENCL=0 -DSK_FORCE_DISTANCEFIELD_FONTS=0 -DSK_SCALAR_IS_FLOAT -DSK_BUILD_FOR_MAC -DSK_USE_POSIX_THREADS -DSK_RELEASE -DNDEBUG -I../../include/config -I../../include/core -I../../include/pathops -I../../include/pipe -I../../include/ports -I../../include/utils -I../../include/xml -I../../src/core -I../../src/sfnt -I../../src/image -I../../src/opts -I../../src/utils -I../../include/utils/mac -I../../include/gpu -I../../src/gpu -fasm-blocks -mpascal-strings -O3 -gdwarf-2 -Wnewline-eof -mmacosx-version-min=10.6 -arch x86_64 -mssse3 -fvisibility=hidden -fvisibility-inlines-hidden  -c ../../src/core/SkBBoxRecord.cpp -o obj/src/core/core.SkBBoxRecord.o
[17:13:56.864085] In file included from ../../src/core/SkPictureFlat.h:14,
[17:13:56.864130]                  from ../../src/core/SkPictureData.h:14,
[17:13:56.864173]                  from ../../src/core/SkPictureRecord.h:18,
[17:13:56.864217]                  from ../../src/core/SkBBoxRecord.h:12,
[17:13:56.864261]                  from ../../src/core/SkBBoxRecord.cpp:9:
[17:13:56.864336] ../../src/core/SkChecksum.h: In static member function ‘static uint32_t SkChecksum::Compute(const uint32_t*, size_t)’:
[17:13:56.864397] ../../src/core/SkChecksum.h:127: error: invalid conversion from ‘const uint32_t*’ to ‘const uint32_t*’
[17:13:56.864462] ../../src/core/SkChecksum.h:128: error: invalid conversion from ‘const uint32_t*’ to ‘const uint32_t*’
[17:13:56.864510] ../../src/core/SkChecksum.h:129: error: comparison between distinct pointer types ‘const uint32_t*’ and ‘const uint32_t*’ lacks a cast

Original issue's description:
> Slim Skia down to just one murmur3 implementation.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/6ac0037b70410ff7d5ce5788bc89314223e1a587
>
> Committed: https://skia.googlesource.com/skia/+/67a3271f0de9ccc32d559b042b862528272047cc
>
> Committed: https://skia.googlesource.com/skia/+/53d435990bdb4d14df78013da45a9364d0287ebe

R=mtklein@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: reed@google.com

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

10 years agoEnable tools/CrashHandler again.
mtklein [Thu, 10 Jul 2014 21:16:04 +0000 (14:16 -0700)]
Enable tools/CrashHandler again.

  - Defaults to on the bots, triggered off CHROME_HEADLESS=1 in the environment.
  - Defaults off otherwise.
  - Can be enabled by setting CHROME_HEADLESS=1 (weird) or GYP_DEFINES=skia_crash_handler=1.

BUG=skia:
R=borenet@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoadd readPixels() to SkBitmap
reed [Thu, 10 Jul 2014 21:15:57 +0000 (14:15 -0700)]
add readPixels() to SkBitmap

BUG=chromium:390782
R=scroggo@google.com, bsalomon@google.com

Author: reed@google.com

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

10 years agoAdd alternate SkPicture::clone
robertphillips [Thu, 10 Jul 2014 21:10:58 +0000 (14:10 -0700)]
Add alternate SkPicture::clone

This adds an alternate version of SkPicture::clone for two reasons:

1) Chromium uses the SkPicture copy constructor to unpack the pictures from the old-style clone interface (and I would like to remove the copy ctor)

2) This is part of the long term plan to wean Chrome off of cloning. Once pictures are thread safe we will switch the new SkPicture::clone call to just return 'this'. From there it is a small step to removing clone entirely.

Note that the two versions of clone() is temporary. Once this is landed (and rolled) I will land a Chrome-side patch to remove their use of the old interface (Use new SkPicture::clone interface - https://codereview.chromium.org/380323002/)

R=mtklein@google.com, reed@google.com

Author: robertphillips@google.com

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

10 years agoSlim Skia down to just one murmur3 implementation.
mtklein [Thu, 10 Jul 2014 21:10:45 +0000 (14:10 -0700)]
Slim Skia down to just one murmur3 implementation.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/6ac0037b70410ff7d5ce5788bc89314223e1a587

Committed: https://skia.googlesource.com/skia/+/67a3271f0de9ccc32d559b042b862528272047cc

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoHandle NULL typeface in SampleApp.
Ben Wagner [Thu, 10 Jul 2014 20:21:49 +0000 (16:21 -0400)]
Handle NULL typeface in SampleApp.

It is possible that SampleApp will use the NULL typeface as the default.
This is valid and should be handled properly on shutdown.

10 years agoYet more perlin noise rebaselines.
senorblanco [Thu, 10 Jul 2014 20:02:30 +0000 (13:02 -0700)]
Yet more perlin noise rebaselines.

R=jcgregorio@google.com
TBR=jcgregorio@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: senorblanco@chromium.org

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

10 years agoYou guessed it -- more perlin noise rebaselines.
senorblanco [Thu, 10 Jul 2014 19:42:01 +0000 (12:42 -0700)]
You guessed it -- more perlin noise rebaselines.

R=jcgregorio@google.com
TBR=jcgregorio@google.com
NOTRY=true
NOTREECHECKS=true
BUG=skia:

Author: senorblanco@chromium.org

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

10 years agoIbid.
senorblanco [Thu, 10 Jul 2014 19:01:29 +0000 (12:01 -0700)]
Ibid.

R=jcgregorio@google.com
TBR=jcgregorio@google.com
NOTRY=true
NOTREECHECKS=true
BUG=skia:

Author: senorblanco@chromium.org

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

10 years agoYet more perlin noise rebaselines.
senorblanco [Thu, 10 Jul 2014 18:57:26 +0000 (11:57 -0700)]
Yet more perlin noise rebaselines.

(Apparently my rebaseline_server skills leave something to be desired.)

R=jcgregorio@google.com
TBR=jcgregorio@google.com
NOTRY=true
NOTREECHECKS=true
BUG=skia:

Author: senorblanco@chromium.org

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

10 years agoSome more perlinnoise rebaselines.
senorblanco [Thu, 10 Jul 2014 18:29:20 +0000 (11:29 -0700)]
Some more perlinnoise rebaselines.

R=jcgregorio@google.com
TBR=jcgregorio@google.com
NOTRY=true
NOTREECHECKS=true
BUG=skia:

Author: senorblanco@chromium.org

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

10 years agoUse a consume load in SkLazyPtr.
mtklein [Thu, 10 Jul 2014 18:24:18 +0000 (11:24 -0700)]
Use a consume load in SkLazyPtr.

This only affects ARM, where an acquire needs a memory barrier but consume does not.  I am interested to see if there's a noticeable effect on the Android bots.

BUG=skia:

NOTRY=true
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoRe-add friend Chrome requires
robertphillips [Thu, 10 Jul 2014 18:24:12 +0000 (11:24 -0700)]
Re-add friend Chrome requires

R=jcgregorio@google.com
TBR=jcgregorio@google.com

Author: robertphillips@google.com

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

10 years agoSplit SkTRacy into SkTRacy and SkTRacyReffable.
mtklein [Thu, 10 Jul 2014 18:11:50 +0000 (11:11 -0700)]
Split SkTRacy into SkTRacy and SkTRacyReffable.

Looks like TSAN can't always suppress our existing implementation of SkTRacy
(what is turning here into SkTRacyReffable).  To minimize flakiness, use
SkTRacy where possible and SkTRacyReffable where necessary.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/497cda3a6b72b9cb390334e8756d38b4ffac044f

NOTRY=true
R=robertphillips@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

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

10 years agoNew baselines for perlin noise changes.
senorblanco [Thu, 10 Jul 2014 17:52:21 +0000 (10:52 -0700)]
New baselines for perlin noise changes.

Pixel results affected by ca6a7c29452e13cf63bb4e225972065cbfe6e265

R=jcgregorio@google.com
TBR=jcgregorio@google.com
NOTRY=true
BUG=skia:

Author: senorblanco@chromium.org

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

10 years agoSplit SkTRacy into SkTRacy and SkTRacyReffable.
mtklein [Thu, 10 Jul 2014 17:38:22 +0000 (10:38 -0700)]
Split SkTRacy into SkTRacy and SkTRacyReffable.

Looks like TSAN can't always suppress our existing implementation of SkTRacy
(what is turning here into SkTRacyReffable).  To minimize flakiness, use
SkTRacy where possible and SkTRacyReffable where necessary.

BUG=skia:
R=robertphillips@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

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

10 years agoAdd config to build mips with dsp2 optimizations enabled by default.
Derek Sollenberger [Thu, 10 Jul 2014 17:04:24 +0000 (13:04 -0400)]
Add config to build mips with dsp2 optimizations enabled by default.

R=borenet@google.com

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

10 years agoCleanup SkPicture* classes a bit
robertphillips [Thu, 10 Jul 2014 16:35:12 +0000 (09:35 -0700)]
Cleanup SkPicture* classes a bit

This is an attempt to reduce the number of friends the various SkPicture* classes have.
Probably the only controversial part is making getBitmap, getPath, getPicture and getPaint
public on SkPictureData (and adding a new initIterator entry point).

R=mtklein@google.com, reed@google.com

Author: robertphillips@google.com

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

10 years agoimport google-api-python-client using DEPS
epoger [Thu, 10 Jul 2014 16:03:23 +0000 (09:03 -0700)]
import google-api-python-client using DEPS

BUG=skia:2641
R=jcgregorio@google.com

Author: epoger@google.com

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

10 years agosk_malloc_throw/sk_calloc_throw in debug prints size in failure message
halcanary [Thu, 10 Jul 2014 15:59:38 +0000 (08:59 -0700)]
sk_malloc_throw/sk_calloc_throw in debug prints size in failure message

R=caryclark@google.com, mtklein@google.com, reed@google.com

Author: halcanary@google.com

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

10 years agoDelete third_party/harfbuzz
Mike Klein [Thu, 10 Jul 2014 15:32:44 +0000 (11:32 -0400)]
Delete third_party/harfbuzz

BUG=skia:
R=bungeman@google.com, reed@google.com

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

10 years agoRemove shadows suppression
robertphillips [Thu, 10 Jul 2014 14:57:16 +0000 (07:57 -0700)]
Remove shadows suppression

The 'shadows' GM isn't appearing on the "Recent GM Failures" page. It might have been a blip.

R=jcgregorio@google.com

Author: robertphillips@google.com

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

10 years agoSplit SkPictureReplacementPlayback out of SkPicturePlayback
robertphillips [Thu, 10 Jul 2014 14:21:27 +0000 (07:21 -0700)]
Split SkPictureReplacementPlayback out of SkPicturePlayback

R=mtklein@google.com, reed@google.com

Author: robertphillips@google.com

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

10 years agoSlim Skia down to just one murmur3 implementation.
mtklein [Thu, 10 Jul 2014 13:03:46 +0000 (06:03 -0700)]
Slim Skia down to just one murmur3 implementation.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/6ac0037b70410ff7d5ce5788bc89314223e1a587

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoupdate our build system to support the experimental L-Release NDK
Derek Sollenberger [Thu, 10 Jul 2014 12:10:20 +0000 (08:10 -0400)]
update our build system to support the experimental L-Release NDK

This includes adding 64-bit support for arm, x86, and mips.

R=borenet@google.com

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

10 years agoWhitespace change to verify buildbot scripts after https://skia.googlesource.com...
Eric Boren [Thu, 10 Jul 2014 11:48:52 +0000 (07:48 -0400)]
Whitespace change to verify buildbot scripts after https://skia.googlesource.com/buildbot/+/dd42159

BUG=skia:2682

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

10 years agoUpdate SKP version to 47
borenet [Thu, 10 Jul 2014 07:16:58 +0000 (00:16 -0700)]
Update SKP version to 47

Automatic commit by the RecreateSKPs bot.

TBR=

Author: borenet@google.com

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

10 years agofix typo, had two RGBA instead of RGBA and BGRA
reed [Thu, 10 Jul 2014 00:28:13 +0000 (17:28 -0700)]
fix typo, had two RGBA instead of RGBA and BGRA

TBR=caryclark@google.com
BUG=skia:

Author: reed@chromium.org

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

10 years agoHandle bad ICO data better.
scroggo [Wed, 9 Jul 2014 22:04:20 +0000 (15:04 -0700)]
Handle bad ICO data better.

Interpret size and offset as size_t, as they should be. When read
as int, they could be negative values. If they are negative (rather
than positive and very large), they will not allow us to fail the
length test, resulting in trying to read uninitialized memory.

BUG=b/16010240
R=halcanary@google.com

Author: scroggo@google.com

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

10 years agoAdd suppression for shadows test
robertphillips [Wed, 9 Jul 2014 21:24:00 +0000 (14:24 -0700)]
Add suppression for shadows test

R=jvanverth@google.com
TBR=jcgregorio@google.com

Author: robertphillips@google.com

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

10 years agoRevert of Slim Skia down to just one murmur3 implementation. (https://codereview...
mtklein [Wed, 9 Jul 2014 21:18:52 +0000 (14:18 -0700)]
Revert of Slim Skia down to just one murmur3 implementation. (https://codereview.chromium.org/376183004/)

Reason for revert:
Valgrind unhappy.  skia:2735

Original issue's description:
> Slim Skia down to just one murmur3 implementation.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/6ac0037b70410ff7d5ce5788bc89314223e1a587

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

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

10 years agoMerge Replay and Quilt tasks, adding in all BBH implementations.
mtklein [Wed, 9 Jul 2014 20:10:58 +0000 (13:10 -0700)]
Merge Replay and Quilt tasks, adding in all BBH implementations.

Replay isn't that helpful of a test any more now that we have the more
stringent Quilt tests.  Quilt was missing bounding box hierarchies, though,
while Replay was sort of testing RTree (pointlessly, as it was drawing without
any clip).  Now Quilt does everything, testing RTree, QuadTree, and TileGrid.

Quilt mode now falls back to drawing all at once (i.e. Replay) for GMs that
don't tile perfectly.  Still a TODO to make this check more flexible than exact
pixel matches.

Two GMs fail when using a BBH:
  - imageresizetiled
  - resizeimagefilter
We think we're not adjusting the bounds of save layers by their paint.
This is probably a bug, but one to be fixed separately from adding new tests.

BUG=skia:
R=robertphillips@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoRefactor SkPicturePlayback for SkPictureReplacementPlayback
robertphillips [Wed, 9 Jul 2014 20:00:07 +0000 (13:00 -0700)]
Refactor SkPicturePlayback for SkPictureReplacementPlayback

This CL is intended to maximize code reuse when SkPictureReplacementPlayback is split off.

R=mtklein@google.com

Author: robertphillips@google.com

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

10 years agoRemove useless options from bench
kelvinly [Wed, 9 Jul 2014 19:25:27 +0000 (12:25 -0700)]
Remove useless options from bench

BUG=skia:
R=jcgregorio@google.com, bensong@google.com, bsalomon@google.com, robertphillips@google.com, reed@google.com

Author: kelvinly@google.com

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

10 years agoDo not export SkTDArray when building Skia as a DLL
ehsan.akhgari [Wed, 9 Jul 2014 18:13:55 +0000 (11:13 -0700)]
Do not export SkTDArray when building Skia as a DLL

This class has four members (deleteAll, freeAll, unrefAll and
safeUnrefAll) which will only compile for certain instantiations of
SkTDArray depending on the template argument type.  Marking this class
as dllexport breaks the build with clang-cl because of
http://llvm.org/PR20163.  Since this class is header-only, we can just
make it non-exported to enable building Skia as a DLL with clang-cl.

BUG=skia:
R=ctguil@chromium.org, mtklein@google.com, reed@google.com

Author: ehsan.akhgari@gmail.com

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

10 years agoUpdate one last expectation from gamma change.
jvanverth [Wed, 9 Jul 2014 18:12:06 +0000 (11:12 -0700)]
Update one last expectation from gamma change.

R=bungeman@google.com
TBR=bungeman@google.com

Author: jvanverth@google.com

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

10 years agoImprove gpu tracing when applying markers directly to gpu target
egdaniel [Wed, 9 Jul 2014 17:41:26 +0000 (10:41 -0700)]
Improve gpu tracing when applying markers directly to gpu target

- Change the debug marker strings sent by the GrGpuGL target to only grab the last object
  added to the set of active markers. This improves the readability when we end up with a
  large stack of trace markers. Any trace markers the come from the IODB will continue to
  be squashed into a single debug marker

- Added some more useful, high level markers

BUG=skia:
R=bsalomon@google.com

Author: egdaniel@google.com

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

10 years agoAlways initialize SkDashPathEffect fields.
mtklein [Wed, 9 Jul 2014 16:54:10 +0000 (09:54 -0700)]
Always initialize SkDashPathEffect fields.

SkDashPathEffect is flattened into a hash key as part of the old-and-busted
SkPicture paint deduping code.  If all its fields aren't intialized, this hash
will be based on uninitialized data.  This means the hash won't be
deterministic, and worse, Valgrind and MSAN will make us feel bad.

An alternative to this is to have SkDashPath::CalcDashParameters always
guarantee it writes something to all its output parameters, even when the dash
intervals make no sense.  I like it being dumb and its users defensive, but
could go either way.

BUG=391001
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoAdd bounds checks to SkTDynamicHash
mtklein [Wed, 9 Jul 2014 16:20:54 +0000 (09:20 -0700)]
Add bounds checks to SkTDynamicHash

BUG=391001
R=bsalomon@google.com, mtklein@google.com, sugoi@google.com

Author: mtklein@chromium.org

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

10 years agoCleanup: Remove SkUTF16_Str API.
tfarina [Wed, 9 Jul 2014 16:18:05 +0000 (09:18 -0700)]
Cleanup: Remove SkUTF16_Str API.

It does not have any users in Skia, Blink and Chromium.

BUG=None
TEST=make all
R=mtklein@google.com, reed@google.com

Author: tfarina@chromium.org

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

10 years agoOptimized R11 EAC compressor
krajcevski [Wed, 9 Jul 2014 16:15:45 +0000 (09:15 -0700)]
Optimized R11 EAC compressor

R=robertphillips@google.com

Author: krajcevski@google.com

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

10 years agoSlim Skia down to just one murmur3 implementation.
mtklein [Wed, 9 Jul 2014 15:49:08 +0000 (08:49 -0700)]
Slim Skia down to just one murmur3 implementation.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agonanobench: add median and --cpu/--gpu
mtklein [Wed, 9 Jul 2014 15:46:49 +0000 (08:46 -0700)]
nanobench: add median and --cpu/--gpu

BUG=skia:
R=krajcevski@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoRevert of Make GrGLConfigConversionEffect work for Imagination and some other GPUs...
bsalomon [Wed, 9 Jul 2014 15:14:36 +0000 (08:14 -0700)]
Revert of Make GrGLConfigConversionEffect work for Imagination and some other GPUs. (https://codereview.chromium.org/277323002/)

Reason for revert:
Need to only use the highp variations on GLES contexts not GL contexts.

http://108.170.220.120:10117/builders/Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Release/builds/3398/steps/RunTests/logs/stdio

Original issue's description:
> Make GrGLConfigConversionEffect work for Imagination and some other GPUs.
>
> BUG=372341
>
> Committed: https://skia.googlesource.com/skia/+/93cf46f7d687128d2ad05762bd65fea6c4539553

R=tomhudson@chromium.org, changjun.yang@intel.com, rmistry@google.com, jcgregorio@google.com
NOTREECHECKS=true
NOTRY=true
BUG=372341

Author: bsalomon@google.com

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

10 years agorebaseline_server: cache results in long-running ImageDiffDB instance
epoger [Wed, 9 Jul 2014 14:59:06 +0000 (07:59 -0700)]
rebaseline_server: cache results in long-running ImageDiffDB instance

Rather than rebuilding the ImageDiffDB from scratch every time we update expected/actual results, keep the same ImageDiffDB instance around and add image pairs to it.

This makes updating results within a long-running server.py *much* faster, and tests out an idea I'm ruminating in https://goto.google.com/LongRunningImageDiffDBServer : we could run an ImageDiffDB server that developers could connect to from their locally running rebaseline_server instances, for much faster launch times.

BUG=skia:2414
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

10 years agoRemove ability for Release code to call getRefCnt() or getWeakRefCnt().
mtklein [Wed, 9 Jul 2014 14:52:32 +0000 (07:52 -0700)]
Remove ability for Release code to call getRefCnt() or getWeakRefCnt().

These getRefCnt() methods are not thread safe, so Skia code should not
be calling them.  unique() is fine.

SkDEBUG code (SkASSERTs) can still call getRefCnt() / getWeakRefCnt().

This adds tools/RefCntIs.{h,cpp}, which lets tests make their assertions in
both debug and release modes.

BUG=skia:2726

Committed: https://skia.googlesource.com/skia/+/4ae94ffce5ecf1b71cb5e295b68bf4ec9e697443

R=senorblanco@chromium.org, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

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

10 years agoBuild Android with SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG.
scroggo [Wed, 9 Jul 2014 14:26:40 +0000 (07:26 -0700)]
Build Android with SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG.

This flag will be used on Android when built for the framework,
as well as when built for the WebView. Setting this flag for
Android means our tests can fully test CanvasStateTest.

Fix CanvasStateTest. It has bit-rotted since disabling
SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG.

Splitting off from https://codereview.chromium.org/372003002/ ,
as it seems self-contained.

BUG=b/15693384
R=djsollen@google.com, reed@google.com, mtklein@google.com

Author: scroggo@google.com

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

10 years agoAdd thread safety configuration check.
henrik.smiding [Wed, 9 Jul 2014 14:25:09 +0000 (07:25 -0700)]
Add thread safety configuration check.

Enables the possibility to set thread model in the configuration
files (like Android does).
Also adds a warning check to make sure that we have an
implementation for the thread safety class.

Author: joakim.landberg@intel.com

Signed-off-by: Henrik Smiding <henrik.smiding@intel.com>
R=reed@google.com, mtklein@google.com, tomhudson@google.com, djsollen@google.com, joakim.landberg@intel.com, torne@chromium.org, scroggo@google.com

Author: henrik.smiding@intel.com

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

10 years agoMake GrGLConfigConversionEffect work for Imagination and some other GPUs.
changjun.yang [Wed, 9 Jul 2014 13:47:29 +0000 (06:47 -0700)]
Make GrGLConfigConversionEffect work for Imagination and some other GPUs.

BUG=372341
R=tomhudson@chromium.org, bsalomon@google.com

Author: changjun.yang@intel.com

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

10 years agorebaseline_server: allow JSON to control column filtering
epoger [Wed, 9 Jul 2014 13:19:20 +0000 (06:19 -0700)]
rebaseline_server: allow JSON to control column filtering

Makes the rebaseline_server client more generic, allowing the server to tweak display properties by writing directives into the JSON file.

Adds two new fields to the rebaseline_server JSON file (and thus increments VALUE__HEADER__SCHEMA_VERSION):
1. KEY__ROOT__EXTRACOLUMNORDER: order in which the client should display columns
2. KEY__EXTRACOLUMNHEADERS__USE_FREEFORM_FILTER: whether a column should be filtered using a freeform text field or checkboxes

BUG=skia:2230
NOTRY=True
R=rmistry@google.com

Author: epoger@google.com

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

10 years agoRevert "Remove ability for Release code to call getRefCnt() or getWeakRefCnt()."
Mike Klein [Wed, 9 Jul 2014 13:04:07 +0000 (09:04 -0400)]
Revert "Remove ability for Release code to call getRefCnt() or getWeakRefCnt()."

This reverts commit 4ae94ffce5ecf1b71cb5e295b68bf4ec9e697443.

BUG=skia:

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

10 years agoAdd SkRacy
mtklein [Wed, 9 Jul 2014 02:37:47 +0000 (19:37 -0700)]
Add SkRacy

SkRacy<T> is a zero-overhead wrapper for a T, except it also
silences race warnings when TSAN is running.

Here we apply in several classes.  In SkMatrix and SkPathRef,
we use it to opportunistically cache some idempotent work.

In SkPixelRef, we wrap the genIDs.  We think the worst that
can happen here is we'll increment the global next-genID a
few times instead of once when we go to get another ID.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/d5e3e6ae1b3434ad1158f441902ff65f1eeaa3a7

CQ_EXTRA_TRYBOTS=tryserver.skia:Canary-Chrome-Ubuntu13.10-Ninja-x86_64-ToT-Trybot,Canary-Chrome-Win7-Ninja-x86-SharedLib_ToT-Trybot,Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agomanual bench rebase after d3f3e58, adjusted with a26bbb95a64c1507ba81d39b971f079f3f9c5646
bensong [Tue, 8 Jul 2014 23:05:39 +0000 (16:05 -0700)]
manual bench rebase after d3f3e58, adjusted with a26bbb95a64c1507ba81d39b971f079f3f9c5646

R=borenet@google.com
TBR=borenet@google.com

Bypassing trybots:
NOTRY=true

Author: bensong@google.com

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

10 years agobench rebase tool: add ability to specify a second CL for fluctuating data adjustment.
bensong [Tue, 8 Jul 2014 21:36:56 +0000 (14:36 -0700)]
bench rebase tool: add ability to specify a second CL for fluctuating data adjustment.

R=borenet@google.com
TBR=borenet@google.com
BUG=skia:2657
NOTRY=true

Author: bensong@google.com

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

10 years agoRevert of Add SkRacy (https://codereview.chromium.org/371363004/)
mtklein [Tue, 8 Jul 2014 21:06:46 +0000 (14:06 -0700)]
Revert of Add SkRacy (https://codereview.chromium.org/371363004/)

Reason for revert:
hidden symbol 'AnnotateBenignRaceSized' in obj/base/third_party/dynamic_annotations/libdynamic_annotations.a(obj/base/third_party/dynamic_annotations/dynamic_annotations.dynamic_annotations.o) is referenced by DSO lib/libblink_platform.so

Original issue's description:
> Add SkRacy
>
> SkRacy<T> is a zero-overhead wrapper for a T, except it also
> silences race warnings when TSAN is running.
>
> Here we apply in several classes.  In SkMatrix and SkPathRef,
> we use it to opportunistically cache some idempotent work.
>
> In SkPixelRef, we wrap the genIDs.  We think the worst that
> can happen here is we'll increment the global next-genID a
> few times instead of once when we go to get another ID.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/d5e3e6ae1b3434ad1158f441902ff65f1eeaa3a7

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

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

10 years agoRevert of Missing volatile in AnnotateBenignRaceSized declaration. (https://coderevie...
mtklein [Tue, 8 Jul 2014 21:04:45 +0000 (14:04 -0700)]
Revert of Missing volatile in AnnotateBenignRaceSized declaration. (https://codereview.chromium.org/380473002/)

Reason for revert:
sdf

Original issue's description:
> Missing volatile in AnnotateBenignRaceSized declaration.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/f7a180b

R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

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

10 years agoFixed up SkTimedPicturePlayback
robertphillips [Tue, 8 Jul 2014 20:07:57 +0000 (13:07 -0700)]
Fixed up SkTimedPicturePlayback

This was more motivated to remove the preDraw and postDraw virtuals from SkPicturePlayback.

R=mtklein@google.com, reed@google.com

Author: robertphillips@google.com

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

10 years agoMissing volatile in AnnotateBenignRaceSized declaration.
Mike Klein [Tue, 8 Jul 2014 19:54:06 +0000 (15:54 -0400)]
Missing volatile in AnnotateBenignRaceSized declaration.

BUG=skia:

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

10 years agoAdd SkRacy
mtklein [Tue, 8 Jul 2014 19:30:39 +0000 (12:30 -0700)]
Add SkRacy

SkRacy<T> is a zero-overhead wrapper for a T, except it also
silences race warnings when TSAN is running.

Here we apply in several classes.  In SkMatrix and SkPathRef,
we use it to opportunistically cache some idempotent work.

In SkPixelRef, we wrap the genIDs.  We think the worst that
can happen here is we'll increment the global next-genID a
few times instead of once when we go to get another ID.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

10 years agoAdd missing / in android_gdbserver
tomhudson [Tue, 8 Jul 2014 19:29:54 +0000 (12:29 -0700)]
Add missing / in android_gdbserver

Introduced in https://codereview.chromium.org/22617002, apparently
worked just fine, at least on already-set-up devices. Failing at
least since https://codereview.chromium.org/352303003/.

BUG=skia:2729
R=djsollen@google.com, tomhudson@google.com

Author: tomhudson@chromium.org

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

10 years agoUse BUILD_NATIVE_TEST instead of BUILD_EXECUTABLE.
scroggo [Tue, 8 Jul 2014 18:20:57 +0000 (11:20 -0700)]
Use BUILD_NATIVE_TEST instead of BUILD_EXECUTABLE.

This will generate makefiles for our tools (bench, tests, gm, dm) using
the line "include $(BUILD_NATIVE_TEST)". This has been recommended by the
Android team, as it builds both 32 bit and 64 bit versions of the test.

Do not use LOCAL_MODULE_PATH, which is deprecated (see https://docs.google.com/a/google.com/document/d/1uLAuY7_KYGx1TSzJ9SXkyevT8qNpra2ZoIBkmCoq8VM/edit# ).

Corresponds to ag/498302 , which makes this change just for bench.

R=djsollen@google.com, halcanary@google.com

Author: scroggo@google.com

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

10 years agoadd setPreserveSrcDepth to replace PrefTable API for android
reed [Tue, 8 Jul 2014 18:15:59 +0000 (11:15 -0700)]
add setPreserveSrcDepth to replace PrefTable API for android

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

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

10 years agoUse stack allocation for Android data in SkScalerContext::MakeRec().
jvanverth [Tue, 8 Jul 2014 18:15:48 +0000 (11:15 -0700)]
Use stack allocation for Android data in SkScalerContext::MakeRec().

In a perfvis run on the "Boogie" test page, descriptorProc() during
detachCache() was taking .721 ms, and 20% of that was the flatten() in
MakeRec(). Changing this to a smaller stack allocation reduces the time
for descriptorProc() to .556 ms.

R=reed@google.com, bsalomon@google.com

Author: jvanverth@google.com

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

10 years agoCleanup: Rename UnitTestTest.cpp to RTConfRegistryTest.cpp
tfarina [Tue, 8 Jul 2014 17:33:28 +0000 (10:33 -0700)]
Cleanup: Rename UnitTestTest.cpp to RTConfRegistryTest.cpp

BUG=None
TEST=make tests
R=mtklein@google.com

Author: tfarina@chromium.org

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

10 years agoFix param name in GrEffect::CastEffect
bsalomon [Tue, 8 Jul 2014 17:30:37 +0000 (10:30 -0700)]
Fix param name in GrEffect::CastEffect

R=robertphillips@google.com

Author: bsalomon@google.com

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

10 years agoBack off from SkPicture API hardening a bit
Robert Phillips [Tue, 8 Jul 2014 16:58:20 +0000 (12:58 -0400)]
Back off from SkPicture API hardening a bit

Sigh - Chromium still relies on the old clone functionality

TBR=reed@google.com

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

10 years agoGoodbye GrEffectRef.
bsalomon [Tue, 8 Jul 2014 16:56:10 +0000 (09:56 -0700)]
Goodbye GrEffectRef.

Also, reworked some var names and comments around SkShader::asNewEffect.

R=robertphillips@google.com

Author: bsalomon@google.com

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

10 years agoAdding validation before using an SkImageInfo object read from an SkReadBuffer.
sugoi [Tue, 8 Jul 2014 16:18:48 +0000 (09:18 -0700)]
Adding validation before using an SkImageInfo object read from an SkReadBuffer.

BUG=389574
R=senorblanco@google.com, reed@google.com, senorblanco@chromium.org

Author: sugoi@chromium.org

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

10 years agoClean up SkImageFilter constructors.
senorblanco [Tue, 8 Jul 2014 16:16:22 +0000 (09:16 -0700)]
Clean up SkImageFilter constructors.

Now that all creation of SkImageFilters goes through
factory Create() methods, there's no real reason for the
convenience constructors. Some SkImageFilter subclasses
which actually have zero DAG-able inputs were passing NULL
to the superclass constructor. This actually means 1 input,
with a NULL value, not zero inputs. This becomes more
relevant for the upcoming cache infrastructure, where this
indicates that the filter will use its src input, where in
fact some of these filters do not (they are image generators
only).

Limiting SkImageFilter to a single constructor resolves this
ambiguity.

Along the way, I removed all of the default parameters to
the constructors, since the Create methods always call them
with the full argument list.

BUG=skia:
R=reed@google.com

Author: senorblanco@chromium.org

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

10 years agoHarden SkPicture interface a bit
robertphillips [Tue, 8 Jul 2014 15:38:18 +0000 (08:38 -0700)]
Harden SkPicture interface a bit

With the removal of SkTimedPicture we can now make more of SkPicture private.

R=reed@google.com

Author: robertphillips@google.com

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

10 years agoSplit SkPictureRangePlayback out of SkPicturePlayback
robertphillips [Tue, 8 Jul 2014 15:28:08 +0000 (08:28 -0700)]
Split SkPictureRangePlayback out of SkPicturePlayback

This CL starts cleaning up SkPicturePlayback. Future CLs will:

split out the SkPictureReplacementPlayback
remove the preDraw/postDraw entry points & fix up SkPictureTimedPlayback

R=mtklein@google.com, reed@google.com

Author: robertphillips@google.com

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

10 years agoRemove GrEffect::CreateEffectRef and GrEffect::AutoEffectRef.
bsalomon [Tue, 8 Jul 2014 14:34:20 +0000 (07:34 -0700)]
Remove GrEffect::CreateEffectRef and GrEffect::AutoEffectRef.

R=robertphillips@google.com

Author: bsalomon@google.com

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

10 years agoMake GrDrawState and GrPaint take GrEffect* instead of GrEffectRef*.
bsalomon [Tue, 8 Jul 2014 13:52:35 +0000 (06:52 -0700)]
Make GrDrawState and GrPaint take GrEffect* instead of GrEffectRef*.

Make Sk-effect virtuals produce GrEffect* rather than GrEffectRef*

Make GrEffectRef a typedef for GrEffect.

Committed: https://skia.googlesource.com/skia/+/2011fe9cdfa63b83489a146cea6a724cede352c8

R=robertphillips@google.com

Author: bsalomon@google.com

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