platform/upstream/libSkiaSharp.git
9 years agoUse BBH reserve hook to preallocate space for tiles.
mtklein [Thu, 9 Oct 2014 19:36:48 +0000 (12:36 -0700)]
Use BBH reserve hook to preallocate space for tiles.

Before getting too far into changing how SkTileGrid stores its tiles, I figured I'd
better see how much I can tweak out the existing format.  Cleverly, that way
any improvements I make by changing the format will look that much less
impressive.

This CL looks like it will be a 5-15% win in time spent recording, with no effect
on playback.

This CL also shrinks the tiles to fit exactly when we're done inserting,
using newly added SkTDArray::shrinkToFit().  It's quite cheap to run (maybe
taking back 1-2% from those 5-15% wins), and means we'll lug around about 15%
fewer bytes in the tile grids.  Note though this strategy temporarily uses up to
30% more memory while building the tile grid.  For our largest SKPs, that's
maybe 75-100K extra.

BUG=skia:

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

9 years agoFix bug in plot locking system
robertphillips [Thu, 9 Oct 2014 19:30:10 +0000 (12:30 -0700)]
Fix bug in plot locking system

In the new MultiPictureDraw tests a single hoisted layer is reused multiple times. The previous plot locking scheme allowed GrCachedLayer objects to be aggressively deleted prematurely leaving the reusing GrHoistedLayer objects with dangling pointers.

This CL changes the plot locking system to add a pseudo-ref for each GrHoistedLayer.

NOTRY=true

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

9 years agoRefactor GrLayerHoister::FindLayersToHoist to prep for adding clip to cache key
robertphillips [Thu, 9 Oct 2014 19:29:24 +0000 (12:29 -0700)]
Refactor GrLayerHoister::FindLayersToHoist to prep for adding clip to cache key

NOTRY=true

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

9 years agoFix restore in AVMR to have correct coverage count.
egdaniel [Thu, 9 Oct 2014 19:07:20 +0000 (12:07 -0700)]
Fix restore in AVMR to have correct coverage count.

BUG=skia:

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

9 years agoSmall improvements to SkBitSet:
mtklein [Thu, 9 Oct 2014 18:49:30 +0000 (11:49 -0700)]
Small improvements to SkBitSet:
  - implement O(1) operations in SkBitSet.h so they can inline away
  - use calloc to allocate empty bitsets instead of malloc then clear
  - little style things

BUG=skia:

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

9 years agoImprove SkARGB32_A8_BlitMask_SSE2
jmuizelaar [Thu, 9 Oct 2014 18:43:02 +0000 (11:43 -0700)]
Improve SkARGB32_A8_BlitMask_SSE2

With clang this:

-       movzbl  -3(%rbx), %edx
-       pxor    %xmm5, %xmm5
-       pinsrw  $0, %edx, %xmm5
-       pinsrw  $1, %edx, %xmm5
-       movzbl  -2(%rbx), %edx
-       pinsrw  $2, %edx, %xmm5
-       pinsrw  $3, %edx, %xmm5
-       movzbl  -1(%rbx), %edx
-       pinsrw  $4, %edx, %xmm5
-       pinsrw  $5, %edx, %xmm5
-       movzbl  (%rbx), %edx
-       pinsrw  $6, %edx, %xmm5
-       pinsrw  $7, %edx, %xmm5

becomes:

+       movd    (%rbx), %xmm4
+       punpcklbw       %xmm9, %xmm4
+       punpcklwd       %xmm4, %xmm4

And clang already does better codegen than msvc 2013 on this.

BUG=skia:

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

9 years agoAttempt at fixing color cube bench
sugoi [Thu, 9 Oct 2014 18:35:09 +0000 (11:35 -0700)]
Attempt at fixing color cube bench

The original bench was hitting the cache since it was using the same color filter for all loops. By creating a new color filter within the loop, at least this part of it is solved. I'm not 100% sure this is the right way, but at least the numbers are a bit more reasonable and are affected by the output resolution.

BUG=skia:

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

9 years agoWhitespace change to test CQ's trybots
rmistry [Thu, 9 Oct 2014 18:10:33 +0000 (11:10 -0700)]
Whitespace change to test CQ's trybots

(SkipBuildbotRuns)
TBR=
BUG=skia:

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

9 years agoRemove tab parameter from GrGLSLMulVarBy4f function
egdaniel [Thu, 9 Oct 2014 17:34:58 +0000 (10:34 -0700)]
Remove tab parameter from GrGLSLMulVarBy4f function

With pretty printing of shader code, there is no longer a need to explictily
have tabs in our code.

BUG=skia:

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

