platform/upstream/libSkiaSharp.git
7 years agoGetResourceAsData to use SkData::MakeFromFileName directly.
Ben Wagner [Fri, 17 Mar 2017 21:56:28 +0000 (17:56 -0400)]
GetResourceAsData to use SkData::MakeFromFileName directly.

The current code creates an SkFILEStream and then reads all the bytes
from it into an SkData. Instead, let the SkData just mmap the file.

Change-Id: I79e3550a84e6f54ccbbd7284f5cda81ce1fa9221
Reviewed-on: https://skia-review.googlesource.com/9877
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoremove unsupported flag
Mike Reed [Mon, 20 Mar 2017 13:31:20 +0000 (09:31 -0400)]
remove unsupported flag

BUG=skia:

Change-Id: I9483dd5ec9f53639d6b78cf864bfdff4d5c9a9b4
Reviewed-on: https://skia-review.googlesource.com/9886
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRemove budgeted parameter from SkSurface::makeImageSnapshot (take 2)
Robert Phillips [Mon, 20 Mar 2017 12:38:50 +0000 (08:38 -0400)]
Remove budgeted parameter from SkSurface::makeImageSnapshot (take 2)

This unused feature complicates MDB.

Chrome compiles locally for me with this CL.
frameworks/base/libs/hwui compiles locally for me with this CL.

Change-Id: Id3ad64dac72eace52855896df0d7ce3679f15884
Reviewed-on: https://skia-review.googlesource.com/9882
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoRemove gpu configs that don't have explicit API.
Brian Salomon [Mon, 20 Mar 2017 12:54:16 +0000 (08:54 -0400)]
Remove gpu configs that don't have explicit API.

DOCS_PREVIEW= https://skia.org/?cl=9871

Change-Id: I510473cf91d8bee38d1e33424b1ae7b30dc86968
Reviewed-on: https://skia-review.googlesource.com/9871
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoremove unused SkMeshUtils and SkBoundaryPatch
Mike Reed [Sun, 19 Mar 2017 20:26:20 +0000 (16:26 -0400)]
remove unused SkMeshUtils and SkBoundaryPatch

BUG=skia:6366

Change-Id: Ibacd397e0a246dbeefde074c98712ada3848a7b6
Reviewed-on: https://skia-review.googlesource.com/9852
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoremove legacy vertices virtual from SkDevice
Mike Reed [Sun, 19 Mar 2017 19:04:17 +0000 (15:04 -0400)]
remove legacy vertices virtual from SkDevice

BUG=skia:6366

Change-Id: I9fb49538f358343a7c2e4541d0044d961ac1b54d
Reviewed-on: https://skia-review.googlesource.com/9870
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
7 years agoRevert "Revert "Add color spin test for SkColorSpaceXformCanvas""
Mike Klein [Sat, 18 Mar 2017 15:36:52 +0000 (15:36 +0000)]
Revert "Revert "Add color spin test for SkColorSpaceXformCanvas""

This reverts commit 73e21af21390c2806eb1350253233903808edd6b.

Reason for revert: I will fix the broken bot next week.

Original change's description:
> Revert "Add color spin test for SkColorSpaceXformCanvas"
>
> This reverts commit cb01aec63bcb3dee52afcf3605bcd64166b873c0.
>
> Reason for revert: Breaks Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE
>
> Original change's description:
> > Add color spin test for SkColorSpaceXformCanvas
> >
> > Also changes behavior to treat nullptr srcs as sRGB.
> >
> > Testing locally, it looks like 353 gms have no diffs from 8888.
> > There are 269 diffs - some are fine (gms that do color space stuff)
> > and some are bugs.
> >
> > BUG=skia:
> >
> > Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
> > Reviewed-on: https://skia-review.googlesource.com/9738
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Matt Sarett <msarett@google.com>
> >
>
> TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reviews@skia.org
> # Not skipping CQ checks because original CL landed > 1 day ago.
> BUG=skia:
>
> Change-Id: I70bb69f747b863d267494e37a60888a51ab0184c
> Reviewed-on: https://skia-review.googlesource.com/9823
> Reviewed-by: Eric Boren <borenet@google.com>
> Commit-Queue: Eric Boren <borenet@google.com>
>

TBR=borenet@google.com,mtklein@google.com,msarett@google.com,reviews@skia.org,brianosman@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:

Change-Id: I766382e6655f614042cded84f547f9fd5b109fca
Reviewed-on: https://skia-review.googlesource.com/9879
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>

7 years agoremov patheffect flag from google3
Mike Reed [Sat, 18 Mar 2017 02:51:08 +0000 (22:51 -0400)]
remov patheffect flag from google3

BUG=skia:

Change-Id: Iceae8d1ed0a8a8ba4021dd114ff436f5df6905c6
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/9851
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRevert "Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"""
Yuqian Li [Fri, 17 Mar 2017 20:50:06 +0000 (20:50 +0000)]
Revert "Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"""

This reverts commit 31249bb2df023868e4585f14519bf17c835f8700.

Reason for revert: Android build is still broken as shown below.

out/target/product/bullhead/obj/NATIVE_TESTS/hwui_unit_tests_intermediates/tests/unit/SkiaPipelineTests.o frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp"
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:211:51: error: non-virtual member function marked 'override' hides virtual member function
    sk_sp<SkImage> onNewImageSnapshot(SkBudgeted) override {
                                                  ^
external/skia/src/image/SkSurface_Base.h:46:28: note: hidden overloaded virtual function 'SkSurface_Base::onNewImageSnapshot' declared here: different number of parameters (0 vs 1)
    virtual sk_sp<SkImage> onNewImageSnapshot() = 0;
                           ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:281:84: error: no viable conversion from 'sk_sp<DeferLayer<DeferTestCanvas>>' to 'sk_sp<SkSurface>'
    pipeline->renderFrame(layerUpdateQueue, dirty, nodes, true, contentDrawBounds, surface);
                                                                                   ^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
    constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
              ^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
    sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
    ^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
    sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
    ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<DeferTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
                                                                                 ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<DeferTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
    operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
    ^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
            sk_sp<SkSurface> surface);
                             ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:312:58: error: no viable conversion from 'sk_sp<DeferLayer<ClippedTestCanvas>>' to 'sk_sp<SkSurface>'
            SkRect::MakeWH(CANVAS_WIDTH, CANVAS_HEIGHT), surface);
                                                         ^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
    constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
              ^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
    sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
    ^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
    sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
    ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClippedTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
                                                                                 ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClippedTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
    operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
    ^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
            sk_sp<SkSurface> surface);
                             ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:343:58: error: no viable conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas>>' to 'sk_sp<SkSurface>'
            SkRect::MakeWH(CANVAS_WIDTH, CANVAS_HEIGHT), surface);
                                                         ^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
    constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
              ^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
    sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
    ^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
    sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
    ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
                                                                                 ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
    operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
    ^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
            sk_sp<SkSurface> surface);
                             ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<DeferTestCanvas>'
    T* canvas() { return static_cast<T*>(getCanvas()); }
                                         ^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:282:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<DeferTestCanvas>::canvas' requested here
    EXPECT_EQ(4, surface->canvas()->mDrawCounter);
                          ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<ClippedTestCanvas>'
    T* canvas() { return static_cast<T*>(getCanvas()); }
                                         ^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:313:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<ClippedTestCanvas>::canvas' requested here
    EXPECT_EQ(1, surface->canvas()->mDrawCounter);
                          ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>'
    T* canvas() { return static_cast<T*>(getCanvas()); }
                                         ^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:344:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>::canvas' requested here
    EXPECT_EQ(1, surface->canvas()->mDrawCounter);

