Commit Graph

24271 Commits

Author SHA1 Message Date
mtklein
605d952893 GN: take over CommandBuffer bot
As you suspected, I see nothing preventing us from building our side of things unconditionally.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2358173002
NOTREECHECKS=true

Review-Url: https://codereview.chromium.org/2358173002
2016-09-21 14:01:32 -07:00
bsalomon
0e4a466a61 Use sk_careful_memcpy when writing optional conic weights for GrShape path data key.
TBR=robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2359933002

NO_DEPENDENCY_CHECKS=true

Review-Url: https://codereview.chromium.org/2359933002
2016-09-21 11:23:46 -07:00
bsalomon
39ef7fb885 Add optional sw generated path coverage mask caching
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2335343008

All the bots except the painfully slow windows compiler have finished so,
NOTRY=true

Review-Url: https://codereview.chromium.org/2335343008
2016-09-21 11:16:05 -07:00
reed
669983856d allow clip calls w/o op param, remove unnecessary kReplace ops
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2357333002

Review-Url: https://codereview.chromium.org/2357333002
2016-09-21 11:15:07 -07:00
robertphillips
df55827ae6 Remove unused SkImage_Base and SkImage_Gpu onNewSurface methods
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2353403002

Review-Url: https://codereview.chromium.org/2353403002
2016-09-21 11:00:23 -07:00
bsalomon
2eda5b3a65 Conditionally insert gl_PointSize into shaders.
BUG=chromium:648816
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2358843002

Review-Url: https://codereview.chromium.org/2358843002
2016-09-21 10:53:24 -07:00
jvanverth
7d05f32a1d Always use transfer_dst for buffers.
This will allow Adreno to use non-coherent buffers.

BUG=skia:5034
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2361473002

Review-Url: https://codereview.chromium.org/2361473002
2016-09-21 10:20:23 -07:00
mtklein
38925aa37c Build tools on NoGPU bots.
I was just lazy disabling this before.  It turns out to not be difficult.