9 years agoUse presence of a content key as non-scratch indicator
bsalomon [Thu, 9 Oct 2014 16:57:18 +0000 (09:57 -0700)]
Use presence of a content key as non-scratch indicator

BUG=skia:2889

Committed: https://skia.googlesource.com/skia/+/9eefe0851eeaa8ded05b4774ebcb38ed201d5dbf

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

9 years agoClarify what DM means in the README file.
tfarina [Thu, 9 Oct 2014 16:00:29 +0000 (09:00 -0700)]
Clarify what DM means in the README file.

It took me a while to figure out what this acronym meant. ;)
Googling for it lead me to gyp/dm.gyp.

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

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

9 years agoRemove references to out/Debug/tests executable.
tfarina [Thu, 9 Oct 2014 15:56:55 +0000 (08:56 -0700)]
Remove references to out/Debug/tests executable.

This target does not exists anymore, it was folded into out/Debug/dm.
You can't do `ninja -C out/Debug tests` either anymore.

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

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

9 years agoLeak fixed
sugoi [Thu, 9 Oct 2014 15:09:04 +0000 (08:09 -0700)]
Leak fixed

BUG=skia:

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

9 years agogl programs rewrite
joshualitt [Thu, 9 Oct 2014 14:25:36 +0000 (07:25 -0700)]
gl programs rewrite

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/07a255310aca9f3e83bf741dc663a58818ad681c

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

9 years agorename command line flag to avoid conflict, use very verbose
caryclark [Thu, 9 Oct 2014 14:08:59 +0000 (07:08 -0700)]
rename command line flag to avoid conflict, use very verbose

TBR=
NOTRY=true
NOTREECHECKS=true

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

9 years agoAdd SkBBoxHierarchy::reserve() as an optional size hint.
mtklein [Thu, 9 Oct 2014 13:49:47 +0000 (06:49 -0700)]
Add SkBBoxHierarchy::reserve() as an optional size hint.

I want to play around with how SkTileGrid stores its tiles.  Having a
cap on the number of insert() calls can be pretty handy.

While I'm at it, I gave flush() a default empty impl.  Like reserve(),
it's really an optional hook for subclasses.

BUG=skia:

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

9 years agotry again to fix ios build
caryclark [Thu, 9 Oct 2014 13:37:50 +0000 (06:37 -0700)]
try again to fix ios build

TBR=
NOTRY=true
NOTREECHECKS=true

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

9 years agofix ios build
caryclark [Thu, 9 Oct 2014 13:13:49 +0000 (06:13 -0700)]
fix ios build

NOTREECHECKS=true
NOTRY=true
TBR=

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

9 years agoDraw more accurate thick-stroked Beziers (disabled)
caryclark [Thu, 9 Oct 2014 12:36:03 +0000 (05:36 -0700)]
Draw more accurate thick-stroked Beziers (disabled)

Draw thick-stroked Beziers by computing the outset quadratic, measuring the error, and subdividing until the error is within a predetermined limit.

To try this CL out, change src/core/SkStroke.h:18 to

  #define QUAD_STROKE_APPROXIMATION 1

or from the command line: CPPFLAGS="-D QUAD_STROKE_APPROXIMATION=1" ./gyp_skia

Here's what's in this CL:

bench/BezierBench.cpp : a microbench for examining where the time is going
gm/beziers.cpp        : random Beziers with various thicknesses
gm/smallarc.cpp       : a distillation of bug skia:2769
samplecode/SampleRotateCircles.cpp : controls added for error, limit, width
src/core/SkStroke.cpp : the new stroke implementation (disabled)
tests/StrokerTest.cpp : a stroke torture test that checks normal and extreme values

The new stroke algorithm has a tweakable parameter:

  stroker.setError(1);  (SkStrokeRec.cpp:112)

The stroke error is the allowable gap between the midpoint of the stroke quadratic and the center Bezier. As the projection from the quadratic approaches the endpoints, the error is decreased proportionally so that it is always inside the quadratic curve.

An overview of how this works:
- For a given T range of a Bezier, compute the perpendiculars and find the points outset and inset for some radius.
- Construct tangents for the quadratic stroke.
- If the tangent don't intersect between them (may happen with cubics), subdivide.
- If the quadratic stroke end points are close (again, may happen with cubics), draw a line between them.
- Compute the quadratic formed by the intersecting tangents.
- If the midpoint of the quadratic is close to the midpoint of the Bezier perpendicular, return the quadratic.
- If the end of the stroke at the Bezier midpoint doesn't intersect the quad's bounds, subdivide.
- Find where the Bezier midpoint ray intersects the quadratic.
- If the intersection is too close to the quad's endpoints, subdivide.
- If the error is large proportional to the intersection's distance to the quad's endpoints, subdivide.

BUG=skia:723,skia:2769

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

