platform/upstream/libSkiaSharp.git
9 years agoZap the scratch key on non-RT textures when scratch textures are disabled.
bsalomon [Fri, 23 Jan 2015 21:19:00 +0000 (13:19 -0800)]
Zap the scratch key on non-RT textures when scratch textures are disabled.

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

9 years agoFix the speeling of "purgeable" in Gr code
bsalomon [Fri, 23 Jan 2015 20:47:59 +0000 (12:47 -0800)]
Fix the speeling of "purgeable" in Gr code

TBR=robertphillips@google.com

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

9 years agoCleanup SkPDFObject::emit*
halcanary [Fri, 23 Jan 2015 19:45:10 +0000 (11:45 -0800)]
Cleanup SkPDFObject::emit*

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

9 years agoremove unused GM flags
mtklein [Fri, 23 Jan 2015 19:07:07 +0000 (11:07 -0800)]
remove unused GM flags

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

Thumbs up to CLion for refactoring this for me.

BUG=skia:

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

9 years agoRemove deprecated SkSurface::NewRenderTarget factories
bsalomon [Fri, 23 Jan 2015 19:02:50 +0000 (11:02 -0800)]
Remove deprecated SkSurface::NewRenderTarget factories

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

9 years agorun clean branch baseline only once
mtklein [Fri, 23 Jan 2015 18:39:55 +0000 (10:39 -0800)]
run clean branch baseline only once

BUG=skia:

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

9 years agoSpin off GM::runAsBench() from flags.
mtklein [Fri, 23 Jan 2015 18:31:45 +0000 (10:31 -0800)]
Spin off GM::runAsBench() from flags.

This will let us kill flags.

BUG=skia:

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

9 years agoFix SampleApp picture-mode transform.
fmalita [Fri, 23 Jan 2015 18:03:15 +0000 (10:03 -0800)]
Fix SampleApp picture-mode transform.

The multi-picture-draw path should not ignore the inherited transform.

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

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

9 years agoTake budgeted param when snapping new image.
bsalomon [Fri, 23 Jan 2015 16:08:04 +0000 (08:08 -0800)]
Take budgeted param when snapping new image.

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

9 years agoFix 'Revert' instructions.
tfarina [Fri, 23 Jan 2015 16:06:13 +0000 (08:06 -0800)]
Fix 'Revert' instructions.

In the not so new pure Git world, 'svn fetch' and 'svn rebase' are not
needed anymore.

BUG=None
R=borenet@google.com

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

9 years agoCollect everything Skia into one document.
halcanary [Fri, 23 Jan 2015 15:52:58 +0000 (07:52 -0800)]
Collect everything Skia into one document.

http://skiadocs.com:8000/dev/contrib/directory?cl=866133002

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

9 years agocheck for too-large rowBytes
reed [Fri, 23 Jan 2015 15:51:14 +0000 (07:51 -0800)]
check for too-large rowBytes

BUG=446164

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

9 years agoIn Correctness Testing Doc, render --option correctly
halcanary [Fri, 23 Jan 2015 15:47:55 +0000 (07:47 -0800)]
In Correctness Testing Doc, render --option correctly

TBR=mtklein@google.com
NOTRY=true

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

9 years agominor changes left out of http://crrev.com/873543002
halcanary [Fri, 23 Jan 2015 15:22:58 +0000 (07:22 -0800)]
minor changes left out of crrev.com/873543002

TBR=mtklein@google.com

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

9 years agoAllow unbudgeted resources to be recycled by the cache as scratch.
bsalomon [Fri, 23 Jan 2015 15:19:22 +0000 (07:19 -0800)]
Allow unbudgeted resources to be recycled by the cache as scratch.

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

9 years agoFix self assigment in GrResourceKey
bsalomon [Fri, 23 Jan 2015 15:17:55 +0000 (07:17 -0800)]
Fix self assigment in GrResourceKey

TBR=robertphillips@google.com

BUG=skia:3340

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

9 years agoAdd a basic doc for correctness testing (DM).
mtklein [Fri, 23 Jan 2015 15:14:16 +0000 (07:14 -0800)]
Add a basic doc for correctness testing (DM).

https://skia.org/dev/contrib/testing?cl=868983002

BUG=skia:

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

9 years agoUpdate compiler warning flags
mtklein [Fri, 23 Jan 2015 15:01:26 +0000 (07:01 -0800)]
Update compiler warning flags

 - add -Wsign-compare, which has been catching useful issues for Kimmo;
 - add -Winit-self and -Wpointer-arith to Mac builds so everyone's using
   the same flags;
 - try try removing -Wno-uninitialized.  This was only for the old 10.6
   compiler that we have warnings set as non-errors now.

BUG=skia:

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