Original change's description:
> Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""
>
> This reverts commit 9e9188f84b15a25e27f63d5f8de3ccd393d9a173.
>
> Reason for revert: Android-side fix has landed
>
> Original change's description:
> > Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
> >
> > This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.
> >
> > Reason for revert:
> >
> > Android build failed as shown below.
> >
> > frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
> >     mImage = surface->makeImageSnapshot(SkBudgeted::kNo);
> >
> > Original change's description:
> > > Remove budgeted parameter from SkSurface::makeImageSnapshot
> > >
> > > This unused feature complicates MDB.
> > >
> > > Chrome compiles locally for me with this CL.
> > >
> > > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> > > Reviewed-on: https://skia-review.googlesource.com/9734
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > Commit-Queue: Robert Phillips <robertphillips@google.com>
> > >
> >
> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> >
> > Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
> > Reviewed-on: https://skia-review.googlesource.com/9788
> > Reviewed-by: Yuqian Li <liyuqian@google.com>
> > Commit-Queue: Yuqian Li <liyuqian@google.com>
> >
>
> TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Change-Id: If07d1b5db6e6c618d37445a0cf127780ed243a92
> Reviewed-on: https://skia-review.googlesource.com/9843
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I674b0a9d4130e00164d2e0344a92c373cf70f4fd
Reviewed-on: https://skia-review.googlesource.com/9873
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>

7 years agoRun 4 sample msaa configs for perf on iOS
Brian Salomon [Fri, 17 Mar 2017 18:39:27 +0000 (14:39 -0400)]
Run 4 sample msaa configs for perf on iOS

Also remove seemingly incorrect DM suppression for msaa16 on iOS.

Change-Id: I3e86dc9c3c625a1b802a6edfbb9db3b708ecba4f
Reviewed-on: https://skia-review.googlesource.com/9863
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agosk_fgetsize to not use ftell.
Ben Wagner [Fri, 17 Mar 2017 17:49:31 +0000 (13:49 -0400)]
sk_fgetsize to not use ftell.

The previous version of sk_fgetsize used ftell and fseek to compute
the size of a file. There are so many issues with this that it is called
out by securecoding.cert.org as FIO19-C as a thing not to do. We already
have correct code for computing the size of a file in the mmap code, so
use that instead.

Change-Id: I1d771124989d0ec1523f6d858814ee563263213a
Reviewed-on: https://skia-review.googlesource.com/9860
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoSkXPS: use correct drawBitmapRect logic for !bitmap.bounds().contains(*src)
Hal Canary [Fri, 17 Mar 2017 19:16:21 +0000 (15:16 -0400)]
SkXPS: use correct drawBitmapRect logic for !bitmap.bounds().contains(*src)

Change-Id: I768b01d1a9afce99f09a0aaa793ba8ebfdefb41e
Reviewed-on: https://skia-review.googlesource.com/9867
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoremove unused params
Mike Reed [Fri, 17 Mar 2017 19:35:40 +0000 (15:35 -0400)]
remove unused params

BUG=skia:6366

Change-Id: I0cfb8e4a969dc018339047183176fb242e455ab8
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/9869
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agodon't use deprecated (raw) form of SkPatchUtils, delete duplicate util
Mike Reed [Fri, 17 Mar 2017 18:29:05 +0000 (14:29 -0400)]
don't use deprecated (raw) form of SkPatchUtils, delete duplicate util

deprecated API still used in android -- will fix (and then delete)

BUG=skia:6366

Change-Id: Icd87acc680f7c8ae66ac231cb5d254f5eb178008
Reviewed-on: https://skia-review.googlesource.com/9864
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoadd flag for android
Mike Reed [Fri, 17 Mar 2017 19:15:29 +0000 (15:15 -0400)]
add flag for android

BUG=skia:6366

Change-Id: I2b250ed32442379e3e14ab2dc805ac9ccdc57e93
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/9866
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoBe explicit on test and perf bots about GL vs GLES
Brian Salomon [Fri, 17 Mar 2017 18:32:05 +0000 (14:32 -0400)]
Be explicit on test and perf bots about GL vs GLES

This changes the names of several shorthand names for gpu configs to be prefixed either with "gl" or "gles" and makes the bots only use such configs. It adds some missing named configs.

Change-Id: Iea4e0e2ddafe0ac08e623111a15be7335156957c
Reviewed-on: https://skia-review.googlesource.com/9833
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agoRemove "Unused uniform in shader" messages
Brian Osman [Fri, 17 Mar 2017 18:10:21 +0000 (14:10 -0400)]
Remove "Unused uniform in shader" messages

BUG=skia:6393

Change-Id: Ia510311ac313de2cb06290aedc860a952cf8246f
Reviewed-on: https://skia-review.googlesource.com/9862
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoadd flag for google3
Mike Reed [Fri, 17 Mar 2017 18:09:54 +0000 (14:09 -0400)]
add flag for google3

BUG=skia:6366

Change-Id: If87770912c0f88816db0586bf7013b7e5788fcef
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/9861
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSkXPS: fix drawBitmapRect()
Hal Canary [Fri, 17 Mar 2017 15:48:59 +0000 (11:48 -0400)]
SkXPS: fix drawBitmapRect()

Change-Id: Id618d0f96a7143dde3966ef4bb51924fb49cb6a8
Reviewed-on: https://skia-review.googlesource.com/9837
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoRevert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""
Robert Phillips [Fri, 17 Mar 2017 17:11:37 +0000 (17:11 +0000)]
Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""

This reverts commit 9e9188f84b15a25e27f63d5f8de3ccd393d9a173.

Reason for revert: Android-side fix has landed

Original change's description:
> Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
>
> This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.
>
> Reason for revert:
>
> Android build failed as shown below.
>
> frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
>     mImage = surface->makeImageSnapshot(SkBudgeted::kNo);
>
> Original change's description:
> > Remove budgeted parameter from SkSurface::makeImageSnapshot
> >
> > This unused feature complicates MDB.
> >
> > Chrome compiles locally for me with this CL.
> >
> > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> > Reviewed-on: https://skia-review.googlesource.com/9734
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Robert Phillips <robertphillips@google.com>
> >
>
> TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
> Reviewed-on: https://skia-review.googlesource.com/9788
> Reviewed-by: Yuqian Li <liyuqian@google.com>
> Commit-Queue: Yuqian Li <liyuqian@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: If07d1b5db6e6c618d37445a0cf127780ed243a92
Reviewed-on: https://skia-review.googlesource.com/9843
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoDetect RenderDoc in Windows viewer and make a core profile
Brian Osman [Fri, 17 Mar 2017 16:05:41 +0000 (12:05 -0400)]
Detect RenderDoc in Windows viewer and make a core profile

BUG=skia:

Change-Id: I03a8a1b1ed9bd2483ddd8e231ba54dc10753b454
Reviewed-on: https://skia-review.googlesource.com/9836
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoUpdate build tools to newer gn.
Herb Derby [Fri, 17 Mar 2017 15:00:21 +0000 (11:00 -0400)]
Update build tools to newer gn.

Pasted from Chromium DEPS on 3/17/17.

R=reed@google.com

Change-Id: Ie1b93fadbad9e24b4a547f237df602a7257138f7
Reviewed-on: https://skia-review.googlesource.com/9831
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoAdd nondeterministic seed option for ProcessorOptimization test
Brian Osman [Fri, 17 Mar 2017 14:58:53 +0000 (10:58 -0400)]
Add nondeterministic seed option for ProcessorOptimization test

BUG=skia:

Change-Id: Ie1dad1ab164eb36635095595e3200ae16e328832
Reviewed-on: https://skia-review.googlesource.com/9830
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoremove legacy virtual for vertices, only support object form
Mike Reed [Fri, 17 Mar 2017 16:09:04 +0000 (12:09 -0400)]
remove legacy virtual for vertices, only support object form

BUG=skia:6366

Change-Id: Ic422fa44a788d3488c050c6218dbfba188bb8f3e
Reviewed-on: https://skia-review.googlesource.com/9835
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoOnly set dw antialias mode to grayscale for A8.
Ben Wagner [Fri, 17 Mar 2017 15:23:32 +0000 (11:23 -0400)]
Only set dw antialias mode to grayscale for A8.

The previous code would also set 'grayscale' for aliased which would
then cause the code to use the new renderer, which has issues with
aliased glyphs.

BUG=skia:5416

Change-Id: Ia856322b59d0eba258522d73c3a4d827ab4429e1
Reviewed-on: https://skia-review.googlesource.com/9834
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoMake dstreadshuffle not crash in with --preAbandonGpuContext and look better in 565
Brian Salomon [Fri, 17 Mar 2017 14:41:39 +0000 (10:41 -0400)]
Make dstreadshuffle not crash in with --preAbandonGpuContext and look better in 565

BUG=skia:6386

Change-Id: I90578f57ba7076d65e6d8ebe61ec325ebba8e35d
Reviewed-on: https://skia-review.googlesource.com/9828
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoFix overflow bug in slow span.
Herb Derby [Thu, 16 Mar 2017 20:43:13 +0000 (16:43 -0400)]
Fix overflow bug in slow span.

Fix an overflow in the address calculation in the sampler.

BUG=chromium:700836

Change-Id: Ifadbdc9541138219e8aec08c1342a241da75705c
Reviewed-on: https://skia-review.googlesource.com/9815
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Herb Derby <herb@google.com>

7 years agoAdd highp to specular lighting intermediate to fix iOS bots
Brian Osman [Fri, 17 Mar 2017 13:36:31 +0000 (09:36 -0400)]
Add highp to specular lighting intermediate to fix iOS bots

Looks like math was over/under-flowing at default precision, leading to garbage output. This appears to be the minimal change to fix it.

BUG=skia:

Change-Id: I9381dea380be0d8f5af1e765f4ed1403b0ceac70
Reviewed-on: https://skia-review.googlesource.com/9827
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoRevert[2] "More SkVertices implementation work""
Mike Reed [Fri, 17 Mar 2017 13:50:46 +0000 (09:50 -0400)]
Revert[2] "More SkVertices implementation work""