9 years agouse real pdfdevice behind SkDocument
reed [Thu, 9 Oct 2014 12:30:10 +0000 (05:30 -0700)]
use real pdfdevice behind SkDocument

BUG=skia:
TBR=bungeman@google.com

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

9 years agoAdding 3D lut color filter
sugoi [Thu, 9 Oct 2014 12:27:23 +0000 (05:27 -0700)]
Adding 3D lut color filter

Included in this cl is support for 3D textures.

BUG=skia:

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

9 years agoMake the Sk GL context class an abstract base class
kkinnunen [Thu, 9 Oct 2014 12:24:15 +0000 (05:24 -0700)]
Make the Sk GL context class an abstract base class

Make the Sk GL context class, SkGLNativeContext, an abstract base class. Before,
it depended on ifdefs to implement the platform dependent polymorphism.  Move
the logic to subclasses of the various platform implementations.

This a step to enable Skia embedders to compile dm and bench_pictures. The
concrete goal is to support running these test apps with Chromium command buffer.

With this change, Chromium can implement its own version of SkGLNativeContext
that uses command buffer, and host the implementation in its own repository.

Implements the above by renaming the SkGLContextHelper to SkGLContext and
removing the unneeded SkGLNativeContext. Also removes
SkGLNativeContext::AutoRestoreContext functionality, it appeared to be unused:
no use in Skia code, and no tests.

BUG=skia:2992

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

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

9 years agoUpdate old tools to allow MultiPictureDraw rendering
robertphillips [Thu, 9 Oct 2014 11:59:19 +0000 (04:59 -0700)]
Update old tools to allow MultiPictureDraw rendering

I'll post a separate patch for nanobench and dm

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

9 years agoUpdate SKP version to 121
borenet [Thu, 9 Oct 2014 04:24:38 +0000 (21:24 -0700)]
Update SKP version to 121

Automatic commit by the RecreateSKPs bot.

TBR=

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

9 years agowebtry: Simply move sys/ directory into setup/.
tfarina [Thu, 9 Oct 2014 03:05:13 +0000 (20:05 -0700)]
webtry: Simply move sys/ directory into setup/.

That seems to make things more tied and that seems to be where we have
the same scripts/configs in the perf directory:
https://skia.googlesource.com/buildbot/+/master/perf/setup/sys/

That way we keep all files used/related to setting up a new webtry server in one place.

BUG=None
TEST=None
R=humper@google.com

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

9 years agocall derived ~ from GrIORef
bsalomon [Wed, 8 Oct 2014 19:36:54 +0000 (12:36 -0700)]
call derived ~ from GrIORef

TBR=mtklein@google.com
NOTREECHECKS=true

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

9 years agoRemove ~GrIORef since last remaining virtual and now all inline
bsalomon [Wed, 8 Oct 2014 18:42:10 +0000 (11:42 -0700)]
Remove ~GrIORef since last remaining virtual and now all inline

TBR=reed@google.com
NOTRY=true

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