9 years agoRemove GrBinHashKey
bsalomon [Fri, 23 Jan 2015 14:46:16 +0000 (06:46 -0800)]
Remove GrBinHashKey

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

9 years agoCompile fix after Add specialized content key class for resources
kkinnunen [Fri, 23 Jan 2015 14:43:05 +0000 (06:43 -0800)]
Compile fix after Add specialized content key class for resources

gcc (Ubuntu/Linaro 4.6.4-1ubuntu1~12.04) 4.6.4
error: comparison between signed and unsigned integer expressions

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

9 years agoMore changes to SkPDFShader to eliminate multiple inheritance!
halcanary [Fri, 23 Jan 2015 14:17:35 +0000 (06:17 -0800)]
More changes to SkPDFShader to eliminate multiple inheritance!

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

9 years agoadd newImage API
reed [Fri, 23 Jan 2015 13:58:07 +0000 (05:58 -0800)]
add newImage API

BUG=skia:3277
related bug: skbug.com/3276

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

9 years agoWrite dm.json periodically instead of only once at the end.
mtklein [Fri, 23 Jan 2015 13:48:00 +0000 (05:48 -0800)]
Write dm.json periodically instead of only once at the end.

This way if a bot crashes, we might get some partial results in gold rather
than none.  We do the same sort of thing in nanobench for perf.

BUG=skia:3255

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

9 years agominor readability / refactors
mtklein [Fri, 23 Jan 2015 13:47:55 +0000 (05:47 -0800)]
minor readability / refactors

I have been hacking at this test trying to understand why the N5 is
still sometimes crashy (it seems, less but not zero now). No luck so far.

But, while I've been reading and hacking at it, I think I've made a
few small improvements, mostly to readability.

BUG=skia:

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

9 years agomore reinforcement that images never have zero width or height
reed [Fri, 23 Jan 2015 12:24:16 +0000 (04:24 -0800)]
more reinforcement that images never have zero width or height

BUG=skia:

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

9 years agoAdd specialized content key class for resources.
bsalomon [Fri, 23 Jan 2015 12:24:04 +0000 (04:24 -0800)]
Add specialized content key class for resources.

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