The fix was to release the array of vertices in the picturerecorder
destructor (where we also release textblobs etc.

This reverts commit 1eb3fef136bc75bd8e8ed717ec7c5d4ab26def62.

BUG=skia:

Change-Id: I3bf4acd6ad209205b0832a3cb7f94cd89dfcefc5
Reviewed-on: https://skia-review.googlesource.com/9826
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRevert "Revert "Revert "Revert "Detect Chrome either by renderer or version strings...
Brian Salomon [Thu, 16 Mar 2017 19:38:57 +0000 (15:38 -0400)]
Revert "Revert "Revert "Revert "Detect Chrome either by renderer or version strings.""""

Fixes issue with usage of sscanf.

This reverts commit fd47ca5cea3be4a3a8336a7c54e6e2775b041335.

Change-Id: Ie2e462a353a19d74eb18715ef44c14d1198fb5f8
Reviewed-on: https://skia-review.googlesource.com/9814
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
7 years agoRevert "More SkVertices implementation work"
Mike Reed [Fri, 17 Mar 2017 13:09:38 +0000 (13:09 +0000)]
Revert "More SkVertices implementation work"

This reverts commit 14583e11fd622c686993b741499060a6f3527055.

Reason for revert: leaking

Direct leak of 499104 byte(s) in 2112 object(s) allocated from:
    #0 0x1e195f0 in operator new(unsigned long) (/b/swarm_slave/w/irazbR79/out/Debug/dm+0x1e195f0)
    #1 0x3142b0a in SkVertices::Builder::init(SkCanvas::VertexMode, int, int, SkVertices::Sizes const&) (/b/swarm_slave/w/irazbR79/out/Debug/dm+0x3142b0a)

Original change's description:
> More SkVertices implementation work
>
> - change virtuals to take const SkVertices*, as we do for TextBobs and Images
> - override onDrawVerticesObject in recording canvases
> - deserialize raw-vertices into SkVertices object
>
> Possibly a follow-on would intercept the raw-form directly in canvas,
> and remove the virtual, and only support the object form.
>
> BUG=skia:6366
>
> Change-Id: I57a932667ccb3b3b004beb802ac3ae6898e3c6e0
> Reviewed-on: https://skia-review.googlesource.com/9633
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

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

Change-Id: I40bb7a20698ef6aa0a9ef71a3d6ac4c1473e081c
Reviewed-on: https://skia-review.googlesource.com/9825
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRevert "Add color spin test for SkColorSpaceXformCanvas"
Eric Boren [Fri, 17 Mar 2017 11:18:17 +0000 (11:18 +0000)]
Revert "Add color spin test for SkColorSpaceXformCanvas"

This reverts commit cb01aec63bcb3dee52afcf3605bcd64166b873c0.

Reason for revert: Breaks Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE

Original change's description:
> Add color spin test for SkColorSpaceXformCanvas
>
> Also changes behavior to treat nullptr srcs as sRGB.
>
> Testing locally, it looks like 353 gms have no diffs from 8888.
> There are 269 diffs - some are fine (gms that do color space stuff)
> and some are bugs.
>
> BUG=skia:
>
> Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
> Reviewed-on: https://skia-review.googlesource.com/9738
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:

Change-Id: I70bb69f747b863d267494e37a60888a51ab0184c
Reviewed-on: https://skia-review.googlesource.com/9823
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoMore SkVertices implementation work
Mike Reed [Thu, 16 Mar 2017 20:54:38 +0000 (16:54 -0400)]
More SkVertices implementation work

- change virtuals to take const SkVertices*, as we do for TextBobs and Images
- override onDrawVerticesObject in recording canvases
- deserialize raw-vertices into SkVertices object

Possibly a follow-on would intercept the raw-form directly in canvas,
and remove the virtual, and only support the object form.

BUG=skia:6366

Change-Id: I57a932667ccb3b3b004beb802ac3ae6898e3c6e0
Reviewed-on: https://skia-review.googlesource.com/9633
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoEnable Bazel build for ppc and arm.
Ben Wagner [Thu, 16 Mar 2017 23:15:09 +0000 (19:15 -0400)]
Enable Bazel build for ppc and arm.

External portion of internal cl/150002340.

NOTRY=true

Change-Id: Ic42ccd80bd26546b523fbdde058d8b0ee29d65f5
Reviewed-on: https://skia-review.googlesource.com/9821
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoReboot PixelCs before every task
Kevin Lubick [Thu, 16 Mar 2017 20:02:27 +0000 (16:02 -0400)]
Reboot PixelCs before every task

Just like the NexusPlayers, swarming can't reboot the PixelCs. This may
be causing the strange state we see in tasks like:
https://chromium-swarm.appspot.com/task?id=34ed0f1bdcd5a610&refresh=10

BUG=skia:

Change-Id: Icb0b4a5564d34093abb463ca8ef5da43d066db4a
Reviewed-on: https://skia-review.googlesource.com/9818
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoremove unused VerticesFlags
Mike Reed [Thu, 16 Mar 2017 13:06:34 +0000 (09:06 -0400)]
remove unused VerticesFlags

Deferring removing the flags parameter from the virtuals until a
later CL (as it collides with another related CL)

BUG=skia:6366

Change-Id: I817fae3df03ecebe5ec3532f691ed06deab890e6
Reviewed-on: https://skia-review.googlesource.com/9739
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRevert "Remove GrPipeline from GrDrawOp."
Brian Salomon [Thu, 16 Mar 2017 19:51:42 +0000 (19:51 +0000)]
Revert "Remove GrPipeline from GrDrawOp."

This reverts commit 2bf4b3a97b770811d9e0558dbbfbdb57cfafbdb7.

Reason for revert: nanobench assertion

Original change's description:
> Remove GrPipeline from GrDrawOp.
>
> GrDrawOp subclasses are now free to construct their pipelines at flush time and now in theory could use multiple GrPipelines for multipass rendering.
>
> GrProcessorSet may be used to retain the processors from a GrPaint with "pending execution" style refs.
>
> NVPR and Instanced rendering are updated to create their pipelines at flush time without a GrPipelineBuilder.
>
> The monolithic pipeline creation/management that was on GrDrawOp is moved to GrMeshDrawOp. However, this is temporary and will be removed in coming changes.
>
> Change-Id: I124282e3cea5d070970b5460c8a679fcaf7a8eff
> Reviewed-on: https://skia-review.googlesource.com/7279
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,csmartdalton@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I1bc64f6cbbd5f482417637a034342c2b5371dc5c
Reviewed-on: https://skia-review.googlesource.com/9817
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoAdd Chromium's fuzz_fileter_fuzz to skia.
Herb Derby [Thu, 16 Mar 2017 16:30:43 +0000 (12:30 -0400)]
Add Chromium's fuzz_fileter_fuzz to skia.

Move the fuzzer in
chromium/src/skia/tools/filter_fuzz_stub/filter_fuzz_stub.cc
to Skia's fuzzer.

I recommend removing filter_fuzz_stub from chromium and only
using Skia's fuzzer.

BUG=chromium:700836

Change-Id: Ibab1a9b696e54a3042ee61f5524d196c12df2888
Reviewed-on: https://skia-review.googlesource.com/9802
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
7 years agoRevert "Revert "Revert "Detect Chrome either by renderer or version strings."""
Brian Salomon [Thu, 16 Mar 2017 19:21:24 +0000 (19:21 +0000)]
Revert "Revert "Revert "Detect Chrome either by renderer or version strings."""

This reverts commit c551fa4218fe931171801cc2d601f7523e1b7ead.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Revert "Detect Chrome either by renderer or version strings.""
>
> This reverts commit 1165b1ef6f069d512c6d5a43ef431b3be6f8c80f.
>
> Reason for revert: <INSERT REASONING HERE>
>
> Original change's description:
> > Revert "Detect Chrome either by renderer or version strings."
> >
> > This reverts commit be4eed2ef77d5e8c3e3920664fdc787e196ac6b0.
> >
> > Reason for revert: <INSERT REASONING HERE>
> >
> > Original change's description:
> > > Detect Chrome either by renderer or version strings.
> > >
> > > We currently detect Chrome by GL_RENDERER. In anticipation of changes in Chrome to no longer override the renderer string we now also check the version string.
> > >
> > > Change-Id: Ice4ac3ae8ced5ac3d8fd2099300f0a3285f9c197
> > > Reviewed-on: https://skia-review.googlesource.com/9807
> > > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > > Commit-Queue: Brian Salomon <bsalomon@google.com>
> > >
> >
> > TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> >
> > Change-Id: I0100ce266ca9bf7b71a752495e509e67ff323870
> > Reviewed-on: https://skia-review.googlesource.com/9811
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Brian Salomon <bsalomon@google.com>
> >
>
> TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I43acf948b4f2339a79abc2b5c4e2bb3183a3c350
> Reviewed-on: https://skia-review.googlesource.com/9812
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ifc458640f05c87861909530c8901ad2d7e3e1f6c
Reviewed-on: https://skia-review.googlesource.com/9813
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoRevert "Revert "Detect Chrome either by renderer or version strings.""
Brian Salomon [Thu, 16 Mar 2017 19:20:44 +0000 (19:20 +0000)]
Revert "Revert "Detect Chrome either by renderer or version strings.""

This reverts commit 1165b1ef6f069d512c6d5a43ef431b3be6f8c80f.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Detect Chrome either by renderer or version strings."
>
> This reverts commit be4eed2ef77d5e8c3e3920664fdc787e196ac6b0.
>
> Reason for revert: <INSERT REASONING HERE>
>
> Original change's description:
> > Detect Chrome either by renderer or version strings.
> >
> > We currently detect Chrome by GL_RENDERER. In anticipation of changes in Chrome to no longer override the renderer string we now also check the version string.
> >
> > Change-Id: Ice4ac3ae8ced5ac3d8fd2099300f0a3285f9c197
> > Reviewed-on: https://skia-review.googlesource.com/9807
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Brian Salomon <bsalomon@google.com>
> >
>
> TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I0100ce266ca9bf7b71a752495e509e67ff323870
> Reviewed-on: https://skia-review.googlesource.com/9811
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I43acf948b4f2339a79abc2b5c4e2bb3183a3c350
Reviewed-on: https://skia-review.googlesource.com/9812
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoRevert[4] "store vertices arrays inline with object""""
Mike Reed [Thu, 16 Mar 2017 18:38:48 +0000 (14:38 -0400)]
Revert[4] "store vertices arrays inline with object""""

This reverts commit 0c492cfe1713d6895d1d513e754d938ff0faa5e5.

BUG=skia:

Change-Id: I63bce834fee6dd6f043b3889ac4ec287dd03d2e6
Reviewed-on: https://skia-review.googlesource.com/9809
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRemove GrPipeline from GrDrawOp.
Brian Salomon [Thu, 16 Mar 2017 18:19:07 +0000 (14:19 -0400)]
Remove GrPipeline from GrDrawOp.

GrDrawOp subclasses are now free to construct their pipelines at flush time and now in theory could use multiple GrPipelines for multipass rendering.

GrProcessorSet may be used to retain the processors from a GrPaint with "pending execution" style refs.

NVPR and Instanced rendering are updated to create their pipelines at flush time without a GrPipelineBuilder.

The monolithic pipeline creation/management that was on GrDrawOp is moved to GrMeshDrawOp. However, this is temporary and will be removed in coming changes.

Change-Id: I124282e3cea5d070970b5460c8a679fcaf7a8eff
Reviewed-on: https://skia-review.googlesource.com/7279
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoRevert "Detect Chrome either by renderer or version strings."
Brian Salomon [Thu, 16 Mar 2017 19:03:53 +0000 (19:03 +0000)]
Revert "Detect Chrome either by renderer or version strings."

This reverts commit be4eed2ef77d5e8c3e3920664fdc787e196ac6b0.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Detect Chrome either by renderer or version strings.
>
> We currently detect Chrome by GL_RENDERER. In anticipation of changes in Chrome to no longer override the renderer string we now also check the version string.
>
> Change-Id: Ice4ac3ae8ced5ac3d8fd2099300f0a3285f9c197
> Reviewed-on: https://skia-review.googlesource.com/9807
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
>

TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I0100ce266ca9bf7b71a752495e509e67ff323870
Reviewed-on: https://skia-review.googlesource.com/9811
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoDetect Chrome either by renderer or version strings.
Brian Salomon [Thu, 16 Mar 2017 16:58:41 +0000 (12:58 -0400)]
Detect Chrome either by renderer or version strings.

We currently detect Chrome by GL_RENDERER. In anticipation of changes in Chrome to no longer override the renderer string we now also check the version string.

Change-Id: Ice4ac3ae8ced5ac3d8fd2099300f0a3285f9c197
Reviewed-on: https://skia-review.googlesource.com/9807
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoSupport pixel antialising in DirectWrite.
Ben Wagner [Thu, 16 Mar 2017 16:38:46 +0000 (12:38 -0400)]
Support pixel antialising in DirectWrite.

DirectWrite2 supports pixel antialiasing and rendering without hinting.
To maintain the infered size based decisions of the previous rendering,
only use the new renderer when it is needed.

BUG=skia:5416

Change-Id: Ia87fdf8fc91dc7ff0f0ce4284c90a5d79045308f
Reviewed-on: https://skia-review.googlesource.com/9805
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
7 years agofixed missing dependency in spirv-tools/BUILD.gn
Ethan Nicholas [Thu, 16 Mar 2017 16:16:20 +0000 (12:16 -0400)]
fixed missing dependency in spirv-tools/BUILD.gn

Change-Id: Ib0381e2bc10649e62d3fb8ddfc34be46537a2e5b
Reviewed-on: https://skia-review.googlesource.com/9804
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

7 years agoIn GrClipStackClip check whether op bounds are inside RT before checking for empty...
Brian Salomon [Thu, 16 Mar 2017 16:15:22 +0000 (12:15 -0400)]
In GrClipStackClip check whether op bounds are inside RT before checking for empty clip stack.

Also fixes the bounds of aa bevel stroked rectangles.

Change-Id: I4c80deb9066ebbf9514ce3d4b270ff566bf12e02
Reviewed-on: https://skia-review.googlesource.com/9786
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoRevert[3] "store vertices arrays inline with object"""
Mike Reed [Thu, 16 Mar 2017 16:44:25 +0000 (16:44 +0000)]
Revert[3] "store vertices arrays inline with object"""

This reverts commit 7d9f9e30204ee8a380443b868e4cc281319a2051.

Reason for revert: speculative revert to try to fix google3

Original change's description:
> Revert[2] "store vertices arrays inline with object""
>
> This reverts commit 9e62df6ecd1000860ad19ab9425579dfb7002ba0.
>
> Reason for revert: behavior in reader32 fixed
>
> Fix is here: https://skia-review.googlesource.com/c/9729/
>
> Original change's description:
> > Revert "store vertices arrays inline with object"
> >
> > This reverts commit eaaebb19a17d213355e7a70e0cfabe4ba61929d4.
> >
> > Reason for revert: may call SkReader32::read(null, 0) -- reader needs to handle this
> >
> > Original change's description:
> > > store vertices arrays inline with object
> > >
> > > Also unify some of naming (esp. around texCoords)
> > >
> > > BUG=skia:6366
> > >
> > > Change-Id: I5a6793f029cccf0cd0a2c1d180b259ce4eab526f
> > > Reviewed-on: https://skia-review.googlesource.com/9705
> > > Commit-Queue: Mike Reed <reed@google.com>
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > >
> >
> > TBR=bsalomon@google.com,reed@google.com,reviews@skia.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=skia:6366
> >
> > Change-Id: Ie421654bcd74d74f8be6676291e3d6e16e2a7a16
> > Reviewed-on: https://skia-review.googlesource.com/9727
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Mike Reed <reed@google.com>
> >
>
> TBR=bsalomon@google.com,reviews@skia.org,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:6366
>
> Change-Id: I1f12108fff8f551d66455cfadd6d5dd9412e9aa8
> Reviewed-on: https://skia-review.googlesource.com/9760
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
>

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

Change-Id: Ie23130a07fbecd5664e37291bc167008a6b496bc
Reviewed-on: https://skia-review.googlesource.com/9806
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoMarker for AMD driver update.
Ben Wagner [Thu, 16 Mar 2017 16:15:18 +0000 (12:15 -0400)]
Marker for AMD driver update.

BUG=skia:6317
NOTRY=true

Change-Id: I2a02d069f8414a4f45b5b9eb48ae12167e210b97
Reviewed-on: https://skia-review.googlesource.com/9803
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoturned off SPIR-V validation on ASAN bots
Ethan Nicholas [Thu, 16 Mar 2017 15:33:40 +0000 (11:33 -0400)]
turned off SPIR-V validation on ASAN bots

BUG=skia:

Change-Id: Ia86abbc5f0922a4818075c487c76b6fb0560a6c8
Reviewed-on: https://skia-review.googlesource.com/9800
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

7 years agoRevert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
Yuqian Li [Thu, 16 Mar 2017 15:04:53 +0000 (15:04 +0000)]
Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"

This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.

Reason for revert:

Android build failed as shown below.

frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
    mImage = surface->makeImageSnapshot(SkBudgeted::kNo);

Original change's description:
> Remove budgeted parameter from SkSurface::makeImageSnapshot
>
> This unused feature complicates MDB.
>
> Chrome compiles locally for me with this CL.
>
> Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> Reviewed-on: https://skia-review.googlesource.com/9734
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
Reviewed-on: https://skia-review.googlesource.com/9788
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>

7 years agowired up SPIR-V validator
Ethan Nicholas [Thu, 16 Mar 2017 13:56:54 +0000 (09:56 -0400)]
wired up SPIR-V validator

Change-Id: I33dfd5e7ea3ea048b88c6db2f14389b16a0af7c8
Reviewed-on: https://skia-review.googlesource.com/9688
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoSupport all gradient types in SkColorSpaceXformCanvas.
Mike Klein [Wed, 15 Mar 2017 23:31:00 +0000 (16:31 -0700)]
Support all gradient types in SkColorSpaceXformCanvas.

This shader introspection still doesn't seem like the right way to go,
but while we've got it might as well fill in the rest of gradient types.

These are low-hanging and among the most egregious gbr-8888/8888 diffs.

Change-Id: Iaee67b615e49873c3aa8e2a67396a311efa75060
Reviewed-on: https://skia-review.googlesource.com/9746
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoOutset dst texture bounds by a pixel to fix corruption in dstreadshuffle.
Brian Salomon [Thu, 16 Mar 2017 13:21:54 +0000 (09:21 -0400)]
Outset dst texture bounds by a pixel to fix corruption in dstreadshuffle.

BUG=skia:6380

Change-Id: I90ed1a6e942bcc44f246795aeb8f87922e0ddddf
Reviewed-on: https://skia-review.googlesource.com/9785
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoRemove budgeted parameter from SkSurface::makeImageSnapshot
Robert Phillips [Thu, 16 Mar 2017 12:32:56 +0000 (08:32 -0400)]
Remove budgeted parameter from SkSurface::makeImageSnapshot

This unused feature complicates MDB.

Chrome compiles locally for me with this CL.

Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
Reviewed-on: https://skia-review.googlesource.com/9734
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoAdd SK_API to SkCreateColorSpaceXformCanvas
Christopher Cameron [Wed, 15 Mar 2017 19:57:55 +0000 (12:57 -0700)]
Add SK_API to SkCreateColorSpaceXformCanvas

BUG=skia:6242

API change just makes already public API actually accessible.

TBR=reed@google.com

Change-Id: I72f9271db5f14e6fc35628bed5e16b01b304de4c
Reviewed-on: https://skia-review.googlesource.com/9743
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
7 years agoRename GrAADistanceFieldPathRenderer to GrSmallPathRenderer
Jim Van Verth [Thu, 16 Mar 2017 12:45:39 +0000 (08:45 -0400)]
Rename GrAADistanceFieldPathRenderer to GrSmallPathRenderer

Also disables use of small distance fields in Android framework.

Change-Id: I1ba40ce85aa34d067608587e1fbe1d42e8a42868
Reviewed-on: https://skia-review.googlesource.com/9731
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
7 years agoMake SkTArray not allocate unless reserve or initial count > 0
Brian Salomon [Thu, 16 Mar 2017 00:52:35 +0000 (20:52 -0400)]
Make SkTArray not allocate unless reserve or initial count > 0

This also makes it so that it doesn't shrink back into preallocated storage and therefore doesn't need to store the reserve count.

Change-Id: Ia320fed04c329641a5494947db39cefd2fb6d80f
Reviewed-on: https://skia-review.googlesource.com/9531
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoMore pre-emptive proxification
Robert Phillips [Thu, 16 Mar 2017 11:51:56 +0000 (07:51 -0400)]
More pre-emptive proxification

These methods are not called yet. This CL is broken out of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors)

