hcm [Mon, 2 Mar 2015 19:25:25 +0000 (11:25 -0800)]
Add testing section of docs. Consolidated trybot/buildbot section
BUG=skia:
link: http://skiadocs.com:8000/dev/testing/?cl=954523004
Review URL: https://codereview.chromium.org/
954523004
joshualitt [Mon, 2 Mar 2015 19:23:07 +0000 (11:23 -0800)]
small bug fix for batch asserts
BUG=skia:
Review URL: https://codereview.chromium.org/
969043002
robertphillips [Mon, 2 Mar 2015 18:12:17 +0000 (10:12 -0800)]
Minor cleanup of GrInOrderDrawBuffer
Review URL: https://codereview.chromium.org/
969813003
caryclark [Mon, 2 Mar 2015 18:07:56 +0000 (10:07 -0800)]
treat backwards quads as not convex
If a quad, cubic, or conic goes back on itself, assume it's not convex.
In a future CL, we could check to see if the curve is linear so that
linear curves are treated the same as lines.
BUG=skia:3469
Review URL: https://codereview.chromium.org/
971773002
mtklein [Mon, 2 Mar 2015 17:51:44 +0000 (09:51 -0800)]
Revert of DM: run pdf config on the bots. (patchset #1 id:1 of https://codereview.chromium.org/
968953002/)
Reason for revert:
Will try this again after investigating OOMs on Xoom, N5 (i.e. the bots that actually run non-GPU work like PDF).
Original issue's description:
> DM: run pdf config on the bots.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
b12f88152c87e006d04fade4f106669cd9e44677
TBR=stephana@google.com,halcanary@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
959123003
senorblanco [Mon, 2 Mar 2015 17:34:13 +0000 (09:34 -0800)]
Fix for out-of-bounds intersection (found by fuzzer).
Sometimes, the intersection returned by check_intersection() is
out-of-bounds for both edges (above both tops or below both bottoms)
due to floating-point inaccuracy. This causes split_edge() to create a
tiny negative-length edge on one side (which would then assert).
Although we could safely remove this assert and allow the negative
length edge to be removed, it's faster/safer to simply avoid its
creation in the first place by adjusting one edge to the other edge's
endpoint.
Added a new unit test to exercise this case.
Review URL: https://codereview.chromium.org/
968993002
bungeman [Mon, 2 Mar 2015 17:05:36 +0000 (09:05 -0800)]
Set the ttcIndex on Mac onOpenStream.
Since on Mac onOpenStream always creates a new stream of a
non-collection font, be sure the out ttcIndex is always set to 0.
Review URL: https://codereview.chromium.org/
975473002
mtklein [Mon, 2 Mar 2015 16:32:15 +0000 (08:32 -0800)]
DM: run pdf config on the bots.
BUG=skia:
Review URL: https://codereview.chromium.org/
968953002
huangs [Mon, 2 Mar 2015 15:51:17 +0000 (07:51 -0800)]
[Skia] Add SK_API to SkParse.
For https://codereview.chromium.org/
924063003/ , we would like to use the
SkParse::FindColor(). Adding SK_API to SkParse is necessary for component
build to work.
BUG=skia:
Review URL: https://codereview.chromium.org/
971623003
robertphillips [Mon, 2 Mar 2015 14:40:12 +0000 (06:40 -0800)]
Increase GrInOrderDrawBuffer's encapsulation of trace markers
Greg - I think this is mainly you
Joshua - I did make a small batching change in onDrawBatch
Review URL: https://codereview.chromium.org/
963183002
scroggo [Mon, 2 Mar 2015 14:24:15 +0000 (06:24 -0800)]
On windows, build zlib as a static library.
Partially in preparation for building libpng on Windows.
Also, this makes us consistent across platforms for PDF.
Uses the version of zlib checked into the Chromium tree.
Remove miniz, which is replaced by zlib.
Review URL: https://codereview.chromium.org/
966963002
reed [Mon, 2 Mar 2015 03:53:47 +0000 (19:53 -0800)]
add compose-colorfilter
now with serialization registration
This reverts commit
5bd055c0386499f2dc8c66173a7534b75af602bf.
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
970753002
reed [Mon, 2 Mar 2015 03:16:38 +0000 (19:16 -0800)]
Revert of add compose-colorfilter (patchset #2 id:20001 of https://codereview.chromium.org/
969673002/)
Reason for revert:
need to register subclass for serialization
Original issue's description:
> add compose-colorfilter
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
b675a73c1f3f4a433c4893199a0bd11126dfe130
TBR=fmalita@chromium.org,bsalomon@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
971653002
reed [Mon, 2 Mar 2015 02:00:47 +0000 (18:00 -0800)]
add compose-colorfilter
BUG=skia:
Review URL: https://codereview.chromium.org/
969673002
robertphillips [Sun, 1 Mar 2015 15:38:15 +0000 (07:38 -0800)]
Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #10 id:180001 of https://codereview.chromium.org/
949263002/)
Reason for revert:
Experimentally reverting to see if this is the cause of the mac_chromium_rel_ng roll-blocking failures.
Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/
d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
>
> Committed: https://skia.googlesource.com/skia/+/
b2af2d8b83ca4774c3b3bb1e49bc72605faa9589
>
> Committed: https://skia.googlesource.com/skia/+/
0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef
TBR=egdaniel@google.com,bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
970613003
halcanary [Sun, 1 Mar 2015 14:55:20 +0000 (06:55 -0800)]
PDF: Switch some unit tests to higher level API.
Also, clean up some headers.
Review URL: https://codereview.chromium.org/
968683002
skia.buildbots [Sun, 1 Mar 2015 09:11:12 +0000 (01:11 -0800)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
Review URL: https://codereview.chromium.org/
968003002
bsalomon [Sun, 1 Mar 2015 00:56:31 +0000 (16:56 -0800)]
Add msaa runs to nanobench
TBR=mtklein@google.com
Review URL: https://codereview.chromium.org/
964053002
halcanary [Sat, 28 Feb 2015 16:04:33 +0000 (08:04 -0800)]
Doc: update dev/design/pdftheory with new function call
NOTRY=true
TBR=
Review URL: https://codereview.chromium.org/
967873002
bsalomon [Sat, 28 Feb 2015 01:10:02 +0000 (17:10 -0800)]
Improve tracking of bound FBOs in GrGLGpu.
Committed: https://skia.googlesource.com/skia/+/
d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
Committed: https://skia.googlesource.com/skia/+/
b2af2d8b83ca4774c3b3bb1e49bc72605faa9589
Review URL: https://codereview.chromium.org/
949263002
bsalomon [Sat, 28 Feb 2015 00:28:42 +0000 (16:28 -0800)]
Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #8 id:140001 of https://codereview.chromium.org/
949263002/)
Reason for revert:
breaking things
Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/
d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
>
> Committed: https://skia.googlesource.com/skia/+/
b2af2d8b83ca4774c3b3bb1e49bc72605faa9589
TBR=egdaniel@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
963973002
bsalomon [Fri, 27 Feb 2015 23:17:31 +0000 (15:17 -0800)]
Improve tracking of bound FBOs in GrGLGpu.
Committed: https://skia.googlesource.com/skia/+/
d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
Review URL: https://codereview.chromium.org/
949263002
halcanary [Fri, 27 Feb 2015 21:09:07 +0000 (13:09 -0800)]
Flate: skia_alloc_func works on both miniz and zlib
Also, Revert "Revert of Flate: fix valgrind miniz
Conditional-jump-or-move-depends... error"
This reverts commit
6dc4ef01a656a9f7c3087eec2ff5142c707ceb7f.
The alloc functions really do have different types depending
on zlib implementation.
CQ_INCLUDE_TRYBOTS=client.skia:Linux Builder-Trybot
Review URL: https://codereview.chromium.org/
963853002
joshualitt [Fri, 27 Feb 2015 21:00:56 +0000 (13:00 -0800)]
nexus 9 fix
TBR=
BUG=skia:
Review URL: https://codereview.chromium.org/
966773004
halcanary [Fri, 27 Feb 2015 20:41:03 +0000 (12:41 -0800)]
PDF: Canon now owns a reference to all interned objects
Add SkPDFCanon::reset function to unref all objects.
No longer possible to remove object from canon
Motivation: this doesn't change these object's lifetime, (they will
still be fully unrefed when SkDocument::close() is called, but we no
longer have to remove them from the array when their destructor is
called.
Review URL: https://codereview.chromium.org/
966863002
joshualitt [Fri, 27 Feb 2015 19:41:49 +0000 (11:41 -0800)]
Dash batch
BUG=skia:
Review URL: https://codereview.chromium.org/
925673002
schenney [Fri, 27 Feb 2015 19:39:58 +0000 (11:39 -0800)]
Revert of Flate: fix valgrind miniz Conditional-jump-or-move-depends... error (patchset #2 id:20001 of https://codereview.chromium.org/
964933003/)
Reason for revert:
Breaks the chrome build.
../../third_party/skia/src/core/SkFlate.cpp:37:22: error: assigning to 'MOZ_Z_alloc_func' (aka 'MOZ_Z_voidpf (*)(MOZ_Z_voidpf, MOZ_Z_uInt, MOZ_Z_uInt)') from incompatible type 'void *(*)(void *, size_t, size_t)': type mismatch at 2nd parameter ('MOZ_Z_uInt' (aka 'unsigned int') vs 'size_t' (aka 'unsigned long'))
flateData.zalloc = &skia_alloc_func;
^ ~~~~~~~~~~~~~~~~
../../third_party/skia/src/core/SkFlate.cpp:180:28: error: assigning to 'MOZ_Z_alloc_func' (aka 'MOZ_Z_voidpf (*)(MOZ_Z_voidpf, MOZ_Z_uInt, MOZ_Z_uInt)') from incompatible type 'void *(*)(void *, size_t, size_t)': type mismatch at 2nd parameter ('MOZ_Z_uInt' (aka 'unsigned int') vs 'size_t' (aka 'unsigned long'))
fImpl->fZStream.zalloc = &skia_alloc_func;
Original issue's description:
> Flate: fix valgrind miniz Conditional-jump-or-move-depends... error
>
> Committed: https://skia.googlesource.com/skia/+/
e0638f8ecfb609c89cab1aa8b498ad3f368b89d3
TBR=mtklein@google.com,halcanary@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
964953002
halcanary [Fri, 27 Feb 2015 18:39:28 +0000 (10:39 -0800)]
Flate: fix valgrind miniz Conditional-jump-or-move-depends... error
Review URL: https://codereview.chromium.org/
964933003
reed [Fri, 27 Feb 2015 18:23:00 +0000 (10:23 -0800)]
Revert of Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #1 id:1 of https://codereview.chromium.org/
966753002/)
Reason for revert:
Android has been updated, so we can re-land this.
Original issue's description:
> Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #3 id:40001 of https://codereview.chromium.org/
964613002/)
>
> Reason for revert:
> This breaks Android framework build. See
>
> https://android-build.storage.googleapis.com/builds/git_master-skia-linux-volantisg-userdebug/1759130/7f0fcdbf3c0d47530d770a15c912298dac20dd7d90a01de63ecb9ba16c96b25c/logs/build_error.log?Expires=
1425047630&GoogleAccessId=
701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Signature=BHPS1lffyH7WykwyEw5RXVVXWqQK5rab%2B6Pl1VaUrTlmWT%2FXb6fq%2FBe22AUDZYFPG24MBR%2F2IzIDzTqH3mihQS9wIkcKJ4kJpA2G%2BI3l8jCX20brZSr3bsDSx%2F4wsLwU1bBpIxI%2FbrauoPRqddbXP8sNI1l51u6ZCxpvRQms9Mc%3D
>
> We need to stop them from using kIgnore before we can reland this.
>
> Original issue's description:
> > replace kIgnore_SkAlphaType with kUnknown_SkAlphaType
> >
> > BUG=skia:
> > TBR=
> >
> > Committed: https://skia.googlesource.com/skia/+/
1c8aeeaebce9675197be31bd769e8ffa2531bf86
>
> TBR=reed@google.com,reed@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
574290f61a47bd1ce1f9e2d941533bda9c8f03fe
TBR=reed@chromium.org,scroggo@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
966853002
bsalomon [Fri, 27 Feb 2015 18:13:36 +0000 (10:13 -0800)]
Test msaa on bots using dm. 4 samples for Android, 16 elsewhere
Review URL: https://codereview.chromium.org/
958033004
joshualitt [Fri, 27 Feb 2015 18:06:15 +0000 (10:06 -0800)]
Context batches
BUG=skia:
Review URL: https://codereview.chromium.org/
913253003
robertphillips [Fri, 27 Feb 2015 16:50:34 +0000 (08:50 -0800)]
Decrease GrInOrderDrawBuffer::Cmd's reliance on GrInOrderDrawBuffer
Review URL: https://codereview.chromium.org/
940533003
fmalita [Fri, 27 Feb 2015 16:46:39 +0000 (08:46 -0800)]
Clang warnings for SkFontHost_FreeType_common.cpp
Signed/unsigned comparison warnings while attempting to build with Clang
on Linux.
R=bungeman@google.com,joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
961103002
robertphillips [Fri, 27 Feb 2015 16:31:57 +0000 (08:31 -0800)]
Add rewind capability to SkChunkAlloc
Split off from https://codereview.chromium.org/
940533003/ (Decrease GrInOrderDrawBuffer::Cmd's reliance on GrInOrderDrawBuffer)
Review URL: https://codereview.chromium.org/
967553003
fmalita [Fri, 27 Feb 2015 15:44:47 +0000 (07:44 -0800)]
[SkSVGDevice] drawBitmap* support
Also fix a clip transform issue: clips are tracked in device space,
but if applied directly to leaf elements they are also subject to local
transforms ("transform='...'"). Instead, apply via <g> wrapper elements.
R=reed@google.com,mtklein@google.com
Review URL: https://codereview.chromium.org/
959883003
herb [Fri, 27 Feb 2015 15:22:48 +0000 (07:22 -0800)]
Make the glyph array entries inline.
Perf Reports
bin/c --match nytimes --config 8888
desk_nytimes.skp_1_mpd 1.41ms -> 1.38ms 0.98x
desk_nytimes.skp_1 1.94ms -> 1.87ms 0.97x
bin/c --match nytimes --config gpu
desk_nytimes.skp_1_mpd 1.63ms -> 1.59ms 0.97x
desk_nytimes.skp_1 1.56ms -> 1.5ms 0.97x
Here are results from mac instruments:
--match nytimes --config gpu --samples 10000 --skps /Users/herb/src/skia/skps
Inline:
Total Samples Running Time Self Symbol Name
94335 94335.0ms 98.3% 0.0 start
2365 2365.0ms 2.4% 2365.0 SkGlyphCache::getGlyphIDMetrics(unsigned short, int, int)
975 975.0ms 1.0% 975.0 SkGlyphCache::lookupMetrics(unsigned int, SkGlyphCache::MetricsType)
Clean:
Total Samples Running Time Self Symbol Name
96833 96833.0ms 97.3% 0.0 start
3418 3418.0ms 3.4% 3418.0 SkGlyphCache::getGlyphIDMetrics(unsigned short, int, int)
1961 1961.0ms 1.9% 1961.0 SkGlyphCache::lookupMetrics(unsigned int, SkGlyphCache::MetricsType)
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
4c08f16b252a55e438a61f26e5581394ed177da1
Committed: https://skia.googlesource.com/skia/+/
b4c29ac173e6f8844327338687248b98bc94132d
Review URL: https://codereview.chromium.org/
885903002
scroggo [Fri, 27 Feb 2015 14:21:58 +0000 (06:21 -0800)]
Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #3 id:40001 of https://codereview.chromium.org/
964613002/)
Reason for revert:
This breaks Android framework build. See
https://android-build.storage.googleapis.com/builds/git_master-skia-linux-volantisg-userdebug/1759130/7f0fcdbf3c0d47530d770a15c912298dac20dd7d90a01de63ecb9ba16c96b25c/logs/build_error.log?Expires=
1425047630&GoogleAccessId=
701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Signature=BHPS1lffyH7WykwyEw5RXVVXWqQK5rab%2B6Pl1VaUrTlmWT%2FXb6fq%2FBe22AUDZYFPG24MBR%2F2IzIDzTqH3mihQS9wIkcKJ4kJpA2G%2BI3l8jCX20brZSr3bsDSx%2F4wsLwU1bBpIxI%2FbrauoPRqddbXP8sNI1l51u6ZCxpvRQms9Mc%3D
We need to stop them from using kIgnore before we can reland this.
Original issue's description:
> replace kIgnore_SkAlphaType with kUnknown_SkAlphaType
>
> BUG=skia:
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/
1c8aeeaebce9675197be31bd769e8ffa2531bf86
TBR=reed@google.com,reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
966753002
reed [Fri, 27 Feb 2015 14:00:33 +0000 (06:00 -0800)]
replace kIgnore_SkAlphaType with kUnknown_SkAlphaType
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
964613002
brucedawson [Thu, 26 Feb 2015 21:28:53 +0000 (13:28 -0800)]
Initialize three locals to avoid the risk of uninitialized reads.
/analyze recently reported two new warnings about reading from
potentially uninitialized local variables:
src\third_party\skia\src\gpu\grclipmaskmanager.cpp(290) :
warning C6001: Using uninitialized memory 'requiresAA'.
src\third_party\skia\src\gpu\grclipmaskmanager.cpp(336) :
warning C6001: Using uninitialized memory 'genID'.
It is not clear whether the uninitialized reads can actually happen,
but the guarantees seem sufficiently non-obvious that the prudent thing
to do to guarantee future stability is to initialized them -- it's
cheap. I also initialized initialState because it seemed to fall in
the same class, despite there being no warning for it.
BUG=427616
Review URL: https://codereview.chromium.org/
957133002
mtklein [Thu, 26 Feb 2015 21:25:05 +0000 (13:25 -0800)]
miniz support in SkFlate / PDF
- Adds miniz.c v115_r4 (latest release) to third_party.
- Merges SkDeflateWStream into SkFlate so including "miniz.c" links
without duplicating symbols.
The only interesting code change I've made is to remove the line
fImpl->fZStream.data_type = Z_BINARY;
from SkDeflateWStream::SkDeflateWStream(). miniz doesn't have Z_BINARY
defined, and as far as I can tell, both zlib and miniz ignore data_type.
We should be able to swap skflate.gyp's dependency between zlib.gyp:zlib and
zlib.gyp:miniz at will (except of course on Windows) if we're interested in
zlib itself. I've left android framework on its own zlib. I think this all
means we can stop defining SK_NO_FLATE on Windows.
I'll leave the possible cleanup of SK_NO_FLATE itself for another time. Might
be we always want to keep this dependency optional.
CQ_EXTRA_TRYBOTS=client.skia:Test-Win8-ShuttleA-HD7770-x86-Debug-Trybot
BUG=skia:
Review URL: https://codereview.chromium.org/
957323003
bsalomon [Thu, 26 Feb 2015 21:05:21 +0000 (13:05 -0800)]
Cleanup in GrPipelineBuilder
Review URL: https://codereview.chromium.org/
956363003
mtklein [Thu, 26 Feb 2015 20:48:05 +0000 (12:48 -0800)]
Add sqrt() and rsqrt() to Sk4f.
This doesn't add them to the second-stringer Sk4i. It's unclear we should be
doing that often, and we don't have efficient ways to do it except via floats.
BUG=skia:
Review URL: https://codereview.chromium.org/
964603002
mtklein [Thu, 26 Feb 2015 20:21:25 +0000 (12:21 -0800)]
Think implicit promotion is a good idea?
Things like foo.multiply(Sk4f(t,t,t,t)) can just be foo.multiply(t).
BUG=skia:
Review URL: https://codereview.chromium.org/
960773005
rmistry [Thu, 26 Feb 2015 19:52:05 +0000 (11:52 -0800)]
Automatically add NOTREECHECKS when uploading CLs from non master branches
These changes are possible due to the recently submitted depot_tools change
https://codereview.chromium.org/
949273002/ ('Add ability to specify and run post upload hooks').
BUG=skia:
Review URL: https://codereview.chromium.org/
963553002
bsalomon [Thu, 26 Feb 2015 19:24:57 +0000 (11:24 -0800)]
Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #6 id:100001 of https://codereview.chromium.org/
949263002/)
Reason for revert:
breaking hd2000 windows bots
Original issue's description:
> Improve tracking of bound FBOs in GrGLGpu.
>
> Committed: https://skia.googlesource.com/skia/+/
d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0
TBR=egdaniel@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
964543002
humper [Thu, 26 Feb 2015 19:07:23 +0000 (11:07 -0800)]
remove unnecessary and confusing error message from scaler
(also fix whitespace)
BUG=skia:
Review URL: https://codereview.chromium.org/
958013004
mtklein [Thu, 26 Feb 2015 18:43:16 +0000 (10:43 -0800)]
add auto SkPMFloat <-> Sk4f conversion
BUG=skia:
Review URL: https://codereview.chromium.org/
954323002
rmistry [Thu, 26 Feb 2015 18:16:13 +0000 (10:16 -0800)]
Automatically add a docs preview link and NOTRY=true when there are only docs changes.
These changes are possible due to the recently submitted depot_tools change
https://codereview.chromium.org/
949273002/ ('Add ability to specify and run post upload hooks').
BUG=skia:3474
Review URL: https://codereview.chromium.org/
960203002
mtklein [Thu, 26 Feb 2015 18:14:15 +0000 (10:14 -0800)]
Spin off some fixes to land right away.
BUG=skia:
Review URL: https://codereview.chromium.org/
960023002
scroggo [Thu, 26 Feb 2015 17:52:12 +0000 (09:52 -0800)]
Fix SampleApp build on iOS.
Remove references to kNullGPU_DeviceType, which has been removed.
Review URL: https://codereview.chromium.org/
960133004
joshualitt [Thu, 26 Feb 2015 16:47:52 +0000 (08:47 -0800)]
Some small code tidying
BUG=skia:
Review URL: https://codereview.chromium.org/
961813002
bsalomon [Thu, 26 Feb 2015 15:56:22 +0000 (07:56 -0800)]
Improve tracking of bound FBOs in GrGLGpu.
Review URL: https://codereview.chromium.org/
949263002
Stephen White [Thu, 26 Feb 2015 15:11:20 +0000 (10:11 -0500)]
Win64 warning fix for GrTessellatingPathRenderer.
BUG=skia:
Review URL: https://codereview.chromium.org/
956293003
senorblanco [Thu, 26 Feb 2015 14:58:17 +0000 (06:58 -0800)]
Tessellating GPU path renderer.
This path renderer converts paths to linear contours, resolves intersections via Bentley-Ottman, implements a trapezoidal decomposition a la Fournier and Montuno to produce triangles, and renders those with a single draw call. It does not currently do antialiasing, so it must be used in conjunction with multisampling.
A fair amount of the code is to handle floating point edge cases in intersections. Rather than perform exact computations (which would require arbitrary precision arithmetic), we reconnect the mesh to reflect the intersection points. For example, intersections can occur above the current vertex, and force edges to be merged into the current vertex, requiring a restart of the intersections. Splitting edges for intersections can also force them to merge with formerly-distinct edges in the same polygon, or to violate the ordering of the active edge list, or the active edge state of split edges.
BUG=skia:
Review URL: https://codereview.chromium.org/
855513004
fmalita [Thu, 26 Feb 2015 01:47:06 +0000 (17:47 -0800)]
Revert of Use an image generator to back SkPictureShader tiles. (patchset #4 id:60001 of https://codereview.chromium.org/
866773002/)
Reason for revert:
TSAN troubles.
Original issue's description:
> Use an image generator to back SkPictureShader tiles.
>
> To avoid lifetime issues for tiles backed by discardable memory, use an
> image generator to re-generate them on the fly.
>
> With this CL, we are now caching bitmap shaders wrapping discardable
> pixel ref bitmaps backed by picture image generators.
>
> (the CL also includes some minor/unrelated SkPictureShader cleanup)
>
> BUG=skia:3220
> R=reed@google.com,halcanary@google.com
>
> Committed: https://skia.googlesource.com/skia/+/
4739955e98ba86900a5bbac0e3661601427a54d4
TBR=reed@google.com,halcanary@google.com,mtklein@google.com,reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3220
Review URL: https://codereview.chromium.org/
956143002
joshualitt [Wed, 25 Feb 2015 22:09:45 +0000 (14:09 -0800)]
adding preabandon flag to DM
BUG=skia:
Review URL: https://codereview.chromium.org/
929243004
joshualitt [Wed, 25 Feb 2015 21:19:48 +0000 (13:19 -0800)]
I'd really like to land this before the branch so speedy reviews are appreciated.
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
586d5d640b19860dfbbd903a5188da1bbbe87336
Review URL: https://codereview.chromium.org/
936943002
joshualitt [Wed, 25 Feb 2015 21:04:43 +0000 (13:04 -0800)]
Revert of Pass clip to context (patchset #8 id:180001 of https://codereview.chromium.org/
936943002/)
Reason for revert:
Strange blur problems on nexus 5
Original issue's description:
> I'd really like to land this before the branch so speedy reviews are appreciated.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
586d5d640b19860dfbbd903a5188da1bbbe87336
TBR=jvanverth@google.com,senorblanco@google.com,bsalomon@google.com,senorblanco@chromium.org,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
956083002
mtklein [Wed, 25 Feb 2015 20:52:57 +0000 (12:52 -0800)]
Clean up ColorRectProc plumbing.
We've always been using the portable ColorRect32, so we don't need the
ColorRectProc plumbing.
Furthermore, ColorRect32 doesn't seem to be very important (we're only using
it in the opaque case, which our row-by-row procs already specialize for).
Remove that too.
If we find we want specialization for really narrow rects again, let's put it in
blitRect() directly. It's pretty unlikely we're going to get platform-specific
speedup for blits to non-contiguous memory.
My local SKP comparison is +- 3%... most neutral I've ever seen.
BUG=skia:
Review URL: https://codereview.chromium.org/
959873002
mtklein [Wed, 25 Feb 2015 20:51:55 +0000 (12:51 -0800)]
Fix the race to set the new gen ID.
There's a small window where two threads can both see the gen ID is zero,
both go get new distinct genIDs, but race to write them.
This now uses compare_exchange to read and leave the winner's ID in place
when there's a race.
SkAtomics isn't public.
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
956013002
bungeman [Wed, 25 Feb 2015 20:30:48 +0000 (12:30 -0800)]
Remove SK_USE_LEGACY_AA_COVERAGE guarded code.
It doesn't appear anyone uses this flag anymore.
Review URL: https://codereview.chromium.org/
943053004
jcgregorio [Wed, 25 Feb 2015 19:49:15 +0000 (11:49 -0800)]
Shorten up some site titles, also remove some trailing whitespace.
BUG=skia:
Review URL: https://codereview.chromium.org/
956853005
joshualitt [Wed, 25 Feb 2015 19:21:21 +0000 (11:21 -0800)]
I'd really like to land this before the branch so speedy reviews are appreciated.
BUG=skia:
Review URL: https://codereview.chromium.org/
936943002
mtklein [Wed, 25 Feb 2015 17:10:57 +0000 (09:10 -0800)]
Steal a bit from the gen ID instead of managing two atomic values.
This extra atomic bool is hard to think about, and I'm worried about how
updates to fGenerationID and fUniqueGenerationID interlace. By storing
them in the same int, they can't ever race.
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot
BUG=skia:
Review URL: https://codereview.chromium.org/
955043002
caryclark [Wed, 25 Feb 2015 17:04:04 +0000 (09:04 -0800)]
fuzzer fixes
Fix path bugs exposed by the path fuzzer.
Changes to existing gm and samplecode files defer their calls to construct
SkPath objects until the first draw instead of at test initialization.
Add an experimental call to SkPath to validate the internal SkPathRef.
Fix SkPath::addPoly to set the last moveto after adding a close verb.
Fix stroke to handle failures when computing the unit normal.
Add a unit test for the unit normal failure.
R=reed@google.com
Review URL: https://codereview.chromium.org/
953383002
halcanary [Wed, 25 Feb 2015 16:59:48 +0000 (08:59 -0800)]
SkPDF: remove SK_API on no-longer-public functions.
CQ_INCLUDE_TRYBOTS=client.skia:Mac Builder-Trybot,Linux Builder-Trybot,Win Builder-Trybot
Review URL: https://codereview.chromium.org/
953053002
bsalomon [Wed, 25 Feb 2015 16:58:09 +0000 (08:58 -0800)]
roll gyp
TBR=mtklein@google.com
Review URL: https://codereview.chromium.org/
954673003
mtklein [Wed, 25 Feb 2015 16:27:41 +0000 (08:27 -0800)]
Revert of fAddedToCache doesn't need to be atomic. (patchset #1 id:1 of https://codereview.chromium.org/
960573002/)
Reason for revert:
Yes it does. notifyAddedToCache() must be thread-safe.
Original issue's description:
> fAddedToCache doesn't need to be atomic.
>
> It's only ever read or set from non-threadsafe methods.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
fbe0edfec4fed2a09e12b049d527d280f16e75b3
TBR=reed@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
959763002
mtklein [Wed, 25 Feb 2015 16:16:19 +0000 (08:16 -0800)]
Revert of Default SK_ANGLE to true on Windows, run angle whenever possible on bots. (patchset #3 id:40001 of https://codereview.chromium.org/
946933006/)
Reason for revert:
Needs bot upgrades.
Original issue's description:
> Default SK_ANGLE to true on Windows, run angle whenever possible on bots.
>
> nanobench doesn't need an update. It uses the default for --config,
> which includes angle.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
88ec329b580a081d9d56cbcaad0ee46cb941c849
TBR=bsalomon@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
954243002
mtklein [Wed, 25 Feb 2015 16:11:18 +0000 (08:11 -0800)]
fAddedToCache doesn't need to be atomic.
It's only ever read or set from non-threadsafe methods.
BUG=skia:
Review URL: https://codereview.chromium.org/
960573002
mtklein [Wed, 25 Feb 2015 15:56:06 +0000 (07:56 -0800)]
Default SK_ANGLE to true on Windows, run angle whenever possible on bots.
nanobench doesn't need an update. It uses the default for --config,
which includes angle.
BUG=skia:
Review URL: https://codereview.chromium.org/
946933006
henrik.smiding [Wed, 25 Feb 2015 15:37:14 +0000 (07:37 -0800)]
Remove SSE2 ColorRect32 code/files
Removes the disabled SSE2 optimization of ColorRect32 and deletes
the two files containing the code.
Measured on both Core Haswell and Atom Silvermont, and only got
some miniscule improvement compared to the default implementation.
Also tried to write a new, ultimate, version of this optimization,
but only got ~5% improvement on ColorRect32-heavy tests.
Signed-off-by: Henrik Smiding <henrik.smiding@intel.com>
Review URL: https://codereview.chromium.org/
957433002
reed [Wed, 25 Feb 2015 15:17:11 +0000 (07:17 -0800)]
only notify bitmaps that have been added to the cache
old code:
- calls=2677 hit-rate=3.51139%
new code:
- calls=94 hit-rate=97.8723%
BUG=skia:
Review URL: https://codereview.chromium.org/
960563002
halcanary [Wed, 25 Feb 2015 14:52:17 +0000 (06:52 -0800)]
Doc: user/quick/linux mentions 32-bit compiling
NOTRY=true
Review URL: https://codereview.chromium.org/
952193002
herb [Wed, 25 Feb 2015 14:47:06 +0000 (06:47 -0800)]
BUG=skia:
(mtklein from here on)
No public API changes.
TBR=reed@google.com
Committed: https://skia.googlesource.com/skia/+/
f8d24e2c0c7b44b7ccf20e40890514db4cde7b15
Review URL: https://codereview.chromium.org/
939123002
egdaniel [Wed, 25 Feb 2015 14:41:47 +0000 (06:41 -0800)]
Fix to check for inf when generating quadratic points
BUG=skia:3453
Review URL: https://codereview.chromium.org/
948043003
mtklein [Tue, 24 Feb 2015 22:38:12 +0000 (14:38 -0800)]
SkTRacy<T> -> SkAtomic<T>
Like SkTRacy<T>, TSAN will not complain about these. Unlike SkTRacy<T>, TSAN
should not complain about these: SkAtomic<T> are threadsafe.
This should fix the races now suppressed in TSAN. As written, the memory
barriers we're using in SkPixelRef will be dumb but safe (really, dumbest
possible but safest possible). If we see a perf hit, we can follow up by
putting Ben and I in a room for a while, thinking about it really hard, and
using the minimum-strength safe memory barriers.
A refactor that steals a bit from the genID would also still be possible with
this approach.
BUG=chromium:437511
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot
Review URL: https://codereview.chromium.org/
955803002
reed [Tue, 24 Feb 2015 21:54:23 +0000 (13:54 -0800)]
Notify resource caches when pixelref genID goes stale
patch from issue
954443002 at patchset 40001 (http://crrev.com/
954443002#ps40001)
BUG=skia:
Review URL: https://codereview.chromium.org/
950363002
joshualitt [Tue, 24 Feb 2015 21:43:00 +0000 (13:43 -0800)]
FreeType uses unsigned int, Skia uses int.
Fix warning about assert which compared signed and unsigned.
Review URL: https://codereview.chromium.org/
956623004
joshualitt [Tue, 24 Feb 2015 21:20:59 +0000 (13:20 -0800)]
fix for msan
BUG=skia:
Review URL: https://codereview.chromium.org/
958433004
fmalita [Tue, 24 Feb 2015 21:02:57 +0000 (13:02 -0800)]
Use an image generator to back SkPictureShader tiles.
To avoid lifetime issues for tiles backed by discardable memory, use an
image generator to re-generate them on the fly.
With this CL, we are now caching bitmap shaders wrapping discardable
pixel ref bitmaps backed by picture image generators.
(the CL also includes some minor/unrelated SkPictureShader cleanup)
BUG=skia:3220
R=reed@google.com,halcanary@google.com
Review URL: https://codereview.chromium.org/
866773002
joshualitt [Tue, 24 Feb 2015 20:58:46 +0000 (12:58 -0800)]
don't draw if maxVertices returns 0 or > than uin16_t max
This doesn't do anything about the issue of having too many indices, but it does move the fuzzer on to another assert.
BUG=skia:
Review URL: https://codereview.chromium.org/
952993004
halcanary [Tue, 24 Feb 2015 20:56:16 +0000 (12:56 -0800)]
SkPDF: replace SkPDFDevice::copyContentToData
Motivation: remove copyToData(). Later we will stop caching
the data alltogether.
BUG=skia:
Review URL: https://codereview.chromium.org/
958433003
mtklein [Tue, 24 Feb 2015 19:45:11 +0000 (11:45 -0800)]
Add tools/nanobench_flags.py.
This should look suspiciously similar to tools/dm_flags.py. In fact, I
tweaked tools/dm_flags.py a bit to make it even more suspiciously similar.
I'll leave actually deduping this to future me.
I noticed we have an opportunity to make our Valgrind run of nanobench faster,
by not only making it not auto-calibrate (--loops 1) but also take only one
measurement (--samples 1). Should be 5-10x faster than the default.
BUG=skia:
Review URL: https://codereview.chromium.org/
957503002
robertphillips [Tue, 24 Feb 2015 19:18:48 +0000 (11:18 -0800)]
Fix radii scaling bug in SkRRect::setNinePatch
BUG=skia:3466
Review URL: https://codereview.chromium.org/
951323004
Mike Klein [Tue, 24 Feb 2015 18:16:43 +0000 (13:16 -0500)]
fix nvpr
The config is called nvprmsaa4 (see DM.cpp:218)
BUG=skia:
Review URL: https://codereview.chromium.org/
953743007
mtklein [Tue, 24 Feb 2015 17:25:16 +0000 (09:25 -0800)]
add tools/dm_flags.py
BUG=skia:
Review URL: https://codereview.chromium.org/
950903003
halcanary [Tue, 24 Feb 2015 17:25:09 +0000 (09:25 -0800)]
GM: showmiplevels handles bitmap memory in a nicer way.
This is helpful for those canvas implementations that want to copy a
bitmap.
Review URL: https://codereview.chromium.org/
935943007
joshualitt [Tue, 24 Feb 2015 16:17:49 +0000 (08:17 -0800)]
k1 fix
TBR=
NOTREECHECKS=True
BUG=skia:
Review URL: https://codereview.chromium.org/
952973002
joshualitt [Tue, 24 Feb 2015 14:47:14 +0000 (06:47 -0800)]
probable fix for asan bot
NOTREECHECKS=True
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
956583002
scroggo [Tue, 24 Feb 2015 14:09:41 +0000 (06:09 -0800)]
Revert of Make fID and MixedID calculations private (patchset #5 id:80001 of https://codereview.chromium.org/
939123002/)
Reason for revert:
This actually *does* change the public API - fID is now private, and it was being used on Android. See https://android-build.storage.googleapis.com/builds/git_master-skia-linux-volantis-userdebug/1751533/5242b865d3e9bebc650c9b326dfa9d68c8bd1f59562bf32b85301fb984dc8b26/logs/build.log?Signature=Q0el9M4kTu1KQ8u02KX9TH1Pa22y9BkDK1IW%2B9OeJJNfrDEVzLXAz0XQ%2BHHQM8xVjft06jZJva1V8InZmgjcOk6PdZQbQW6XwwsHLKsbpbAE48iTWH3AlJAAoTtj9cifzgeHW8g80IcVxwHXmINRER%2BLPz3eHGisgfTTFUoWYCc%3D&GoogleAccessId=
701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Expires=
1424786471 :
In file included from frameworks/base/libs/hwui/tests/../font/Font.cpp:26:0:
external/skia/src/core/SkGlyph.h: In member function 'android::uirenderer::CachedGlyphInfo* android::uirenderer::Font::cacheGlyph(const SkPaint*, glyph_t, bool)':
external/skia/src/core/SkGlyph.h:157:17: error: 'uint32_t SkGlyph::fID' is private
uint32_t fID;
^
frameworks/base/libs/hwui/tests/../font/Font.cpp:482:39: error: within this context
newGlyph->mGlyphIndex = skiaGlyph.fID;
We need to update Android in order to hide fID.
Original issue's description:
> BUG=skia:
>
> (mtklein from here on)
> No public API changes.
> TBR=reed@google.com
>
> Committed: https://skia.googlesource.com/skia/+/
f8d24e2c0c7b44b7ccf20e40890514db4cde7b15
TBR=mtklein@google.com,herb@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
951353002
caryclark [Tue, 24 Feb 2015 14:02:06 +0000 (06:02 -0800)]
flip stroke to chrome compatible define
Review URL: https://codereview.chromium.org/
932723003
herb [Tue, 24 Feb 2015 13:12:05 +0000 (05:12 -0800)]
BUG=skia:
(mtklein from here on)
No public API changes.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/
939123002
kkinnunen [Tue, 24 Feb 2015 06:12:12 +0000 (22:12 -0800)]
Make SkNewImageFromBitmap take pixel ref origin into account
Make SkNewImageFromBitmap take pixel ref origin into account.
BUG=skia:3388
Review URL: https://codereview.chromium.org/
951483002
joshualitt [Tue, 24 Feb 2015 01:52:51 +0000 (17:52 -0800)]
Enable rect clips
BUG=skia:
Review URL: https://codereview.chromium.org/
951653002
joshualitt [Tue, 24 Feb 2015 01:03:33 +0000 (17:03 -0800)]
move static init to cpp file to fix linux builder
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
947933004
joshualitt [Tue, 24 Feb 2015 00:41:42 +0000 (16:41 -0800)]
non-aa rects batch
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
ee72dde696b35534465c14f6b4c5bfca44a2f63e
Review URL: https://codereview.chromium.org/
931293002
joshualitt [Tue, 24 Feb 2015 00:19:22 +0000 (16:19 -0800)]
Revert of fix for linux builder warn on exit destructor (patchset #1 id:1 of https://codereview.chromium.org/
951103002/)
Reason for revert:
still breaks
Original issue's description:
> fix for linux builder warn on exit destructor
>
> TBR=bsalomon@google.com
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
51fdb4f8f63b6bb13e719000381e225503a2d4a0
TBR=joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
955493003
bungeman [Tue, 24 Feb 2015 00:17:43 +0000 (16:17 -0800)]
Provide Mac 10.6 SDK support for kCTFontColorGlyphsTrait.
kCTFontColorGlyphsTrait was introduced in Mac 10.7 and iPhone 4.3 SDKs.
Chromium still builds with the 10.6 SDK, so provide this constant when
it is otherwise unavailable.
TBR=mtklein@google.com
Review URL: https://codereview.chromium.org/
951723003
joshualitt [Mon, 23 Feb 2015 23:57:23 +0000 (15:57 -0800)]
fix for linux builder warn on exit destructor
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
951103002