Commit Graph

24982 Commits

Author SHA1 Message Date
Mike Klein
ec07b0b9c1 Try again with SkOpts_hsw and 8x pipelines, attempt 2.
Originally reviewed: https://skia-review.googlesource.com/3667

This time around, don't forget swap_src_dst.

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot

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

Change-Id: I127e7fb2bf9d3bfee61c3749fc1c334c9476cb4e
Reviewed-on: https://skia-review.googlesource.com/3676
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-19 21:01:43 +00:00
Mike Klein
21f74906a5 Revert "Try again with SkOpts_hsw and 8x pipelines."
This reverts commit 4f02ce7995.

Reason for revert: missed a stage


TBR=mtklein@chromium.org,msarett@google.com,herb@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I1dc1229183d67fe72977e492977a97b19dc630d2
Reviewed-on: https://skia-review.googlesource.com/3675
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-10-19 20:42:26 +00:00
Mike Klein
4f02ce7995 Try again with SkOpts_hsw and 8x pipelines.
All SkNx are now in anonymous namespaces and all their methods are force-inlined.  We should not have any ODR problems.

This is still a near 2x speedup, more so for f16.

BUG=skia:

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

Change-Id: I6db9a46f7164f49827ab4d7983e80bf8cea99995
Reviewed-on: https://skia-review.googlesource.com/3667
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-19 20:24:46 +00:00
scroggo
aef247af0a Subtract start_coord instead of adding it
crrev.com/2420843003 (DIFFERENT ISSUE) introduced some changes in
sampled images. (I already corrected the problem for interlaced PNGs
in crrev.com/2424353003.)

When deciding whether a row is needed, we need to subtract the starting
coordinate, similar to how we subtracted fFirstRow in SkPngCodec.

This should "fix" the remaining untriaged images in Gold (i.e. we will
go back to producing the original image).
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2440563002

Review-Url: https://chromiumcodereview.appspot.com/2440563002
2016-10-19 12:56:46 -07:00
borenet
d6a1defd1f Recipe fix for buildbotless bots
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2435803003