Change-Id: I2bf38202750e91e66a8044a790ccfe34d59e08a7
Reviewed-on: https://skia-review.googlesource.com/9683
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoFuzzCanvas: only valid ChannelSelectors
Hal Canary [Wed, 15 Mar 2017 20:58:33 +0000 (16:58 -0400)]
FuzzCanvas: only valid ChannelSelectors

BUG=skia:6374
Change-Id: Idf925dbe32298672d7e5debb7e95499269d93706
Reviewed-on: https://skia-review.googlesource.com/9781
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
7 years agoUpdate recipes.py to f605e5c0bc2e748170ca851383cb552c7225316b
Robert Iannucci [Thu, 16 Mar 2017 01:04:05 +0000 (18:04 -0700)]
Update recipes.py to f605e5c0bc2e748170ca851383cb552c7225316b

This will enable it to be compatible with both the textpb and
upcoming jsonpb form of recipes.cfg.

BUG=chromium:699379

Change-Id: Ieabf2b0c3e41bbb250e987a90902ee1bdb71b73d
Reviewed-on: https://skia-review.googlesource.com/9749
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoRevert "Support pixel antialising in DirectWrite."
Mike Reed [Wed, 15 Mar 2017 23:51:22 +0000 (23:51 +0000)]
Revert "Support pixel antialising in DirectWrite."

