mtklein [Mon, 19 Sep 2016 16:08:07 +0000 (09:08 -0700)]
To prep for removing CMake bots, take them off the CQ and presubmit.
GN is now far more capable than our CMake builds.
Time to officially end that experiment.
Reminder how this lands:
1) this CL
2) remove the bots from the masters
3) remove the CMake recipe files
4) remove the CMake files
I'm willing to wait on 4) until we can do GN -> CMake generation, but I don't want the bots to hold us back.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2350073002
Review-Url: https://codereview.chromium.org/
2350073002
bsalomon [Mon, 19 Sep 2016 15:36:58 +0000 (08:36 -0700)]
Stop flattening GrCoordTransforms in parent GrFragmentProcessors.
This changes moves to a model that iterates over GrCTs in a GrFP hierarchy when inserting transformations by GrGLSLPrimitiveProcessors.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339203002
Review-Url: https://codereview.chromium.org/
2339203002
mtklein [Mon, 19 Sep 2016 14:26:41 +0000 (07:26 -0700)]
GN: remove old Android recipe code.
All the Android builders, testers, and perfers are on gn_android_flavor now.
Not as scary as it looks... all the big line count changes are deletes.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2352653002
Review-Url: https://codereview.chromium.org/
2352653002
reed [Mon, 19 Sep 2016 14:10:36 +0000 (07:10 -0700)]
add 'g' to fatbits
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2350613002
TBR=
Review-Url: https://codereview.chromium.org/
2350613002
mtklein [Mon, 19 Sep 2016 14:04:37 +0000 (07:04 -0700)]
Delete unused coverage recipe code.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2353483003
Review-Url: https://codereview.chromium.org/
2353483003
brianosman [Mon, 19 Sep 2016 13:59:28 +0000 (06:59 -0700)]
Add F16 to the list of allowed formats in GaussianBlur
Fixes asserts that fire in some GMs for gpuf16 config
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2350723002
Review-Url: https://codereview.chromium.org/
2350723002
fmalita [Mon, 19 Sep 2016 13:42:39 +0000 (06:42 -0700)]
[SVGDom] Only apply opacity when needed
Opacity: 1 is a no-op, but it shows up quite a bit in existing documents.
R=robertphillips@google.com,stephana@google.com,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2349143002
Review-Url: https://codereview.chromium.org/
2349143002
cblume [Mon, 19 Sep 2016 13:18:03 +0000 (06:18 -0700)]
Remove release asserts.
A handful of changes were added to investigate a bug occurring rarely.
The bug has been found and those changes can be reverted.
BUG=643845
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347423002
Review-Url: https://codereview.chromium.org/
2347423002
caryclark [Mon, 19 Sep 2016 13:00:35 +0000 (06:00 -0700)]
fix fuzzer bugs
Add a couple more cases where Op() fails and
returns false when the out of range input
values make the internal numeric unstable.
TBR=reed@google.com
BUG=647834, 648068
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2348263002
Review-Url: https://codereview.chromium.org/
2348263002
rmistry [Sun, 18 Sep 2016 18:37:26 +0000 (11:37 -0700)]
Whitespace change
TBR=
NOTRY=true
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347393002
Review-Url: https://codereview.chromium.org/
2347393002
update-skps [Sun, 18 Sep 2016 09:34:52 +0000 (02:34 -0700)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
NO_MERGE_BUILDS
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2349953002
Review-Url: https://codereview.chromium.org/
2349953002
fmalita [Sat, 17 Sep 2016 14:26:26 +0000 (07:26 -0700)]
[SVGDom] Improved DM sizing
Rather than always using a 1000x1000 canvas, observe the SVG intrinsic
size when available.
If the intrinsic size is < 128x128, scale uniformly.
R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342313003
Review-Url: https://codereview.chromium.org/
2342313003
bungeman [Fri, 16 Sep 2016 21:54:16 +0000 (14:54 -0700)]
Remove SK_DECLARE_LEGACY_CREATE_FROM_FONTDATA.
This is no longer defined by any users, so remove it.
TBR=reed
This just removes no longer used API.
Review-Url: https://codereview.chromium.org/
2345353002
msarett [Fri, 16 Sep 2016 21:52:07 +0000 (14:52 -0700)]
Fix filling of incomplete images in SkSampledCodec
The bug occurs when filling after an incomplete sampled/subset
incremental decode.
I'm also adding many truncated test pngs.
BUG=skia:5769
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2343153003
Review-Url: https://codereview.chromium.org/
2343153003
halcanary [Fri, 16 Sep 2016 21:44:57 +0000 (14:44 -0700)]
SkPDF: Implement /ActualText to make text extraction correct.
For old API: no change.
For new API: LTR text is perfectly extracted, RTL needs better testing.
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN-Trybot
BUG=skia:5434
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2322403002
Review-Url: https://codereview.chromium.org/
2322403002
mtklein [Fri, 16 Sep 2016 21:44:18 +0000 (14:44 -0700)]
format GN files, and invert if->config to config->if
Both if (...) { config ... } else { config ... } and config { if (...) { ...}
else { ... } } work. We just happen to do the if inside the config more often
than the other way around.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347953002
Review-Url: https://codereview.chromium.org/
2347953002
tomhudson [Fri, 16 Sep 2016 21:22:49 +0000 (14:22 -0700)]
Improve ColorStopOptimizer safety
Could potentially access uninitialized memory.
BUG=647481
R=brianosman@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2345343002
Review-Url: https://codereview.chromium.org/
2345343002
herb [Fri, 16 Sep 2016 20:29:57 +0000 (13:29 -0700)]
Compile the skia library for windows using gn.
TBR=mtklein@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347443002
Review-Url: https://codereview.chromium.org/
2347443002
halcanary [Fri, 16 Sep 2016 20:21:08 +0000 (13:21 -0700)]
Revert of SkPDF: Implement /ActualText to make text extraction correct. (patchset #11 id:220001 of https://codereview.chromium.org/
2322403002/ )
Reason for revert:
MSAN, ASAN errors
Original issue's description:
> SkPDF: Implement /ActualText to make text extraction correct.
>
> For old API: no change.
>
> For new API: LTR text is perfectly extracted, RTL needs better testing.
>
> BUG=skia:5434
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2322403002
>
> Committed: https://skia.googlesource.com/skia/+/
dbd16345a5b2b824f2696af791bb0f01304cf549
TBR=tomhudson@google.com,bungeman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5434
Review-Url: https://codereview.chromium.org/
2338213008
bungeman [Fri, 16 Sep 2016 20:19:49 +0000 (13:19 -0700)]
Sane use of FcPatternGetXXX in SkFontConfigInterface.
This renames get_name to get_string to better reflect what it does, uses
get_int where appropriate, and removes the no longer used code that uses
FcPatternGetBool.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2345053005
Review-Url: https://codereview.chromium.org/
2345053005
mtklein [Fri, 16 Sep 2016 19:40:17 +0000 (12:40 -0700)]
Flesh out GN/Android run docs.
The process is simple enough that it's clearer to see all the steps laid out.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2343263002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=
2343263002
Review-Url: https://codereview.chromium.org/
2343263002
halcanary [Fri, 16 Sep 2016 19:09:01 +0000 (12:09 -0700)]
SkPDF: Implement /ActualText to make text extraction correct.
For old API: no change.
For new API: LTR text is perfectly extracted, RTL needs better testing.
BUG=skia:5434
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2322403002
Review-Url: https://codereview.chromium.org/
2322403002
rmistry [Fri, 16 Sep 2016 19:06:55 +0000 (12:06 -0700)]
Revert of Run SVGs through nanobench on all Perf bots (patchset #5 id:120001 of https://codereview.chromium.org/
2343903002/ )
Reason for revert:
Causing failures:
https://uberchromegw.corp.google.com/i/client.skia/builders/Perf-Mac-Clang-MacMini4.1-GPU-GeForce320M-x86_64-Debug-GN/builds/812
Original issue's description:
> Run SVGs through nanobench on all Perf bots.
>
> Tested with:
> python infra/bots/recipes.py run --workdir=../ swarm_trigger path_config=kitchen buildername=Perf-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Release-GN-Trybot mastername=client.skia slavename=skiabot-linux-swarm-010 buildnumber=1 revision=
d8c2476a8b1e1e1a1771b17e8dd4db8645914f8c issue=
2343903002 rietveld=https://codereview.chromium.org patchset=80001
>
> Example output is here:
> https://luci-milo.appspot.com/swarming/task/
3147c9789b2d0410
> Nanobench did run on SVGs.
>
> BUG=skia:5757
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2343903002
>
> Committed: https://skia.googlesource.com/skia/+/
1c58dcb909642454d91ba36f71e55597511b5d52
TBR=jcgregorio@google.com,fmalita@chromium.org,mtklein@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5757
Review-Url: https://codereview.chromium.org/
2348563003
mtklein [Fri, 16 Sep 2016 18:50:13 +0000 (11:50 -0700)]
Is it just me or is this logging just noise?
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2343233002
Review-Url: https://codereview.chromium.org/
2343233002
msarett [Fri, 16 Sep 2016 18:45:58 +0000 (11:45 -0700)]
Support Float32 output from SkColorSpaceXform
* Adds Float32 support to SkColorSpaceXform
* Changes API to allows clients to ask for F32, updates clients to
new API
* Adds Sk4f_load4 and Sk4f_store4 to SkNx
* Make use of new xform in SkGr.cpp
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339233003
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Committed: https://skia.googlesource.com/skia/+/
43d6651111374b5d1e4ddd9030dcf079b448ec47
Review-Url: https://codereview.chromium.org/
2339233003
mtklein [Fri, 16 Sep 2016 18:39:14 +0000 (11:39 -0700)]
Build with GN on CT bots.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347203002
Review-Url: https://codereview.chromium.org/
2347203002
robertphillips [Fri, 16 Sep 2016 18:37:37 +0000 (11:37 -0700)]
Improve join between the two RRects in SkRRectsGaussianEdgeShader
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2345203003
Review-Url: https://codereview.chromium.org/
2345203003
mtklein [Fri, 16 Sep 2016 18:34:08 +0000 (11:34 -0700)]
Promote the N5 to the CQ for real.
The experiment was a great success.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2345263002
Review-Url: https://codereview.chromium.org/
2345263002
rmistry [Fri, 16 Sep 2016 18:32:34 +0000 (11:32 -0700)]
Run SVGs through nanobench on all Perf bots.
Tested with:
python infra/bots/recipes.py run --workdir=../ swarm_trigger path_config=kitchen buildername=Perf-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Release-GN-Trybot mastername=client.skia slavename=skiabot-linux-swarm-010 buildnumber=1 revision=
d8c2476a8b1e1e1a1771b17e8dd4db8645914f8c issue=
2343903002 rietveld=https://codereview.chromium.org patchset=80001
Example output is here:
https://luci-milo.appspot.com/swarming/task/
3147c9789b2d0410
Nanobench did run on SVGs.
BUG=skia:5757
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2343903002
Review-Url: https://codereview.chromium.org/
2343903002
stani [Fri, 16 Sep 2016 18:03:44 +0000 (11:03 -0700)]
Clear stencil buffer before using it for drawing
Clear stencil buffer before using it for drawing. This is
resolving an issue with a failing android CTS test in drawArc.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342873004
Review-Url: https://codereview.chromium.org/
2342873004
msarett [Fri, 16 Sep 2016 18:01:27 +0000 (11:01 -0700)]
Revert of Support Float32 output from SkColorSpaceXform (patchset #7 id:140001 of https://codereview.chromium.org/
2339233003/ )
Reason for revert:
Hitting an assert
Original issue's description:
> Support Float32 output from SkColorSpaceXform
>
> * Adds Float32 support to SkColorSpaceXform
> * Changes API to allows clients to ask for F32, updates clients to
> new API
> * Adds Sk4f_load4 and Sk4f_store4 to SkNx
> * Make use of new xform in SkGr.cpp
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339233003
> CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/
43d6651111374b5d1e4ddd9030dcf079b448ec47
TBR=brianosman@google.com,mtklein@google.com,scroggo@google.com,mtklein@chromium.org,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/
2347473007
mtklein [Fri, 16 Sep 2016 17:23:12 +0000 (10:23 -0700)]
GN: build get_images_from_skps.
This also splits :common_flags off of :flags.
get_images_from_skps wants :flags but not :common_flags.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2338173006
Review-Url: https://codereview.chromium.org/
2338173006
cblume [Fri, 16 Sep 2016 17:07:32 +0000 (10:07 -0700)]
Keeping asserts in release.
We have a bug that is showing up occasionally in Canary.
I want to see if these asserts could provide insight into why the bug
happens.
BUG=643845
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342903003
Review-Url: https://codereview.chromium.org/
2342903003
bsalomon [Fri, 16 Sep 2016 16:53:27 +0000 (09:53 -0700)]
Allow GrCaps access from GrDrawContext
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2348923002
Review-Url: https://codereview.chromium.org/
2348923002
msarett [Fri, 16 Sep 2016 16:51:12 +0000 (09:51 -0700)]
Support Float32 output from SkColorSpaceXform
* Adds Float32 support to SkColorSpaceXform
* Changes API to allows clients to ask for F32, updates clients to
new API
* Adds Sk4f_load4 and Sk4f_store4 to SkNx
* Make use of new xform in SkGr.cpp
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339233003
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/
2339233003
jvanverth [Fri, 16 Sep 2016 16:13:15 +0000 (09:13 -0700)]
Remove old SkGaussianEdgeShader code
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2345673003
TBR=bsalomon@google.com
Review-Url: https://codereview.chromium.org/
2345673003
rmistry [Fri, 16 Sep 2016 15:26:34 +0000 (08:26 -0700)]
Fix Seal_of_Mississippi URL and update version of SVG asset.
BUG=skia:5757
BUG=skia:5767
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342323002
Review-Url: https://codereview.chromium.org/
2342323002
scroggo [Fri, 16 Sep 2016 15:20:38 +0000 (08:20 -0700)]
Make SkPngCodec decode progressively.
This is a step towards using SkCodec in Chromium, where progressive
decoding is necessary.
Switch from using png_read_row (which expects all the data to be
available) to png_process_data, which uses callbacks when rows are
available.
Create a new API for SkCodec, which supports progressive decoding and
scanline decoding. Future changes will switch the other clients off of
startScanlineDecode and get/skip-Scanlines to the new API.
Remove SkCodec::kNone_ScanlineOrder, which was only used for interlaced
PNG images. In the new API, interlaced PNG fits kTopDown. Also remove
updateCurrScanline(), which was only used by the old implementation for
interlaced PNG.
DMSrcSink:
- In CodecSrc::kScanline_Mode, use the new method for scanline decoding
for the supported formats (just PNG and PNG-in-ICO for now).
fuzz.cpp:
- Remove reference to kNone_ScanlineOrder
SkCodec:
- Add new APIs:
- startIncrementalDecode
- incrementalDecode
- Remove kNone_SkScanlineOrder and updateCurrScanline()
- Set fDstInfo and fOptions in getPixels(). This may not be necessary
for all implementations, but it simplifies things for SkPngCodec.
SkPngCodec:
- Implement new APIs
- Switch from sk_read_fn/png_read_row etc to png_process_data
- Expand AutoCleanPng's role to decode the header and create the
SkPngCodec
- Make the interlaced PNG decoder report how many lines were
initialized during an incomplete decode
SkIcoCodec:
- Implement the new APIs; supported for PNG in ICO
SkSampledCodec:
- Call the new method for decoding scanlines, and fall back to the old
method if the new version is unimplemented
- Remove references to kNone_SkScanlineOrder
tests/CodecPartial:
- Add a test which decodes part of an image, then finishes the decode,
and compares it to the straightforward method
tests/CodecTest:
- Add a test which decodes all scanlines using the new method
- Repurpose the Codec_stripes test to decode using the new method in
sections rather than all at once
- In the method check(), add a parameter for whether the image supports
the new method of scanline decoding, and be explicit about whether an
image supports incomplete
- Test incomplete PNG decodes. We should have been doing it anyway for
non-interlaced (except for an image that is too small - one row), but
the new method supports interlaced incomplete as well
- Make test_invalid_parameters test the new method
- Add a test to ensure that it's safe to fall back to scanline decoding without
rewinding
BUG=skia:4211
The new version was generally faster than the old version (but not significantly so).
Some raw performance differences can be found at https://docs.google.com/a/google.com/spreadsheets/d/1Gis3aRCEa72qBNDRMgGDg3jD-pMgO-FXldlNF9ejo4o/
Design doc can be found at https://docs.google.com/a/google.com/document/d/11Mn8-ePDKwVEMCjs3nWwSjxcSpJ_Cu8DF57KNtUmgLM/
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=
1997703003
Review-Url: https://codereview.chromium.org/
1997703003
halcanary [Fri, 16 Sep 2016 15:15:56 +0000 (08:15 -0700)]
SkPDF: fix unembeddable text drawn with positioning (broken in 6059dc3)
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347183002
Review-Url: https://codereview.chromium.org/
2347183002
mtklein [Fri, 16 Sep 2016 14:45:52 +0000 (07:45 -0700)]
GN: add a flag to implement Android_FrameworkDefs bot.
This bot builds Skia with a bunch of defines to mimic the Android roll.
Apparently it was supposed to be on the CQ... I'll add the GN version
to it when it exists.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2343103002
Review-Url: https://codereview.chromium.org/
2343103002
bungeman [Fri, 16 Sep 2016 14:21:28 +0000 (07:21 -0700)]
Make Sk2DPathEffect thread safe.
SkPathEffects must be thread safe, but SkMatrix is only thread safe if
the type mask has already been computed. The constructor for
Sk2DPathEffect is currently making the call to 'invert' which sets the
type mask, but it is being called with the passed matrix as opposed to
the local copy.
BUG=skia:5765
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2340133004
Review-Url: https://codereview.chromium.org/
2340133004
mtklein [Fri, 16 Sep 2016 14:17:45 +0000 (07:17 -0700)]
Update GN docs to mention is_official_build and ndk_api.
is_official_build is the closest approximation to what we'd recommend people ship, and we'll keep tweaking it further toward that goal. I want it to be the first choices people see reading the doc to nudge them to defaulting into that if they don't know better. The familiar old Debug and Release for developers come later.
It'd be a fine choice, for instance, for fiddle to build against. I dropped Stripped because that's something is_official_build now does more naturally.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342333002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=
2342333002
Review-Url: https://codereview.chromium.org/
2342333002
mtklein [Fri, 16 Sep 2016 14:01:17 +0000 (07:01 -0700)]
GN: enable Vulkan on Android when API >= 24.
Android API >= 24 implies Vulkan support, so we can have a more useful default here than 'false'. If for some reason you wanted to turn it off, you can still override skia_use_vulkan.
The defined(ndk_api) guards other users of our GN files (Fuchsia) who may not have an ndk_api argument defined in their BUILDCONFIG.gn.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347843003
Review-Url: https://codereview.chromium.org/
2347843003
bungeman [Fri, 16 Sep 2016 13:24:20 +0000 (06:24 -0700)]
SkFontData to use smart pointers.
The SkFontData type is not exposed externally, so any method which uses
it can be updated to use smart pointers without affecting external
users. Updating this first will make updating the public API much
easier.
This also updates SkStreamAsset* SkStream::NewFromFile(const char*) to
std::unique_ptr<SkStreamAsset> SkStream::MakeFromFile(const char*). It
appears that no one outside Skia is currently using SkStream::NewfromFile
so this is a good time to update it as well.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339273002
Committed: https://skia.googlesource.com/skia/+/
d8c2476a8b1e1e1a1771b17e8dd4db8645914f8c
Review-Url: https://codereview.chromium.org/
2339273002
robertphillips [Fri, 16 Sep 2016 13:17:45 +0000 (06:17 -0700)]
Add staging for removal of SkRRectsGaussianEdgeShader::Make (for Android)
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347853002
TBR=bsalomon@google.com
Review-Url: https://codereview.chromium.org/
2347853002
mtklein [Fri, 16 Sep 2016 12:47:06 +0000 (05:47 -0700)]
Tweak valgrind suppressions for intentional leaks.
This is a follow up to building the Valgrind bots with GN.
It's not clear why these need to leak, but we might as well
update the suppressions. The stacks now look like this:
Memcheck:Leak
match-leak-kinds: possible
fun:calloc
fun:_dl_allocate_tls
fun:pthread_create@@GLIBC_2.2.5
fun:_ZN8SkThreadC1EPFvPvES0_
fun:_Z14nanobench_mainv
fun:(below main)
We suppress fun:main in that last slot, so just make it ...
TBR=
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347153002
Review-Url: https://codereview.chromium.org/
2347153002
reed [Thu, 15 Sep 2016 21:24:53 +0000 (14:24 -0700)]
test/fix/tweak writePicture/readPicture
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347593004
Review-Url: https://codereview.chromium.org/
2347593004
bsalomon [Thu, 15 Sep 2016 20:55:33 +0000 (13:55 -0700)]
Fix key computation for GrPaths
Improve tests to ensure paths are receiving valid keys
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342873002
Review-Url: https://codereview.chromium.org/
2342873002
mtklein [Thu, 15 Sep 2016 20:50:43 +0000 (13:50 -0700)]
GN: port Valgrind bots.
This was suspiciously easy...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342923002
Review-Url: https://codereview.chromium.org/
2342923002
bsalomon [Thu, 15 Sep 2016 20:50:26 +0000 (13:50 -0700)]
Add GrContextOptions flag to disable distance field path renderer.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339213002
Review-Url: https://codereview.chromium.org/
2339213002
robertphillips [Thu, 15 Sep 2016 20:18:15 +0000 (13:18 -0700)]
Fix color bug in SkRRectsGaussianEdgeShader
Due to the code at the end of emitCode this shader was darker than the SkGaussianEdgeShader on Android.
This CL also removes the unused "pad" parameter.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2344963002
NOTREECHECKS=true
TBR=bsalomon@google.com
Review-Url: https://codereview.chromium.org/
2344963002
djsollen [Thu, 15 Sep 2016 20:04:41 +0000 (13:04 -0700)]
Revert of Update version of SVG asset (patchset #1 id:1 of https://codereview.chromium.org/
2341043003/ )
Reason for revert:
breaking the build
Original issue's description:
> Update version of SVG asset
>
> BUG=skia:5757
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2341043003
>
> Committed: https://skia.googlesource.com/skia/+/
ab00f4222c9fff8c08873e1218e79f49845f95a1
TBR=borenet@google.com,rmistry@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5757
Review-Url: https://codereview.chromium.org/
2337763007
mtklein [Thu, 15 Sep 2016 19:07:48 +0000 (12:07 -0700)]
GN: support 32-bit x86 builds
Take over Ubuntu -x86- bots.
Note the change to Build-Win-MSVC-x86-Release-GN.json, which is not incidental.
We'll want target_cpu="x86" there too.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2340463008
Committed: https://skia.googlesource.com/skia/+/
1949386ae00485ae92dd5608a2614b9dee417542
CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-Clang-x86-Debug-GN_Android-Trybot,Build-Ubuntu-GCC-x86-Release-Trybot
Review-Url: https://codereview.chromium.org/
2340463008
rmistry [Thu, 15 Sep 2016 18:31:25 +0000 (11:31 -0700)]
Update version of SVG asset
BUG=skia:5757
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2341043003
Review-Url: https://codereview.chromium.org/
2341043003
mtklein [Thu, 15 Sep 2016 18:18:55 +0000 (11:18 -0700)]
Revert of GN: support 32-bit x86 builds (patchset #6 id:100001 of https://codereview.chromium.org/
2340463008/ )
Reason for revert:
https://build.chromium.org/p/client.skia.compile/builders/Build-Ubuntu-Clang-x86-Debug-GN_Android/builds/304
Original issue's description:
> GN: support 32-bit x86 builds
>
> Take over Ubuntu -x86- bots.
>
> Note the change to Build-Win-MSVC-x86-Release-GN.json, which is not incidental.
> We'll want target_cpu="x86" there too.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2340463008
>
> Committed: https://skia.googlesource.com/skia/+/
1949386ae00485ae92dd5608a2614b9dee417542
TBR=jcgregorio@google.com,borenet@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/
2338173004
brianosman [Thu, 15 Sep 2016 18:09:45 +0000 (11:09 -0700)]
Add storage and computation of SkColor4f version of gradient stops.
For now, we still only have the SkColor factory, but the Descriptor can
now carry either an SkColor or SkColor4f specified gradient. Base class
constructor automatically populates both forms of color, so that legacy
raster backend will continue to work, and new backend work can operate
directly from the float4 version.
On the GPU side, we have similar logic, but GrGradientEffect only
keeps one version of colors around: SkColor if the destination is
legacy, and SkColor4f (with an optional gamut xform) if the destination
is gamma correct. The 4f colors are already linear, and we gamut xform
them in setData, so gradients are now fully color-correct in sRGB and
F16 modes...
... unless there are more than three stops. Then we use a texture, and
that code path isn't handled yet. We have a few choices here (do we
use an 8-bit sRGB atlas, or just always use F16 linear atlas so we can
share it among both sRGB and wide-gamut rendering). In any case, I'd
like to defer that to a second CL.
This change does fix the non-texture gradients in the gamut GM.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2337313002
Review-Url: https://codereview.chromium.org/
2337313002
mtklein [Thu, 15 Sep 2016 18:06:25 +0000 (11:06 -0700)]
GN: support 32-bit x86 builds
Take over Ubuntu -x86- bots.
Note the change to Build-Win-MSVC-x86-Release-GN.json, which is not incidental.
We'll want target_cpu="x86" there too.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2340463008
Review-Url: https://codereview.chromium.org/
2340463008
mtklein [Thu, 15 Sep 2016 18:02:05 +0000 (11:02 -0700)]
Blacklist slsrgb + image decoding.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2345723003
Review-Url: https://codereview.chromium.org/
2345723003
bungeman [Thu, 15 Sep 2016 17:57:38 +0000 (10:57 -0700)]
Revert of SkFontData to use smart pointers. (patchset #3 id:40001 of https://codereview.chromium.org/
2339273002/ )
Reason for revert:
Killing Mac
Original issue's description:
> SkFontData to use smart pointers.
>
> The SkFontData type is not exposed externally, so any method which uses
> it can be updated to use smart pointers without affecting external
> users. Updating this first will make updating the public API much
> easier.
>
> This also updates SkStreamAsset* SkStream::NewFromFile(const char*) to
> std::unique_ptr<SkStreamAsset> SkStream::MakeFromFile(const char*). It
> appears that no one outside Skia is currently using SkStream::NewfromFile
> so this is a good time to update it as well.
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339273002
>
> Committed: https://skia.googlesource.com/skia/+/
d8c2476a8b1e1e1a1771b17e8dd4db8645914f8c
TBR=mtklein@chromium.org,halcanary@google.com,mtklein@google.com,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/
2343933002
mtklein [Thu, 15 Sep 2016 17:44:15 +0000 (10:44 -0700)]
GN: link executables with -rdynamic on Linux.
-rdynamic makes sure the executable exposes all its symbols, which allows things like DM's built-in stack trace dumper to show symbols instead of just addresses. We do this in GYP too.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339983005
Review-Url: https://codereview.chromium.org/
2339983005
bungeman [Thu, 15 Sep 2016 17:03:27 +0000 (10:03 -0700)]
SkFontData to use smart pointers.
The SkFontData type is not exposed externally, so any method which uses
it can be updated to use smart pointers without affecting external
users. Updating this first will make updating the public API much
easier.
This also updates SkStreamAsset* SkStream::NewFromFile(const char*) to
std::unique_ptr<SkStreamAsset> SkStream::MakeFromFile(const char*). It
appears that no one outside Skia is currently using SkStream::NewfromFile
so this is a good time to update it as well.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339273002
Review-Url: https://codereview.chromium.org/
2339273002
mtklein [Thu, 15 Sep 2016 16:56:28 +0000 (09:56 -0700)]
simple fix?
Scope cmdInfo more tightly to where it's not a null reference.
BUG=skia:5759
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342063002
Review-Url: https://codereview.chromium.org/
2342063002
rmistry [Thu, 15 Sep 2016 16:33:08 +0000 (09:33 -0700)]
Add ability to create and upload SVGs from a local dir
BUG=skia:5757
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2346663003
Review-Url: https://codereview.chromium.org/
2346663003
borenet [Thu, 15 Sep 2016 16:08:48 +0000 (09:08 -0700)]
Fix NoGPU bot, which is compiling in GPU support
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2342683003
Review-Url: https://codereview.chromium.org/
2342683003
brianosman [Thu, 15 Sep 2016 15:40:21 +0000 (08:40 -0700)]
Remove the unused 16-bit gradient cache
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2343863002
Review-Url: https://codereview.chromium.org/
2343863002
brianosman [Thu, 15 Sep 2016 15:33:02 +0000 (08:33 -0700)]
More NoGPU compile fixes
I can now build 'most' with skia_gpu=0 on my machine.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2340133003
Review-Url: https://codereview.chromium.org/
2340133003
mtklein [Thu, 15 Sep 2016 15:27:33 +0000 (08:27 -0700)]
Pass rietveld as the default patch_storage.
Passing around empty strings as command line arguments requires
us to be really careful about command line quoting, parsing, etc.
It seems easy enough here to just supply the implied value.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2323233003
Review-Url: https://codereview.chromium.org/
2323233003
caryclark [Thu, 15 Sep 2016 14:48:18 +0000 (07:48 -0700)]
quad and conic do not intersect
If a quad a conic intersect only where the end of one
is contained by the convex hull of the other, and the
curve contained by the hull is nearly a straight line,
treating it as a line may move the end point to the
other side of the curve.
Detect this by checking to see if the end point is in
the hull, and if so, continue to subdivide the curve
rather than treating it as a line.
This fixes several existing tests that were disabled
earlier this year.
A typo in SkDCurve::nearPoint() prevented detecting when
the end of a line was nearly touching a curve.
Also fixed concidence a bit to get the second half of
tiger further along.
All existing tests, including extended testing in
Release and the first half of tiger, work.
TBR=reed@google.com
BUG=skia:5131
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2338323002
Review-Url: https://codereview.chromium.org/
2338323002
bsalomon [Thu, 15 Sep 2016 14:29:52 +0000 (07:29 -0700)]
Remove "f" suffix from literal in LCD DF text shader.
Also improve DF GP names
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2340603003
Review-Url: https://codereview.chromium.org/
2340603003
brianosman [Thu, 15 Sep 2016 14:19:53 +0000 (07:19 -0700)]
Fix SampleApp compilation with skia_gpu=0
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2347593002
Review-Url: https://codereview.chromium.org/
2347593002
reed [Thu, 15 Sep 2016 14:19:35 +0000 (07:19 -0700)]
add helpers for using SkData with picture serialization
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2341693004
TBR=
Review-Url: https://codereview.chromium.org/
2341693004
brianosman [Thu, 15 Sep 2016 13:59:15 +0000 (06:59 -0700)]
Bundle common arguments to GrGradientEffect creation
I'm going to be adding more (to deal with color spaces), so trying to fix
this before it gets out of control.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2332213007
Committed: https://skia.googlesource.com/skia/+/
f605c16a030d791a37f589e6bddd7158ba5d62cd
Review-Url: https://codereview.chromium.org/
2332213007
mtklein [Thu, 15 Sep 2016 13:24:03 +0000 (06:24 -0700)]
Tidy up DM blacklists.
No need to blacklist specific instances of configs that won't be run.
There's no bug or anything here... this is entirely about keeping the
command lines as noise-free as possible.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2341963003
Review-Url: https://codereview.chromium.org/
2341963003
rmistry [Thu, 15 Sep 2016 11:52:20 +0000 (04:52 -0700)]
Roll recipe DEPS
BUG=skia:5749
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339443003
NOTREECHECKS=true
Review-Url: https://codereview.chromium.org/
2339443003
mtklein [Thu, 15 Sep 2016 11:43:03 +0000 (04:43 -0700)]
Clean up unused SkPictureRecorder::optimizeFor()
Don't worry about the failing Shield bot... unrelated experiment. It's failing at head.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2340133002
NOTREECHECKS=true
Review-Url: https://codereview.chromium.org/
2340133002
djsollen [Thu, 15 Sep 2016 02:57:59 +0000 (19:57 -0700)]
Revert of Bundle common arguments to GrGradientEffect creation (patchset #2 id:20001 of https://codereview.chromium.org/
2332213007/ )
Reason for revert:
This seems to be causing the autoroll into Chromium to fail.
https://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/builds/69618/steps/compile/logs/stdio
Original issue's description:
> Bundle common arguments to GrGradientEffect creation
>
> I'm going to be adding more (to deal with color spaces), so trying to fix
> this before it gets out of control.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2332213007
>
> Committed: https://skia.googlesource.com/skia/+/
f605c16a030d791a37f589e6bddd7158ba5d62cd
TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/
2343703003
fmalita [Wed, 14 Sep 2016 21:55:59 +0000 (14:55 -0700)]
Fix SkDrawTextBlobCommand null blob crash
After https://codereview.chromium.org/
2335493005, we're moving the param
into a local field -> we should no longer access it.
TBR=robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2344523003
Review-Url: https://codereview.chromium.org/
2344523003
egdaniel [Wed, 14 Sep 2016 21:42:02 +0000 (14:42 -0700)]
Update GN droid script
Splits the pushes into different lines since old adbs cannot handle the one
line command
TBR=mtklein@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339293002
Review-Url: https://codereview.chromium.org/
2339293002
fmalita [Wed, 14 Sep 2016 19:04:30 +0000 (12:04 -0700)]
[SVGDom] Expose intrinsic size info
* expose intrinsic size info on <svg> nodes.
* tweak the SkSVGDOM constructor to no longer take an container size
param, but instead default to intrinsic size
* update clients to call SkSVGDOM::setContainerSize() explicitly, when
needed
R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2345533002
Review-Url: https://codereview.chromium.org/
2345533002
msarett [Wed, 14 Sep 2016 18:53:49 +0000 (11:53 -0700)]
Don't let the compiler complain that |a| is uninit
TBR=mtklein@google.com
NOTRY=true
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339793003
Review-Url: https://codereview.chromium.org/
2339793003
egdaniel [Wed, 14 Sep 2016 18:26:11 +0000 (11:26 -0700)]
Disable ignore discard optimization in Vulkan
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2346553002
Review-Url: https://codereview.chromium.org/
2346553002
mtklein [Wed, 14 Sep 2016 18:20:59 +0000 (11:20 -0700)]
CQ update
- swap the N5 experiment over to the new GN N5 bot
- cut down on the Windows build duplication: the other two bots
cover x86, x86-64, Release, Debug, _and_ Vulkan already.
- remove the Release-Shared tester: I added this bot to act as a proxy
for the also Shared-build Android bots, but 1) they're fast enough
to no longer need a proxy (see N5 above) and 2) they're no longer
Shared builds. I intend to completely drop support for dm and
nanobench in Shared builds, so this bot will not just drop from the
CQ but completely disappear.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2346463002
Review-Url: https://codereview.chromium.org/
2346463002
mtklein [Wed, 14 Sep 2016 18:16:49 +0000 (11:16 -0700)]
GN: add is_official_build
... and use it to control debug symbols and SK_ALLOW_STATIC_GLOBAL_INITIALIZERS.
This will most directly have the effect of disabling GLProgramsTest and a bunch
of similar failing Vk tests on Android.
Hopefully this makes the N7 trybot go green, keeping the N5 trybot green. Just running the N10 for fun.
(is_official_build is how Chrome terms this sort of ReleaseForReal build.)
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2340723003
Review-Url: https://codereview.chromium.org/
2340723003
mtklein [Wed, 14 Sep 2016 18:15:54 +0000 (11:15 -0700)]
merge run and check-rc steps
This'll make the 'dm' or 'nanobench' step go red like you'd hope.
The N5 should pass and the N10 and N7 should fail, showing us both sides.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339713003
Review-Url: https://codereview.chromium.org/
2339713003
msarett [Wed, 14 Sep 2016 18:02:04 +0000 (11:02 -0700)]
Store SkColorSpaceXform gamma LUTs in a malloced field
In order of likelihood:
(1) Tables are never used, since gamma is recognized and named.
(2) Only use one table, since all three gammas are the same.
(3) Actually need three tables.
No reason to waste a bunch of space for these tables on
SkColorSpaceXform, when it will likely be unused.
This will be more efficient in lots of cases, but is particularly
useful when the client really only wants a gamut xform.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2336913005
Review-Url: https://codereview.chromium.org/
2336913005
mtklein [Wed, 14 Sep 2016 17:33:12 +0000 (10:33 -0700)]
565 is not this important.
Reduce its testing and perfing to just the fast Linux bots,
and remove it from the default set of dm/nanobench configs.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2344553002
Review-Url: https://codereview.chromium.org/
2344553002
msarett [Wed, 14 Sep 2016 17:23:03 +0000 (10:23 -0700)]
Convert back to 0-255 scale before storing linear bytes
TBR=mtklein@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2338203005
Review-Url: https://codereview.chromium.org/
2338203005
fmalita [Wed, 14 Sep 2016 17:14:08 +0000 (10:14 -0700)]
Improved optional command handling in SkParsePath::FromSVGString()
Repeating command letters are optional in SVG path data strings:
https://www.w3.org/TR/SVG/paths.html#PathData
FromSVGString() already supports this feature, but only checks for
scalars prefixes == (digit | '-' | '+').
A decimal point is also a valid scalar prefix though, so it should be
included in the test.
R=caryclark@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339813003
Review-Url: https://codereview.chromium.org/
2339813003
brianosman [Wed, 14 Sep 2016 17:03:46 +0000 (10:03 -0700)]
Bundle common arguments to GrGradientEffect creation
I'm going to be adding more (to deal with color spaces), so trying to fix
this before it gets out of control.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2332213007
Review-Url: https://codereview.chromium.org/
2332213007
fmalita [Wed, 14 Sep 2016 16:05:43 +0000 (09:05 -0700)]
Fix SVG flag iOS linking
TBR=mtklein@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2344533002
Review-Url: https://codereview.chromium.org/
2344533002
fmalita [Wed, 14 Sep 2016 15:05:17 +0000 (08:05 -0700)]
Nanobench SVG support
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2339743002
Review-Url: https://codereview.chromium.org/
2339743002
caryclark [Wed, 14 Sep 2016 14:18:20 +0000 (07:18 -0700)]
Rewriting path writer
The path writer takes constructs the output path out of
curves that satisfy the pathop operation.
Curves contain lists of t/point pairs that may not be
comparable to each other. To match up curve ends in the
output path, look for adjacent curves to have a shared
membership rather than comparing point values.
Use path utilities to connect partial curve lists into
closed contours.
Share the angle code that determines if a curve has become
a degenerate line with the path writer.
Clean up some code on the way, and delete some unused
functions.
TBR=reed@google.com
BUG=5188
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2321973005
Review-Url: https://codereview.chromium.org/
2321973005
msarett [Wed, 14 Sep 2016 14:06:08 +0000 (07:06 -0700)]
Reduce overhead for linear color xforms
We used to build src and dst transfer fn tables
every time a new xform was created with linear
src and dst. Now we don't compute them because
we don't need them.
This will make SkColorSpaceXform a far better
option for any xforms with float or half-float
inputs or outputs, particularly on a small number
of pixels.
This CL also moves SkColorSpaceXform closer to
what I anticipate will be the eventual 'API design'.
I think apply() will want to take a SrcColorType enum
(not created yet because it's not necessary yet) and
a DstColorType enum (still using SkColorType because
there's not yet a reason not to).
Performance changes:
toSRGB 341us -> 366us
to2Dot2 404us -> 403us
toF16 318us -> 304us
There's no reason for toSRGB or to2Dot2 to change.
The refactor seems to have caused the compiler to
order the instructions a little differently...
This is something to come back to if we need to
squeeze more performance out of sRGB. For now,
let's not be held up by something we don't control.
F16 likely improves because we are no longer
(unnecessarily) building the linear tables.
Code size gets a little bigger. Measuring
SkColorSpaceXform size as a percentage of src/ size,
we go from 0.8% to 1.4%.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2335723002
Review-Url: https://codereview.chromium.org/
2335723002
jvanverth [Wed, 14 Sep 2016 14:04:49 +0000 (07:04 -0700)]
Switch default for SkGaussianBlurShader radius size.
One step towards removing the 6.2 radius entirely.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2333403002
TBR=bsalomon@google.com
Review-Url: https://codereview.chromium.org/
2333403002
mtklein [Wed, 14 Sep 2016 13:12:09 +0000 (06:12 -0700)]
GN: Android Vulkan support
Android's the easiest place to start supporting Vulkan, so it's up first.
ndk_api becomes user-specifiable so that the Vulkan bots can kick it up
to 24, the first release supporting Vulkan. The defaults remain the same:
18 for 32-bit and 21 for 64-bit, the first release supporting 64-bit.
To test this, I set ndk_api=24 and skia_use_vulkan=true in GN, then
$ ninja -C out dm; and droid out/dm --config vk --src gm
Seems to work! Bot scripts to follow.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2336343002
Review-Url: https://codereview.chromium.org/
2336343002
mtklein [Wed, 14 Sep 2016 12:44:31 +0000 (05:44 -0700)]
update derive_compile_bot_name() for GN_Android_Vulkan
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2336233005
Review-Url: https://codereview.chromium.org/
2336233005
mtklein [Wed, 14 Sep 2016 12:33:11 +0000 (05:33 -0700)]
Android GN scripts: distingush directories for data and binaries.
This enables data reuse, e.g. https://luci-milo.appspot.com/swarming/task/
313eff129c753d10 or https://luci-milo.appspot.com/swarming/task/
313f17a174c6c710
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2335203004
Review-Url: https://codereview.chromium.org/
2335203004
reed [Wed, 14 Sep 2016 00:25:19 +0000 (17:25 -0700)]
change write-image to use pipeverbs like everyone else, and add test
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2335973003
Review-Url: https://codereview.chromium.org/
2335973003
mikejurka [Tue, 13 Sep 2016 23:15:03 +0000 (16:15 -0700)]
re-add SkDebug_stdio for Fuchsia builds
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2331383004
Review-Url: https://codereview.chromium.org/
2331383004
bungeman [Tue, 13 Sep 2016 21:03:54 +0000 (14:03 -0700)]
Simulated fonts aren't TrueType fonts.
Some font back-ends provide simulated fonts such as fake bold or fake
oblique. These fonts should not be reported as TrueType, since the font
data isn't what is actually used to draw the glyphs.
BUG=chromium:639198
BUG=chromium:614612
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2333423002
Review-Url: https://codereview.chromium.org/
2333423002