platform/upstream/libSkiaSharp.git
9 years agoNo longer using non-antialiased fast path for lines when antialiasing is on.
ethannicholas [Fri, 17 Jul 2015 13:44:02 +0000 (06:44 -0700)]
No longer using non-antialiased fast path for lines when antialiasing is on.

BUG=skia:3776

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

9 years agoRemoving GrTemplates.h
joshualitt [Fri, 17 Jul 2015 13:40:29 +0000 (06:40 -0700)]
Removing GrTemplates.h

BUG=skia:

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

9 years agoCleanup of GrFontDescKey
joshualitt [Fri, 17 Jul 2015 13:19:19 +0000 (06:19 -0700)]
Cleanup of GrFontDescKey

BUG=skia:

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

9 years agoRevert of guard to remove DrawBitmapRectFlags (patchset #1 id:1 of https://codereview...
scroggo [Fri, 17 Jul 2015 12:57:34 +0000 (05:57 -0700)]
Revert of guard to remove DrawBitmapRectFlags (patchset #1 id:1 of https://codereview.chromium.org/1235393003/)

Reason for revert:
breaking android framework build

Original issue's description:
> guard to remove DrawBitmapRectFlags
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/6fb0b6779e40ce05c20cf279f0ecff31fa3cd60d

TBR=fmalita@chromium.org,djsollen@google.com,reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

9 years agoRevert of Add fast normalize for SkLightingImageFilter. (patchset #2 id:20001 of...
reed [Thu, 16 Jul 2015 23:02:39 +0000 (16:02 -0700)]
Revert of Add fast normalize for SkLightingImageFilter. (patchset #2 id:20001 of https://codereview.chromium.org/1240023002/)

Reason for revert:
Speculative revert -- DEPS roll block on linux_blink_rel

https://storage.googleapis.com/chromium-layout-test-archives/linux_blink_rel/71483/layout-test-results/results.html

Original issue's description:
> Add fast normalize for SkLightingImageFilter.
>
> The normalize routine in SkPoint3 is very robust. However, for simple
> lighting cases we prefer speed over robustness. This fixes a perf
> regression in smoothness.tough_filters_cases.
>
> BUG=chromium:510562
>
> Committed: https://skia.googlesource.com/skia/+/dfa0ecf169db87f7afddd93bc1c500de481a62c7

TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,jvanverth@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:510562

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

9 years agoNow that the SkImageFilter::CropRect crop edges refer to
senorblanco [Thu, 16 Jul 2015 22:19:11 +0000 (15:19 -0700)]
Now that the SkImageFilter::CropRect crop edges refer to
width & height, name them appropriately.

BUG=240827

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

9 years agoFix visual bench memory leak
joshualitt [Thu, 16 Jul 2015 21:23:22 +0000 (14:23 -0700)]
Fix visual bench memory leak

BUG=skia:

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

9 years agomake glyph_pos imageblur* largeglyphblur portable
caryclark [Thu, 16 Jul 2015 21:16:04 +0000 (14:16 -0700)]
make glyph_pos imageblur* largeglyphblur portable

R=reed@google.com,bungeman@google.com

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

9 years agoSmall fix for visualbench
joshualitt [Thu, 16 Jul 2015 20:40:51 +0000 (13:40 -0700)]
Small fix for visualbench

BUG=skia:

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

9 years agorefactor code to apply the croprect
reed [Thu, 16 Jul 2015 20:17:13 +0000 (13:17 -0700)]
refactor code to apply the croprect

BUG=skia:

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

9 years agoAdd fast normalize for SkLightingImageFilter.
jvanverth [Thu, 16 Jul 2015 19:56:46 +0000 (12:56 -0700)]
Add fast normalize for SkLightingImageFilter.

The normalize routine in SkPoint3 is very robust. However, for simple
lighting cases we prefer speed over robustness. This fixes a perf
regression in smoothness.tough_filters_cases.

BUG=chromium:510562

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

9 years agoStop running image tests on msaa.
scroggo [Thu, 16 Jul 2015 19:36:10 +0000 (12:36 -0700)]
Stop running image tests on msaa.

Blacklist all image tests on msaa. We do not run them anyway (since
they will not do anything interestingly different from drawing to the
raster backend) - we early exit from Src::draw(), but we still need to
create a render target that matches the size of the image (when not
blacklisted).

Remove the more specific blacklist of a particular image, which is
covered by this one.

BUG=skia:4045

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

9 years agomake imagefilters* imagemagnifier imageresizetiled portable
caryclark [Thu, 16 Jul 2015 19:35:58 +0000 (12:35 -0700)]
make imagefilters* imagemagnifier imageresizetiled portable

TBR=reed@google.com

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

9 years agoRevert of Remove rt flags that are not necessary (patchset #1 id:1 of https://coderev...
bsalomon [Thu, 16 Jul 2015 17:00:28 +0000 (10:00 -0700)]
Revert of Remove rt flags that are not necessary (patchset #1 id:1 of https://codereview.chromium.org/1226123012/)

Reason for revert:
breaks tests, e.g.
https://build.chromium.org/p/client.skia.android/builders/Test-Android-GCC-Nexus9-GPU-TegraK1-Arm64-Release/builds/752/steps/dm/logs/stdio

Original issue's description:
> Remove rt flags that are not necessary
>
> Committed: https://skia.googlesource.com/skia/+/b6b0a6ef179f4143c94ba7e0e1be6e7ce4b0a23a

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

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

9 years agoRemove rt flags that are not necessary
bsalomon [Thu, 16 Jul 2015 16:34:57 +0000 (09:34 -0700)]
Remove rt flags that are not necessary

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

9 years agoAll batches do their own pipeline compare
joshualitt [Thu, 16 Jul 2015 16:13:50 +0000 (09:13 -0700)]
All batches do their own pipeline compare

BUG=skia:

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

9 years agoMake readpixels work on GrTextures
bsalomon [Thu, 16 Jul 2015 15:23:13 +0000 (08:23 -0700)]
Make readpixels work on GrTextures

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

9 years agoGive GrBatch a pointer to GrPipeline
joshualitt [Thu, 16 Jul 2015 15:12:45 +0000 (08:12 -0700)]
Give GrBatch a pointer to GrPipeline

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/1170a12839218f7a23c93487bf95fd83aae0201f

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

9 years agoVarious GL testing fixes
jvanverth [Thu, 16 Jul 2015 14:46:07 +0000 (07:46 -0700)]
Various GL testing fixes

Check for GL context when printing NVPR error string.
Fix some indenting.

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

9 years agohave canvas send discard instead of retain if the draw would overwrite everything
reed [Thu, 16 Jul 2015 14:40:45 +0000 (07:40 -0700)]
have canvas send discard instead of retain if the draw would overwrite everything

Motivation:
- perf win for clients that overwrite the surface after a snapshot.
- may allow us to eliminate SkDeferredCanvas, as this was its primary advantage.

BUG=skia:

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

9 years agoRevert of Give GrBatch a pointer to GrPipeline (patchset #1 id:1 of https://coderevie...
joshualitt [Thu, 16 Jul 2015 14:16:53 +0000 (07:16 -0700)]
Revert of Give GrBatch a pointer to GrPipeline (patchset #1 id:1 of https://codereview.chromium.org/1237283007/)

Reason for revert:
breaking nanobench

Original issue's description:
> Give GrBatch a pointer to GrPipeline
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/1170a12839218f7a23c93487bf95fd83aae0201f

TBR=bsalomon@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

9 years agoGive GrBatch a pointer to GrPipeline
joshualitt [Thu, 16 Jul 2015 14:06:50 +0000 (07:06 -0700)]
Give GrBatch a pointer to GrPipeline

BUG=skia:

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

9 years agoincrease gm offsetimagefilter stroke width
caryclark [Thu, 16 Jul 2015 14:06:46 +0000 (07:06 -0700)]
increase gm offsetimagefilter stroke width

With a hairline width, offsetimagefilter fails to draw the
rectangle on some platforms. Make the width 2 so that it
shows up everywhere.

TBR=reed@google.com

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

9 years agoCoverage script: fix missing data
borenet [Thu, 16 Jul 2015 14:01:44 +0000 (07:01 -0700)]
Coverage script: fix missing data

BUG=skia:2430

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

9 years agoReplace buggy_blend_modes GM with an exhaustive test.
mtklein [Thu, 16 Jul 2015 14:01:39 +0000 (07:01 -0700)]
Replace buggy_blend_modes GM with an exhaustive test.

The new test is disabled by default, as it's quite slow.
We can run it if we suspect problems by passing -x to DM.

This test would have been failing before the bug fix, and now is passing.

Assuming the Priv on the end means it's not considered public API...
TBR=reed@google.com

BUG=skia:4052

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

9 years agoguard to remove DrawBitmapRectFlags
reed [Thu, 16 Jul 2015 13:10:02 +0000 (06:10 -0700)]
guard to remove DrawBitmapRectFlags

BUG=skia:

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

9 years agomake *imagefilter morphology iamge bitmapsource gm portable
caryclark [Wed, 15 Jul 2015 21:23:50 +0000 (14:23 -0700)]
make *imagefilter morphology iamge bitmapsource gm portable

TBR=reed@google.com

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

9 years agomake strokefill gm portable
caryclark [Wed, 15 Jul 2015 21:03:12 +0000 (14:03 -0700)]
make strokefill gm portable

Convert the Mac-specific font text statically into
paths so that they draw the same on all platforms.

Add drawing portable text using the fake bold paint
setting so that the code path is tested everywhere
and but draws the same thing.

R=reed@google.com

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

9 years agorename utility to see if a paint will overwrite its pixels
reed [Wed, 15 Jul 2015 20:42:32 +0000 (13:42 -0700)]
rename utility to see if a paint will overwrite its pixels

BUG=skia:

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

9 years agoAdded GLVec4ScalarBench that doesn't use VAOs
wangyix [Wed, 15 Jul 2015 19:26:07 +0000 (12:26 -0700)]
Added GLVec4ScalarBench that doesn't use VAOs

BUG=skia:

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

9 years agomake gradtext quadpaths gm portable
caryclark [Wed, 15 Jul 2015 18:57:00 +0000 (11:57 -0700)]
make gradtext quadpaths gm portable

TBR=reed@google.com

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

9 years agoFix leak in Android FontMgr test.
bungeman [Wed, 15 Jul 2015 18:29:25 +0000 (14:29 -0400)]
Fix leak in Android FontMgr test.

FontMgrAndroidParserTest deos not free the font families it creates.
This issue was discovered by asan when enabling this test on Linux
platforms.

9 years agoAllow Android font manager on *nix.
bungeman [Wed, 15 Jul 2015 17:58:47 +0000 (10:58 -0700)]
Allow Android font manager on *nix.

There is nothing left in the SkFontMgr_android.cpp which is specific
to Android, so allow it to be built and used on *nix platforms. This
allows for easier development and testing.

The only reason to limit to *nix platforms are the dependencies on
Expat and FreeType. This should be buildable and runnable on other
platforms when these dependencies are also available.

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

9 years agoFix for android command line arguments to VisualBench
joshualitt [Wed, 15 Jul 2015 17:17:20 +0000 (10:17 -0700)]
Fix for android command line arguments to VisualBench

BUG=skia:

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

9 years agoOnly run test_wrapped_resources() when GL is active
jvanverth [Wed, 15 Jul 2015 17:16:56 +0000 (10:16 -0700)]
Only run test_wrapped_resources() when GL is active

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

9 years agoDon't upload texture smaller than the min texture size when stretching a bmp up to...
bsalomon [Wed, 15 Jul 2015 17:12:16 +0000 (10:12 -0700)]
Don't upload texture smaller than the min texture size when stretching a bmp up to a POT

BUG=skia:3932

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

9 years agomake colorwheelnative displacement dropshadowimagefilter getposttextpath gm portable
caryclark [Wed, 15 Jul 2015 16:29:32 +0000 (09:29 -0700)]
make colorwheelnative displacement dropshadowimagefilter getposttextpath gm portable

TBR=reed@google.com

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

9 years agomake path-reverse gm portable
caryclark [Wed, 15 Jul 2015 15:58:12 +0000 (08:58 -0700)]
make path-reverse gm portable

Put font glyph data in test as path
instead of getting data from the Mac
font. THe font may change, and is
not available on most platforms.

Also remove unreachable code.

R=reed@google.com

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

9 years agoMatch works correctly on visualbench
joshualitt [Wed, 15 Jul 2015 15:38:02 +0000 (08:38 -0700)]
Match works correctly on visualbench

BUG=skia:

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

9 years agoexperimental: remove old PDF benchmarking tools
halcanary [Wed, 15 Jul 2015 15:06:29 +0000 (08:06 -0700)]
experimental: remove old PDF benchmarking tools

TBR=

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

9 years agollvm-coverage script: respect SKIA_OUT
borenet [Wed, 15 Jul 2015 14:43:06 +0000 (07:43 -0700)]
llvm-coverage script: respect SKIA_OUT

NOTRY=true
BUG=skia:2430

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

9 years agoFix undefined behavior.
herb [Wed, 15 Jul 2015 14:40:37 +0000 (07:40 -0700)]
Fix undefined behavior.

BUG=skia:4050

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

9 years agoOptimize RGB16 blitV functions with NEON for ARM platform.
yang.zhang [Wed, 15 Jul 2015 14:07:30 +0000 (07:07 -0700)]
Optimize RGB16 blitV functions with NEON for ARM platform.

Here are some performance resultsi on Nexus 9:
SkRGB16BlitterBlitV_neon:
+--------+-----------+
|height  |  C/NEON   |
+--------+-----------+
|1       | 0.765230  |
+--------+-----------+
|8       | 1.273330  |
+--------+-----------+
|18      | 1.441462  |
+--------+-----------+
|32      | 1.627798  |
+--------+-----------+
|76      | 1.683131  |
+--------+-----------+
|85      | 1.679456  |
+--------+-----------+
|120     | 1.721311  |
+--------+-----------+
|128     | 1.725482  |
+--------+-----------+
|512     | 1.784117  |
+--------+-----------+

BUG=skia:

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

9 years agoRevert of Added a GLBench for testing performance of vec4 vs scalar for coverage...
scroggo [Wed, 15 Jul 2015 13:36:42 +0000 (06:36 -0700)]
Revert of Added a GLBench for testing performance of vec4 vs scalar for coverage in generated shaders. (patchset #6 id:90001 of https://codereview.chromium.org/1225383002/)

Reason for revert:
Still failing on Windows. e.g. https://uberchromegw.corp.google.com/i/client.skia/builders/Perf-Win8-MSVC-ShuttleB-GPU-HD4600-x86_64-Release-ANGLE/builds/231/steps/nanobench/logs/stdio

skbug.com/4053

Original issue's description:
> Added a glBench for testing performance of vec4 vs scalar coverage in generated shaders.
>
> Added bench for timing vec4 vs scalar type for coverage in shaders
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/6104ced165f17eb2f765ace354d5895c0bc890c5
>
> Committed: https://skia.googlesource.com/skia/+/c734e69e8cf94bacaf68d3d8ee3310d1ad1fe8b8

TBR=joshualitt@google.com,tomhudson@google.com,wangyix@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

9 years agoFix VisualBench to hold onto a surface
joshualitt [Wed, 15 Jul 2015 13:18:57 +0000 (06:18 -0700)]
Fix VisualBench to hold onto a surface

BUG=skia:

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

9 years agomake linepaths gm portable
caryclark [Wed, 15 Jul 2015 13:18:47 +0000 (06:18 -0700)]
make linepaths gm portable

TBR=reed@google.com

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

9 years agoremove funkster from dcshader gm
caryclark [Wed, 15 Jul 2015 12:43:38 +0000 (05:43 -0700)]
remove funkster from dcshader gm

The multicolored font that funster enables
only draws and measures on some platforms.

Removing it from the dcshader gm allows
the layout to be uniform on all devices,
making it easier to compare the output
in gold.

TBR=bsalomon@google.com

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

9 years agoDocument new CQ keyword
rmistry [Wed, 15 Jul 2015 11:40:54 +0000 (04:40 -0700)]
Document new CQ keyword

BUG=skia:
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1237693005
TBR=jcgregorio

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

9 years agoFixed valgrind issues with libjpeg-turbo
msarett [Tue, 14 Jul 2015 21:39:59 +0000 (14:39 -0700)]
Fixed valgrind issues with libjpeg-turbo

The fixes are in the updated libjpeg-turbo repository
pulled in by DEPS.  The fixes are detailed in the linked
skia bug.  To summarize briefly, we now use calloc()
instead of malloc().

BUG=skia:4030

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

9 years agoUpdated PDFViewer drawImageRect() overrides
fmalita [Tue, 14 Jul 2015 21:15:08 +0000 (14:15 -0700)]
Updated PDFViewer drawImageRect() overrides

R=reed@google.com

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

9 years agoLet Android use old version of onDrawBitmapRect.
scroggo [Tue, 14 Jul 2015 20:59:10 +0000 (13:59 -0700)]
Let Android use old version of onDrawBitmapRect.

Define SK_SUPPORT_LEGACY_ONDRAWIMAGERECT when building for the
Android framework, since SkiaCanvasProxy overrides the old version
of the method.

Fixes master-skia build.

NOTRY=True

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

9 years agoFix buggy blend modes.
mtklein [Tue, 14 Jul 2015 20:38:28 +0000 (13:38 -0700)]
Fix buggy blend modes.

The problem turns out to be not over- or underflow like I thought, but that I used different math for x*y/255 for alphas and colors, sometimes resulting in colors where alpha was one less than the maximum color component, which is not a valid SkPMColor.

To be safe, I've switched over all four of these similar complex modes to use exact math everywhere.  They now match the byte-by-byte code in SkXfermode.cpp exactly.

This will slow down Darken and Lighten by about 2x.  I plan to follow up with a CL to see if I can eek out some speed there, and another CL to add asserts that Sk4px code always writes valid SkPMColors.

BUG=skia:4052

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

9 years agoPreserve SKP cullrects on deserialization
fmalita [Tue, 14 Jul 2015 20:12:25 +0000 (13:12 -0700)]
Preserve SKP cullrects on deserialization

Let's not ignore the offset.

R=reed@google.com,mtklein@google.com

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

9 years agoVery tiny paths are subsumed by the Convexicator
caryclark [Tue, 14 Jul 2015 18:19:26 +0000 (11:19 -0700)]
Very tiny paths are subsumed by the Convexicator
and are treated as convex when they are not.

Allow the SkPath::Iter to leave degenerate path
segments unmolested by passing an additional exact
bool to next().

Treat any non-zero length as significant in addPt().

R=reed@google.com,robertphillips@google.com
BUG=493450

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

9 years agoRemove GrRedBlackTree
joshualitt [Tue, 14 Jul 2015 18:07:53 +0000 (11:07 -0700)]
Remove GrRedBlackTree

BUG=skia:

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

9 years agoRename backing texture testing routines
jvanverth [Tue, 14 Jul 2015 18:02:52 +0000 (11:02 -0700)]
Rename backing texture testing routines

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

9 years agoAnother trivial cleanup
joshualitt [Tue, 14 Jul 2015 18:02:45 +0000 (11:02 -0700)]
Another trivial cleanup

TBR=bsalomon@google.com
BUG=skia:

Committed: https://skia.googlesource.com/skia/+/52e7657cd850f95e66eb23c6d138ee45149a1039

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

9 years agoDisable optimization as HWUI does not yet support color shaders.
djsollen [Tue, 14 Jul 2015 17:59:28 +0000 (10:59 -0700)]
Disable optimization as HWUI does not yet support color shaders.

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

9 years agoImplement support for CHROMIUM_path_rendering pseudo extension
kkinnunen [Tue, 14 Jul 2015 17:59:23 +0000 (10:59 -0700)]
Implement support for CHROMIUM_path_rendering pseudo extension

Implement support for path rendering in Chromium through
CHROMIUM_path_rendering pseudo extension.

The extension defines a new pseudo-gl function,
BindFragmentInputLocation. This behaves similarly to the
BindUniformLocation pseudo-gl function. The idea is to assign fragment
input location to a fragment input before linking the program.

BUG=chromium:344330

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

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

9 years ago3-15% speedup to HardLight / Overlay xfermodes.
mtklein [Tue, 14 Jul 2015 17:54:19 +0000 (10:54 -0700)]
3-15% speedup to HardLight / Overlay xfermodes.

While investigating my bug (skia:4052) I saw this TODO and figured
it'd make me feel better about an otherwise unsuccessful investigation.

This speeds up HardLight and Overlay (same code) by about 15% with SSE, mostly
by rewriting the logic from 1 cheap comparison and 2 expensive div255() calls
to 2 cheap comparisons and 1 expensive div255().

NEON speeds up by a more modest ~3%.

BUG=skia:

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

9 years agoadd src-rect-constraint to drawImageRect
reed [Tue, 14 Jul 2015 17:54:12 +0000 (10:54 -0700)]
add src-rect-constraint to drawImageRect

Follow-on work
- unify around SrcRectConstraint (i.e. drawBitmapRect)
- remove silly drawBitmapRectToRect alias
- clean-up (possibly remove) alias problems around drawBitmapRect + IRect parameter

BUG=skia:

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

9 years agoAdd a GYP flag to define SKNX_NO_SIMD when set.
mtklein [Tue, 14 Jul 2015 12:52:52 +0000 (05:52 -0700)]
Add a GYP flag to define SKNX_NO_SIMD when set.

Will use this with a new -SKNX_NO_SIMD bot.

BUG=skia:

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

9 years agoFix typo in non-SIMD Sk4f::thenElse().
mtklein [Tue, 14 Jul 2015 12:23:50 +0000 (05:23 -0700)]
Fix typo in non-SIMD Sk4f::thenElse().

This was causing the 3 xfermodes that use floats and conditionals
to draw wrong when SKNX_NO_SIMD was defined.

BUG=skia:4051

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

9 years agoRevert of Another trivial cleanup (patchset #6 id:100001 of https://codereview.chromi...
joshualitt [Mon, 13 Jul 2015 20:29:13 +0000 (13:29 -0700)]
Revert of Another trivial cleanup (patchset #6 id:100001 of https://codereview.chromium.org/1229303003/)

Reason for revert:
breaking things

Original issue's description:
> Another trivial cleanup
>
> TBR=bsalomon@google.com
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/52e7657cd850f95e66eb23c6d138ee45149a1039

TBR=robertphillips@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

9 years agoAdd new SkPoint3 class
robertphillips [Mon, 13 Jul 2015 20:16:44 +0000 (13:16 -0700)]
Add new SkPoint3 class

The existing Light filter and the upcoming Lighting Shader both need a Point3 class

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

9 years agoAnother trivial cleanup
joshualitt [Mon, 13 Jul 2015 20:11:40 +0000 (13:11 -0700)]
Another trivial cleanup

TBR=bsalomon@google.com
BUG=skia:

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

9 years agoAdded a glBench for testing performance of vec4 vs scalar coverage in generated shaders.
wangyix [Mon, 13 Jul 2015 20:09:17 +0000 (13:09 -0700)]
Added a glBench for testing performance of vec4 vs scalar coverage in generated shaders.

Added bench for timing vec4 vs scalar type for coverage in shaders

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/6104ced165f17eb2f765ace354d5895c0bc890c5

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

9 years agoGet rid of GrMurmur3Hash
joshualitt [Mon, 13 Jul 2015 19:49:13 +0000 (12:49 -0700)]
Get rid of GrMurmur3Hash

BUG=skia:

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

9 years agouse portable typeface
caryclark [Mon, 13 Jul 2015 19:08:45 +0000 (12:08 -0700)]
use portable typeface

TBR=reed@google.com

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

9 years agoAdd a GM that reproduces layout test failures with my new xfermode code.
mtklein [Mon, 13 Jul 2015 19:06:33 +0000 (12:06 -0700)]
Add a GM that reproduces layout test failures with my new xfermode code.

Inspired by https://storage.googleapis.com/chromium-layout-test-archives/linux_blink_rel/69169/layout-test-results/results.html

I think the root cause is overflow.

Also, adds tests for Sk16b::operator<().  It wasn't wrong, but it was suspect
(used in all three of these xfermode implementations) and so it's best to have
tests.

BUG=skia:

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

9 years agoRevert of Added a GLBench for testing performance of vec4 vs scalar for coverage...
scroggo [Mon, 13 Jul 2015 19:03:39 +0000 (12:03 -0700)]
Revert of Added a GLBench for testing performance of vec4 vs scalar for coverage in generated shaders. (patchset #4 id:40002 of https://codereview.chromium.org/1225383002/)

Reason for revert:
This is breaking a buildbot. See https://chromegw.corp.google.com/i/client.skia/builders/Test-Win8-MSVC-ShuttleB-GPU-HD4600-x86_64-Debug-ANGLE/builds/172/steps/nanobench/logs/stdio

We get the following error: ERROR::SHADER::COMPLIATION_FAILED: ERROR: 0:8: '0.f' : Floating-point suffix unsupported prior to GLSL ES 3.00
ERROR: 0:8: '0.f' : syntax error

Original issue's description:
> Added a glBench for testing performance of vec4 vs scalar coverage in generated shaders.
>
> Added bench for timing vec4 vs scalar type for coverage in shaders
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/6104ced165f17eb2f765ace354d5895c0bc890c5

TBR=joshualitt@google.com,tomhudson@google.com,wangyix@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

9 years agoAdded a glBench for testing performance of vec4 vs scalar coverage in generated shaders.
wangyix [Mon, 13 Jul 2015 17:46:34 +0000 (10:46 -0700)]
Added a glBench for testing performance of vec4 vs scalar coverage in generated shaders.

Added bench for timing vec4 vs scalar type for coverage in shaders

BUG=skia:

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

9 years agoFix for partially-specified crop rects.
senorblanco [Mon, 13 Jul 2015 17:27:05 +0000 (10:27 -0700)]
Fix for partially-specified crop rects.

When only the left or top edge of a crop rect is given, the
right and bottom should be computed based on the incoming width
and height, not based on the crop rect's width & height. This
complies more accurately with SVG semantics.

BUG=240827

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

9 years agosmall cleanups after fixing const of GrPipelineBuilder on DrawTarget
joshualitt [Mon, 13 Jul 2015 16:36:41 +0000 (09:36 -0700)]
small cleanups after fixing const of GrPipelineBuilder on DrawTarget

Fuse AutoRestoreFragmentProcessors and AutoRestoreProcessorDataManager into new AutoRestoreFragmentProcessorState class

BUG=skia:

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

9 years agoAdd GrNonAtomicRef
joshualitt [Mon, 13 Jul 2015 16:29:42 +0000 (09:29 -0700)]
Add GrNonAtomicRef

BUG=skia:

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

9 years agoreenabled GrAALinearizingConvexPathRenderer, but only for stroked paths
ethannicholas [Mon, 13 Jul 2015 15:51:36 +0000 (08:51 -0700)]
reenabled GrAALinearizingConvexPathRenderer, but only for stroked paths

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

9 years agoovals now take a const GrPipelineBuilder
joshualitt [Mon, 13 Jul 2015 15:44:06 +0000 (08:44 -0700)]
ovals now take a const GrPipelineBuilder

BUG=skia:

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

9 years agomake gm text and colors portable
caryclark [Mon, 13 Jul 2015 15:19:58 +0000 (08:19 -0700)]
make gm text and colors portable

TBR=reed@google.com

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

9 years agoDo not attempt to scale webp.
scroggo [Mon, 13 Jul 2015 15:17:00 +0000 (08:17 -0700)]
Do not attempt to scale webp.

Scaling webp ends triggers warnings on our valgrind bot. It also results in
generating many images in Skia Gold that look mostly the same except
for a few pixels along the right edge.

BUG=skia:4038

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

9 years agoTweak GYP to also link with XCode 7.
mtklein [Mon, 13 Jul 2015 15:13:03 +0000 (08:13 -0700)]
Tweak GYP to also link with XCode 7.

Using the XCode 7 beta, the file in the GYP doesn't exist, instead we get

/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib/libz.tbd

which is a text file describing libz and pointing to /usr/lib/libz.1.dylib.

There's a weird easy fix, which is that GYP looks for things in libraries like 'libz.dylib' and pattern match translates that to '-lz' on the command line.  (Infuriatingly, a literal '-lz' is interpreted as a file path...)

BUG=skia:

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

9 years agoStart to propagate constness of GrPipelineBuilder up the stack
joshualitt [Mon, 13 Jul 2015 15:08:25 +0000 (08:08 -0700)]
Start to propagate constness of GrPipelineBuilder up the stack

BUG=skia:

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

9 years agoModify GrClipMaskManager to reflect logical constness
joshualitt [Mon, 13 Jul 2015 14:35:05 +0000 (07:35 -0700)]
Modify GrClipMaskManager to reflect logical constness

TBR=bsalomon@google.com
BUG=skia:

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

9 years agoRemove GL-specific code from GMs and tests
jvanverth [Mon, 13 Jul 2015 14:19:57 +0000 (07:19 -0700)]
Remove GL-specific code from GMs and tests

TBR=bsalomon@google.com

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

9 years agoRevert of Whitespace change to test Skia's new bugdroid configuration (patchset ...
rmistry [Mon, 13 Jul 2015 14:09:26 +0000 (07:09 -0700)]
Revert of Whitespace change to test Skia's new bugdroid configuration (patchset #1 id:1 of https://codereview.chromium.org/1237653002/)

Reason for revert:
More testing of bugdroid

Original issue's description:
> Whitespace change to test Skia's new bugdroid configuration
>
> BUG=chromium:509664
> NOTRY=true
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/17708398145a8ef9a7d905e2ec14017ee688f4ae

TBR=
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:509664

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

9 years agoRevert of Bilinear optimization for 1D convolution. (patchset #5 id:200001 of https...
scroggo [Mon, 13 Jul 2015 14:06:45 +0000 (07:06 -0700)]
Revert of Bilinear optimization for 1D convolution. (patchset #5 id:200001 of https://codereview.chromium.org/1216623003/)

Reason for revert:
Breaks MSAA

Original issue's description:
> Bilinear optimization for 1D convolution.
>
> Splits GrGLConvolutionEffect into GrGLBilerpConvolutionEffect and
> GrGLBoundedConvolutionEffect. When doing a non-bounded convolution we now
> always use the GrGLBilerpConvolutionEffect which uses bilinear filtering to
> perform half as many samples in the texture.
>
> BUG=skia:3986
>
> Committed: https://skia.googlesource.com/skia/+/91abe10af417148939548551e210c001022d3bda

TBR=bsalomon@google.com,senorblanco@chromium.org,ericrk@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3986

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

9 years agoWhitespace change to test Skia's new bugdroid configuration
rmistry [Mon, 13 Jul 2015 13:35:15 +0000 (06:35 -0700)]
Whitespace change to test Skia's new bugdroid configuration

BUG=chromium:509664
NOTRY=true
TBR=

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

9 years agoSkia project metadata
nodir [Mon, 13 Jul 2015 13:23:24 +0000 (06:23 -0700)]
Skia project metadata

Added project.cfg metadata file for chrome-infra

R=borenet@google.com, rmistry@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=507723

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

9 years agoFix up -Winconsistent-missing-override
mtklein [Mon, 13 Jul 2015 13:18:39 +0000 (06:18 -0700)]
Fix up -Winconsistent-missing-override

  (and a couple presubmit fixes)

This allows us to turn back on -Werror for LLVM coverage builds,
and more generally supports building with Clang 3.7.

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

BUG=skia:

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

9 years agoUse SK_DECLARE_STATIC_MUTEX for global mutex.
mtklein [Mon, 13 Jul 2015 13:15:36 +0000 (06:15 -0700)]
Use SK_DECLARE_STATIC_MUTEX for global mutex.

This initializes the mutex at link time on non-Windows platforms,
rather than at pre-main-runtime like `static SkMutex gFoo;`

BUG=skia:

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

9 years agoCleanup skia test harness due to changes to DisplayListCanvas
Derek Sollenberger [Mon, 13 Jul 2015 12:47:21 +0000 (08:47 -0400)]
Cleanup skia test harness due to changes to DisplayListCanvas

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

9 years agomake convex poly clip portable
caryclark [Mon, 13 Jul 2015 12:39:47 +0000 (05:39 -0700)]
make convex poly clip portable

TBR=reed@google.com

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

9 years agoUpdate SKP version
skia.buildbots [Sun, 12 Jul 2015 07:19:05 +0000 (00:19 -0700)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=
NO_MERGE_BUILDS

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

9 years agoBilinear optimization for 1D convolution.
ericrk [Fri, 10 Jul 2015 22:05:13 +0000 (15:05 -0700)]
Bilinear optimization for 1D convolution.

Splits GrGLConvolutionEffect into GrGLBilerpConvolutionEffect and
GrGLBoundedConvolutionEffect. When doing a non-bounded convolution we now
always use the GrGLBilerpConvolutionEffect which uses bilinear filtering to
perform half as many samples in the texture.

BUG=skia:3986

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

9 years agoremove some unused stuff
joshualitt [Fri, 10 Jul 2015 21:14:03 +0000 (14:14 -0700)]
remove some unused stuff

BUG=skia:

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

9 years agoadd option to use global mutex-lock in mac-scalercontext
reed [Fri, 10 Jul 2015 19:08:38 +0000 (12:08 -0700)]
add option to use global mutex-lock in mac-scalercontext

BUG=413332

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

9 years agoAllow creating multiple scanline decoders.
scroggo [Fri, 10 Jul 2015 19:07:02 +0000 (12:07 -0700)]
Allow creating multiple scanline decoders.

Make getScanlineDecoder return a new object each time, which is
owned by the caller, and independent from any existing scanline
decoders and the SkCodec itself.

Since the SkCodec already contains the entire state machine, and it
is used by the scanline decoders, simply create a new SkCodec which
is now owned by the scanline decoder.

Move code that cleans up after using a scanline decoder into its
destructor

One side effect is that creating the first scanline decoder requires
a duplication of the stream and re-reading the header. (With some
more complexity/changes, we could pass the state machine to the
scanline decoder and make the SkCodec recreate its own state machine
instead.) The typical client of the scanline decoder (region decoder)
uses an SkMemoryStream, so the duplication is cheap, although we
should consider the extra time to reread the header/recreate the state
machine. (If/when we use the scanline decoder for other purposes,
where the stream may not be cheaply duplicated, we should consider
passing the state machine.)

One (intended) result of this change is that a client can create a
new scanline decoder in a new thread, and decode different pieces of
the image simultaneously.

In SkPngCodec::decodePalette, use fBitDepth rather than a parameter.

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

9 years agoTrivial cleanup
joshualitt [Fri, 10 Jul 2015 18:31:01 +0000 (11:31 -0700)]
Trivial cleanup

TBR=robertphillips@google.com
BUG=skia:

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

9 years agoMove android_gdb_tmp into out/
scroggo [Fri, 10 Jul 2015 18:05:10 +0000 (11:05 -0700)]
Move android_gdb_tmp into out/

This way it will be ignored.

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

9 years agoFix msvs builds
msarett [Fri, 10 Jul 2015 17:59:47 +0000 (10:59 -0700)]
Fix msvs builds

BUG=skia:

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

9 years agoUse the upstream version of libwebp, v0.4.3.
scroggo [Fri, 10 Jul 2015 16:32:09 +0000 (09:32 -0700)]
Use the upstream version of libwebp, v0.4.3.

DEPS:
Update to pull v0.4.3 of libwebp from upstream

gyp/libwebp.gyp:
Add new files, as referenced by the gyp file used by Chromium.

resource/tests:
Add regression tests for particular images.

BUG=skia:3442
BUG=skia:3315
BUG=skia:3429

Committed: https://skia.googlesource.com/skia/+/3aa0fb4d80c76b559ff4b82d5e569993aea06da1

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