This reverts commit 34db1eee20ffea6e423284bb06824653efff645d.

Reason for revert: breaks the chrome roll

E:\b\c\b\win_clang\src\third_party\skia\src\ports\SkScalerContext_win_dw.cpp(287,49):  error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces]
        GaspRange range{bitmapPPEM, bitmapPPEM, 0};
                                                ^
                                                {}
E:\b\c\b\win_clang\src\third_party\skia\src\ports\SkScalerContext_win_dw.cpp(287,49):  error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces]
        GaspRange range{bitmapPPEM, bitmapPPEM, 0};
                                                ^
                                                {}
E:\b\c\b\win_clang\src\third_party\skia\src\ports\SkScalerContext_win_dw.cpp(290,59):  error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces]
                range = GaspRange{bitmapPPEM, bitmapPPEM, 0};
                                                          ^
                                                          {}
E:\b\c\b\win_clang\src\third_party\skia\src\ports\SkScalerContext_win_dw.cpp(290,59):  error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces]
                range = GaspRange{bitmapPPEM, bitmapPPEM, 0};
                                                          ^
                                                          {}
E:\b\c\b\win_clang\src\third_party\skia\src\ports\SkScalerContext_win_dw.cpp(338,39):  error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces]
        GaspRange range = {0, 0xFFFF, 0};
                                      ^
                                      {}
E:\b\c\b\win_clang\src\third_party\skia\src\ports\SkScalerContext_win_dw.cpp(338,39):  error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces]
        GaspRange range = {0, 0xFFFF, 0};
                                      ^
                                      {}

Original change's description:
> Support pixel antialising in DirectWrite.
>
> DirectWrite2 supports pixel antialiasing and rendering without hinting.
>
> BUG=skia:5416
>
> Change-Id: I215245b20dd403669dbccd37e34cb2fcd5e06431
> Reviewed-on: https://skia-review.googlesource.com/9145
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
>

TBR=mtklein@google.com,bungeman@google.com,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5416

Change-Id: Ic5f09abc3be8dd85d213a007780b3fe15fc11d92
Reviewed-on: https://skia-review.googlesource.com/9747
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoremove legacy clipop names
Mike Reed [Wed, 15 Mar 2017 23:08:55 +0000 (19:08 -0400)]
remove legacy clipop names

BUG=skia:

Change-Id: Ie34288ef77554eefe726a1bc07a64d0972785004
Reviewed-on: https://skia-review.googlesource.com/9784
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSupport pixel antialising in DirectWrite.
Ben Wagner [Wed, 15 Mar 2017 19:22:29 +0000 (15:22 -0400)]
Support pixel antialising in DirectWrite.

DirectWrite2 supports pixel antialiasing and rendering without hinting.

BUG=skia:5416

Change-Id: I215245b20dd403669dbccd37e34cb2fcd5e06431
Reviewed-on: https://skia-review.googlesource.com/9145
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoAdd color spin test for SkColorSpaceXformCanvas
Matt Sarett [Wed, 15 Mar 2017 19:48:19 +0000 (15:48 -0400)]
Add color spin test for SkColorSpaceXformCanvas

Also changes behavior to treat nullptr srcs as sRGB.

Testing locally, it looks like 353 gms have no diffs from 8888.
There are 269 diffs - some are fine (gms that do color space stuff)
and some are bugs.

BUG=skia:

Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
Reviewed-on: https://skia-review.googlesource.com/9738
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoMake dstreadshuffle GM more visually comprehensible
Brian Salomon [Wed, 15 Mar 2017 19:37:43 +0000 (15:37 -0400)]
Make dstreadshuffle GM more visually comprehensible

Change-Id: I1f42f474fb753e3dfbb574864f0279f139dce7e9
Reviewed-on: https://skia-review.googlesource.com/9732
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
7 years agoFuzzCanvas: make fuzzing drawImgNine easier
Hal Canary [Wed, 15 Mar 2017 16:58:15 +0000 (12:58 -0400)]
FuzzCanvas: make fuzzing drawImgNine easier

Change-Id: I82c8723d0b9192008b323f65232054d9acafddcc
Reviewed-on: https://skia-review.googlesource.com/9724
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoSkDynamicMemoryWStream::detachAsStream() returns unique_ptr
Hal Canary [Tue, 14 Mar 2017 18:35:02 +0000 (14:35 -0400)]
SkDynamicMemoryWStream::detachAsStream() returns unique_ptr

https://crrev.com/2747183002 must land first.
Change-Id: I65d1285a24d63c2c2f18662d511dea1c399511e1
Reviewed-on: https://skia-review.googlesource.com/9682
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
7 years agoRun gen tasks
Kevin Lubick [Wed, 15 Mar 2017 18:54:01 +0000 (14:54 -0400)]
Run gen tasks

BUG=skia:
NOTRY=true

Change-Id: I2fe67029b5e4e7e1696697876f94fd10c184f728
Reviewed-on: https://skia-review.googlesource.com/9736
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoFuzzCanvas: NativeGLCanvas
Hal Canary [Wed, 15 Mar 2017 15:39:06 +0000 (11:39 -0400)]
FuzzCanvas: NativeGLCanvas

Change-Id: I7e032d19a5d464e0c46e76acac399786dd79b735
Reviewed-on: https://skia-review.googlesource.com/9721
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoRevert "Add pre-Flush callback to GrDrawingManager"
Robert Phillips [Wed, 15 Mar 2017 18:41:24 +0000 (18:41 +0000)]
Revert "Add pre-Flush callback to GrDrawingManager"

This reverts commit d222ec492f5d0229986f529134d083e589bcc4a9.