Review-Url: https://chromiumcodereview.appspot.com/2435803003
2016-10-19 12:56:43 -07:00
Mike Klein
d8765e3455 Define SK_CPU_SSE_LEVEL on Windows builds.
We check this define to know which intrinsics we can call safely.  The -msse flags set it for us on non-MSVC, but MSVC has no such switch.  We do this in GYP (and Chrome's GN) too.  No need for any defines on :avx or :hsw targets... the /arch:AVX and /arch:AVX2 do set SK_CPU_SSE_LEVEL for us.

Most directly, this means things like Sk4f::thenElse() will now use blendps when compiled into SkOpts_sse41.cpp.

BUG=skia:

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

Change-Id: Ie80a8b8e5544250b45cfe51c40604fade06b3ef9
Reviewed-on: https://skia-review.googlesource.com/3666
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
2016-10-19 18:01:37 +00:00
Mike Klein
4bc6d8fd3d Make monobench more usable on Windows.
All small stuff:
  - printf doesn't go to the Visual Studio console, SkDebugf does;
  - the Windows console can't show an ellipsis;
  - overwriting the console line is a little different on Windows.

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

Change-Id: I0175afd6d0147feaff8ff6edae2b35a7435c25f5
Reviewed-on: https://skia-review.googlesource.com/3664
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-19 17:43:07 +00:00
xidachen
95e34a3d84 Correct a small mistake in SkPath::build_arc_conics
In this function, when count is 0, it maps the dst point to start, where
it should really be stop. A test case is also added.

In the test case, it should be drawing three lines, without the change in
SkPath class, it will draw 2 lines only with the top horizontal line
missing because it maps the dst point to the start point, and hence
the horizontal line is not drawn.

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

Review-Url: https://chromiumcodereview.appspot.com/2409983004
2016-10-19 10:24:29 -07:00
borenet
bfa5b45578 Add key params for buildbotless bots in DM/nanobench
BUG=skia:5626
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2424793005

Review-Url: https://chromiumcodereview.appspot.com/2424793005
2016-10-19 10:13:32 -07:00
Mike Klein
12b2193fcc Remove shaderc DEPS.
Was just perusing DEPS and I realized shaderc is probably no longer needed.

BUG=skia:

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

Change-Id: I054a424b26e51dbfee77dbe79e1e175399627902
Reviewed-on: https://skia-review.googlesource.com/3561
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2016-10-19 16:51:02 +00:00
Mike Klein
4d7bb93914 disable packed texture tests on TSAN bot
https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-Clang-Golo-GPU-GT610-x86_64-Release-TSAN
is flaky.

BUG=skia:

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

Change-Id: I5c80970cb81db71f4acc89dc287952b1d2a3656c
Reviewed-on: https://skia-review.googlesource.com/3662
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-19 16:46:05 +00:00
Greg Daniel
77b53f66ba Support inline uploads in Vulkan
BUG=skia:

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

Change-Id: I5913c336aa33851d6d2e80d9638df2efa8ac0400
Reviewed-on: https://skia-review.googlesource.com/3586
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2016-10-19 16:06:12 +00:00
Mike Klein
560285d93a Remove custom NINJA_STATUS.
I think the Ninja [nnn/mmm] counts started going off when we landed this.
I'd rather have the [nnn/mmm] be correct than have the timestamps.

Change-Id: I96d24664789393056f94202f2b549ed5a4fe4bdb
Reviewed-on: https://skia-review.googlesource.com/3604
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-19 16:01:09 +00:00
Brian Osman
9f532a3598 Add helper to create random AsFPArgs for Ganesh unit tests
Reduces copy-paste and eases maintenance. I'll be adding another field to
AsFPArgs soon, and this is going to streamline that change.

BUG=skia:

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

Change-Id: I6372ed5dce50a5ba9d73039bd4714e34502a1f75
Reviewed-on: https://skia-review.googlesource.com/3639
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2016-10-19 16:01:07 +00:00
borenet
5e3d9c2e31 Roll recipe DEPS
This is for https://codereview.chromium.org/2426013002/ ("Add Swarming
magic environment variables to ENV_WHITELIST")

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

Review-Url: https://chromiumcodereview.appspot.com/2438553002
2016-10-19 08:58:29 -07:00
Mike Klein
7c78f3a863 SkNx: use SK_ALWAYS_INLINE thoroughly.
MSVC's not so good at inlining.  So tell it where to.  It won't hurt the others.

This has nothing directly to do with ODR safety.  The anonymous namespaces and 'static' on freestanding functions provide the correctness we need there.  But this change can help to mechanically prevent the sort of problems ODR violations can lead to.

I may follow up by extending this strategy further to Sk4px, which is used to implement a lot of the legacy xfermodes.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3608
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: I927334c40910ce43da1fbabdf243c9cd5438bea6
Reviewed-on: https://skia-review.googlesource.com/3608
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-19 15:56:30 +00:00
bungeman
520ced63cf SkDescriptors to be held in unique_ptr.
This also removes the class operator new override along with
directly calling malloc in SkData, since it has a similar requirements.

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot;master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN-Trybot

Change-Id: Ic68aacf2028d6964d9735a55558862afc9edd19b
Reviewed-on: https://skia-review.googlesource.com/3541
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2016-10-19 15:56:28 +00:00
benjaminwagner
620ee4f744 Revert of Generate Signed Distance Field directly from vector path (patchset #18 id:340001 of https://chromiumcodereview.appspot.com/1643143002/ )
Reason for revert:
Multiple assertion failures on multiple platforms:
../../../src/gpu/GrDistanceFieldGenFromVector.cpp:806: fatal error: "assert(((col != width - 1) || (windingNumber == 0)) && "Winding number should be zero at the end of a scan line.")"
https://luci-milo.appspot.com/swarming/task/31f5353caf8cc410
https://luci-milo.appspot.com/swarming/task/31f567789cbcec10

c:\b\work\skia\src\pathops\skopangle.cpp:165: fatal error: "assert(lrOpposite != trOpposite)"
https://luci-milo.appspot.com/swarming/task/31f570d74f750310

Original issue's description:
> Generate Signed Distance Field directly from vector path
>
> Add SkGenerateDistanceFieldFromPath API to generate signed distance field directly from SkPath.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643143002
>
> Committed: https://skia.googlesource.com/skia/+/4de97a64e8829323a7070b623411d9f9ddb0cd0f
> Committed: https://skia.googlesource.com/skia/+/e8f0a7b986f1e5583c9bc162efcdd92fd6430549

TBR=bsalomon@google.com,jvanverth@google.com,mtklein@google.com,wasim.abbas@arm.com,caryclark@google.com,joel.liang@arm.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://chromiumcodereview.appspot.com/2435753002
2016-10-19 04:43:03 -07:00
joel.liang
e8f0a7b986 Generate Signed Distance Field directly from vector path
Add SkGenerateDistanceFieldFromPath API to generate signed distance field directly from SkPath.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643143002

Committed: https://skia.googlesource.com/skia/+/4de97a64e8829323a7070b623411d9f9ddb0cd0f
Review-Url: https://chromiumcodereview.appspot.com/1643143002
2016-10-19 02:50:03 -07:00
Mike Reed
3ac64b427a image serialize/deserialize callbacks in pipe
BUG=skia:

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

Change-Id: I403fec72cacfc6a821f676f0afef390c89749a8b
Reviewed-on: https://skia-review.googlesource.com/3607
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2016-10-18 23:55:04 +00:00
Brian Salomon
0290620b60 Make ANGLE bot only run ANGLE configs
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Win-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE-Trybot

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

Change-Id: Id948caa1f28f415c453895fd30ff032bcadbb3d3
Reviewed-on: https://skia-review.googlesource.com/3597
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-10-18 23:46:32 +00:00
Greg Daniel
bbe17a6670 Revert "remove unneeded flags for android"
This reverts commit f00decf644.

Reason for revert: Breaking master-skia cause of SK_SUPPORT_LEGACY_PICTURE_PTR


TBR=rmistry@google.com,scroggo@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ib33b8fafeee847e0ef92e5865e50c2070ba3939c
Reviewed-on: https://skia-review.googlesource.com/3624
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2016-10-18 20:48:28 +00:00
Brian Osman
13b4bc1a42 Exclude viewer from NoGpu bots
BUG=skia:

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

Change-Id: Ie1146a7092e08b83e5a332a26d771652f977b52a
Reviewed-on: https://skia-review.googlesource.com/3623
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2016-10-18 20:13:30 +00:00
Brian Osman
2dd9693432 GN builds viewer on Linux, too
BUG=skia:

Change-Id: Ia0c10db49905fc5a3bdf424c38576e1a6cf09ecf
Reviewed-on: https://skia-review.googlesource.com/3606
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2016-10-18 19:43:05 +00:00
Mike Reed
f00decf644 remove unneeded flags for android
BUG=skia:

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

Change-Id: I74bd11b2324c3e1ab07e5f67b01b90291deb879e
NOTREECHECKS=True
NOTRY=True

Change-Id: I74bd11b2324c3e1ab07e5f67b01b90291deb879e
Reviewed-on: https://skia-review.googlesource.com/3595
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2016-10-18 19:06:27 +00:00
Brian Salomon
002c120385 Add testing for ANGLE msaa on bots
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Win-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE-Trybot

BUG=skia:5804

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

Change-Id: I3895f9c2e662db400a47993987f5a16dc8ebba37
Reviewed-on: https://skia-review.googlesource.com/3587
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2016-10-18 18:56:39 +00:00
Robert Phillips
40085e62ba Fix star artifact in SkRRectsGaussianEdgeShader
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3360

Change-Id: I791ae5f44a88ac3e4debdf1d4092c605acdf4969
Reviewed-on: https://skia-review.googlesource.com/3360
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2016-10-18 18:56:37 +00:00
Brian Osman
16adfa3933 Viewer builds (for Windows) with GN
BUG=skia:

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

Change-Id: Id6a142f90f544bef266d78e385f22e17288d5064
Reviewed-on: https://skia-review.googlesource.com/3599
Reviewed-by: Mike Klein <mtklein@google.com>
2016-10-18 18:53:30 +00:00
kjlubick
e719577fe8 Add SKSL fuzzer
BUG=skia:5490
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2418763004

Review-Url: https://codereview.chromium.org/2418763004
2016-10-18 10:06:24 -07:00
raftias
9488833428 Refactored SkColorSpace and added in a Lab PCS GM
The refactoring breaks off A2B0 tag support into a separate
subclass of SkColorSpace_Base, while keeping the current
(besides CLUT) functionality in a XYZTRC subclass.

ICC profile loading is now aware of this and creates the A2B0
subclass when SkColorSpace::NewICC() is called on a profile
in need of the A2B0 functionality.

The LabPCSDemo GM loads a .icc profile containing a LAB PCS and
then runs a Lab->XYZ conversion on an image using it so we can
display it and test out the A2B0 SkColorSpace functionality,
sans a/b/m-curves, as well as the Lab->XYZ conversion code.

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

Review-Url: https://codereview.chromium.org/2389983002
2016-10-18 10:02:52 -07:00
Mike Klein
b9eb887f8b Some GN-related recipe cleanup.
All our bots but the iOS ones are on GN now.  This cleans up a bunch of GYP and other obsolete stuff.

  - Nothing's using default_flavor.py any more except as a base class.
  - There are no -CMake, -Shared or -VisualBench bots anymore.
  - Only the iOS bots care about GYP_DEFINES.

You'll see the PDFium bot's GYP_DEFINES change, but that doesn't matter... it's using PDFium's own (GN) build system, and it ignores GYP_DEFINES.

BUG=skia:

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

Change-Id: I699e10f013ea77df4dcaa1cb559c51c5bf55dfdb
Reviewed-on: https://skia-review.googlesource.com/3567
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2016-10-18 16:54:25 +00:00
Mike Klein
2e68865813 Fix ASAN bot.
TBR=caryclark@google.com

BUG=skia:

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

Change-Id: Ib80ee9c5a3277de64bcde85383ad712956118295
Reviewed-on: https://skia-review.googlesource.com/3591
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-10-18 16:34:27 +00:00
Greg Daniel
36a77ee494 Refactor GrVkGpuCommandBuffer to handle multiple GrVkCommandBuffers.
This CL is a pre CL to fix some issues where we will need a GpuCB to
internally have multiple commandbuffers that it submits. Because of
this, I need to move the bounds calculations down into the VkGpuCB
since we need to know the bounds for each sub commandbuffer and not
just entire set of commands. In part this is good since GL actually
never needed the calculations so it saves some work there.

BUG=skia:

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

Change-Id: Ied918765da3630aa6d87e29ccce6c883b96c4ead
Reviewed-on: https://skia-review.googlesource.com/3142
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2016-10-18 16:30:45 +00:00
csmartdalton
310d72c5e2 skpbench: suppot Nexus 6P
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2415033002

Review-Url: https://codereview.chromium.org/2415033002
2016-10-18 09:19:50 -07:00
scroggo
e9ea349ff1 Consider the start_coord in interlaced PNG
crrev.com/2420843003 (DIFFERENT ISSUE) resulted in a slight difference
in Gold for interlaced PNGs. The new images appeared to have slid down
slightly, implying that we sampled pixels higher (earlier) in the
image.

It turns out we were not truly taking get_start_coord into account.
This CL initializes the srcRow to consider get_start_coord, and should
fix the problem/difference.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2424353003

Review-Url: https://codereview.chromium.org/2424353003
2016-10-18 09:14:11 -07:00
Mike Klein
f1e7583826 fix -NoGPU build bots.
TBR=caryclark@google.com

BUG=skia:

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

Change-Id: I4bf4a6b812a8284f739c86d03f334521e896a1cf
Reviewed-on: https://skia-review.googlesource.com/3589
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-10-18 16:12:07 +00:00
Brian Salomon
2bdfe5b861 Run correctness tests on ANGLE bots using d3d9 backend
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3584

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Win-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE-Trybot

Change-Id: Ic70002d13261d22d374f0fd29e2f8dd3c783d552
Reviewed-on: https://skia-review.googlesource.com/3584
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2016-10-18 16:05:08 +00:00
Mike Klein
ac66ae63ea Revert "re-land of skslc now automatically turns on derivatives support"
This reverts commit d7d1997643.

This breaks the Chromium roll (it did last time it landed too).
https://codereview.chromium.org/2429853002

Please gate your next attempt on at least one of linux_android_rel_ng, linux_chromium_rel_ng, or mac_chromium_rel_ng.

TBR=benjaminwagner@google.com,ethannicholas@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I999d4af70a5704b8990f3cd7d145eabff57646f5
Reviewed-on: https://skia-review.googlesource.com/3590
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2016-10-18 15:48:54 +00:00
caryclark
b36a3cd137 break ambiguous angle sorting loop
A pair of cubics may be difficult to sort if the tangents suggest
one sort but the midpoints suggest a different one. When in this
gray area, and when the cumulative sort of all the angles fails to
resolve, reverse the sort to break the tie.

Before, when tiger8 was run through the signed distance field
generated directly from the path data, the simplify call might
hang since the angle could not be resolved. If the endless loop
is detected, and if there is no tie to break, just fail instead.

TBR=reed@google.com
BUG=skia:5131
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2426753002

Review-Url: https://codereview.chromium.org/2426753002
2016-10-18 07:59:44 -07:00
Brian Salomon
c5eceb00ad Add support for ANGLE MSAA framebuffer extensions.
BUG=skia:5804

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

Change-Id: I185ae0fdf5657271dc00b8dd88b78a69c3d6e4f1
Reviewed-on: https://skia-review.googlesource.com/3505
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2016-10-18 14:49:33 +00:00
Ethan Nicholas
d7d1997643 re-land of skslc now automatically turns on derivatives support
BUG=skia:

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

Change-Id: I822fc23f7d4eac76d5059412706117818f3738f0
Reviewed-on: https://skia-review.googlesource.com/3602
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2016-10-18 14:44:31 +00:00
Matt Sarett
afc0b0f6a0 Make SkColorSpaceXform an SK_API
TBR=reed@google.com
BUG=skia:

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

Change-Id: I8efaf7c46e0d600bb1bb92e39014db8c4a8d25d1
Reviewed-on: https://skia-review.googlesource.com/3585
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
2016-10-18 14:44:30 +00:00
Ethan Nicholas
37269ff259 Revert "skslc now automatically turns on derivatives support"
This reverts commit 311742bd0e.

Reason for revert: Android try failure

Change-Id: I6e92b49df1c8f692da947b277067b9003a9367d0
Reviewed-on: https://skia-review.googlesource.com/3600
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2016-10-18 13:21:25 +00:00
Brian Osman
a219653678 Include 4f variants of random gradients during testing
BUG=skia:

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

Change-Id: Ieee6e49cb830b6aab87b0ecd7865c65ffb90dfe8
Reviewed-on: https://skia-review.googlesource.com/3538
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2016-10-18 13:01:28 +00:00
Brian Osman
8bf4e672f2 Use legacy color filter API when doing legacy paint conversion
Matt fixed mode color filter so that the 4f filter uses a linearized
version of the stored color. This restores previous behavior, where legacy
devices are doing everything in sRGB space.

BUG=skia:

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

Change-Id: I6abac176aaeab1242ca74b71ffb7f6df80ad9525
Reviewed-on: https://skia-review.googlesource.com/3581
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-10-18 12:44:04 +00:00
borenet
8a91da9459 Fix SKP version in tasks.json, make upload_skps.py update tasks.json
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2426863003

Review-Url: https://codereview.chromium.org/2426863003
2016-10-18 05:20:26 -07:00
Ethan Nicholas
311742bd0e skslc now automatically turns on derivatives support
BUG=skia:

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

Change-Id: I211f4a80ced951a0d2f29763f85fe75a5daccff7
Reviewed-on: https://skia-review.googlesource.com/3569
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2016-10-18 12:18:33 +00:00
scroggo
4f2a88cdf0 Incremental decode: only use subset for subsetting
In the initial patch, we modified the subset passed to incremental
decoding to account for sampling in Y. This allowed SkSampledCodec to
use a tighter bounds. But it also means that the implementation cannot
distinguish between lines that are excluded due to subsetting and those
excluded at the beginning and end due to sampling. This becomes
problematic in GIF (crrev.com/2045293002), which may need to fill,
requiring it to reconstruct the actual destination. In truth,
SkGifCodec does not need to support subsets, but cannot distinguish
between the tighter bounds and a true subset.

Fix this by passing the scaled subset to incremental decode, without
using the tighter bounds.

Make SkSampler::rowNeeded take the starting coordinate into account.

In SkPngCodec, compute the number of rows needed in the output, and use
that as a signal to stop.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2420843003

Review-Url: https://codereview.chromium.org/2420843003
2016-10-17 14:32:41 -07:00
Ben Wagner
fa1a45ee13 Remove aux procs from SkGlyphCache.
Doesn't appear that anyone is using these anymore. The last user was
removed with https://codereview.chromium.org/1985163002/ landed as
https://skia.googlesource.com/skia/+/c2878e23d405e7ae77f6110602ad75ce1f6b941c

Change-Id: I224354cd0d1ecbbb1100aa1e4b415d48637a51f3
Reviewed-on: https://skia-review.googlesource.com/3582
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2016-10-17 21:22:35 +00:00
Matt Sarett
29121ebd9e Avoid integer overflow in SkIcoCodec and SkImageInfo
Original Commit Message:
"""
Avoid integer overflow in SkIcoCodec

Definitely good to avoid overflow here.

FWIW, this looks to be harmless for Android's current use.
They will just fail later on when trying to allocate the
bitmap.

BUG=skia:5857
"""

With the new test, ASAN also caught an integer overflow
bug in SkImageInfo.  Fix this as well.

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN;master.client.skia.android:Test-Android-Clang-AndroidOne-CPU-MT6582-arm-Debug-GN_Android

BUG=skia:5857

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

Change-Id: I0d777a547850474ea6cea87e36efa05434e33635
Reviewed-on: https://skia-review.googlesource.com/3568
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2016-10-17 21:19:54 +00:00