platform/upstream/libSkiaSharp.git
8 years agoFix overflow caught by ASAN.
benjaminwagner [Fri, 4 Dec 2015 16:48:26 +0000 (08:48 -0800)]
Fix overflow caught by ASAN.

BUG=skia:

Review URL: https://codereview.chromium.org/1498923002

8 years agoMake SkAndroidCodec support ico
msarett [Fri, 4 Dec 2015 16:00:50 +0000 (08:00 -0800)]
Make SkAndroidCodec support ico

BUG=skia:

Review URL: https://codereview.chromium.org/1472933002

8 years agoSpeculative fix for win8 bot crash in ~GrAutoLocaleSetter
bsalomon [Fri, 4 Dec 2015 15:27:36 +0000 (07:27 -0800)]
Speculative fix for win8 bot crash in ~GrAutoLocaleSetter

Review URL: https://codereview.chromium.org/1493913008

8 years agoRevert of Make SkAndroidCodec support ico (patchset #7 id:130002 of https://coderevie...
scroggo [Fri, 4 Dec 2015 15:09:57 +0000 (07:09 -0800)]
Revert of Make SkAndroidCodec support ico (patchset #7 id:130002 of https://codereview.chromium.org/1472933002/ )

Reason for revert:
Crashing: https://uberchromegw.corp.google.com/i/client.skia.android/builders/Test-Android-GCC-NexusPlayer-CPU-SSE4-x86-Release/builds/1499/steps/dm/logs/stdio

Also, related ASAN failures:
https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-ASAN/builds/3676/steps/dm/logs/stdio

Original issue's description:
> Make SkAndroidCodec support ico
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/1603e9310f62cf0dd543cdb09dea06aa78373f13

TBR=djsollen@google.com,msarett@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1498903004

8 years agoAdd android_skp_capture.py, JSON file for geniewidget
borenet [Fri, 4 Dec 2015 14:59:31 +0000 (06:59 -0800)]
Add android_skp_capture.py, JSON file for geniewidget

The script runs through the directory of JSON files, capturing SKPs from
the apps specified by the JSON files.

BUG=skia:

Review URL: https://codereview.chromium.org/1483063006

8 years agoReduce calls sites where both the GrDrawContext & GrRenderTarget are both passed
robertphillips [Fri, 4 Dec 2015 14:58:16 +0000 (06:58 -0800)]
Reduce calls sites where both the GrDrawContext & GrRenderTarget are both passed

TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/1494083003

8 years agosimplify nanobench --quiet / -q output
mtklein [Fri, 4 Dec 2015 14:35:30 +0000 (06:35 -0800)]
simplify nanobench --quiet / -q output

This tries to cut things down to the very minimum you might want to know:

$ out/Release/nanobench --match nytimes --config 8888 gpu -q
Timer overhead: 29.6ns
! -> high variance, ? -> moderate variance
    micros       bench
   2479.05 !    desk_nytimes.skp_1_mpd    8888
   1313.92      desk_nytimes.skp_1_mpd    gpu
   3617.65      desk_nytimes.skp_1    8888
   1158.34      desk_nytimes.skp_1    gpu
   1368.99 !    keymobi_nytimes_com_.skp_1_mpd    8888
    393.40      keymobi_nytimes_com_.skp_1_mpd    gpu
   1179.68 !    keymobi_nytimes_com_.skp_1    8888
    342.74      keymobi_nytimes_com_.skp_1    gpu

All times are printed in microseconds, and high variance runs are marked.

BUG=skia:

Review URL: https://codereview.chromium.org/1493313003

8 years agoMake SkAndroidCodec support ico
msarett [Fri, 4 Dec 2015 13:43:09 +0000 (05:43 -0800)]
Make SkAndroidCodec support ico

BUG=skia:

Review URL: https://codereview.chromium.org/1472933002

8 years agoLoad ANGLE EGL library correctly on Linux
kkinnunen [Fri, 4 Dec 2015 07:11:40 +0000 (23:11 -0800)]
Load ANGLE EGL library correctly on Linux

Assign dynamically loaded ANGLE EGL library to correct variable.

BUG=skia:

Review URL: https://codereview.chromium.org/1494963002

8 years agoSkip dm GPU configs when context creation fails
kkinnunen [Fri, 4 Dec 2015 07:04:50 +0000 (23:04 -0800)]
Skip dm GPU configs when context creation fails

Skip dm GPU configs when context creation fails instead of stopping
the whole dm run.

Review URL: https://codereview.chromium.org/1497713002

8 years agoAdd option to draw wireframe batch bounds
bsalomon [Thu, 3 Dec 2015 20:58:06 +0000 (12:58 -0800)]
Add option to draw wireframe batch bounds

Committed: https://skia.googlesource.com/skia/+/26489ef21ff5df33b8cb5943fddfd4604e203960

Review URL: https://codereview.chromium.org/1494473005

8 years agoadd bench for sprite-like drawing w/ imagefilters
reed [Thu, 3 Dec 2015 20:56:59 +0000 (12:56 -0800)]
add bench for sprite-like drawing w/ imagefilters

visualbench run on Mac Pro

curr/maxrss loops min median mean max stddev samples    config bench
  96/96  MB 16 412µs 413µs 413µs 414µs 0% ▄▁█▅▅▅▅▆▅▃▅ gpu warmupbench
  98/98  MB 4 1.86ms 1.86ms 1.86ms 1.86ms 0% ▁▂▇█▆▅▇▄▃▃▃ gpu image-filter-sprite-draw-image
 100/100 MB 4 1.86ms 1.86ms 1.86ms 1.86ms 0% ▆▇▅▄▁▆▅█▅▄▅ gpu image-filter-sprite-draw-bitmap
 100/100 MB 32 547µs 548µs 590µs 1.01ms 24% █▁▁▁▁▁▁▁▁▁▁ gpu image-filter-sprite-draw-sprite

BUG=skia:

Review URL: https://codereview.chromium.org/1497843003

8 years agoAdd currScanline() getter to SkCodec API
msarett [Thu, 3 Dec 2015 20:23:43 +0000 (12:23 -0800)]
Add currScanline() getter to SkCodec API

This is more correct than using nextScanline() for the
SkGifCodec scanline decoder (since we will get a strange
result in the interlaced case) and is necessary if we want
to add scanline decoding to SkIcoCodec.

This does not actually fix bugs or change behavior.

BUG=skia:

Review URL: https://codereview.chromium.org/1489163002

8 years agoUpdate documentation for SkFontMgr methods.
erikchen [Thu, 3 Dec 2015 20:12:13 +0000 (12:12 -0800)]
Update documentation for SkFontMgr methods.

The appropriate way to get the default system font is to pass |nullptr| as the
familyName. This was not clear from the interface, which may be why ui/gfx/ has
the wrong behavior.

BUG=chromium:564266

Review URL: https://codereview.chromium.org/1494253002

8 years agoRevert of Add option to draw wireframe batch bounds (patchset #6 id:100001 of https...
scroggo [Thu, 3 Dec 2015 18:30:34 +0000 (10:30 -0800)]
Revert of Add option to draw wireframe batch bounds (patchset #6 id:100001 of https://codereview.chromium.org/1494473005/ )

Reason for revert:
Looks to be responsible for breaking builds e.g. https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Debug/builds/3030/steps/dm/logs/stdio

Original issue's description:
> Add option to draw wireframe batch bounds
>
> Committed: https://skia.googlesource.com/skia/+/26489ef21ff5df33b8cb5943fddfd4604e203960

TBR=joshualitt@google.com,bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1492633007

8 years agoStop disabling fixed test
scroggo [Thu, 3 Dec 2015 17:49:02 +0000 (09:49 -0800)]
Stop disabling fixed test

skbug.com/1282 has been fixed, so there is no need to skip these
images

BUG=skia:1282

Review URL: https://codereview.chromium.org/1391143007

8 years agoMatch libjpeg-turbo name change in Android
msarett [Thu, 3 Dec 2015 17:48:54 +0000 (09:48 -0800)]
Match libjpeg-turbo name change in Android

BUG=skia:

Review URL: https://codereview.chromium.org/1464423003

8 years agoAdd option to draw wireframe batch bounds
bsalomon [Thu, 3 Dec 2015 17:36:48 +0000 (09:36 -0800)]
Add option to draw wireframe batch bounds

Review URL: https://codereview.chromium.org/1494473005

8 years agoMake building with clang documentation a bit easier to find
kjlubick [Thu, 3 Dec 2015 17:20:55 +0000 (09:20 -0800)]
Make building with clang documentation a bit easier to find

BUG=skia:
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1495913002

Review URL: https://codereview.chromium.org/1495913002

8 years agoCreate GLSLUniformHandler class for gpu backend
egdaniel [Thu, 3 Dec 2015 17:20:44 +0000 (09:20 -0800)]
Create GLSLUniformHandler class for gpu backend

BUG=skia:

Review URL: https://codereview.chromium.org/1490283004

8 years agoAdd transfer buffer support.
jvanverth [Thu, 3 Dec 2015 17:15:47 +0000 (09:15 -0800)]
Add transfer buffer support.

BUG=skia:4604

Committed: https://skia.googlesource.com/skia/+/fa498fe12239988578465d0dee69f0d5645bb361

Review URL: https://codereview.chromium.org/1490473003

8 years agoDon't use the Sk4f gradient impl without SIMD
fmalita [Thu, 3 Dec 2015 17:15:25 +0000 (09:15 -0800)]
Don't use the Sk4f gradient impl without SIMD

Also remove the SK_SUPPORT_LEGACY_LINEAR_GRADIENT_TABLE guard since it is no
longer used in Chromium.

BUG=chromium:563492
R=reed@google.com,mtklein@google.com
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1489233005

8 years agoRevert of Add transfer buffer support. (patchset #9 id:160001 of https://codereview...
egdaniel [Thu, 3 Dec 2015 14:32:22 +0000 (06:32 -0800)]
Revert of Add transfer buffer support. (patchset #9 id:160001 of https://codereview.chromium.org/1490473003/ )

Reason for revert:
speculative revert for deps roll failures

Original issue's description:
> Add transfer buffer support.
>
> BUG=skia:4604
>
> Committed: https://skia.googlesource.com/skia/+/fa498fe12239988578465d0dee69f0d5645bb361

TBR=bsalomon@google.com,jvanverth@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4604

Review URL: https://codereview.chromium.org/1496843003

8 years agoFix ODR violation.
benjaminwagner [Thu, 3 Dec 2015 13:04:03 +0000 (05:04 -0800)]
Fix ODR violation.

src/ports/SkFontMgr_fontconfig.cpp and src/fonts/SkFontMgr_fontconfig.cpp both define SkFontMgr_fontconfig.

BUG=skia:
TBR=bungeman

Review URL: https://codereview.chromium.org/1491943004

8 years agoAPI to support native scaling by image-generator
reed [Wed, 2 Dec 2015 22:19:47 +0000 (14:19 -0800)]
API to support native scaling by image-generator

BUG=skia:

Review URL: https://codereview.chromium.org/1396323007

8 years agoWire up resource cache stats dumping in nanobench
joshualitt [Wed, 2 Dec 2015 22:08:25 +0000 (14:08 -0800)]
Wire up resource cache stats dumping in nanobench

TBR=bsalomon@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/1495543003

8 years agoWire up new define in buildbot_spec
joshualitt [Wed, 2 Dec 2015 22:04:46 +0000 (14:04 -0800)]
Wire up new define in buildbot_spec

BUG=skia:

Review URL: https://codereview.chromium.org/1492133002

8 years agoreset shader compilations for stats
joshualitt [Wed, 2 Dec 2015 21:36:47 +0000 (13:36 -0800)]
reset shader compilations for stats

BUG=skia:

Review URL: https://codereview.chromium.org/1491823003

8 years agoAdd transfer buffer support.
jvanverth [Wed, 2 Dec 2015 21:06:37 +0000 (13:06 -0800)]
Add transfer buffer support.

BUG=skia:4604

Review URL: https://codereview.chromium.org/1490473003

8 years agoCreate a define for nanobench builds to dump stats
joshualitt [Wed, 2 Dec 2015 21:00:37 +0000 (13:00 -0800)]
Create a define for nanobench builds to dump stats

TBR=bsalomon@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/1499453002

8 years agodrawSprite and drawImage+clip should draw the same w/ an imagefilter applied. This...
reed [Wed, 2 Dec 2015 20:58:39 +0000 (12:58 -0800)]
drawSprite and drawImage+clip should draw the same w/ an imagefilter applied. This gm exercises that invariant.

BUG=skia:

Review URL: https://codereview.chromium.org/1498523002

8 years agoRevert of skstd -> std for unique_ptr (patchset #17 id:320001 of https://codereview...
mtklein [Wed, 2 Dec 2015 20:32:02 +0000 (12:32 -0800)]
Revert of skstd -> std for unique_ptr (patchset #17 id:320001 of https://codereview.chromium.org/1436033003/ )

Reason for revert:
Chromium bots can't handle forward declared types, e.g.

struct Foo {
   int x,y;
   std::unique_ptr<Foo> next;
};

https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/86497

Original issue's description:
> skstd -> std for unique_ptr
>
> TBR=reed@google.com
> No public API changes.
>
> BUG=skia:4564
>
> Committed: https://skia.googlesource.com/skia/+/755c553c17b82bb5de3d9cc8d3b2a866ff9e9e50
>
> CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot,Build-Ubuntu-GCC-x86_64-Debug-CrOS_Link-Trybot;client.skia:Perf-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Release-Trybot,Test-iOS-Clang-iPad4-GPU-SGX554-Arm7-Release-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/06189155d987db5c7e69015f6ea87c2168d6a065
>
> Committed: https://skia.googlesource.com/skia/+/70e8dfca4a7f5bce97b8021a6e378c4828b09c8c
>
> Committed: https://skia.googlesource.com/skia/+/dadfc245cc9a0279ff7b73da3344f2ca5d139907

TBR=bungeman@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4564

Review URL: https://codereview.chromium.org/1498583002

8 years agoAdd gpuStatsDump to nanobench GPU bots
joshualitt [Wed, 2 Dec 2015 19:04:51 +0000 (11:04 -0800)]
Add gpuStatsDump to nanobench GPU bots

BUG=skia:

Review URL: https://codereview.chromium.org/1497533002

8 years agoskstd -> std for unique_ptr
mtklein [Wed, 2 Dec 2015 18:46:18 +0000 (10:46 -0800)]
skstd -> std for unique_ptr

TBR=reed@google.com
No public API changes.

BUG=skia:4564

Committed: https://skia.googlesource.com/skia/+/755c553c17b82bb5de3d9cc8d3b2a866ff9e9e50

CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot,Build-Ubuntu-GCC-x86_64-Debug-CrOS_Link-Trybot;client.skia:Perf-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Release-Trybot,Test-iOS-Clang-iPad4-GPU-SGX554-Arm7-Release-Trybot

Committed: https://skia.googlesource.com/skia/+/06189155d987db5c7e69015f6ea87c2168d6a065

Committed: https://skia.googlesource.com/skia/+/70e8dfca4a7f5bce97b8021a6e378c4828b09c8c

Review URL: https://codereview.chromium.org/1436033003

8 years agoReduce use of GrRenderTarget in GrTextContexts
robertphillips [Wed, 2 Dec 2015 18:33:46 +0000 (10:33 -0800)]
Reduce use of GrRenderTarget in GrTextContexts

Cleanup prior to switching over to GrRenderTargetProxy.

Review URL: https://codereview.chromium.org/1485973004

8 years agoModify iOSShell-gyp to generate unique bundle identifier
stephana [Wed, 2 Dec 2015 17:45:30 +0000 (09:45 -0800)]
Modify iOSShell-gyp to generate unique bundle identifier

BUG=skia:

Review URL: https://codereview.chromium.org/1483143002

8 years agoBegan logging more gpu stats from nanobench
joshualitt [Wed, 2 Dec 2015 17:05:37 +0000 (09:05 -0800)]
Began logging more gpu stats from nanobench

BUG=skia:

Review URL: https://codereview.chromium.org/1489033004

8 years agoRemove plumbing of clipRect thoughout the TextContexts
robertphillips [Wed, 2 Dec 2015 16:57:50 +0000 (08:57 -0800)]
Remove plumbing of clipRect thoughout the TextContexts

The RenderTarget was only being passed around to be able to recreate the clipRect.

Review URL: https://codereview.chromium.org/1486323002

8 years agoAllow SkAndroidCodec to use SkPngChunkReader
msarett [Wed, 2 Dec 2015 15:02:41 +0000 (07:02 -0800)]
Allow SkAndroidCodec to use SkPngChunkReader

Also update documentation of SkPngChunkReader
in SkCodec.

BUG=skia:

Review URL: https://codereview.chromium.org/1487583003

8 years agoRevert of Simplify draw one glyph (patchset #3 id:40001 of https://codereview.chromiu...
herb [Tue, 1 Dec 2015 22:14:17 +0000 (14:14 -0800)]
Revert of Simplify draw one glyph (patchset #3 id:40001 of https://codereview.chromium.org/1403573002/ )

Reason for revert:
This seems to break nexus 9 release.

Original issue's description:
> Replace D1G with a simpler implementation.
>
> Committed: https://skia.googlesource.com/skia/+/001e74426672e00f3f2783ccf728031662d4a358

TBR=bungeman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1486723004

8 years agoAdd in shader blending for CoverageSetOp XP
egdaniel [Tue, 1 Dec 2015 21:54:06 +0000 (13:54 -0800)]
Add in shader blending for CoverageSetOp XP

BUG=skia:

Review URL: https://codereview.chromium.org/1488213002

8 years agoRetract GrRenderTarget a bit
robertphillips [Tue, 1 Dec 2015 20:51:26 +0000 (12:51 -0800)]
Retract GrRenderTarget a bit

These sites don't necessarily need the full power of a GrRenderTarget object. This is a clean up for switching over to GrRenderTargetProxys.

Review URL: https://codereview.chromium.org/1486923004

8 years agoUpdate CMakeLists.txt to exclude SkFontConfigInterface_direct_*.
bungeman [Tue, 1 Dec 2015 19:26:28 +0000 (14:26 -0500)]
Update CMakeLists.txt to exclude SkFontConfigInterface_direct_*.

These files are not expected to be used by common users.

8 years agoFix Google3 fonts. Use fontconfig rather than custom_directory_factory. Add Google3...
benjaminwagner [Tue, 1 Dec 2015 19:12:05 +0000 (11:12 -0800)]
Fix Google3 fonts. Use fontconfig rather than custom_directory_factory. Add Google3 font caching.

Some future dependents require these changes.

Depends on internal cl/108287941.

Review URL: https://codereview.chromium.org/1471033002

8 years agoReplace D1G with a simpler implementation.
herb [Tue, 1 Dec 2015 17:50:04 +0000 (09:50 -0800)]
Replace D1G with a simpler implementation.

Review URL: https://codereview.chromium.org/1403573002

8 years agoAdd an SkPath conic conversion utility.
fmalita [Tue, 1 Dec 2015 17:13:23 +0000 (09:13 -0800)]
Add an SkPath conic conversion utility.

Expose SkConic::chopIntoQuadsPOW2() as SkPath::ConvertConicToQuads().

BUG=chromium:315277
R=reed@google.com

Review URL: https://codereview.chromium.org/1484373002

8 years agoCMake, include/: changes to make fiddle 2.0 better
halcanary [Tue, 1 Dec 2015 17:02:49 +0000 (09:02 -0800)]
CMake, include/:  changes to make fiddle 2.0 better

cmake: remove unused directories from skia.h / ${public_includes}

SkPreConfig.h:  work around buggy `#ifdef linux`

include:  guard many platform-specific headers
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot

Review URL: https://codereview.chromium.org/1488813002

8 years agoRevert of Fix Android framework build (patchset #1 id:1 of https://codereview.chromiu...
scroggo [Tue, 1 Dec 2015 16:08:18 +0000 (08:08 -0800)]
Revert of Fix Android framework build (patchset #1 id:1 of https://codereview.chromium.org/1491563003/ )

Reason for revert:
eeebdb538d476c1bfc8b63a946094ca1b505ecd1 was reverted, so this one needs to be reverted, too

Original issue's description:
> Fix Android framework build
>
eeebdb538d476c1bfc8b63a946094ca1b505ecd1 did not update a Config that
> only builds if SK_BUILD_FOR_ANDROID_FRAMEWORK. This appears to be the
> necessary parameter that is missing.
>
> BUG=skia:2992
>
> Committed: https://skia.googlesource.com/skia/+/cb6cb21cd9d27054810d2c80ef534dcddd615d4b

TBR=bsalomon@google.com,tomhudson@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:2992

Review URL: https://codereview.chromium.org/1487033002

8 years agoRevert of Make NVPR a GL context option instead of a GL context (patchset #2 id:20001...
bsalomon [Tue, 1 Dec 2015 15:58:44 +0000 (07:58 -0800)]
Revert of Make NVPR a GL context option instead of a GL context (patchset #2 id:20001 of https://codereview.chromium.org/1448883002/ )

Reason for revert:
BUG=skia:4609

skbug.com/4609

Seems like GrContextFactory needs to fail when the NVPR option is requested but the driver version isn't sufficiently high.

Original issue's description:
> Make NVPR a GL context option instead of a GL context
>
> Make NVPR a GL context option instead of a GL context.
> This may enable NVPR to be run with command buffer
> interface.
>
> No functionality change in DM or nanobench. NVPR can
> only be run with normal GL APIs.
>
> BUG=skia:2992
>
> Committed: https://skia.googlesource.com/skia/+/eeebdb538d476c1bfc8b63a946094ca1b505ecd1

TBR=mtklein@google.com,jvanverth@google.com,kkinnunen@nvidia.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:2992

Review URL: https://codereview.chromium.org/1486153002

8 years agoFix Android framework build
scroggo [Tue, 1 Dec 2015 15:53:37 +0000 (07:53 -0800)]
Fix Android framework build

eeebdb538d476c1bfc8b63a946094ca1b505ecd1 did not update a Config that
only builds if SK_BUILD_FOR_ANDROID_FRAMEWORK. This appears to be the
necessary parameter that is missing.

BUG=skia:2992

Review URL: https://codereview.chromium.org/1491563003

8 years agocheck that SSE2 is available before using __vectorcall
lsalzman [Tue, 1 Dec 2015 15:21:09 +0000 (07:21 -0800)]
check that SSE2 is available before using __vectorcall

BUG=skia:4563

Review URL: https://codereview.chromium.org/1489873002

8 years agoAdd Sk4f::ToBytes(uint8_t[16], Sk4f, Sk4f, Sk4f, Sk4f)
mtklein [Tue, 1 Dec 2015 15:10:21 +0000 (07:10 -0800)]
Add Sk4f::ToBytes(uint8_t[16], Sk4f, Sk4f, Sk4f, Sk4f)

This is a big speedup for float -> byte.  E.g. gradient_linear_clamp_3color:
 x86-64 147µs -> 103µs  (Broadwell MBP)
 arm64 2.03ms -> 648µs  (Galaxy S6)
 armv7 1.12ms -> 489µs  (Galaxy S6, same device!)

BUG=skia:
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot;client.skia.android:Test-Android-GCC-Nexus9-CPU-Denver-Arm64-Debug-Trybot

Review URL: https://codereview.chromium.org/1483953002

8 years agoMake NVPR a GL context option instead of a GL context
kkinnunen [Tue, 1 Dec 2015 13:10:48 +0000 (05:10 -0800)]
Make NVPR a GL context option instead of a GL context

Make NVPR a GL context option instead of a GL context.
This may enable NVPR to be run with command buffer
interface.

No functionality change in DM or nanobench. NVPR can
only be run with normal GL APIs.

BUG=skia:2992

Review URL: https://codereview.chromium.org/1448883002

8 years agoFix stroking of zero length paths with end caps on NVPR
kkinnunen [Tue, 1 Dec 2015 12:35:37 +0000 (04:35 -0800)]
Fix stroking of zero length paths with end caps on NVPR

Fix stroking of zero length paths with end caps on NVPR.
In case of such paths, stroke them using Skia and just
fill the path with NVPR.

BUG=skia:4427

Review URL: https://codereview.chromium.org/1471763002

8 years agoGenerate list of GPU contexts outside tests
kkinnunen [Tue, 1 Dec 2015 12:35:26 +0000 (04:35 -0800)]
Generate list of GPU contexts outside tests

Use DEF_GPUTEST_FOR_*_CONTEXT macros to obtain the
test GPU context.

Makes changing the context -related classes easier,
since not all tests need to be changed.

BUG=skia:2992

Review URL: https://codereview.chromium.org/1448873002

8 years agoDisable using dev bounds in Gr clip reduction code.
Brian Salomon [Mon, 30 Nov 2015 22:02:50 +0000 (17:02 -0500)]
Disable using dev bounds in Gr clip reduction code.

Enabling this broke GPU raster in Chrome. Disabling until bug diagnosed/fixed.

TBR=joshualitt@googole.com

Review URL: https://codereview.chromium.org/1484973002 .

8 years agoadd more conservative check for wayward divide
caryclark [Mon, 30 Nov 2015 21:47:11 +0000 (13:47 -0800)]
add more conservative check for wayward divide

When the parallel stroke to the curve can't be computed from
the intersection of the tangent lines, as straight line connects
the two points instead. Allow the intersection to succeed unless
the ratio isn't finite or the contribution of (1 - ratio) isn't
significant.

R=reed@google.com,fmalita@chromium.org
BUG=skia:4603

Review URL: https://codereview.chromium.org/1484873003

8 years agoAdd debug option to clip each GrBatch to its device bounds
bsalomon [Mon, 30 Nov 2015 21:27:47 +0000 (13:27 -0800)]
Add debug option to clip each GrBatch to its device bounds

Review URL: https://codereview.chromium.org/1471083002

8 years agoCMake: generate skia.h and skia_{compile|link}_arguments.txt
halcanary [Mon, 30 Nov 2015 20:42:58 +0000 (12:42 -0800)]
CMake: generate skia.h and skia_{compile|link}_arguments.txt

Motivation: for use by fiddle.

Also, add new files to .gitignore
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot

Review URL: https://codereview.chromium.org/1484053002

8 years agoMake onPrepareDraws const
joshualitt [Mon, 30 Nov 2015 20:30:13 +0000 (12:30 -0800)]
Make onPrepareDraws const

BUG=skia:

Review URL: https://codereview.chromium.org/1483103003

8 years agoCMake: generate SkUserConfig.hh
halcanary [Mon, 30 Nov 2015 18:29:25 +0000 (10:29 -0800)]
CMake: generate SkUserConfig.hh

CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot

Review URL: https://codereview.chromium.org/1483953004

8 years agoCreate a static instances of SrcOver XferProcessor
egdaniel [Mon, 30 Nov 2015 18:15:58 +0000 (10:15 -0800)]
Create a static instances of SrcOver XferProcessor

BUG=skia:

Review URL: https://codereview.chromium.org/1471293003

8 years agoAdd documentation for Status bot filters
borenet [Mon, 30 Nov 2015 17:58:56 +0000 (09:58 -0800)]
Add documentation for Status bot filters

BUG=skia:4602
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1489583002

Review URL: https://codereview.chromium.org/1489583002

8 years agoFix bug in reads fragment position on gpu.
egdaniel [Mon, 30 Nov 2015 17:37:46 +0000 (09:37 -0800)]
Fix bug in reads fragment position on gpu.

BUG=skia:

Review URL: https://codereview.chromium.org/1482223004

8 years agoAPIs which took colorPOI / coveragePOI pairs updated to take a GrPipelineOptimization...
ethannicholas [Mon, 30 Nov 2015 16:57:38 +0000 (08:57 -0800)]
APIs which took colorPOI / coveragePOI pairs updated to take a GrPipelineOptimizations struct

TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/1480353002

8 years agoRevert of skstd -> std for unique_ptr (patchset #16 id:300001 of https://codereview...
mtklein [Mon, 30 Nov 2015 15:17:39 +0000 (07:17 -0800)]
Revert of skstd -> std for unique_ptr (patchset #16 id:300001 of https://codereview.chromium.org/1436033003/ )

Reason for revert:
Test-iOS-Clang-iPad4-GPU-SGX554-Arm7-Release

Original issue's description:
> skstd -> std for unique_ptr
>
> TBR=reed@google.com
> No public API changes.
>
> BUG=skia:4564
>
> Committed: https://skia.googlesource.com/skia/+/755c553c17b82bb5de3d9cc8d3b2a866ff9e9e50
>
> CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot,Build-Ubuntu-GCC-x86_64-Debug-CrOS_Link-Trybot;client.skia:Perf-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Release-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/06189155d987db5c7e69015f6ea87c2168d6a065
>
> Committed: https://skia.googlesource.com/skia/+/70e8dfca4a7f5bce97b8021a6e378c4828b09c8c

TBR=bungeman@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4564

Review URL: https://codereview.chromium.org/1482343002

8 years agoskstd -> std for unique_ptr
mtklein [Mon, 30 Nov 2015 15:07:01 +0000 (07:07 -0800)]
skstd -> std for unique_ptr

TBR=reed@google.com
No public API changes.

BUG=skia:4564

Committed: https://skia.googlesource.com/skia/+/755c553c17b82bb5de3d9cc8d3b2a866ff9e9e50

CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot,Build-Ubuntu-GCC-x86_64-Debug-CrOS_Link-Trybot;client.skia:Perf-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Release-Trybot

Committed: https://skia.googlesource.com/skia/+/06189155d987db5c7e69015f6ea87c2168d6a065

Review URL: https://codereview.chromium.org/1436033003

8 years agoSupport wbmp that are supported by SkImageDecoder
scroggo [Mon, 30 Nov 2015 14:25:31 +0000 (06:25 -0800)]
Support wbmp that are supported by SkImageDecoder

The wbmp version of SkImageDecoder will support decoding an image where
the second byte can be masked away with 0x9F. Prior to this CL, SkCodec
checked that the entire byte was zero. The SkCodec implementation
appears to be more correct (at least according to Wikipedia [1]), but
it also means we could regress if someone was using an image that did
not quite fit the specification.

[1] https://en.wikipedia.org/wiki/Wireless_Application_Protocol_Bitmap_Format

BUG=skia:3257

Review URL: https://codereview.chromium.org/1473673005

8 years agoClean up Ganesh path render a little bit
robertphillips [Mon, 30 Nov 2015 13:45:06 +0000 (05:45 -0800)]
Clean up Ganesh path render a little bit

I'm not sure if this is an improvement but this is an attempt to start moving the handling of pathEffects up the call stack (ideally to SkGpuDevice).

Note that the duplicate path sniffing in GrDrawContext::drawPath is still useful since it can be invoked if a path has to be explicitly drawn for a mask filter.

Review URL: https://codereview.chromium.org/1472333003

8 years agoUpdate SKP version
update-skps [Sun, 29 Nov 2015 08:26:50 +0000 (00:26 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=
NO_MERGE_BUILDS

Review URL: https://codereview.chromium.org/1487483002

8 years agoInclude conic weights in GrPath cache kSimpleVolatilePathDomain keys
kkinnunen [Thu, 26 Nov 2015 09:51:44 +0000 (01:51 -0800)]
Include conic weights in GrPath cache kSimpleVolatilePathDomain keys

Include conic weights in the keys when caching GrPath in
kSimpleVolatilePathDomain.

BUG=skia:4580

Review URL: https://codereview.chromium.org/1472733002

8 years agoDon't use SkRect::MakeLargest() for clip bounds in image filter tests.
senorblanco [Wed, 25 Nov 2015 18:32:18 +0000 (10:32 -0800)]
Don't use SkRect::MakeLargest() for clip bounds in image filter tests.

Much of the Skia code dealing with clip bounds does not handle
overflow, so if we start doing any math on these rects, the code will
break. Use explicit reasonable values instead.

BUG=skia:

Review URL: https://codereview.chromium.org/1479563002

8 years agoFix SkMergeImageFilter crop rect computation.
senorblanco [Wed, 25 Nov 2015 15:06:55 +0000 (07:06 -0800)]
Fix SkMergeImageFilter crop rect computation.

The crop rect should be applied to the union of the input bounds, not
to the src input's bounds. These are often the same, since the saveLayer
offscreen size is computed as the union of all the required bounds, but
is not correct if the input primitive is not used (e.g., if all inputs
are connected to SkImageSources). But this will change as we
move to more accurate intermediate bounds computations (getting rid of the join() hacks as described in skbug.com/3194).

Since we can't know this without actually processing the inputs,
split SkMergeImageFilter processing into:

- filter all inputs
- applyCropRect to the union'ed bounds
- allocate the destination
- do the merge

BUG=3194

Review URL: https://codereview.chromium.org/1475793002

8 years agoAdd frame_larger_than_image.gif to blacklist
msarett [Wed, 25 Nov 2015 13:36:07 +0000 (05:36 -0800)]
Add frame_larger_than_image.gif to blacklist

BUG=skia:

Review URL: https://codereview.chromium.org/1471373003

8 years agotools/git-sync-deps: handle changing origin
halcanary [Tue, 24 Nov 2015 21:10:52 +0000 (13:10 -0800)]
tools/git-sync-deps: handle changing origin

TBR=mtklein@google.com

Review URL: https://codereview.chromium.org/1475513004

8 years agoRemove SkDrawProcs
herb [Tue, 24 Nov 2015 20:41:00 +0000 (12:41 -0800)]
Remove SkDrawProcs

TBR=reed@google.com

Review URL: https://codereview.chromium.org/1476563002

8 years agoNew API for computing optimization invariants.
ethannicholas [Tue, 24 Nov 2015 20:10:10 +0000 (12:10 -0800)]
New API for computing optimization invariants.

Review URL: https://codereview.chromium.org/1467553002

8 years agooptimize the disable-caching case for SkImage::readPixels
reed [Tue, 24 Nov 2015 19:44:47 +0000 (11:44 -0800)]
optimize the disable-caching case for SkImage::readPixels

If the client wants no caching, and we haven't already cached it, pass the
caller's dst-buffer directly down to the generator, avoiding the (previous)
extra memcpy.

BUG=skia:4594

Review URL: https://codereview.chromium.org/1473373002

8 years agoWhitespace change to trigger bots after gsutil change
borenet [Tue, 24 Nov 2015 19:36:09 +0000 (11:36 -0800)]
Whitespace change to trigger bots after gsutil change

TBR=rmistry
BUG=556703

Review URL: https://codereview.chromium.org/1471373002

8 years agoAdd sniff for rect, oval & rrect to SkCanvas::clipPath
robertphillips [Tue, 24 Nov 2015 17:30:12 +0000 (09:30 -0800)]
Add sniff for rect, oval & rrect to SkCanvas::clipPath

Review URL: https://codereview.chromium.org/1466303004

8 years agoAdd offscreen mode to visualbench
cdalton [Tue, 24 Nov 2015 17:20:24 +0000 (09:20 -0800)]
Add offscreen mode to visualbench

Replaces "nvpr mode" with "offscreen mode" and a flag to enable/
disable nvpr. Assigns new config names to the various combinations of
flags and begins printing them with the bench results in order to match
nanobench.

BUG=skia:

Review URL: https://codereview.chromium.org/1473253002

8 years agoOptimize visualbench offscreen blits
cdalton [Tue, 24 Nov 2015 16:54:29 +0000 (08:54 -0800)]
Optimize visualbench offscreen blits

Modifies NvprWrappedBenchmark to present its offscreen canvas via
GrContext::copySurface rather than going through the SkCanvas API.
Only copies a subrectangle the size of the benchmark, not the entire
canvas.

BUG=skia:

Review URL: https://codereview.chromium.org/1443263002

8 years agoChange XPS to use find and place glyph.
herb [Tue, 24 Nov 2015 16:37:01 +0000 (08:37 -0800)]
Change XPS to use find and place glyph.

Testing:
The testing I did is non-standard. I just compared images using XPS viewer.
They all looked the same, but the XPS device is suffering from bit rot.

BUG=skia:

Review URL: https://codereview.chromium.org/1471043002

8 years agoSniff out rects, ovals & rrects in SkGpuDevice::drawPath
robertphillips [Tue, 24 Nov 2015 15:56:59 +0000 (07:56 -0800)]
Sniff out rects, ovals & rrects in SkGpuDevice::drawPath

Review URL: https://codereview.chromium.org/1468423002

8 years agoGenerate list of GPU contexts outside ImageTest tests
kkinnunen [Tue, 24 Nov 2015 15:39:40 +0000 (07:39 -0800)]
Generate list of GPU contexts outside ImageTest tests

Use DEF_GPUTEST_FOR_*_CONTEXT macros to obtain the
test GPU context.

Makes changing the context -related classes easier,
since not all tests need to be changed.

BUG=skia:2992

Review URL: https://codereview.chromium.org/1454663002

8 years agoCherry pick one more commit into libjpeg-turbo
msarett [Tue, 24 Nov 2015 15:14:34 +0000 (07:14 -0800)]
Cherry pick one more commit into libjpeg-turbo

I forgot to add the last fix for the skip scanlines patch.

BUG=skia:

Review URL: https://codereview.chromium.org/1476483002

8 years agoUpgrade debugger to print more SkPath info (isOval & isRRect)
robertphillips [Tue, 24 Nov 2015 14:34:50 +0000 (06:34 -0800)]
Upgrade debugger to print more SkPath info (isOval & isRRect)

Review URL: https://codereview.chromium.org/1470063002

8 years agoskia: Holding onto the image in the benchmark causes issues
hendrikw [Tue, 24 Nov 2015 13:50:23 +0000 (05:50 -0800)]
skia: Holding onto the image in the benchmark causes issues

Skia'a nanobench can hold onto an image, that causes the lifetime
of GrGLGpu to extend past that of the GL interface.

Kill reference to surface and image before killing the interface

Review URL: https://codereview.chromium.org/1472433002

8 years agoClarify when oval & rrects get devolved to paths in SkGpuDevice/GrDrawContext boundary
robertphillips [Tue, 24 Nov 2015 13:36:02 +0000 (05:36 -0800)]
Clarify when oval & rrects get devolved to paths in SkGpuDevice/GrDrawContext boundary

The GrDrawContext drawOval and drawRRect methods are only called from SkGpuDevice so there is no value in delaying the conversion to a path when dashing is involved.

Review URL: https://codereview.chromium.org/1470103002

8 years agoAdd SK_BEGIN_REQUIRE_DENSE / SK_END_REQUIRE_DENSE.
mtklein [Tue, 24 Nov 2015 13:35:58 +0000 (05:35 -0800)]
Add SK_BEGIN_REQUIRE_DENSE / SK_END_REQUIRE_DENSE.

Use in on a few examples of things we hash.

BUG=skia:

Review URL: https://codereview.chromium.org/1468483002

8 years agoWhitespace change to trigger android automerger
Derek Sollenberger [Tue, 24 Nov 2015 13:32:36 +0000 (08:32 -0500)]
Whitespace change to trigger android automerger

Review URL: https://codereview.chromium.org/1473233002 .

8 years agoAppeasing the compilers
egdaniel [Mon, 23 Nov 2015 23:29:36 +0000 (15:29 -0800)]
Appeasing the compilers

NOTRY=True
NOTREECHECKS=True

TBR=robertphillips@google.com

BUG=skia:

Review URL: https://codereview.chromium.org/1471143002

8 years agoFix for recent SrcOver XP Change
egdaniel [Mon, 23 Nov 2015 23:12:23 +0000 (15:12 -0800)]
Fix for recent SrcOver XP Change

NOTREECHECKS=True
NOTRY=True

BUG=skia:

Review URL: https://codereview.chromium.org/1473443004

8 years agoMake stencil and cover path rendering have more reasonable bounds.
bsalomon [Mon, 23 Nov 2015 22:25:19 +0000 (14:25 -0800)]
Make stencil and cover path rendering have more reasonable bounds.

BUG=skia:

Review URL: https://codereview.chromium.org/1471883002

8 years agoRemove unecessary GetGlyphIdMetrics call
joshualitt [Mon, 23 Nov 2015 22:09:55 +0000 (14:09 -0800)]
Remove unecessary GetGlyphIdMetrics call

BUG=skia:

Review URL: https://codereview.chromium.org/1467133003

8 years agoMove command line print above parse in VisualBench
joshualitt [Mon, 23 Nov 2015 21:57:46 +0000 (13:57 -0800)]
Move command line print above parse in VisualBench

TBR=bsalomon@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/1467383003

8 years agoDon't create a GXPFactory when blend is SrcOver
egdaniel [Mon, 23 Nov 2015 21:20:41 +0000 (13:20 -0800)]
Don't create a GXPFactory when blend is SrcOver

BUG=skia:

Review URL: https://codereview.chromium.org/1471053002

8 years agoMove GrAtlasTextBatch blob regeneration to template
joshualitt [Mon, 23 Nov 2015 21:08:22 +0000 (13:08 -0800)]
Move GrAtlasTextBatch blob regeneration to template

This will remove the runtime branches.  I don't think it makes the
code any harder to read either

BUG=skia:

Review URL: https://codereview.chromium.org/1466333003

8 years agoscaling API on SkPixmap
reed [Mon, 23 Nov 2015 20:32:16 +0000 (12:32 -0800)]
scaling API on SkPixmap

BUG=skia:4481

Review URL: https://codereview.chromium.org/1463373002

8 years agoAdd stroking support to distance field path renderer
jvanverth [Mon, 23 Nov 2015 19:50:02 +0000 (11:50 -0800)]
Add stroking support to distance field path renderer

Also slightly increases sizes of paths accepted for distance field
caching.

Committed: https://skia.googlesource.com/skia/+/5ce76efd1c847308c7bcac17bd87d567c42cd786

Committed: https://skia.googlesource.com/skia/+/73ee6770260dbeeabc4a78eee4f13533f0031211

Review URL: https://codereview.chromium.org/1460873002