Reason for revert: TegraX1 Vulkan bot

Original change's description:
> Add pre-Flush callback to GrDrawingManager
>
> This will allow internal systems (e.g., fonts & path renderers) to create pre-flush atlases.
>
> Depends on: https://skia-review.googlesource.com/c/8988/ (Allow GrSurfaceProxy-derived classes to use flags when instantiating)
>
> Change-Id: I307796595d651cf376838bff1f9e4385c3753547
> Reviewed-on: https://skia-review.googlesource.com/8679
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,csmartdalton@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I852648adc12d2aa58cd09c57d961c340d657776c
Reviewed-on: https://skia-review.googlesource.com/9735
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoSkColorSpaceXformCanvas: simple support for shaders
Mike Klein [Wed, 15 Mar 2017 16:56:47 +0000 (09:56 -0700)]
SkColorSpaceXformCanvas: simple support for shaders

So far it looks like we can hit the major shader subclasses without
needing to add new calls to SkShader.  Not married to this approach,
but it's a big head start.

I've left out nonlinear gradient types just to keep this CL clear.
Will follow up with them... they won't be interestingly different.

Change-Id: I8711ff464f384d8be1671c139ba10a20502d9c0f
Reviewed-on: https://skia-review.googlesource.com/9742
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoRevert[2] "store vertices arrays inline with object""
Mike Reed [Wed, 15 Mar 2017 18:35:07 +0000 (18:35 +0000)]
Revert[2] "store vertices arrays inline with object""

This reverts commit 9e62df6ecd1000860ad19ab9425579dfb7002ba0.

Reason for revert: behavior in reader32 fixed

Fix is here: https://skia-review.googlesource.com/c/9729/

Original change's description:
> Revert "store vertices arrays inline with object"
>
> This reverts commit eaaebb19a17d213355e7a70e0cfabe4ba61929d4.
>
> Reason for revert: may call SkReader32::read(null, 0) -- reader needs to handle this
>
> Original change's description:
> > store vertices arrays inline with object
> >
> > Also unify some of naming (esp. around texCoords)
> >
> > BUG=skia:6366
> >
> > Change-Id: I5a6793f029cccf0cd0a2c1d180b259ce4eab526f
> > Reviewed-on: https://skia-review.googlesource.com/9705
> > Commit-Queue: Mike Reed <reed@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> >
>
> TBR=bsalomon@google.com,reed@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:6366
>
> Change-Id: Ie421654bcd74d74f8be6676291e3d6e16e2a7a16
> Reviewed-on: https://skia-review.googlesource.com/9727
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
>

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

Change-Id: I1f12108fff8f551d66455cfadd6d5dd9412e9aa8
Reviewed-on: https://skia-review.googlesource.com/9760
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoPush setMipColorMode calls further down-stack & add to GrTextureProxy
Robert Phillips [Wed, 15 Mar 2017 17:02:45 +0000 (13:02 -0400)]
Push setMipColorMode calls further down-stack & add to GrTextureProxy

setMipColorMode seems like an odd call.

Change-Id: I24a1ac3883d52499f3be27282d006144d15b26f1
Reviewed-on: https://skia-review.googlesource.com/9725
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoRecreate SVG asset
Kevin Lubick [Wed, 15 Mar 2017 18:14:54 +0000 (14:14 -0400)]
Recreate SVG asset

Create SVGS properly, w/o missing ones from https://skia-review.googlesource.com/c/9630/

BUG=skia:
NOTRY=true

Change-Id: I74a91b7310534d578cccbf681f9cf6877eefdcd1
Reviewed-on: https://skia-review.googlesource.com/9733
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
7 years agomust check for zero-length in reader32::read() before calling memcpy
Mike Reed [Wed, 15 Mar 2017 17:38:26 +0000 (13:38 -0400)]
must check for zero-length in reader32::read() before calling memcpy

memcpy's behavior is undefined if the dst-ptr is null, but reader32 supports
null as long as the size is 0, so it needs to check explicitly before
calling memcpy. This is implemented (now) by calling sk_careful_memcpy.

BUG=skia:

Change-Id: I7033cc5e6d724f50f0aafd9808e297b953848aa7
Reviewed-on: https://skia-review.googlesource.com/9729
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoFix formatting error in test output
Brian Osman [Wed, 15 Mar 2017 17:35:51 +0000 (13:35 -0400)]
Fix formatting error in test output

BUG=skia:

Change-Id: I36824a4a3fcae3a75157706b769047a82cb3c289
Reviewed-on: https://skia-review.googlesource.com/9728
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoDisable debug layers on non android vulkan bots
Greg Daniel [Wed, 15 Mar 2017 17:28:21 +0000 (13:28 -0400)]
Disable debug layers on non android vulkan bots

BUG=skia:

Change-Id: I3f671bed10aad6b481bdcf42585c8c24dc4a274d
Reviewed-on: https://skia-review.googlesource.com/9726
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>

7 years agoAdd pre-Flush callback to GrDrawingManager
Robert Phillips [Wed, 15 Mar 2017 17:27:18 +0000 (13:27 -0400)]
Add pre-Flush callback to GrDrawingManager

This will allow internal systems (e.g., fonts & path renderers) to create pre-flush atlases.

Depends on: https://skia-review.googlesource.com/c/8988/ (Allow GrSurfaceProxy-derived classes to use flags when instantiating)

Change-Id: I307796595d651cf376838bff1f9e4385c3753547
Reviewed-on: https://skia-review.googlesource.com/8679
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoFix warning in Clang 4.0 Mac build.
Mike Klein [Wed, 15 Mar 2017 16:43:04 +0000 (09:43 -0700)]
Fix warning in Clang 4.0 Mac build.

    ../src/views/mac/SkNSView.mm:18:31: note: expanded from macro 'RETINA_API_AVAILABLE'
    #define RETINA_API_AVAILABLE (defined(MAC_OS_X_VERSION_10_7) && \
                                  ^
    ../src/views/mac/SkNSView.mm:404:5: error: macro expansion producing 'defined' has undefined behavior [-Werror,-Wexpansion-to-defined]
    #if RETINA_API_AVAILABLE

After this change, Clang 4.0 builds everything on Mac without warning.

Change-Id: I9c8f63e009eaa69366ba9361a811df46a1204c24
Reviewed-on: https://skia-review.googlesource.com/9741
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoRevert "store vertices arrays inline with object"
Mike Reed [Wed, 15 Mar 2017 17:32:39 +0000 (17:32 +0000)]
Revert "store vertices arrays inline with object"

This reverts commit eaaebb19a17d213355e7a70e0cfabe4ba61929d4.

Reason for revert: may call SkReader32::read(null, 0) -- reader needs to handle this

Original change's description:
> store vertices arrays inline with object
>
> Also unify some of naming (esp. around texCoords)
>
> BUG=skia:6366
>
> Change-Id: I5a6793f029cccf0cd0a2c1d180b259ce4eab526f
> Reviewed-on: https://skia-review.googlesource.com/9705
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

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

Change-Id: Ie421654bcd74d74f8be6676291e3d6e16e2a7a16
Reviewed-on: https://skia-review.googlesource.com/9727
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoUse SkBlendMode_Name rather than one-off tables
Brian Osman [Wed, 15 Mar 2017 16:19:37 +0000 (12:19 -0400)]
Use SkBlendMode_Name rather than one-off tables

BUG=skia:

Change-Id: I653ff55bc1164ddae4b03967f2f54bb5fece5a33
Reviewed-on: https://skia-review.googlesource.com/9722
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agostore vertices arrays inline with object
Mike Reed [Wed, 15 Mar 2017 16:19:07 +0000 (12:19 -0400)]
store vertices arrays inline with object