9 years agoRevert of Use presence of a content key as non-scratch indicator (patchset #5 id...
bsalomon [Wed, 8 Oct 2014 18:21:33 +0000 (11:21 -0700)]
Revert of Use presence of a content key as non-scratch indicator (patchset #5 id:80001 of https://codereview.chromium.org/639873002/)

Reason for revert:
breaking nanobench on ubuntu

Original issue's description:
> Use presence of a content key as non-scratch indicator
>
> BUG=skia:2889
>
> Committed: https://skia.googlesource.com/skia/+/9eefe0851eeaa8ded05b4774ebcb38ed201d5dbf

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

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

9 years agouse SkDocument to capture pdfs from SampleApp 'e'
reed [Wed, 8 Oct 2014 18:10:51 +0000 (11:10 -0700)]
use SkDocument to capture pdfs from SampleApp 'e'

BUG=skia:
TBR=
NOTRY=True

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

9 years agoUse presence of a content key as non-scratch indicator
bsalomon [Wed, 8 Oct 2014 17:48:15 +0000 (10:48 -0700)]
Use presence of a content key as non-scratch indicator

BUG=skia:2889

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

9 years agoAdd SK_API to GrGpuResource
bsalomon [Wed, 8 Oct 2014 17:24:07 +0000 (10:24 -0700)]
Add SK_API to GrGpuResource
TBR=reed@google.com

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

9 years agoRebase Nexus 10 gm failure
egdaniel [Wed, 8 Oct 2014 16:38:30 +0000 (09:38 -0700)]
Rebase Nexus 10 gm failure

TBR=robertphillips@google.com

BUG=skia:

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

9 years agopre-build the resources library for the fiddle jail
Greg Humphreys [Wed, 8 Oct 2014 16:36:42 +0000 (12:36 -0400)]
pre-build the resources library for the fiddle jail

BUG=skia:
TBR=jcgregorio

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

9 years agorepair the webtry setup process
Greg Humphreys [Wed, 8 Oct 2014 16:33:31 +0000 (12:33 -0400)]
repair the webtry setup process

The previous version of the script didn't properly update the code for the webtry
user, so only changes to skia would really be pulled, not changes to the actual
webtry server itself.

This version of the setup script is 100% automated and brings everything up to date.

It's also a little more verbose about what it's doing, so it's easier to debug.

BUG=skia:
R=tfarina@chromium.org
TBR=jcgregorio, mtklein, tfarina

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

9 years agoallow fiddles to use the futex system call; fixes fonts finally
Greg Humphreys [Wed, 8 Oct 2014 16:21:41 +0000 (12:21 -0400)]
allow fiddles to use the futex system call; fixes fonts finally

BUG=skia:

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

9 years agoRearrange code in TextContexts to be more consistent and match style guide.
jvanverth [Wed, 8 Oct 2014 16:07:27 +0000 (09:07 -0700)]
Rearrange code in TextContexts to be more consistent and match style guide.

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

9 years agoIn the generated fiddle, set the portable fonts flag first.
Greg Humphreys [Wed, 8 Oct 2014 16:04:20 +0000 (12:04 -0400)]
In the generated fiddle, set the portable fonts flag first.

BUG=skia:
TBR=jcgregorio

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

9 years agoGrResourceCache2 manages scratch texture.
bsalomon [Wed, 8 Oct 2014 15:40:09 +0000 (08:40 -0700)]
GrResourceCache2 manages scratch texture.

BUG=skia:2889

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

9 years agoMake GM default to reseting gpu contexts on android.
bsalomon [Wed, 8 Oct 2014 15:17:11 +0000 (08:17 -0700)]
Make GM default to reseting gpu contexts on android.

TBR=mtklein@google.com

Committed: https://skia.googlesource.com/skia/+/8dd35ce178e4319685a870faf544a0b1d7aef5bb

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

9 years agopreliminary support for fiddle font use
Greg Humphreys [Wed, 8 Oct 2014 15:09:21 +0000 (11:09 -0400)]
preliminary support for fiddle font use

BUG=skia:2998
TBR=jcgregorio, tfarina

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

9 years agoFix conditional check when copying coverage stages in ODS
egdaniel [Wed, 8 Oct 2014 14:39:19 +0000 (07:39 -0700)]
Fix conditional check when copying coverage stages in ODS

BUG=skia:

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

9 years agofix android framework build errors
djsollen [Wed, 8 Oct 2014 14:12:11 +0000 (07:12 -0700)]
fix android framework build errors

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

9 years agoDelay copying effects from DS or ODS till end of creating ODS
egdaniel [Wed, 8 Oct 2014 13:49:10 +0000 (06:49 -0700)]
Delay copying effects from DS or ODS till end of creating ODS

Also delay the removal of fixed function VA's until so we only have to do a single removal step

BUG=skia:

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

9 years agoremove dead code from SK_SUPPORT_LEGACY_IMAGECACHE_NAME
reed [Wed, 8 Oct 2014 13:23:29 +0000 (06:23 -0700)]
remove dead code from SK_SUPPORT_LEGACY_IMAGECACHE_NAME

TBR=

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

9 years agoImplement C path functions
robertphillips [Wed, 8 Oct 2014 13:04:35 +0000 (06:04 -0700)]
Implement C path functions

Mainly just to familiarize myself with this code.

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

9 years agoRevert of Make GM default to reseting gpu contexts on android. (patchset #1 id:1...
bsalomon [Wed, 8 Oct 2014 12:41:24 +0000 (05:41 -0700)]
Revert of Make GM default to reseting gpu contexts on android. (patchset #1 id:1 of https://codereview.chromium.org/635293003/)

Reason for revert:
Crashing on Galaxy Nexus (probably tickled an existing skia or driver bug)

Original issue's description:
> Make GM default to reseting gpu contexts on android.
>
> TBR=mtklein@google.com
>
> Committed: https://skia.googlesource.com/skia/+/8dd35ce178e4319685a870faf544a0b1d7aef5bb

TBR=mtklein@google.com
NOTREECHECKS=true
NOTRY=true

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

9 years agoAdd SkCachedData and use it for SkMipMap
reed [Wed, 8 Oct 2014 12:17:12 +0000 (05:17 -0700)]
Add SkCachedData and use it for SkMipMap

This reverts commit 37c5a815d8ea33247968212ef4cc83394ceee1bc.

TBR=mtklein

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

9 years agoExpose layer hoisting API in GrContext
robertphillips [Wed, 8 Oct 2014 12:17:02 +0000 (05:17 -0700)]
Expose layer hoisting API in GrContext

This CL exposes the layer hoisting API in GrContext for use in SkMultiPictureDraw::draw. It basically mirrors what SkGpuDevice::EXPERIMENTAL_drawPicture has been doing.

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

9 years agoRevert of Make the Sk GL context class an abstract base class (patchset #4 id:60001...
bsalomon [Wed, 8 Oct 2014 11:45:09 +0000 (04:45 -0700)]
Revert of Make the Sk GL context class an abstract base class (patchset #4 id:60001 of https://codereview.chromium.org/630843002/)

Reason for revert:
nanobech failing on Android

Original issue's description:
> Make the Sk GL context class an abstract base class
>
> Make the Sk GL context class, SkGLNativeContext, an abstract base class. Before,
> it depended on ifdefs to implement the platform dependent polymorphism.  Move
> the logic to subclasses of the various platform implementations.
>
> This a step to enable Skia embedders to compile dm and bench_pictures. The
> concrete goal is to support running these test apps with Chromium command buffer.
>
> With this change, Chromium can implement its own version of SkGLNativeContext
> that uses command buffer, and host the implementation in its own repository.
>
> Implements the above by renaming the SkGLContextHelper to SkGLContext and
> removing the unneeded SkGLNativeContext. Also removes
> SkGLNativeContext::AutoRestoreContext functionality, it appeared to be unused:
> no use in Skia code, and no tests.
>
> BUG=skia:2992
>
> Committed: https://skia.googlesource.com/skia/+/a90ed4e83897b45d6331ee4c54e1edd4054de9a8

TBR=kkinnunen@nvidia.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2992

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

9 years agoRevert of speculative fix for ios (patchset #1 id:1 of https://codereview.chromium...
bsalomon [Wed, 8 Oct 2014 11:43:50 +0000 (04:43 -0700)]
Revert of speculative fix for ios (patchset #1 id:1 of https://codereview.chromium.org/637293003/)

Reason for revert:
Need to revert a90ed4e83897b45d6331ee4c54e1edd4054de9a8

Original issue's description:
> speculative fix for ios
>
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/96e89d5b45e8e293139ecd95302b5b4f07f8e9dc

TBR=
NOTREECHECKS=true
NOTRY=true

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

9 years agospeculative fix for ios
Brian Salomon [Wed, 8 Oct 2014 11:40:25 +0000 (07:40 -0400)]
speculative fix for ios

TBR=

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

9 years agoMake GM default to reseting gpu contexts on android.
bsalomon [Wed, 8 Oct 2014 11:20:56 +0000 (04:20 -0700)]
Make GM default to reseting gpu contexts on android.

TBR=mtklein@google.com

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

9 years agoMake the Sk GL context class an abstract base class
kkinnunen [Wed, 8 Oct 2014 11:14:24 +0000 (04:14 -0700)]
Make the Sk GL context class an abstract base class

Make the Sk GL context class, SkGLNativeContext, an abstract base class. Before,
it depended on ifdefs to implement the platform dependent polymorphism.  Move
the logic to subclasses of the various platform implementations.

This a step to enable Skia embedders to compile dm and bench_pictures. The
concrete goal is to support running these test apps with Chromium command buffer.

With this change, Chromium can implement its own version of SkGLNativeContext
that uses command buffer, and host the implementation in its own repository.

Implements the above by renaming the SkGLContextHelper to SkGLContext and
removing the unneeded SkGLNativeContext. Also removes
SkGLNativeContext::AutoRestoreContext functionality, it appeared to be unused:
no use in Skia code, and no tests.

BUG=skia:2992

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

9 years agoUpdate SKP version to 120
borenet [Wed, 8 Oct 2014 04:20:23 +0000 (21:20 -0700)]
Update SKP version to 120

Automatic commit by the RecreateSKPs bot.

TBR=

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

9 years agoCleanup of shader building system
joshualitt [Tue, 7 Oct 2014 23:43:25 +0000 (16:43 -0700)]
Cleanup of shader building system

this is a huge refactor and cleanup of the gl shader building system in
Skia.  The entire shader building pipeline is now part of
GrGLProgramCreator, which takes a gp, and some fps, and creates a
program.  I added some subclasses of GrGLProgram to handle the
eccentricities of Nvpr/Nvpres.  Outside of the builders folder
and GrGLPrograms, this change is basically just a rename

solo gp

BUG=skia:

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

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

9 years agoOnly use msaa target for blur mask when doAA is true
derekf [Tue, 7 Oct 2014 21:44:34 +0000 (14:44 -0700)]
Only use msaa target for blur mask when doAA is true

BUG=skia:2995

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

9 years agoRevert of Cleanup of shader building system (patchset #25 id:470001 of https://codere...
joshualitt [Tue, 7 Oct 2014 19:42:26 +0000 (12:42 -0700)]
Revert of Cleanup of shader building system (patchset #25 id:470001 of https://codereview.chromium.org/611653002/)

Reason for revert:
Seems to have messed up windows 7 gms

Original issue's description:
> Cleanup of shader building system
>
> this is a huge refactor and cleanup of the gl shader building system in
> Skia.  The entire shader building pipeline is now part of
> GrGLProgramCreator, which takes a gp, and some fps, and creates a
> program.  I added some subclasses of GrGLProgram to handle the
> eccentricities of Nvpr/Nvpres.  Outside of the builders folder
> and GrGLPrograms, this change is basically just a rename
>
>
> solo gp
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/fe1233c3f12f81bb675718516bbb32f72af726ec

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

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

9 years agoCleanup of shader building system
joshualitt [Tue, 7 Oct 2014 19:16:35 +0000 (12:16 -0700)]
Cleanup of shader building system

this is a huge refactor and cleanup of the gl shader building system in
Skia.  The entire shader building pipeline is now part of
GrGLProgramCreator, which takes a gp, and some fps, and creates a
program.  I added some subclasses of GrGLProgram to handle the
eccentricities of Nvpr/Nvpres.  Outside of the builders folder
and GrGLPrograms, this change is basically just a rename

solo gp

BUG=skia:

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

9 years agoRevert "GrResourceCache2 manages scratch texture."
Brian Salomon [Tue, 7 Oct 2014 19:07:38 +0000 (15:07 -0400)]
Revert "GrResourceCache2 manages scratch texture."

This reverts commit d14e1a27643125bfef37fa0ed314b64c1fae22b7.

9 years agoStay in floats as much as possible in SkTileGrid, particularly in insert.
mtklein [Tue, 7 Oct 2014 18:46:39 +0000 (11:46 -0700)]
Stay in floats as much as possible in SkTileGrid, particularly in insert.

SkTileGrid::insert() is about 15% of recording time before
this CL, which reduces it to ~10%.  Next steps are looking
into some of the TODOs I've left myself, and vectorizing
the math.

Most of the win here comes from converting integer
divisions into float multiplies.

BUG=skia:1021

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

9 years agoUpdate perspective GMs for dfpaths
jvanverth [Tue, 7 Oct 2014 17:55:42 +0000 (10:55 -0700)]
Update perspective GMs for dfpaths

TBR=egdaniel@google.com

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

9 years agoAdd baselines for dftext GM.
jvanverth [Tue, 7 Oct 2014 17:23:33 +0000 (10:23 -0700)]
Add baselines for dftext GM.

TBR=robertphillips@google.com

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

9 years agoAdd -Wno-invalid-offsetof to Mac and iOS builds too.
mtklein [Tue, 7 Oct 2014 16:54:18 +0000 (09:54 -0700)]
Add -Wno-invalid-offsetof to Mac and iOS builds too.

We use this on Linux already, but for whatever reason wasn't a problem on iOS
until using it in SkPaint.  Mac 10.7 and 10.8 are showing this warning too,
but seems -Werror is not enabled.

CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Release-iOS-Trybot

BUG=skia:

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

9 years agoAdd SkPaint::getHash().
mtklein [Tue, 7 Oct 2014 16:26:10 +0000 (09:26 -0700)]
Add SkPaint::getHash().

BUG=skia:

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

9 years agoRevert of gl programs rewrite (patchset #10 id:180001 of https://codereview.chromium...
joshualitt [Tue, 7 Oct 2014 15:37:36 +0000 (08:37 -0700)]
Revert of gl programs rewrite (patchset #10 id:180001 of https://codereview.chromium.org/628633003/)

Reason for revert:
breaks angle bot

Original issue's description:
> gl programs rewrite
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/07a255310aca9f3e83bf741dc663a58818ad681c

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

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

9 years agogl programs rewrite
joshualitt [Tue, 7 Oct 2014 15:05:21 +0000 (08:05 -0700)]
gl programs rewrite

BUG=skia:

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

9 years agoFix for perspective GMs and df paths.
jvanverth [Tue, 7 Oct 2014 15:04:58 +0000 (08:04 -0700)]
Fix for perspective GMs and df paths.

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

9 years agoFix perspective version of dftext GM
jvanverth [Tue, 7 Oct 2014 14:59:45 +0000 (07:59 -0700)]
Fix perspective version of dftext GM

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

9 years agoGrResourceCache2 manages scratch texture.
bsalomon [Tue, 7 Oct 2014 14:27:07 +0000 (07:27 -0700)]
GrResourceCache2 manages scratch texture.

BUG=skia:2889

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

9 years agoMake createOptDrawState return NULL if we would end up not drawing
egdaniel [Tue, 7 Oct 2014 13:45:44 +0000 (06:45 -0700)]
Make createOptDrawState return NULL if we would end up not drawing

BUG=skia:

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

9 years agoexplicitly delete our c++ window on quit
reed [Tue, 7 Oct 2014 13:42:09 +0000 (06:42 -0700)]
explicitly delete our c++ window on quit

BUG=skia:
TBR=
NOTRY=True

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

9 years agoRevert of Don't readback and reupload texture-backed bitmaps (patchset #1 id:1 of...
bsalomon [Tue, 7 Oct 2014 13:20:25 +0000 (06:20 -0700)]
Revert of Don't readback and reupload texture-backed bitmaps (patchset #1 id:1 of https://codereview.chromium.org/635573004/)

Reason for revert:
This fails on some Android devices, missing part of tileimagefilter GM which were previously triggering the readback/upload code path.

Original issue's description:
> Don't readback and reupload texture-backed bitmaps
>
> Committed: https://skia.googlesource.com/skia/+/b9ab5631703c258f1aae7a3ca1bb4b6596b5b42c

TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true

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

9 years agoAdded more msaa blurring rebaselines & a suppression
robertphillips [Tue, 7 Oct 2014 12:56:24 +0000 (05:56 -0700)]
Added more msaa blurring rebaselines & a suppression

These are rebaselines for: Create MSAA render target for blur mask texture - https://codereview.chromium.org/616923004

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

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

9 years agoGrContext::copyTexture->GrContext::copySurface.
bsalomon [Tue, 7 Oct 2014 12:56:02 +0000 (05:56 -0700)]
GrContext::copyTexture->GrContext::copySurface.

Add a flush writes pixel ops flag.

Add an explicit flush writes for GrSurface.

BUG=skia:2977

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

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

9 years agoDon't readback and reupload texture-backed bitmaps
bsalomon [Tue, 7 Oct 2014 12:19:24 +0000 (05:19 -0700)]
Don't readback and reupload texture-backed bitmaps

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

9 years agoRebaseline multipicturedraw_biglayer_*
robertphillips [Tue, 7 Oct 2014 12:08:12 +0000 (05:08 -0700)]
Rebaseline multipicturedraw_biglayer_*

TBR=reed@google.com
NOTRY=true

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

9 years agoRemove suppressions in ignored-tests.txt
robertphillips [Tue, 7 Oct 2014 11:52:16 +0000 (04:52 -0700)]
Remove suppressions in ignored-tests.txt

This should be safe after: Update suppressed baseline images - https://codereview.chromium.org/605973003/

TBR=reed@google.com
NOTRY=true

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

9 years agoextra call to flush until brian can figure it out
reed [Tue, 7 Oct 2014 11:04:46 +0000 (04:04 -0700)]
extra call to flush until brian can figure it out

BUG=skia:
TBR=bsalomon@google.com

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

9 years agoUpdate SKP version to 119
borenet [Tue, 7 Oct 2014 11:04:36 +0000 (04:04 -0700)]
Update SKP version to 119

Automatic commit by the RecreateSKPs bot.

TBR=

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

9 years agooverride applicationShouldTerminate so we can cleanup when we quit
reed [Tue, 7 Oct 2014 10:59:34 +0000 (03:59 -0700)]
override applicationShouldTerminate so we can cleanup when we quit

BUG=skia:
TBR=

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

9 years agoWhitespace change to test CQ
rmistry [Tue, 7 Oct 2014 10:59:27 +0000 (03:59 -0700)]
Whitespace change to test CQ

NOTRY=true
BUG=skia:

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

9 years agoRebaseline after msaa blur change
bsalomon [Mon, 6 Oct 2014 20:29:22 +0000 (13:29 -0700)]
Rebaseline after msaa blur change

TBR=robertphillips@google.com
NOTRY=true

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

9 years agoUpdate suppressed baseline images
robertphillips [Mon, 6 Oct 2014 19:54:15 +0000 (12:54 -0700)]
Update suppressed baseline images

This updates the non-multipicturedraw GM images suppressed in:
Don't turn on dither for saveLayers which have no paint - https://codereview.chromium.org/619363002/

TBR=reed@google.com
NOTRY=true

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

9 years agoReduce sizes in dftext GM on Android to match desktop better.
jvanverth [Mon, 6 Oct 2014 19:50:54 +0000 (12:50 -0700)]
Reduce sizes in dftext GM on Android to match desktop better.

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

9 years agofix missing webtry output capture display
Greg Humphreys [Mon, 6 Oct 2014 19:40:06 +0000 (15:40 -0400)]
fix missing webtry output capture display

BUG=skia:

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

9 years agorework webtry css with compass and bootstrap
Greg Humphreys [Mon, 6 Oct 2014 19:34:28 +0000 (15:34 -0400)]
rework webtry css with compass and bootstrap

BUG=skia:

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

9 years agoadd surfaceprops to SkWindow, and 'D' to toggle distancefieldfonts
reed [Mon, 6 Oct 2014 19:29:56 +0000 (12:29 -0700)]
add surfaceprops to SkWindow, and 'D' to toggle distancefieldfonts

BUG=skia:

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

9 years agoAdd suppression for multipicturedraw_biglayer GM
robertphillips [Mon, 6 Oct 2014 19:27:53 +0000 (12:27 -0700)]
Add suppression for multipicturedraw_biglayer GM

TBR=reed@google.com
NOTRY=true

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

9 years agoFix some incorrect assumptions in GrLayerCache.cpp
robertphillips [Mon, 6 Oct 2014 19:19:50 +0000 (12:19 -0700)]
Fix some incorrect assumptions in GrLayerCache.cpp

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

9 years agoCreate MSAA render target for blur mask texture
derekf [Mon, 6 Oct 2014 19:19:12 +0000 (12:19 -0700)]
Create MSAA render target for blur mask texture

Original Author: Henry Song <henrysong@samsung.com>

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

9 years agoPlumb OptDrawState down to VertexShaderBuilder
egdaniel [Mon, 6 Oct 2014 19:13:54 +0000 (12:13 -0700)]
Plumb OptDrawState down to VertexShaderBuilder

BUG=skia:

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

9 years agoFix multipicturedraw_biglayer GM
robertphillips [Mon, 6 Oct 2014 18:50:31 +0000 (11:50 -0700)]
Fix multipicturedraw_biglayer GM

Having a layer is a prerequisite for having it be hoisted.

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

9 years agoUpdate baseline GM images
robertphillips [Mon, 6 Oct 2014 18:41:04 +0000 (11:41 -0700)]
Update baseline GM images

This updates the multipicturedraw_* GM images for:

Reduce overdraw in MultiPictureDraw Sierpinski GM - https://codereview.chromium.org/582633003/
Don't turn on dither for saveLayers which have no paint - https://codereview.chromium.org/619363002/

TBR=reed@google.com
NOTRY=true

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

9 years agoRestore a really single-threaded mode to DM.
mtklein [Mon, 6 Oct 2014 18:24:08 +0000 (11:24 -0700)]
Restore a really single-threaded mode to DM.

Used to be:
   0 -> run on main thread plus an autodetected number of extra threads (default)
   N -> run on main thread plus N extra threads

Now it's:
  -1 -> run on main thread plus an autodetected number of extra threads (default)
   0 -> run on main thread
   N -> run on main thread plus N extra threads

BUG=skia:

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

9 years agoimplement some so we can test it
reed [Mon, 6 Oct 2014 18:00:51 +0000 (11:00 -0700)]
implement some so we can test it

NOTRY=True
TBR=

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

9 years agoNew baselines
robertphillips [Mon, 6 Oct 2014 17:57:14 +0000 (10:57 -0700)]
New baselines

New baseline images for multipicturedraw_biglayer* GMs added in (Add a MultiPictureDraw GM to exercise layer clipping - https://codereview.chromium.org/617723004/).

NOTRY=true
TBR=reed@google.com

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

9 years agoUpdate fontcache expectations
jvanverth [Mon, 6 Oct 2014 17:47:58 +0000 (10:47 -0700)]
Update fontcache expectations

TBR=reed@google.com

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

9 years agoFix usage of SK_BUILD_* defines.
tfarina [Mon, 6 Oct 2014 17:46:50 +0000 (10:46 -0700)]
Fix usage of SK_BUILD_* defines.

Since we just 'define' them, but not attribute anything to them, like
'1' for example, cpp expands it to nothing and that breaks the "#if"
clauses.

To fix that, uses "#if defined(...)" which will correctly check if your
macro name was defined or not.

BUG=skia:2850
TEST=make most
R=robertphillips@google.com

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

9 years agoa few more tweaks to the webtry setup doc
humper [Mon, 6 Oct 2014 16:56:14 +0000 (09:56 -0700)]
a few more tweaks to the webtry setup doc

BUG=skia:
TBR=tfarina

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

9 years agoadd environment variable to webtry local run documentation
Greg Humphreys [Mon, 6 Oct 2014 16:33:32 +0000 (12:33 -0400)]
add environment variable to webtry local run documentation

BUG=skia:

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