This gets us slightly better testing out of the NoGPU bot, as we now know
not only that Skia compiles, but also that DM and nanobench can link (and
thus that Skia's got enough compiled in it to be a coherent library).

skpbench requires GPU support.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2356283002

Review-Url: https://codereview.chromium.org/2356283002
2016-09-21 10:11:25 -07:00
brianosman
04a44d0fd4 Add a transient image filter cache to SkImage::makeWithFilter & PDF
Added a bench for makeWithFilter (~23 ms -> ~6 ms median locally).

Also fixed indentation.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2360663002

Review-Url: https://codereview.chromium.org/2360663002
2016-09-21 09:46:57 -07:00
mtklein
3e8012e74f GN: is_skia_standalone
is_skia_standalone will be defined and set to true iff we're using our
standalone BUILDCONFIG.gn.  Any other build (Fuchsia, Chrome, Pdfium)
will have their own BUILDCONFIG.gn, which presumably does not define
is_skia_standalone.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2357963002

Review-Url: https://codereview.chromium.org/2357963002
2016-09-21 09:14:19 -07:00
caryclark
45f04b8ea8 fix skia pathops fuzzers
Add isolated tests.

R=kjlubick@google.com
BUG=skia:5775
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2358043002

Review-Url: https://codereview.chromium.org/2358043002
2016-09-21 08:46:56 -07:00
bsalomon
67fa4e31d8 Make GrShape compute keys for short paths from path data instead of using the gen id.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2357643002

Review-Url: https://codereview.chromium.org/2357643002
2016-09-21 08:26:57 -07:00
bsalomon
8eb43e5f63 Stop closing filled paths in GrShape
This can force a copy of the path data and isn't really being taken advantage of. It complicates a forthcoming change to key small paths based on their data rather than gen id.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2355833002

Committed: https://skia.googlesource.com/skia/+/ad001fdc77b2dfe32c1723cb58636728dfb776d8
Review-Url: https://codereview.chromium.org/2355833002
2016-09-21 07:47:34 -07:00
egdaniel
e4a9bd79c6 Add define of SK_ENABLE_VK_LAYERS to gn build
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2357953002

Review-Url: https://codereview.chromium.org/2357953002
2016-09-21 07:36:14 -07:00
liyuqian
71477bdfb0 Add setBounds to SkLiteDL for Android
The RootRenderNode in Android is changing bounds dynamically. This is a
temporary fix to accomodate that behaviour. (See also b/31304115)

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2358793002

Review-Url: https://codereview.chromium.org/2358793002
2016-09-21 07:11:08 -07:00
sdefresne
67ba29ce84 Fix memory leaks reported by clang static analyzer.
The CFURLCopyFileSystemPath & CFURLCopyFileSystemPath methods
respect the "Create Rule" [1] regarding the ownership of the
returned reference. This means that the objects need to be
deallocated explicitly by calling CFRelease.

[1]: https://developer.apple.com/library/content/documentation/CoreFoundation/Conceptual/CFMemoryMgmt/Concepts/Ownership.html#//apple_ref/doc/uid/20001148-103029

BUG=648210
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2360573002

Review-Url: https://codereview.chromium.org/2360573002
2016-09-21 06:51:33 -07:00
brianosman
2695eaa41f Fix some GPU image filter code to preserve precision and color space
On the pure-GPU path, we just have an SkSpecialImage (that's definitely
texture backed), and we need a renderable config for the draw context we
make. Added a helper function to pick - this is basically the high
precision analog of what we were doing before (always using 8888).

The assert that I added catches many other problems in image filter code,
but those fixes are coming in subsequent CLs.

12 GMs render correctly (or more correctly) in gpusrgb and gpuf16
configs. In most cases, they were drawing previously nothing.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2359443003

Review-Url: https://codereview.chromium.org/2359443003
2016-09-21 06:45:09 -07:00
bungeman
4d450d24f5 Remove SK_ADDING_src_ports_SkFontConfigInterface_cpp
This flag is no longer defined anywhere, so remove it and the code it
was guarding.

TBR=reed
This is just removing dead transitional code.

Review-Url: https://codereview.chromium.org/2352163002
2016-09-20 15:46:36 -07:00
fmalita
bef51c23c3 [SVGDom] Opacity optimization
Apply opacity as fill/stroke paint alpha instead of saveLayer, when
possible.

R=robertphillips@google.com,stephana@google.com,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2353503005

Committed: https://skia.googlesource.com/skia/+/3dbb7b9f196d793fbd16243157ee67638891f5dc
Review-Url: https://codereview.chromium.org/2353503005
2016-09-20 15:45:57 -07:00
mtklein
768dc8f496 Blacklist serialize-8888 typefacerendering_pfaMac
BUG=skia:5778
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2356753003

TBR=halcanary@google.com
NOTREECHECKS=true
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Mac-Clang-MacMini6.2-CPU-AVX-x86_64-Debug-GN-Trybot

Review-Url: https://codereview.chromium.org/2356753003
2016-09-20 15:41:29 -07:00
mtklein
e9fb3d553c GN: fold :vulkan into :gpu.
Obviously, :vulkan can't be used without :gpu, but more subtly,
:gpu needs to see SK_VULKAN defined if we're using Vulkan.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2352923003
NOTREECHECKS=true

Review-Url: https://codereview.chromium.org/2352923003
2016-09-20 15:11:46 -07:00
fmalita
e918417dc3 Revert of Stop closing filled paths in GrShape (patchset #1 id:1 of https://codereview.chromium.org/2355833002/ )
Reason for revert:
Triggers msaa16 asserts: https://build.chromium.org/p/client.skia/builders/Test-Win10-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug/builds/4236/steps/test_skia%20on%20Windows/logs/stdio

c:\b\work\skia\src\gpu\grmesh.h:76: fatal error: "assert(indexCount)"

Caught exception 2147483651 EXCEPTION_BREAKPOINT, was running:
	msaa16 svg  cartman.svg
Likely culprit:
	msaa16 svg  cartman.svg

Original issue's description:
> Stop closing filled paths in GrShape
>
> This can force a copy of the path data and isn't really being taken advantage of. It complicates a forthcoming change to key small paths based on their data rather than gen id.
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2355833002
>
> Committed: https://skia.googlesource.com/skia/+/ad001fdc77b2dfe32c1723cb58636728dfb776d8

TBR=robertphillips@google.com,bsalomon@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/2357713002
2016-09-20 14:06:57 -07:00
borenet
a5344ee50a Revert of [SVGDom] Opacity optimization (patchset #4 id:60001 of https://codereview.chromium.org/2353503005/ )
Reason for revert:
Failing assertion

Original issue's description:
> [SVGDom] Opacity optimization
>
> Apply opacity as fill/stroke paint alpha instead of saveLayer, when
> possible.
>
> R=robertphillips@google.com,stephana@google.com,reed@google.com
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2353503005
>
> Committed: https://skia.googlesource.com/skia/+/3dbb7b9f196d793fbd16243157ee67638891f5dc

TBR=reed@google.com,robertphillips@google.com,stephana@google.com,fmalita@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/2359603002
2016-09-20 13:39:46 -07:00
mtklein
a627b5c3b9 GN: add skia_use_mesa for OSMesa in tools.
I tested by running
  $ out/dm --src gm --config mesa
  $ out/nanobench --config mesa --match Xfermode
... but I ran out of patience waiting for nanobench to finish.  Probably works.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2357703002

Review-Url: https://codereview.chromium.org/2357703002
2016-09-20 13:36:47 -07:00
borenet
c549212cb3 Attempt to fix nanobench upload
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2356813003

Review-Url: https://codereview.chromium.org/2356813003
2016-09-20 13:32:38 -07:00
stani
89e6af69b2 Revert of Clear stencil buffer before using it for drawing (patchset #2 id:20001 of https://codereview.chromium.org/2342873004/ )
Reason for revert:
performance regression in Android macrobench tests

Original issue's description:
> 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
>
> Committed: https://skia.googlesource.com/skia/+/c326a383e1069497884905f9dd3e720e17d8fcb5

TBR=bsalomon@google.com,reed@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.

Review-Url: https://codereview.chromium.org/2355923002
2016-09-20 13:24:49 -07:00
jvanverth
65b8cb05a7 Fix VkWrapTests
BUG=skia:
TBR=bsalomon@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2352173002

Review-Url: https://codereview.chromium.org/2352173002
2016-09-20 13:18:00 -07:00
halcanary
4ecf0d4843 GM: add test for type1 font
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2350453002

Review-Url: https://codereview.chromium.org/2350453002
2016-09-20 13:11:01 -07:00
egdaniel
7517e45e78 Disable framebuffer fetch on the Adreno5xx devices.
This should help with some of the rendering bugs currently in GL for the
S7.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2348293004

Review-Url: https://codereview.chromium.org/2348293004
2016-09-20 13:00:26 -07:00
egdaniel
d5797b3059 Fix possible divide by zero in vulkan granularity adjustments
This should fix the divide by zero crash on the nexus player bots

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2358613002

Review-Url: https://codereview.chromium.org/2358613002
2016-09-20 12:57:45 -07:00
bsalomon
ad001fdc77 Stop closing filled paths in GrShape
This can force a copy of the path data and isn't really being taken advantage of. It complicates a forthcoming change to key small paths based on their data rather than gen id.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2355833002

Review-Url: https://codereview.chromium.org/2355833002
2016-09-20 12:44:36 -07:00
fmalita
3dbb7b9f19 [SVGDom] Opacity optimization
Apply opacity as fill/stroke paint alpha instead of saveLayer, when
possible.

R=robertphillips@google.com,stephana@google.com,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2353503005

Review-Url: https://codereview.chromium.org/2353503005
2016-09-20 12:44:31 -07:00
egdaniel
15ba6d9e96 Disable failing unit tests on adreno vulkan
As mentioned in the attached bug, these failures all seem to be caused
by driver issues that have no workarounds at this time.

BUG=skia:5777
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2355883002

Review-Url: https://codereview.chromium.org/2355883002
2016-09-20 12:39:29 -07:00
egdaniel
594739c792 Use STDArray to for tracked resources in vulkan command buffer
This is a minor speed improvement to help with the number of times we
are freeing and re-allocating the tracked resource arrays

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2338963004

Review-Url: https://codereview.chromium.org/2338963004
2016-09-20 12:39:25 -07:00
borenet
0ecd91695f Revert of Skia recipe: Use [depot_tools]/gsutil.py instead of [depot_tools]/third_party/gsutil/gsutil (patchset #1 id:1 of https://codereview.chromium.org/2298293002/ )
Reason for revert:
Broke all nanobench uploads, eg. https://uberchromegw.corp.google.com/i/client.skia.android/builders/Perf-Android-Clang-Nexus6p-CPU-Snapdragon810-arm64-Release-GN_Android/builds/154/steps/Upload%20perf%20results/logs/stdio

Original issue's description:
> Skia recipe: Use [depot_tools]/gsutil.py instead of [depot_tools]/third_party/gsutil/gsutil
>
> The latter is being removed in https://codereview.chromium.org/2280023003/
> Is also pinned to 3.25, whereas the former is updated more often.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2298293002
>
> Committed: https://skia.googlesource.com/skia/+/f15590f803596f51d0950994b2aeb623d2d1fc24

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

Review-Url: https://codereview.chromium.org/2355943002
2016-09-20 12:34:05 -07:00
mtklein
06c35c0953 GN: add skia_enable_gpu (default true)
This lets us replace the NoGPU bot.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2356853002

NOTREECHECKS=true

Review-Url: https://codereview.chromium.org/2356853002
2016-09-20 12:28:12 -07:00
mtklein
60b7ab7a8e GN: compiler_prefix -> cc_wrapper
I was a bit mixed up thinking Chrome called this feature compiler_prefix.
They actually call it cc_wrapper.  So let's switch to their name before we
get too used to this.

No bots are affected.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2355003002
DOCS_PREVIEW= https://skia.org/?cl=2355003002

NOTREECHECKS=true

Review-Url: https://codereview.chromium.org/2355003002
2016-09-20 12:09:13 -07:00
mtklein
1905098bc4 Snazzier dump log step on Android bots.
(The failing NexusPlayer bot is a demo.)

This should make stack traces more useful, turning this sort of thing

    09-20 11:29:39.536  2978  2978 F DEBUG   :     #00 pc 00970fd0  /data/local/tmp/dm

into something like this

    09-20 11:29:39.536  2978  2978 F DEBUG   :     #00 pc 00970fd0 adjust_bounds_to_granularity(SkIRect*, SkIRect const&, VkExtent2D const&, int, int) at /b/work/skia/out/Build-Ubuntu-Clang-x86-Debug-GN_Android_Vulkan/Debug/../../../src/gpu/vk/GrVkGpu.cpp:1803  /data/local/tmp/dm

Some bots like the S7 already have good enough stack traces, e.g.

09-20 11:35:12.567   936   936 F DEBUG   :     #00 pc 00000000000bed6c  /system/vendor/lib64/hw/vulkan.msm8996.so (_ZN13QglManagedBuf14ConfirmEntriesEv+108)
09-20 11:35:12.567   936   936 F DEBUG   :     #01 pc 00000000000b098c  /system/vendor/lib64/hw/vulkan.msm8996.so (_ZN9QglBltLib6FillHwEPK10QglBltFillPK15QglBltColorFillPK15QglBltDepthFillPjP12QglBltStatusSB_+588)
09-20 11:35:12.567   936   936 F DEBUG   :     #02 pc 00000000000b23bc  /system/vendor/lib64/hw/vulkan.msm8996.so (_ZN9QglBltLib9FillImageEPK10QglBltFillPK15QglBltColorFillPK15QglBltDepthFillPjP12QglBltStatusSB_+348)
09-20 11:35:12.567   936   936 F DEBUG   :     #03 pc 000000000009bb00  /system/vendor/lib64/hw/vulkan.msm8996.so (_ZN16A5xCommandBuffer22PerformConditionalFillEiiP10QglBltFillPK15QglBltColorFillP15QglBltDepthFillP12QglBltStatusS8_+256)
09-20 11:35:12.567   936   936 F DEBUG   :     #04 pc 000000000009c0c0  /system/vendor/lib64/hw/vulkan.msm8996.so (_ZN16A5xCommandBuffer23HwWriteSubpassInitClearEP10QglBltFillPK15QglBltColorFillP15QglBltDepthFillP12QglBltStatusS8_+224)
09-20 11:35:12.567   936   936 F DEBUG   :     #05 pc 0000000000072610  /system/vendor/lib64/hw/vulkan.msm8996.so (_ZN16QglCommandBuffer18WriteSubpassClearsEv+464)
09-20 11:35:12.567   936   936 F DEBUG   :     #06 pc 0000000000073ae0  /system/vendor/lib64/hw/vulkan.msm8996.so (_ZN16QglCommandBuffer12BeginSubpassEv+32)
09-20 11:35:12.567   936   936 F DEBUG   :     #07 pc 0000000000063120  /system/vendor/lib64/hw/vulkan.msm8996.so (vkCmdBeginRenderPass+224)
09-20 11:35:12.567   936   936 F DEBUG   :     #08 pc 0000000000635f60  /data/local/tmp/nanobench (_ZN24GrVkPrimaryCommandBuffer15beginRenderPassEPK7GrVkGpuPK14GrVkRenderPassjPK12VkClearValueRK16GrVkRenderTargetRK7SkIRectb+132)

or

09-20 11:42:24.557   937   937 F DEBUG   : backtrace:
09-20 11:42:24.557   937   937 F DEBUG   :     #00 pc 0000000000069404  /system/lib64/libc.so (tgkill+8)
09-20 11:42:24.557   937   937 F DEBUG   :     #01 pc 0000000000066b94  /system/lib64/libc.so (pthread_kill+68)
09-20 11:42:24.557   937   937 F DEBUG   :     #02 pc 0000000000023a28  /system/lib64/libc.so (raise+28)
09-20 11:42:24.557   937   937 F DEBUG   :     #03 pc 000000000001e358  /system/lib64/libc.so (abort+60)
09-20 11:42:24.557   937   937 F DEBUG   :     #04 pc 000000000076430c  /data/local/tmp/dm (_Z17sk_abort_no_printv+8)

These won't be affected.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2351243002

NOTREECHECKS=true

Review-Url: https://codereview.chromium.org/2351243002
2016-09-20 11:45:11 -07:00
brianosman
3e6cf87b5c Cleanup some sRGB TODOs, mostly around setting GrPaint flags correctly
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2358433004

Review-Url: https://codereview.chromium.org/2358433004
2016-09-20 09:56:23 -07:00
jvanverth
9d54afc38b Support use of non-coherent memory allocations in Vulkan.
BUG=skia:5034
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2348523002

Review-Url: https://codereview.chromium.org/2348523002
2016-09-20 09:20:03 -07:00
bsalomon
a624bf3d1c 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

Committed: https://skia.googlesource.com/skia/+/d91237ee051523f439238042674ade99207fe4a6
Review-Url: https://codereview.chromium.org/2339203002
2016-09-20 09:12:47 -07:00
egdaniel
be9d82161d Workaround for Adreno INITIALIZATION_FAILED bug
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2352083002

Review-Url: https://codereview.chromium.org/2352083002
2016-09-20 08:54:23 -07:00
sdefresne
388127f192 Fix a memory leak reported by clang static analyzer.
The CFStringCreateWithCString method respect the "Create Rule" [1]
regarding the ownership of the returned reference. This means that
the object needs to be deallocated explicitly by calling CFRelease.

[1]: https://developer.apple.com/library/content/documentation/CoreFoundation/Conceptual/CFMemoryMgmt/Concepts/Ownership.html#//apple_ref/doc/uid/20001148-103029

BUG=648210
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2354963002

Review-Url: https://codereview.chromium.org/2354963002
2016-09-20 08:53:14 -07:00
reed
73603f3c52 abstract name of clipping ops, to transtion to a more restricted set
SkRegion::Op --> SkCanvas::ClipOp (alias) --> SkClipOp

pre-CL needed in chrome : https://codereview.chromium.org/2355583002/

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2355483002

Review-Url: https://codereview.chromium.org/2355483002
2016-09-20 08:42:39 -07:00
mtklein
cae1be5acc skia_enable_android_framework_defines in all code, public and private, optional and required.
The bug fixed here can be demonstrated by
  $ ninja -C out pdf -v
before and after this CL.  Before you won't see the Android defines, afterwards you do.  Previously the defines applied only privately to Skia, and only to its non-optional components.

TBR=reed@google.com

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2356783002

Review-Url: https://codereview.chromium.org/2356783002
2016-09-20 08:24:35 -07:00
brianosman
37e233495a Auto-generate much of the help text for --config to reduce maintenance
The list of configs, and the details about all predefined configs are now
built directly from the gPredefinedConfigs array.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2354943002

Review-Url: https://codereview.chromium.org/2354943002
2016-09-20 08:06:30 -07:00
borenet
f44b493cb8 Fix Win toolchain asset, fix script
BUG=skia:5764
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2351033004

Review-Url: https://codereview.chromium.org/2351033004
2016-09-20 07:01:23 -07:00
fmalita
6d7e4e8303 Harden LinearGradient4fContext
Three distinct issues exposed by Fuzzer:

1) truncating the flags to 8 bits may trip the assert in SkToU8

Since clients can pass in any garbage, we cannot assume it fits in 8
bits.  Just static_cast<> instead.

2) vertical gradients with dx == -0.0 don't trigger interval inversion.

For dx < 0 we want reversed intervals.  But, alas, -0.0 < 0 == false
(thanks, Ob^WIEEE 754!).  Use signbit() instead.

3) half closed range checking needs to be inverted for reversed
intervals.

Normally we check for [p0, p1), but for reversed intervals (p1 < p0) we
want to check for [p1, p0), and not (p1, p0].  Adjust the logic
accordingly.

BUG=skia:5647
R=reed@google.com,kjlubick@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2349153004

Review-Url: https://codereview.chromium.org/2349153004
2016-09-20 06:55:16 -07:00
msarett
16b15ddd4d Blacklist incomplete pngs on CG
BUG=skia:5774
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2351083002

Review-Url: https://codereview.chromium.org/2351083002
2016-09-20 05:50:16 -07:00
cblume
05a3eac35c SkASSERT firing because pointer wraps negative.
Some pointers are being cast to intptr_t so they can be used with
SkAlign8(). However, a large pointer value might become a negative
integer since intptr_t is signed.

When comparing these intptr_ts, we expect the larger pointer value to be
greater. But it might be so large that it becomes negative, causing it
to be less than.

A SkASSERT is firing for this exact reason.

BUG=648452
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2353453004

Review-Url: https://codereview.chromium.org/2353453004
2016-09-19 21:05:18 -07:00