Also unify some of naming (esp. around texCoords)

BUG=skia:6366

Change-Id: I5a6793f029cccf0cd0a2c1d180b259ce4eab526f
Reviewed-on: https://skia-review.googlesource.com/9705
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoEmit dumpInfo string when processor opt test fails
Brian Osman [Wed, 15 Mar 2017 15:33:12 +0000 (11:33 -0400)]
Emit dumpInfo string when processor opt test fails

Add missing implementation for ComposeTwo, and provide more information in
ComposeOne.

BUG=skia:

Change-Id: Id2406bcb51a6419a763ff9e6e572f5c6c70c4c76
Reviewed-on: https://skia-review.googlesource.com/9699
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoRetract GrContext from src/gpu/effects
Robert Phillips [Wed, 15 Mar 2017 14:42:12 +0000 (10:42 -0400)]
Retract GrContext from src/gpu/effects

Change-Id: Iceb7263098286bafb2605ef17d1fe6bb25d71e97
Reviewed-on: https://skia-review.googlesource.com/9693
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoViewer's nonlinear blend mode uses SkColorSpaceXformCanvas
Brian Osman [Wed, 15 Mar 2017 14:24:55 +0000 (10:24 -0400)]
Viewer's nonlinear blend mode uses SkColorSpaceXformCanvas

Also avoid asserting when untagged images are being transformed.

BUG=skia:

Change-Id: If712f39b5f588b2bc3dc318a5b782badb7662ccf
Reviewed-on: https://skia-review.googlesource.com/9695
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoAdd Linux GTX 960 tasks
Kevin Lubick [Wed, 15 Mar 2017 13:06:26 +0000 (09:06 -0400)]
Add Linux GTX 960 tasks

BUG=skia:6376

Change-Id: Id2990429e73fc4d109f013c492933d16a7a7c738
Reviewed-on: https://skia-review.googlesource.com/9692
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoUpdate coverage script to cover new Canvas Fuzzers
Kevin Lubick [Wed, 15 Mar 2017 14:30:33 +0000 (10:30 -0400)]
Update coverage script to cover new Canvas Fuzzers

BUG=skia:
NOTRY=true

Change-Id: I8efd0da6c7f21ee2309be3c257f85950356a64bf
Reviewed-on: https://skia-review.googlesource.com/9696
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoRoll freetype.
Ben Wagner [Tue, 14 Mar 2017 20:54:06 +0000 (16:54 -0400)]
Roll freetype.

https://skia.googlesource.com/third_party/freetype2.git/+log/08fd250e1a..447a0b6263

Change-Id: I5406cd19cb7484c2cc1e24dc01bd37671f2456ec
Reviewed-on: https://skia-review.googlesource.com/9689
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoSkDynamicMemoryWStream::detachAsData more memory efficent
Hal Canary [Tue, 14 Mar 2017 19:52:12 +0000 (15:52 -0400)]
SkDynamicMemoryWStream::detachAsData more memory efficent

I did some testing with very large datasets, and the difference in max
RSS is measurable and significant.

Change-Id: I6bb2f795d5b4f6ebdba42c3089dc85a278355d48
Reviewed-on: https://skia-review.googlesource.com/9686
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
7 years agoGPU version of onMakeColorSpace
Brian Osman [Tue, 14 Mar 2017 16:07:12 +0000 (12:07 -0400)]
GPU version of onMakeColorSpace

New fragment processor that implements end-to-end
color space conversion, with nonlinear blending.

BUG=skia:6242

Change-Id: Ied86170fc28537a2bc209d57530d3ded48b467a9
Reviewed-on: https://skia-review.googlesource.com/9543
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoUpdate recipes.py to 78c57c5d69a38ef3db86d9763d539383f98714e6.
Robert Iannucci [Wed, 15 Mar 2017 08:24:56 +0000 (01:24 -0700)]
Update recipes.py to 78c57c5d69a38ef3db86d9763d539383f98714e6.

This updates the recipes.py script to the latest version, which fixes a
couple bugs.

BUG=

Change-Id: I6a0373531ae35577de77723210d68a5a2320d815
Reviewed-on: https://skia-review.googlesource.com/9706
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agooption to make 'M' mean picture+serialize
Mike Reed [Wed, 15 Mar 2017 01:10:42 +0000 (21:10 -0400)]
option to make 'M' mean picture+serialize

BUG=skia:

Change-Id: Ibb118edd0a4cf52c56635e3d32f1bd6fac338477
Reviewed-on: https://skia-review.googlesource.com/9704
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoadd uniqueID
Mike Reed [Wed, 15 Mar 2017 01:05:17 +0000 (21:05 -0400)]
add uniqueID

BUG=skia:6366

Change-Id: Ie3215a392040be645524a2294d824d953ba3a1b6
Reviewed-on: https://skia-review.googlesource.com/9703
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSkJumper: update to Clang 4.0
Mike Klein [Wed, 15 Mar 2017 00:35:04 +0000 (17:35 -0700)]
SkJumper: update to Clang 4.0

This Clang makes some new decisions about what (not) to inline.
Luckily, liberal use of the 'inline' keyword steers it back in
the right direction.

This new code draws the same, and generally looks improved.

Change-Id: I0ab6e1c884e6b339d01ae46a08a848e36dcc535a
Reviewed-on: https://skia-review.googlesource.com/9702
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agofloor -> floor_, just like abs_
Mike Klein [Tue, 14 Mar 2017 23:53:07 +0000 (16:53 -0700)]
floor -> floor_, just like abs_

Should fix the MSAN bot.

Change-Id: I9c7b9480ecd0576405468a2586ec6931f38b11a8
Reviewed-on: https://skia-review.googlesource.com/9701
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoSkJumper: more constants, _f and _i literals.
Mike Klein [Tue, 7 Mar 2017 22:29:54 +0000 (17:29 -0500)]
SkJumper: more constants, _f and _i literals.

Generalize section types to avoid, adding another type (.rodata).

I've kept K for iota only.  Maybe one day...

Change-Id: Ie5678a2ea00fefe550bc0e6dcab32f98c31d3fae
Reviewed-on: https://skia-review.googlesource.com/9403
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
7 years agoAdded support for building for tvOS
Matthew Leibowitz [Tue, 14 Mar 2017 20:22:32 +0000 (16:22 -0400)]
Added support for building for tvOS

This change is just to add support for building for tvOS.
It is exactly the same as iOS, just using a different SDK.

I had to change the two lines for libjpeg-turbo so that
it will run for both tvOS and iOS.

BUG=skia:

Change-Id: I6ae5fc4257df74c0f321e5d2d71584f6a52ec3a6
Reviewed-on: https://skia-review.googlesource.com/9660
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoFix uninitialized values in FuzzCanvas
Kevin Lubick [Tue, 14 Mar 2017 21:20:24 +0000 (17:20 -0400)]
Fix uninitialized values in FuzzCanvas

BUG=skia:

Change-Id: I45cb8a2d0695ec9a065ea9dd216e5d0220ad5a98
Reviewed-on: https://skia-review.googlesource.com/9690
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
7 years agoAdd GrRenderTargetContext::resourceProvider & GrResourceProvider::caps
Robert Phillips [Tue, 14 Mar 2017 18:39:29 +0000 (14:39 -0400)]
Add GrRenderTargetContext::resourceProvider & GrResourceProvider::caps

and retract GrSurfaceContextPriv a bit

Change-Id: Id47af1052f9bda4fe7c85b3ce46b3ebe37797524
Reviewed-on: https://skia-review.googlesource.com/9647
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>