9 years agoUpdate SKP version
skia.buildbots [Fri, 23 Jan 2015 12:19:00 +0000 (04:19 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=

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

9 years agoSimplify SkPDFShader class. Now invalid objects are never created.
halcanary [Fri, 23 Jan 2015 12:18:53 +0000 (04:18 -0800)]
Simplify SkPDFShader class.  Now invalid objects are never created.

"Constructors should not do real work"

I have verified that all test PDFs render identically.

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

9 years agoMove FP texture test buffers to heap.
mtklein [Thu, 22 Jan 2015 21:50:35 +0000 (13:50 -0800)]
Move FP texture test buffers to heap.

This is a speculative fix for the crashing N5 bots.  It looks like the bots are
always failing in or around FloatingPointTextureTest.

It looks like sometimes they're hitting a SIGBUS, which I suspect is stack
overflow.  FloatingPointTextureTest allocates ~320K on the stack, which may
be too much.  This CL moves those buffers to the heap.  For consistency I did
the same with the half-float tests, though they're only using ~1/8th the stack.

It looks like sometimes the bots are failing to malloc.  I don't understand that,
and this CL doesn't address that directly.  But it's possible this is still a stack
overflow, just trashing RAM and causing arbitrary mayhem instead of a SIGBUS.

I have no idea why this is a problem only on the N5.  I have been unable to
reproduce this locally, neither with a K N5 nor an L N5, but the bots are pretty
reliable.

NOTREECHECKS=true
BUG=skia:

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

9 years agoremove unnecessary guard flags for android (for conics)
reed [Thu, 22 Jan 2015 21:41:00 +0000 (13:41 -0800)]
remove unnecessary guard flags for android (for conics)

BUG=skia:
NOTREECHECKS=True

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

9 years agoandroid_run_skia: dump logcat on failure
mtklein [Thu, 22 Jan 2015 18:43:34 +0000 (10:43 -0800)]
android_run_skia: dump logcat on failure

logcat -c clears the log before we run.
logcat -d dumps the log stdout and exits.

BUG=skia:

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

9 years agoInitialize the pad memory in GrBufferAllocPool.
dongseong.hwang [Thu, 22 Jan 2015 18:40:20 +0000 (10:40 -0800)]
Initialize the pad memory in GrBufferAllocPool.

Msan bot detects Use-of-uninitialized-value on the pad.

BUG=445745

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

9 years agoPut close_gif() in an anonymous namespace.
mtklein [Thu, 22 Jan 2015 18:32:25 +0000 (10:32 -0800)]
Put close_gif() in an anonymous namespace.

Not a big deal, but matches the intention of it being a file-scoped function
better.  This mirrors a recent google3 change for clients who don't use C++11.

BUG=skia:

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

9 years agoMuck with the right cinfo.
scroggo [Thu, 22 Jan 2015 18:27:25 +0000 (10:27 -0800)]
Muck with the right cinfo.

In SkImageDecoder_libjpeg, modify cinfo *after* destroying it and
creating a new one in its place.

Should fix build breakage.

Committed: https://skia.googlesource.com/skia/+/3629865bac20ae8092177f519594f79f89d09fb0

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

9 years agoRename GrOptDrawState to GrPipeline and GrDrawState to GrPipelineBuilder
egdaniel [Thu, 22 Jan 2015 18:16:09 +0000 (10:16 -0800)]
Rename GrOptDrawState to GrPipeline and GrDrawState to GrPipelineBuilder

BUG=skia:

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

9 years agoremove more dead code
reed [Thu, 22 Jan 2015 17:37:46 +0000 (09:37 -0800)]
remove more dead code

BUG=skia:

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

9 years agoremove (unused) GatherPixelRefs
reed [Thu, 22 Jan 2015 17:03:25 +0000 (09:03 -0800)]
remove (unused) GatherPixelRefs

BUG=skia:

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

9 years agofLuminance is unsed unless SK_GAMMA_APPLY_TO_A8 is defined
mtklein [Thu, 22 Jan 2015 15:59:52 +0000 (07:59 -0800)]
fLuminance is unsed unless SK_GAMMA_APPLY_TO_A8 is defined

BUG=skia:

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

9 years agoFix SkIStream nits.
bungeman [Thu, 22 Jan 2015 15:33:51 +0000 (07:33 -0800)]
Fix SkIStream nits.

Fix comment, constness of one field, and delete already checks for NULL.

TBR=reed@google.com
Trivial change to debatably public api.

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

9 years agoXPFactory lazily initializie in drawstate / GrPaint
joshualitt [Thu, 22 Jan 2015 15:11:44 +0000 (07:11 -0800)]
XPFactory lazily initializie in drawstate / GrPaint

BUG=skia:

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

9 years agoRemove the need for asCoeff in SkXfermode.
egdaniel [Thu, 22 Jan 2015 14:52:29 +0000 (06:52 -0800)]
Remove the need for asCoeff in SkXfermode.

BUG=skia:

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

9 years agoRemove staging SkStream::unref().
bungeman [Thu, 22 Jan 2015 14:08:31 +0000 (06:08 -0800)]
Remove staging SkStream::unref().

SkStream::unref() was added to ease transitioning off of SkStream
deriving from SkRefCnt. It is no longer needed, remove it.

TBR=reed@google.com

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

9 years agoUpdate SKP version
skia.buildbots [Thu, 22 Jan 2015 07:09:41 +0000 (23:09 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=

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

9 years agoDon't require -DSK_USE_POSIX_THREADS.
mtklein [Thu, 22 Jan 2015 03:51:27 +0000 (19:51 -0800)]
Don't require -DSK_USE_POSIX_THREADS.

To compile SkCondVar, we already require either pthreads or Windows.  This
simplifies that code to not need SK_USE_POSIX_THREADS to be explicitly defined.
We'll just look to see if we're targeting Windows, and if not, assume pthreads.

Both before and after this CL, that code will fail to compile if we're not on
Windows and don't have pthreads.

BUG=skia:

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

9 years agoMore natural way to serialize GPU tasks and tests.
mtklein [Wed, 21 Jan 2015 23:50:13 +0000 (15:50 -0800)]
More natural way to serialize GPU tasks and tests.

This basically takes out the Windows-only hacks and promotes them to
cross-platform behavior driven by --gpu_threading.
    - When --gpu_threading is false (the default), this puts GPU tasks and tests
      together in the same GPU enclave.  They all run serially.
    - When --gpu_threading is true, both the tests and the tasks run totally
      independently, just like the thread-safe CPU-bound work.

BUG=skia:3255

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

9 years agoRevert of Muck with the right cinfo. (patchset #2 id:20001 of https://codereview...
bungeman [Wed, 21 Jan 2015 23:08:10 +0000 (15:08 -0800)]
Revert of Muck with the right cinfo. (patchset #2 id:20001 of https://codereview.chromium.org/858333002/)

Reason for revert:
Appears to cause Android dm to segfault.

Original issue's description:
> Muck with the right cinfo.
>
> In SkImageDecoder_libjpeg, modify cinfo *after* destroying it and
> creating a new one in its place.
>
> Should fix build breakage.
>
> Committed: https://skia.googlesource.com/skia/+/3629865bac20ae8092177f519594f79f89d09fb0

TBR=scroggo@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

9 years agoMuck with the right cinfo.
scroggo [Wed, 21 Jan 2015 22:04:57 +0000 (14:04 -0800)]
Muck with the right cinfo.

In SkImageDecoder_libjpeg, modify cinfo *after* destroying it and
creating a new one in its place.

Should fix build breakage.

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

9 years agoEasy DM TODO: LazyDecodeBitmap does not help (or hinder).
mtklein [Wed, 21 Jan 2015 21:48:57 +0000 (13:48 -0800)]
Easy DM TODO: LazyDecodeBitmap does not help (or hinder).

BUG=skia:3255

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

9 years agoDon't test pipe modes nobody uses.
mtklein [Wed, 21 Jan 2015 21:18:51 +0000 (13:18 -0800)]
Don't test pipe modes nobody uses.

SkDeferredCanvas uses a simple pipe: no cross-process, no shared-address, etc.
(see src/utils/SkDeferredCanvas.cpp:306).

We could just remove these modes from the bot configs, but I'd like to take the
opportunity to simplify the DM code too.  I'll happily volunteer to put things
back should we decide we want to test these modes.

BUG=skia:

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

9 years agoMove sync code to include/, switch from using platform define to a proxy header in...
mtklein [Wed, 21 Jan 2015 21:13:31 +0000 (13:13 -0800)]
Move sync code to include/, switch from using platform define to a proxy header in core/

This fixes two problems:
  1)  #include SK_SOME_DEFINE doesn't work well for all our clients.
  2)  Things in include/ are #including things in src/, which we don't like.

TBR=reed@google.com

BUG=skia:

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

9 years agoUse SkLazyPtr in SkPDFGraphicState.cpp
halcanary [Wed, 21 Jan 2015 21:13:22 +0000 (13:13 -0800)]
Use SkLazyPtr in SkPDFGraphicState.cpp

Motivation: currently we rely on mutexes for guarding static
initialization.  These mutexes will go away.

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

9 years agoAnd change SkAutoTUnref<const SkStream to SkAutoTDelete.
scroggo [Wed, 21 Jan 2015 20:33:29 +0000 (12:33 -0800)]
And change SkAutoTUnref<const SkStream to SkAutoTDelete.

Should have been included with https://codereview.chromium.org/860353005/

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

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

9 years agoRemove another caller of SkRef(SkStream)
scroggo [Wed, 21 Jan 2015 20:23:20 +0000 (12:23 -0800)]
Remove another caller of SkRef(SkStream)

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

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

9 years agoUpdate the version of cpu-features that we use for testing.
djsollen [Wed, 21 Jan 2015 20:11:00 +0000 (12:11 -0800)]
Update the version of cpu-features that we use for testing.

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

9 years agoMake SkStream *not* ref counted.
scroggo [Wed, 21 Jan 2015 20:09:53 +0000 (12:09 -0800)]
Make SkStream *not* ref counted.

SkStream is a stateful object, so it does not make sense for it to have
multiple owners. Make SkStream inherit directly from SkNoncopyable.

Update methods which previously called SkStream::ref() (e.g.
SkImageDecoder::buildTileIndex() and SkFrontBufferedStream::Create(),
which required the existing owners to call SkStream::unref()) to take
ownership of their SkStream parameters and delete when done (including
on failure).

Switch all SkAutoTUnref<SkStream>s to SkAutoTDelete<SkStream>s. In some
cases this means heap allocating streams that were previously stack
allocated.

Respect ownership rules of SkTypeface::CreateFromStream() and
SkImageDecoder::buildTileIndex().

Update the comments for exceptional methods which do not affect the
ownership of their SkStream parameters (e.g.
SkPicture::CreateFromStream() and SkTypeface::Deserialize()) to be
explicit about ownership.

Remove test_stream_life, which tested that buildTileIndex() behaved
correctly when SkStream was a ref counted object. The test does not
make sense now that it is not.

In SkPDFStream, remove the SkMemoryStream member. Instead of using it,
create a new SkMemoryStream to pass to fDataStream (which is now an
SkAutoTDelete).

Make other pdf rasterizers behave like SkPDFDocumentToBitmap.

SkPDFDocumentToBitmap delete the SkStream, so do the same in the
following pdf rasterizers:

SkPopplerRasterizePDF
SkNativeRasterizePDF
SkNoRasterizePDF

Requires a change to Android, which currently treats SkStreams as ref
counted objects.

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

9 years agoAdd Contributing to Skia section of docs
hcm [Wed, 21 Jan 2015 20:05:47 +0000 (12:05 -0800)]
Add Contributing to Skia section of docs

BUG=skia:

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

9 years agoLcd request early check in SkFontHost_FreeType::onFilterRec.
bungeman [Wed, 21 Jan 2015 19:55:16 +0000 (11:55 -0800)]
Lcd request early check in SkFontHost_FreeType::onFilterRec.

If the user didn't request lcd, don't spend any time checking if the
FT_Library supports it.

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

9 years agoremove drawtype
joshualitt [Wed, 21 Jan 2015 19:52:36 +0000 (11:52 -0800)]
remove drawtype

BUG=skia:

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

9 years agoReduce overhead of SkFontHost_FreeType::onFilterRec.
bungeman [Wed, 21 Jan 2015 19:19:22 +0000 (11:19 -0800)]
Reduce overhead of SkFontHost_FreeType::onFilterRec.

The current code is using AutoFTAccess just to access the FT_Library.
However, it does not need to resolve the FT_Face, just the FT_Library.
This unecessary overhead and is removed by this change.
The longer term solution is for SkFontMgr to initialize FreeType.

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

9 years agoremove drawType from optState
joshualitt [Wed, 21 Jan 2015 18:16:17 +0000 (10:16 -0800)]
remove drawType from optState

BUG=skia:

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

9 years agoSkPDFCanon
halcanary [Wed, 21 Jan 2015 17:59:14 +0000 (09:59 -0800)]
SkPDFCanon

SkPDFCanon's fields and methods will eventually become part of
SkPDFDocument/SkDocument_PDF.  For now, it exists as a singleton to
preflight that transition.  This replaces three global arrays in
SkPDFFont, SkPDFShader, and SkPDFGraphicsContext.  This code is still
thread-unsafe (http://skbug.com/2683), but moving this functionality
into SkPDFDocument will fix that.

This CL does not change pdf output from either GMs or SKPs.

This change also simplifies some code around the SkPDFCanon methods.

BUG=skia:2683

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

9 years agoReland https://codereview.chromium.org/860333002 with fix for test failures.
bsalomon [Wed, 21 Jan 2015 17:32:40 +0000 (09:32 -0800)]
Reland https://codereview.chromium.org/860333002 with fix for test failures.

Revert "Revert of Make GrScratchKey memory buffer correct size on copy (patchset #1 id:1 of https://codereview.chromium.org/860333002/)"

This reverts commit 988018c817f341c0ce09297b7ba5ba60ba76eba9.

BUG=skia:

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

9 years agoRemove another GM reference.
mtklein [Wed, 21 Jan 2015 16:48:03 +0000 (08:48 -0800)]
Remove another GM reference.

This should make the android self-tests start passing again.
Rebaselined with:
  $ python makefile_writer_tests.py --rebaseline

BUG=skia:

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

9 years agoRevert of Make GrScratchKey memory buffer correct size on copy (patchset #1 id:1...
mtklein [Wed, 21 Jan 2015 16:05:55 +0000 (08:05 -0800)]
Revert of Make GrScratchKey memory buffer correct size on copy (patchset #1 id:1 of https://codereview.chromium.org/860333002/)

Reason for revert:
Our Valgrind bot just spewed out a weird error.  I don't know if it's related, but it looks at least like one of the stacks was in the right area, so I'm going to revert this precautionarily.  Sorry if this is a false positive.

http://build.chromium.org/p/client.skia/builders/Test-Ubuntu12-ShuttleA-GTX550Ti-x86_64-Release-Valgrind/builds/266/steps/dm/logs/stdio

Original issue's description:
> Make GrScratchKey memory buffer correct size on copy
>
> Scratch key memory buffer of a copy of a key was too big. The (new) copy
> was N times uint32_t bytes instead of N bytes.
>
> Adds few tests to resource cache. These tests would not catch the too
> big buffer. This is just a precaution for too small buffers. The main
> idea of the test change is that the scratch key should contain some
> information, so that lookup with a scratch key can also return no
> match. Otherwise testing of scratch lookup result is not indicative of
> correct code (eg. no-information scratch key will always match).
>
> Committed: https://skia.googlesource.com/skia/+/711ef4831363fb8cbdf061dc2c36c65b13c0ccf2

TBR=bsalomon@google.com,kkinnunen@nvidia.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

9 years agoAdd docs for prettify.
jcgregorio [Wed, 21 Jan 2015 16:02:45 +0000 (08:02 -0800)]
Add docs for prettify.

Preview here: http://skia.org/dev/tools/markdown?cl=862933002

BUG=skia:

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

9 years agoRemove tools/tests.
Mike Klein [Wed, 21 Jan 2015 15:56:40 +0000 (10:56 -0500)]
Remove tools/tests.

BUG=skia:
R=bsalomon@google.com

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

9 years agoMake GrScratchKey memory buffer correct size on copy
kkinnunen [Wed, 21 Jan 2015 14:39:14 +0000 (06:39 -0800)]
Make GrScratchKey memory buffer correct size on copy

Scratch key memory buffer of a copy of a key was too big. The (new) copy
was N times uint32_t bytes instead of N bytes.

Adds few tests to resource cache. These tests would not catch the too
big buffer. This is just a precaution for too small buffers. The main
idea of the test change is that the scratch key should contain some
information, so that lookup with a scratch key can also return no
match. Otherwise testing of scratch lookup result is not indicative of
correct code (eg. no-information scratch key will always match).

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

9 years agoUpdate SKP version
skia.buildbots [Wed, 21 Jan 2015 07:04:12 +0000 (23:04 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=

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

9 years agoremove dead SkPersp macros
reed [Wed, 21 Jan 2015 03:58:36 +0000 (19:58 -0800)]
remove dead SkPersp macros

BUG=skia:
TBR=

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

9 years agoAdd perspective divide when we're mapping down to a 2D varying
robertphillips [Tue, 20 Jan 2015 22:37:14 +0000 (14:37 -0800)]
Add perspective divide when we're mapping down to a 2D varying

This fixes a few of the perspective errors in SampleApp but not all.

BUG=skia:3326

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

9 years agoDM: --tests -> --src tests
mtklein [Tue, 20 Jan 2015 21:47:23 +0000 (13:47 -0800)]
DM: --tests -> --src tests

BUG=skia:3255

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

9 years agoPre-cache fDirection and fConvexity for recorded SkPaths too.
mtklein [Tue, 20 Jan 2015 21:47:19 +0000 (13:47 -0800)]
Pre-cache fDirection and fConvexity for recorded SkPaths too.

http://build.chromium.org/p/client.skia/builders/Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN/builds/1211/steps/dm/logs/stdio

I don't see any big perf hit locally:

desk_googlespreadsheetdashed.skp 1.68ms -> 1.74ms 1.04x
             desk_mobilenews.skp  643us ->  665us 1.04x
               desk_tigersvg.skp 51.1us -> 52.5us 1.03x
     desk_jsfiddlehumperclip.skp   37us -> 37.9us 1.02x
               desk_samoasvg.skp  373us ->  380us 1.02x
              desk_wordpress.skp  697us ->  708us 1.02x
                 desk_mapsvg.skp  698us ->  708us 1.02x
             tabl_googleblog.skp  553us ->  560us 1.01x
                desk_wowwiki.skp 1.31ms -> 1.32ms 1.01x
                tabl_mozilla.skp 1.44ms -> 1.45ms 1.01x
                 desk_sfgate.skp  156us ->  157us 1.01x
             desk_chalkboard.skp  376us ->  378us 1x
                  desk_baidu.skp  101us ->  101us 1x
            desk_gmailthread.skp  231us ->  231us 1x
                 desk_carsvg.skp  379us ->  379us 1x
             desk_googlehome.skp 38.1us -> 38.1us 1x
          desk_css3gradients.skp 89.6us -> 89.2us 1x
      desk_googlespreadsheet.skp  549us ->  546us 0.99x
            desk_pokemonwiki.skp 8.67ms -> 8.62ms 0.99x
                    tabl_mlb.skp  294us ->  291us 0.99x
            tabl_gamedeksiam.skp  700us ->  692us 0.99x
           tabl_worldjournal.skp  143us ->  142us 0.99x
                desk_blogger.skp  441us ->  436us 0.99x
                desk_twitter.skp  452us ->  446us 0.99x
                    desk_gws.skp  152us ->  150us 0.99x
                  tabl_gmail.skp 24.2us -> 23.9us 0.99x
                tabl_sahadan.skp 84.7us -> 83.5us 0.99x
                    tabl_cnn.skp 1.24ms -> 1.22ms 0.99x
                  tabl_ukwsj.skp  543us ->  535us 0.99x
           desk_yahooanswers.skp  124us ->  123us 0.99x
                desk_booking.skp  905us ->  891us 0.98x
          tabl_androidpolice.skp 1.76ms -> 1.73ms 0.98x
          desk_ugamsolutions.skp  281us ->  276us 0.98x
                desk_nytimes.skp  209us ->  204us 0.98x
               tabl_techmeme.skp 98.4us -> 96.1us 0.98x
                 tabl_nofolo.skp 59.2us -> 57.8us 0.98x
                desk_weather.skp  244us ->  238us 0.98x
               desk_facebook.skp  546us ->  531us 0.97x
               desk_linkedin.skp  321us ->  311us 0.97x
                   tabl_digg.skp  801us ->  770us 0.96x
      tabl_culturalsolutions.skp  332us ->  319us 0.96x
                 desk_amazon.skp  103us ->   99us 0.96x
               tabl_engadget.skp  610us ->  579us 0.95x
                   tabl_cnet.skp  144us ->  136us 0.95x
               desk_fontwipe.skp 36.6us -> 34.7us 0.95x
                   desk_ebay.skp  173us ->  164us 0.94x
                   tabl_hsfi.skp 5.95us -> 5.58us 0.94x
             tabl_deviantart.skp  134us ->  126us 0.94x
                   desk_espn.skp  261us ->  243us 0.93x

BUG=skia:

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

9 years agoAllow pdf as a --config.
mtklein [Tue, 20 Jan 2015 21:34:39 +0000 (13:34 -0800)]
Allow pdf as a --config.

We just can't run this on the bots yet.  It's fine locally.

BUG=skia:3255

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

9 years agoUpstream support for giflib >= 5.1.
mtklein [Tue, 20 Jan 2015 20:38:06 +0000 (12:38 -0800)]
Upstream support for giflib >= 5.1.

DGifCloseFile now takes two arugments.  The second argument appears to be an
optional out-param with more information on failures.

( c.f. http://giflib.sourceforge.net/gif_lib.html )

PS 1 is the original patch we received from google3.  I've updated it a bit to
be pedantically legal C++98.

BUG=skia:

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

9 years agoMove SkFontMgr and SkFontStyle impls to own cpp.
bungeman [Tue, 20 Jan 2015 19:15:37 +0000 (11:15 -0800)]
Move SkFontMgr and SkFontStyle impls to own cpp.

SkFontMgr and SkFontStyle implementations are currently burried in the
old SkFontHost.cpp file. Move these implementations to their own file
so that the implementations are easier to find, and to make clearer that
SkFontHost.cpp needs to be removed.

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

9 years agoAdd ability to specify gyp dir to gyp_to_android.
scroggo [Tue, 20 Jan 2015 18:39:25 +0000 (10:39 -0800)]
Add ability to specify gyp dir to gyp_to_android.

When running gyp_to_android inside a Skia tree, it uses the gyp program
in third_party/externals. Inside an Android tree, we need to use a
different location for gyp (the Android copy of Skia, in external/skia,
does not contain third_party/externals).

The bot handles this by importing gyp_to_android and running its main
function directly.

Add command line arguments so a human can directly run gyp_to_android.

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

9 years agoconvert pdf design document to markdown
halcanary [Tue, 20 Jan 2015 18:39:06 +0000 (10:39 -0800)]
convert pdf design document to markdown

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

9 years agoRevert "Revert "delete old things!""
bsalomon [Tue, 20 Jan 2015 18:23:01 +0000 (10:23 -0800)]
Revert "Revert "delete old things!""

This reverts commit 8b4489b6e696ce4b1abbffa9b2cbd0d3bfdeb387.
Delete gm and other unused files

TBR=mtklien@google.com

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

9 years agoDo more cleanup from xp changes
egdaniel [Tue, 20 Jan 2015 18:19:22 +0000 (10:19 -0800)]
Do more cleanup from xp changes

BUG=skia:

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

9 years agoImage subsets as part of the name instead of a separate source type.
mtklein [Tue, 20 Jan 2015 18:11:53 +0000 (10:11 -0800)]
Image subsets as part of the name instead of a separate source type.

This will hold us closer to the principle that the test name (and only the test
name) should correspond to expected output.  By the same reasoning, mix in the
number of subsets: if that changes, the expected output also changes.

BUG=skia:3255

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

9 years agoSimplify skiatest framework.
halcanary [Tue, 20 Jan 2015 17:30:20 +0000 (09:30 -0800)]
Simplify skiatest framework.

skiatest::Test class is now a simple struct.  Some
functionalty, such as counting errors or timing is now
handled elsewhere.

skiatest:Reporter is now a simpler abstract class.  The two
implementations handle test errors.

DM and pathops_unittest updated.

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

9 years agoBUG=skia:
joshualitt [Tue, 20 Jan 2015 17:08:51 +0000 (09:08 -0800)]
BUG=skia:

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

9 years agoremove dead code after HQ change
reed [Tue, 20 Jan 2015 16:50:37 +0000 (08:50 -0800)]
remove dead code after HQ change

BUG=skia:

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

9 years agoStop building gm in Android framework build.
scroggo [Tue, 20 Jan 2015 16:25:36 +0000 (08:25 -0800)]
Stop building gm in Android framework build.

Allows us to delete gm.

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

9 years agoremove legacy flags for old image filtering
reed [Tue, 20 Jan 2015 15:41:24 +0000 (07:41 -0800)]
remove legacy flags for old image filtering

BUG=skia:
TBR=

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

9 years agoforce a build with new --config flags
Mike Klein [Tue, 20 Jan 2015 15:24:19 +0000 (10:24 -0500)]
force a build with new --config flags

BUG=skia:

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

9 years agoRemove willReadDst from GrFragmentProcessor.
egdaniel [Tue, 20 Jan 2015 14:34:51 +0000 (06:34 -0800)]
Remove willReadDst from GrFragmentProcessor.

Since only XP's can read dst now, there is no reason to have this query on GrFP.
This also triggered a chain reaction of cleaning up/removing unnecessary code
elsewhere.

BUG=skia:

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

9 years agoRevert of remove unused SkAvoidXfermode (patchset #2 id:20001 of https://codereview...
scroggo [Tue, 20 Jan 2015 14:33:13 +0000 (06:33 -0800)]
Revert of remove unused SkAvoidXfermode (patchset #2 id:20001 of https://codereview.chromium.org/860583002/)

Reason for revert:
Breaking Android framework build, which still uses AvoidXfermode. (failure shown here: https://android-build.storage.googleapis.com/builds/git_master-skia-linux-razor-userdebug/1689202/565b76b4bd8cc2ffd5aeb37e524f6a35e9b8791995d6e8c719a3a6d83aece936/logs/build_error.log?Signature=lHYyiconR%2BoTzY9ILAKlaUm6nFnpJQPTI4XUei1ZccBRyz6PxspCNvYCDO5za92yZSoy9refHT7uh2Hxlxew1ZBePxKCp2nnwJB7a%2B403kiHMHHawjecsbPnTE9QNNO8XMoqAjujcAplorhwsIBZYOCxb%2Bo5010BCfzTd%2F8GFa8%3D&Expires=1421764644&GoogleAccessId=701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com)

Here is the Java class that uses it: https://cs.corp.google.com/#android/frameworks/base/graphics/java/android/graphics/AvoidXfermode.java&sq=package:android

It has been deprecated. The glue code (which actually references the Skia file) is here: https://cs.corp.google.com/#android/frameworks/base/core/jni/android/graphics/Xfermode.cpp&q=Xfermode.cpp&sq=package:android

Mike suggested we move the implementation into Android, which is fine with me.

Original issue's description:
> remove unused SkAvoidXfermode
>
> BUG=skia:
> TBR=
> NOTRY=True
>
> Committed: https://skia.googlesource.com/skia/+/2d02df7a9a50217dac8c1d11681832a927ed79ce

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

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

9 years agoRemove unused TileGridInfo
weiliangc [Tue, 20 Jan 2015 13:57:06 +0000 (05:57 -0800)]
Remove unused TileGridInfo

Chromium no longer uses TileGridInfo as of CL 856853003 and remove this
from skia.

BUG=chromium:447662

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

9 years agoRemove roll_deps and trybots_to_run.
rmistry [Tue, 20 Jan 2015 13:44:46 +0000 (05:44 -0800)]
Remove roll_deps and trybots_to_run.

BUG=skia:

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

9 years agoUpdate SKP version
skia.buildbots [Tue, 20 Jan 2015 07:14:06 +0000 (23:14 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=

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

9 years agoRemove a few unused statements.
cwallez [Mon, 19 Jan 2015 21:57:17 +0000 (13:57 -0800)]
Remove a few unused statements.

BUG=

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

9 years agoBroken dm fix
sugoi [Mon, 19 Jan 2015 18:31:35 +0000 (10:31 -0800)]
Broken dm fix

BUG=skia:

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

9 years agoYUV planes cache
sugoi [Mon, 19 Jan 2015 18:10:27 +0000 (10:10 -0800)]
YUV planes cache

- Added new classes to contain YUV planes of memory, along with the associated data.
- Used these classes in load_yuv_texture() to enable YUV planes caching
- Added a unit test for the new cache

BUG=450021

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

9 years agoUpdate SKP version
skia.buildbots [Mon, 19 Jan 2015 06:42:54 +0000 (22:42 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=

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

9 years agoremove dead header
reed [Mon, 19 Jan 2015 04:12:26 +0000 (20:12 -0800)]
remove dead header

BUG=skia:
TBR=
NOTRY=True
NOTREECHECKS=True

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

9 years agoremove unused SkAvoidXfermode
reed [Mon, 19 Jan 2015 04:01:30 +0000 (20:01 -0800)]
remove unused SkAvoidXfermode

BUG=skia:
TBR=
NOTRY=True

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

9 years agoremove dead code for scalar type
reed [Sun, 18 Jan 2015 19:19:33 +0000 (11:19 -0800)]
remove dead code for scalar type

BUG=skia:
TBR=

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

9 years agotool --help alphabetizes command line flags
halcanary [Sun, 18 Jan 2015 18:39:25 +0000 (10:39 -0800)]
tool --help alphabetizes command line flags

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

9 years agoRefactor position computation to enable device space "nudge"
robertphillips [Sun, 18 Jan 2015 16:14:14 +0000 (08:14 -0800)]
Refactor position computation to enable device space "nudge"

To match raster's handling of BW geometry we want to be able to perform a device space "nudge" on all geometry. This CL sets us up to be able to do that in GrGLVertexBuilder::transformToNormalizedDeviceSpace.

BUG=423834
TBR=bsalomon@google.com

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