platform/upstream/libSkiaSharp.git
8 years agoTest CodecImageGenerator on GPU bots
scroggo [Wed, 3 Feb 2016 14:23:06 +0000 (06:23 -0800)]
Test CodecImageGenerator on GPU bots

In crrev.com/1549473003, CodecImageGenerator implemented getYUV8Planes,
so that we can test on a GPU bot. Update the arguments to DM so that
we run CodecImageGenerator on GPU bots.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1663453002

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

8 years agoFix delete_path in webpages_playback.py
rmistry [Wed, 3 Feb 2016 13:58:31 +0000 (05:58 -0800)]
Fix delete_path in webpages_playback.py

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

# Trybots do not exercise this code.
NOTRY=true

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

8 years agoUse SkBitmapProcStateAutoMapper for filter samplers also
fmalita [Wed, 3 Feb 2016 13:44:21 +0000 (05:44 -0800)]
Use SkBitmapProcStateAutoMapper for filter samplers also

Observation: filter procs are also biased by s.fFilterOne{X,Y} / 2.  They all do
something along these lines:

  s.fInvProc(s.fInvMatrix,
    SkIntToScalar(x) + SK_ScalarHalf,
    SkIntToScalar(y) + SK_ScalarHalf, &srcPt);

  SkFixed fx = SkScalarToFixed(srcPt.fX) - (s.fFilterOneX >> 1);
  SkFixed fy = SkScalarToFixed(srcPt.fY) - (s.fFilterOneX >> 1);

It's trivial to extend SkBitmapProcStateAutoMapper to handle this internally, and
convert everyone off explicit mapping.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1661613002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

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

8 years agoAdd gpu implementation of SkAvoidXfermode
robertphillips [Wed, 3 Feb 2016 13:20:09 +0000 (05:20 -0800)]
Add gpu implementation of SkAvoidXfermode
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1658623002

TBR=bsalomon@google.com

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

8 years agoDelete skp dir in partner bucket before uploading
rmistry [Wed, 3 Feb 2016 12:27:54 +0000 (04:27 -0800)]
Delete skp dir in partner bucket before uploading

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

# Trybots do not exercise this code.
NOTRY=true
TBR=borenet

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

8 years agoUpdate the dng_sdk version. The new version handles the posix_memalign() better
yujieqin [Wed, 3 Feb 2016 08:50:10 +0000 (00:50 -0800)]
Update the dng_sdk version. The new version handles the posix_memalign() better
Remove the '-DNO_POSIX_MEMALIGN'
With this change, most new Android (API>=17) should be able to use posix_memalign()

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

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

8 years agoTemplatize GrNonAtomicRef
cdalton [Wed, 3 Feb 2016 06:46:16 +0000 (22:46 -0800)]
Templatize GrNonAtomicRef

Templatizes GrNonAtomicRef so it does not necessarily require a virtual
destructor. This also gives us the flexibility to specialize how
different types get deleted.

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

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

8 years agoFix for rounded-rect clips with filters.
senorblanco [Wed, 3 Feb 2016 02:44:15 +0000 (18:44 -0800)]
Fix for rounded-rect clips with filters.

Don't use the base canvas size to limit raster of complex clips, since
the top canvas size may actually be larger (e.g., a blur filter which
expands the clip bounds to accommodate filter margins). Use the top
canvas bounds instead.

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

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

8 years agoRevert of Move Google3-specific stack limitation logic to template classes. Remove...
benjaminwagner [Wed, 3 Feb 2016 00:01:39 +0000 (16:01 -0800)]
Revert of Move Google3-specific stack limitation logic to template classes. Remove #ifdefs in other files. (patchset #2 id:50001 of https://codereview.chromium.org/1656143003/ )

Reason for revert:
See https://codereview.chromium.org/1665603002

Original issue's description:
> Move Google3-specific stack limitation logic to template classes. Remove #ifdefs in other files.
>
> Does not change the public API.
>
> TBR=reed
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1656143003
>
> Committed: https://skia.googlesource.com/skia/+/c92159c8250c62cc47b7b63686538d61d54d2835

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

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

8 years agoRecreate SKPs in a single directory for trusted partners.
rmistry [Tue, 2 Feb 2016 21:55:38 +0000 (13:55 -0800)]
Recreate SKPs in a single directory for trusted partners.

Context: https://bugs.chromium.org/p/skia/issues/detail?id=3751#c15

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

# Trybots do not run this code
NOTRY=true
TBR=borenet

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

8 years agoSSSE3 optimizations for gray -> RGBA (or BGRA)
msarett [Tue, 2 Feb 2016 21:41:03 +0000 (13:41 -0800)]
SSSE3 optimizations for gray -> RGBA (or BGRA)

Swizzle Bench Runtime
Dell Venue 8 0.16x
HP z620      0.47x

PNG Decode Time (for test set of gray encoded PNGs)
Dell Venue 8 0.80x
HP z620      0.96x

BUG=skia:4767
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1657393002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

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

8 years agoModify skiaserve to support downloads
joshualitt [Tue, 2 Feb 2016 21:02:33 +0000 (13:02 -0800)]
Modify skiaserve to support downloads

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

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

8 years agoNEON optimizations for gray -> RGBA (or BGRA) conversions
msarett [Tue, 2 Feb 2016 20:59:45 +0000 (12:59 -0800)]
NEON optimizations for gray -> RGBA (or BGRA) conversions

Swizzle Bench Runtime
Nexus 6P 0.32x
Nexus 9  0.89x

PNG Decode Time (for test set of gray encoded PNGs)
Nexus 6P 0.88x
Nexus 9  0.91x

BUG=skia:4767
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1656383002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

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

8 years agoMove Google3-specific stack limitation logic to template classes. Remove #ifdefs...
benjaminwagner [Tue, 2 Feb 2016 20:48:13 +0000 (12:48 -0800)]
Move Google3-specific stack limitation logic to template classes. Remove #ifdefs in other files.

Does not change the public API.

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

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

8 years agoUpdate SK_IMAGE_VERSION to test RAW
scroggo [Tue, 2 Feb 2016 19:56:33 +0000 (11:56 -0800)]
Update SK_IMAGE_VERSION to test RAW

Bump SK_IMAGE_VERSION to test the images in v2 in GoogleStorage, which
includes the images from v1 plus test images for SkRawCodec.

Only define skia_decodes_raw on platforms that support it, rather than
defining it always and checking additional conditions to determine
whether to support raw. Further, define it and SK_CODEC_DECODES_RAW
for all targets, so we can use the compile flag in other targets.

In DM, exclude the raw extensions if SK_CODEC_DECODES_RAW is not defined.

Blacklist raw extensions on NexusPlayer, which was running out of memory
when running them.

BUG=skia:4829

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

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

8 years agoModify skiaserve to support drawTo
joshualitt [Tue, 2 Feb 2016 19:07:39 +0000 (11:07 -0800)]
Modify skiaserve to support drawTo

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

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

8 years agounroll srcover_1 for blending a single color
reed [Tue, 2 Feb 2016 19:00:55 +0000 (11:00 -0800)]
unroll srcover_1 for blending a single color

Before:
curr/maxrss loops min median mean max stddev samples    config bench
   8/8   MB 1 1.59ms 1.82ms 1.89ms 2.59ms 14% ▁█▃▃▃▃▃▃▃▃ nonrendering xfer4f_srcover_1_alpha_linear
   8/8   MB 1 3.25ms 4.25ms 4.16ms 5.87ms 21% ▁▅▂▁▁▄█▄▅▂ nonrendering xfer4f_srcover_1_alpha_srgb

After:
curr/maxrss loops min median mean max stddev samples    config bench
   8/8   MB 1 915µs 915µs 946µs 1.02ms 4% █▄▇▁▁▁▆▁▁▁ nonrendering xfer4f_srcover_1_alpha_linear
   8/8   MB 1 2.69ms 3.08ms 3.03ms 3.63ms 10% ▁▃▂▁▁█▄▄▄▆ nonrendering xfer4f_srcover_1_alpha_srgb

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

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

8 years agoFix SampleApp instructions in the Windows quick-start
brianosman [Tue, 2 Feb 2016 18:59:30 +0000 (10:59 -0800)]
Fix SampleApp instructions in the Windows quick-start

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

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

8 years agoRemove SK_SUPPORT_LEGACY_SAMPLER_BIAS
fmalita [Tue, 2 Feb 2016 18:41:35 +0000 (10:41 -0800)]
Remove SK_SUPPORT_LEGACY_SAMPLER_BIAS

The guard has been removed from Chromium, this is now dead code.

TBR=reed@google.com,caryclark@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1658563002

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

8 years agoSampler bias for all nofilter flavors
fmalita [Tue, 2 Feb 2016 18:17:24 +0000 (10:17 -0800)]
Sampler bias for all nofilter flavors

Instead of a piecemeal approach to sampler bias (http://crrev.com/1642273002,
http://crrev.com/1539083002), audit all nofilter procs (grep "fInvProc(")
and convert them to SkBitmapProcStateAutoMapper.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1656833002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
R=reed@google.com

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

8 years agoincrease inner-loop for xfer4 benches to reduce variance
reed [Tue, 2 Feb 2016 17:27:35 +0000 (09:27 -0800)]
increase inner-loop for xfer4 benches to reduce variance

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

TBR=

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

8 years agosupport for more features when rendering to/from JSON
ethannicholas [Tue, 2 Feb 2016 16:36:58 +0000 (08:36 -0800)]
support for more features when rendering to/from JSON
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1662503003

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

8 years agoFix printfs for Windows and undo speculative test disable
Brian Salomon [Tue, 2 Feb 2016 16:34:46 +0000 (11:34 -0500)]
Fix printfs for Windows and undo speculative test disable

TBR=robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1662533002

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

8 years agoAvoid too small reads to bufferMoreData()
yujieqin [Tue, 2 Feb 2016 16:09:07 +0000 (08:09 -0800)]
Avoid too small reads to bufferMoreData()

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

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

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

8 years agofix skiaserve crash
joshualitt [Tue, 2 Feb 2016 15:37:21 +0000 (07:37 -0800)]
fix skiaserve crash

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

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

8 years agocleanup of skia serve url handling
joshualitt [Tue, 2 Feb 2016 15:16:24 +0000 (07:16 -0800)]
cleanup of skia serve url handling

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

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

8 years agoFix fuzzer-found deserialization bug in SkPathRef
ajuma [Tue, 2 Feb 2016 14:14:47 +0000 (06:14 -0800)]
Fix fuzzer-found deserialization bug in SkPathRef

This fixes a bug in SkPathRef::CreateFromBuffer found by
fuzzing SkPaintImageFilter.

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

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

8 years agoRevert of Avoid too small reads to bufferMoreData() (patchset #4 id:60001 of https...
jcgregorio [Tue, 2 Feb 2016 13:36:34 +0000 (05:36 -0800)]
Revert of Avoid too small reads to bufferMoreData() (patchset #4 id:60001 of https://codereview.chromium.org/1644893003/ )

Reason for revert:
Crashed both Nexus 5s:

  https://build.chromium.org/p/client.skia.android/builders/Perf-Android-GCC-Nexus5-CPU-NEON-Arm7-Release/builds/3355
https://build.chromium.org/p/client.skia.android/builders/Perf-Android-GCC-Nexus5-CPU-NEON-Arm7-Release/builds/3354

Original issue's description:
> Avoid too small reads to bufferMoreData()
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1644893003
>
> Committed: https://skia.googlesource.com/skia/+/fd918e8c739065fa467cf6614181d3a2c5dcadcb

TBR=msarett@google.com,scroggo@google.com,yujieqin@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

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

8 years agoAvoid too small reads to bufferMoreData()
yujieqin [Tue, 2 Feb 2016 09:21:35 +0000 (01:21 -0800)]
Avoid too small reads to bufferMoreData()

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

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

8 years agoSpeculative fix for windows builders
Brian Salomon [Mon, 1 Feb 2016 23:41:58 +0000 (18:41 -0500)]
Speculative fix for windows builders

TBR=robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1651303002

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

8 years agoDisable test that is breaking Android and Windows bots.
Brian Salomon [Mon, 1 Feb 2016 21:44:22 +0000 (16:44 -0500)]
Disable test that is breaking Android and Windows bots.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1654283002
BUG=skia:

R=robertphillips@google.com

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

8 years agoAdd ability to extract YUV planes from SkImage
bsalomon [Mon, 1 Feb 2016 21:16:14 +0000 (13:16 -0800)]
Add ability to extract YUV planes from SkImage

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

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

8 years agoFix GL readback code to handle rowbytes correctly for non-32bit formats
bsalomon [Mon, 1 Feb 2016 20:49:30 +0000 (12:49 -0800)]
Fix GL readback code to handle rowbytes correctly for non-32bit formats

Update tests to exercise more rowbytes.

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

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

8 years agoLook beyond SSE2 for Paeth
mtklein [Mon, 1 Feb 2016 20:20:33 +0000 (12:20 -0800)]
Look beyond SSE2 for Paeth

You can break this CL down into three steps.  Steps 2 and 3 depend on 1.

    Step 1: go to a 16-bit impl.  Speed ~unaffected.
    Step 2: use SSSE3 16-bit abs.  ~20% speedup to Paeth.
    Step 3: use SSE4.1 blendv, total ~25% speedup to Paeth.

Overall this can improve PNG decoding by around 8% end-to-end.

I would feel most comfortable landing this only after we have a bot exercising the SSE4.1 code, either by moving this stuff behind a function pointer (simulating Chrome/Clank) or by adding a builder with at least SSE4.1 at compile time (simulating an Android system build).  We've got plenty of bots building with SSSE3 at compile time to test that path.

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

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

8 years agoMove SkColorMatrixFilter implementation to core.
bsalomon [Mon, 1 Feb 2016 20:09:07 +0000 (12:09 -0800)]
Move SkColorMatrixFilter implementation to core.

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

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

8 years agoadded a default constructor for GrBatchToXPOverrides
ethannicholas [Mon, 1 Feb 2016 19:45:45 +0000 (11:45 -0800)]
added a default constructor for GrBatchToXPOverrides
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1657803002

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

8 years agoFix zero-sized blur with crop rect.
senorblanco [Mon, 1 Feb 2016 18:32:42 +0000 (10:32 -0800)]
Fix zero-sized blur with crop rect.

Neither the GPU nor CPU paths were correctly handling the crop rect
in this case.

NOTE: this change adds a new test case to the imageblurcropped GM, so
it will have to be rebaselined.

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

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

8 years agoUpload SKPs to chrome-partner-telemetry
rmistry [Mon, 1 Feb 2016 18:27:05 +0000 (10:27 -0800)]
Upload SKPs to chrome-partner-telemetry

Context:
https://bugs.chromium.org/p/skia/issues/detail?id=3751#c4
and
https://bugs.chromium.org/p/skia/issues/detail?id=3751#c6

BUG=skia:3751

# Trybots do not run this code.
NOTRY=true
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1658653002

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

8 years agoSkPictureShader cleanup
fmalita [Mon, 1 Feb 2016 17:19:49 +0000 (09:19 -0800)]
SkPictureShader cleanup

Minor cleanup following http://crrev.com/1405103003.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1652943002

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

8 years agoAdd dm to DM_INCLUDES to fix Google3 build.
benjaminwagner [Mon, 1 Feb 2016 17:05:08 +0000 (09:05 -0800)]
Add dm to DM_INCLUDES to fix Google3 build.

It seems that #including a file in the same directory works without the directory being in INCLUDES, but https://codereview.chromium.org/1631053003 #included DMGpuSupport.h from a test.

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

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

8 years agoMake fuzz broadcast when it terminates via return.
kjlubick [Mon, 1 Feb 2016 16:23:50 +0000 (08:23 -0800)]
Make fuzz broadcast when it terminates via return.

This helps analysis figure out things like timeouts and unexpected, uncaught
exits.

TBR=mtkelin@google.com
BUG=skia:4438
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1657743002

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

8 years agofix for GrPorterDuffTest valgrind error
ethannicholas [Mon, 1 Feb 2016 16:07:39 +0000 (08:07 -0800)]
fix for GrPorterDuffTest valgrind error

BUG=skia:4875
TBR=bsalomon@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1656873002

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

8 years agoA variety of SkPngCodec clean-ups
msarett [Mon, 1 Feb 2016 16:03:29 +0000 (08:03 -0800)]
A variety of SkPngCodec clean-ups

(1) Remove #ifdefs that extend support to > 1.2.
Using nullptr everywhere should work on all versions.

(2) Use png_get_valid(tRNS) to check for transparency
It does the same thing we were doing previously in less
work.

(3) Remove image size check
Clients allocate their own memory, and they have the option
to perform scaled and partial decodes.  So we don't need
to arbitrarily fail on large images.

(4) Remove FIXME for subsitute trans color
libpng is already doing this for us.

(5) Remove #ifdef PNG_READ_PACK_SUPPORTED
We don't have a fallback, so we'll fail to compile if this
isn't supported.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643623004
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

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

8 years agoReplace the id<-->key hashmap in SkImageFilter by a SkTArray
xidachen [Mon, 1 Feb 2016 13:27:16 +0000 (05:27 -0800)]
Replace the id<-->key hashmap in SkImageFilter by a SkTArray

In the current implementation, SkImageFilter::Cache maintains a hash map
that maps SkImageFilter's uniqueID to an array of keys, and its purpose
is to remove the values in Cache that are associated with this array of
keys that are indexed by uniqueID. However, maintaining this hash map
causes perf regression to smoothness.tough_filters_cases.

This CL removes the id<-->key hashmap. Instead, we maintain an array of
keys in SkImageFilter. Whenever there is a new key, we push it into the
array. In ~SkImageFilter(), we call Cache::purgeByKeys to remove all the
values that are associated with the keys that are maintained by SkImageFilter.

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

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

8 years agoMove SkPixelXorXfermode.h to include/client/android
robertphillips [Mon, 1 Feb 2016 12:54:14 +0000 (04:54 -0800)]
Move SkPixelXorXfermode.h to include/client/android

This intended to make clients aware that the SkPixelXorXfermode is Android-specific

This needs to land after the Chromium CL https://codereview.chromium.org/1647953006/ (Add include/client/android to skia .gn & .gypi files)

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

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

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

8 years agoFix S32_D32_constX_shaderproc assert
fmalita [Mon, 1 Feb 2016 12:48:39 +0000 (04:48 -0800)]
Fix S32_D32_constX_shaderproc assert

After https://crrev.com/1642273002, fFilterOneY includes a rounding bias
which is not accounted for in the debug-mode S32_D32_constX_shaderproc
check.

Update the S32_D32_constX_shaderproc assert to use the (biased)
SkBitmapProcStateAutoMapper utility.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1655823002
R=reed@google.com
BUG=skia:4874

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

8 years agobatch merge new edges
caryclark [Mon, 1 Feb 2016 12:34:57 +0000 (04:34 -0800)]
batch merge new edges

Find where newly introduced edges go in the edge list once,
then stitch all of them into the edge list.

R=reed@google.com
BUG=573166
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1647223002

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

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

8 years agoSuppress SkBitmapProcState assert temporarily
fmalita [Mon, 1 Feb 2016 11:20:27 +0000 (03:20 -0800)]
Suppress SkBitmapProcState assert temporarily

TBR=jcgregorio@google.com,reed@google.com
BUG=skia:4874
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1658573002

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

8 years agoOnly define NO_POSIX_MEMALIGN for arm
yujieqin [Mon, 1 Feb 2016 10:56:40 +0000 (02:56 -0800)]
Only define NO_POSIX_MEMALIGN for arm

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

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

8 years agoRemove SkDEPRECATED_InstallDiscardablePixelRef from SkPictureShader
fmalita [Mon, 1 Feb 2016 10:34:03 +0000 (02:34 -0800)]
Remove SkDEPRECATED_InstallDiscardablePixelRef from SkPictureShader

Use an SkImage generator/shader instead.

R=reed@google.com

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

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

8 years agoSkNx Load/store: take any pointer.
mtklein [Sun, 31 Jan 2016 16:02:47 +0000 (08:02 -0800)]
SkNx Load/store: take any pointer.

This means we can remove a lot of explicit casts in code that uses SkNx.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1650653002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

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

8 years agoUpdate SKP version
update-skps [Sun, 31 Jan 2016 08:30:55 +0000 (00:30 -0800)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

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

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

8 years agoRemove SkBitmapProcStateAutoMapper's overflow check
fmalita [Sun, 31 Jan 2016 02:56:34 +0000 (18:56 -0800)]
Remove SkBitmapProcStateAutoMapper's overflow check

(follow-up to https://codereview.chromium.org/1642273002)

Add an optional SkPoint outparam, and relocate the overflow check to
the only client which needs it.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1650403002

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

8 years agofloat components in xfermodes
reed [Sun, 31 Jan 2016 02:52:31 +0000 (18:52 -0800)]
float components in xfermodes

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

TBR=mtklein

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

8 years agocombine vertical overlapping edges
caryclark [Sat, 30 Jan 2016 22:07:20 +0000 (14:07 -0800)]
combine vertical overlapping edges

Paths outside clips, and sometimes paths inside clips, devolve
to multiple adjacent or overlapping vertical edges. Combine
these edges when possible to reduce the overall edge count.

R=reed@google.com
BUG=573166
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1654433002

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

8 years agoRevert of batch merge new edges (patchset #1 id:1 of https://codereview.chromium...
msarett [Sat, 30 Jan 2016 18:16:31 +0000 (10:16 -0800)]
Revert of batch merge new edges (patchset #1 id:1 of https://codereview.chromium.org/1647223002/ )

Reason for revert:
Breaks the roll.

Original issue's description:
> batch merge new edges
>
> Find where newly introduced edges go in the edge list once,
> then stitch all of them into the edge list.
>
> R=reed@google.com
> BUG=573166
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1647223002
>
> Committed: https://skia.googlesource.com/skia/+/ae658e15477df86d1a864feb48d0274af2784f40

TBR=reed@google.com,caryclark@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=573166

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

8 years agoadd new tests
caryclark [Sat, 30 Jan 2016 18:11:21 +0000 (10:11 -0800)]
add new tests

These tests are for upcoming changes to optimize
the path edge list.

TBR=reed@google.com
BUG=573166
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1651573002

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

8 years agoAdd sampler bias for the nofilter/translate specializations
fmalita [Sat, 30 Jan 2016 18:06:46 +0000 (10:06 -0800)]
Add sampler bias for the nofilter/translate specializations

Convert SkBitmapProcState::setupForTranslate() to use
SkBitmapProcStateAutoMapper.  This adds bias for the translate procs:
Clamp_S32_D32_nofilter_trans_shaderproc,
Repeat_S32_D32_nofilter_trans_shaderproc

Since the original impl checks for int overflow, extend
SkBitmapProcStateAutoMapper to detect this condition.

BUG=chromium:581870
R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1642273002

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

8 years agoUse proper row step in SkRawCodec
scroggo [Sat, 30 Jan 2016 18:06:11 +0000 (10:06 -0800)]
Use proper row step in SkRawCodec
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643373002

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

8 years agoAdd SkImage factory method that forces image to be resolved to a texture.
bsalomon [Sat, 30 Jan 2016 18:01:40 +0000 (10:01 -0800)]
Add SkImage factory method that forces image to be resolved to a texture.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1631053003

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

8 years agoallow the caller to specified raster-surface rowbytes.
reed [Sat, 30 Jan 2016 18:01:06 +0000 (10:01 -0800)]
allow the caller to specified raster-surface rowbytes.
along the way, simplify how we copy the surface's bitmap

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

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

8 years agobatch merge new edges
caryclark [Sat, 30 Jan 2016 17:59:18 +0000 (09:59 -0800)]
batch merge new edges

Find where newly introduced edges go in the edge list once,
then stitch all of them into the edge list.

R=reed@google.com
BUG=573166
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1647223002

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

8 years agoadded support for PLS path rendering
ethannicholas [Sat, 30 Jan 2016 17:59:10 +0000 (09:59 -0800)]
added support for PLS path rendering

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

Committed: https://skia.googlesource.com/skia/+/7df3f5e127f8016d17b637cc48a6a4718f1a6822

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

8 years agoRevert of Treat bad values passed to --images as a fatal error (patchset #17 id:32000...
scroggo [Fri, 29 Jan 2016 22:41:55 +0000 (14:41 -0800)]
Revert of Treat bad values passed to --images as a fatal error (patchset #17 id:320001 of https://codereview.chromium.org/1611323004/ )

Reason for revert:
Speculative to fix windows bots

Original issue's description:
> Treat bad values passed to --images as a fatal error
>
> If an option is passed to --images that is either a non-existent path or
> a folder with no images matching the supported types, assume this is
> an error and exit, so they can supply a valid path instead.
>
> Share code between DM and nanobench in SkCommonFlags.
>
> nanobench now behaves more like DM - it will check a directory for
> images that match the supported extensions.
>
> Only consider image paths ending in RAW suffixes as images if
> SK_CODE_DECODES_RAW is defined. This prevents us from seeing failure
> to decode errors on platforms that cannot decode it.
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1611323004
>
> Committed: https://skia.googlesource.com/skia/+/7579786f3bd5a8fda84a1abc45b16213c3371f93

TBR=mtklein@google.com,borenet@google.com,msarett@google.com

NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
# Not skipping CQ checks because original CL landed more than 1 days ago.

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

8 years agoRevert of Update SK_IMAGE_VERSION to test RAW (patchset #1 id:1 of https://codereview...
scroggo [Fri, 29 Jan 2016 22:32:32 +0000 (14:32 -0800)]
Revert of Update SK_IMAGE_VERSION to test RAW (patchset #1 id:1 of https://codereview.chromium.org/1612113002/ )

Reason for revert:
https://skia.googlesource.com/skia/+/7579786f3bd5a8fda84a1abc45b16213c3371f93 seems to have caused problems, but it allows us to test RAW. In order to reland this, we'll need to reland that one, or have a simpler fix to disable RAW on platforms where it's not supported (e.g. ChromeOS)

Original issue's description:
> Update SK_IMAGE_VERSION to test RAW
>
> Once https://codereview.chromium.org/1520403003/ lands, we can start
> testing RAW images. I have already added RAW images to a folder named
> v2/; this updates the version so the script (once written) will check
> the new version.
>
> Depends on skbug.com/4558
>
> BUG=skia:4829
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1612113002
>
> Committed: https://skia.googlesource.com/skia/+/317a45e879889f9ed876549a10bbfd51aab41b45

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

# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4829

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

8 years agofix teeny dashed path bug
caryclark [Fri, 29 Jan 2016 17:54:20 +0000 (09:54 -0800)]
fix teeny dashed path bug

If the path dashed is sufficiently small, there may be no
segments generated to dash. Check for an empty segment list.

R=reed@google.com
BUG=skia:4871
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1645613006

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

8 years agoConsolidate SK_CRASH and sk_throw into SK_ABORT
djsollen [Fri, 29 Jan 2016 16:51:04 +0000 (08:51 -0800)]
Consolidate SK_CRASH and sk_throw into SK_ABORT

TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1648343003

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

8 years agoMove SkAvoidXfermode over from Android
robertphillips [Fri, 29 Jan 2016 16:44:17 +0000 (08:44 -0800)]
Move SkAvoidXfermode over from Android

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

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

8 years agofix for skiaserve build error
ethannicholas [Fri, 29 Jan 2016 16:02:34 +0000 (08:02 -0800)]
fix for skiaserve build error
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1651443002

TBR=jcgregorio@google.com

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

8 years agoPrint a message when DM finishes
scroggo [Fri, 29 Jan 2016 15:48:33 +0000 (07:48 -0800)]
Print a message when DM finishes

When running from the command line, it is obvious when DM finishes,
since it brings the prompt back up. But in XCode, it just sits
there, so my glance doesn't let me know that it's finished. Make
it more obvious that DM is done.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1650113002

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

8 years agoadded support for more features in JSON (blurs, dashing, different path fill types...
ethannicholas [Fri, 29 Jan 2016 15:15:08 +0000 (07:15 -0800)]
added support for more features in JSON (blurs, dashing, different path fill types, etc.)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1644903003

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

8 years agoRevert of Move SkPixelXorXfermode.h to include/client/android (patchset #5 id:80001...
robertphillips [Fri, 29 Jan 2016 13:34:26 +0000 (05:34 -0800)]
Revert of Move SkPixelXorXfermode.h to include/client/android (patchset #5 id:80001 of https://codereview.chromium.org/1645093002/ )

Reason for revert:
GN woes

Original issue's description:
> Move SkPixelXorXfermode.h to include/client/android
>
> This intended to make clients aware that the SkPixelXorXfermode is Android-specific
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1645093002
>
> Committed: https://skia.googlesource.com/skia/+/aa9cb62901075e9d2858353cb041e5e6d4719614

TBR=scroggo@google.com,reed@google.com,djsollen@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

8 years agostarter procs for blending with pm4f
reed [Fri, 29 Jan 2016 13:22:59 +0000 (05:22 -0800)]
starter procs for blending with pm4f

curr/maxrss loops min median mean max stddev samples    config bench
   8/8   MB 4 87.1µs 91µs 89.8µs 92µs 2% ▇▇▇▇█▇▅▁▁▁ nonrendering xfer4f_srcover_N_opaque_linear
   9/9   MB 2 196µs 196µs 215µs 383µs 27% ▁▁▁▁█▁▁▁▁▁ nonrendering xfer4f_srcover_N_opaque_srgb
   9/9   MB 1 313µs 313µs 313µs 313µs 0% ▁▄▅▅▅▂████ nonrendering xfer4f_srcover_N_alpha_linear
   9/9   MB 1 580µs 580µs 582µs 602µs 1% ▁▁▁▁▁▁▂▁▁█ nonrendering xfer4f_srcover_N_alpha_srgb
   9/9   MB 23 13.1µs 13.1µs 13.1µs 13.1µs 0% ▆▄▄█▂▂▂▁▂▁ nonrendering xfer4f_srcover_1_opaque_linear
   9/9   MB 23 13.2µs 13.2µs 13.2µs 13.2µs 0% █▄▂▁▃▁▂▂▂▂ nonrendering xfer4f_srcover_1_opaque_srgb
   9/9   MB 2 178µs 183µs 183µs 185µs 1% ▇▇▇█▇▇▇▇▇▁ nonrendering xfer4f_srcover_1_alpha_linear
   9/9   MB 1 517µs 517µs 517µs 517µs 0% ▇█▄▃▄▁▂▁▂▄ nonrendering xfer4f_srcover_1_alpha_srgb

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

TBR=
landing now so these incremental types/functions can be used to collaborate with herb's work. nothing is active at this point

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

8 years agoMove SkPixelXorXfermode.h to include/client/android
robertphillips [Fri, 29 Jan 2016 13:11:14 +0000 (05:11 -0800)]
Move SkPixelXorXfermode.h to include/client/android

This intended to make clients aware that the SkPixelXorXfermode is Android-specific

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

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

8 years agoFix broken Android framework builds
djsollen [Thu, 28 Jan 2016 21:57:02 +0000 (13:57 -0800)]
Fix broken Android framework builds
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1641173003

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

8 years agoSaveFlags begone!
fmalita [Thu, 28 Jan 2016 21:14:53 +0000 (13:14 -0800)]
SaveFlags begone!

This is now dead code (post https://codereview.chromium.org/1636103002).

R=reed@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1648773002

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

8 years agoFix typo on trooper page.
benjaminwagner [Thu, 28 Jan 2016 20:58:02 +0000 (12:58 -0800)]
Fix typo on trooper page.

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

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

8 years agoWork around exasperating Google3 Android build error.
benjaminwagner [Thu, 28 Jan 2016 20:55:31 +0000 (12:55 -0800)]
Work around exasperating Google3 Android build error.

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

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

8 years agoUpdate SK_IMAGE_VERSION to test RAW
scroggo [Thu, 28 Jan 2016 20:30:07 +0000 (12:30 -0800)]
Update SK_IMAGE_VERSION to test RAW

Once https://codereview.chromium.org/1520403003/ lands, we can start
testing RAW images. I have already added RAW images to a folder named
v2/; this updates the version so the script (once written) will check
the new version.

Depends on skbug.com/4558

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

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

8 years agoSkPDF: roll back 53b1c09 and 05b48e2
halcanary [Thu, 28 Jan 2016 18:59:34 +0000 (10:59 -0800)]
SkPDF: roll back 53b1c09 and 05b48e2

See:
https://crrev.com/1552263003
https://crrev.com/1438503002

BUG=skia:257
BUG=skia:734
  BUG=577794

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

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

8 years agotools/git-sync-deps: fix error in git syntax for changing origin
halcanary [Thu, 28 Jan 2016 17:12:52 +0000 (09:12 -0800)]
tools/git-sync-deps: fix error in git syntax for changing origin

Error introduced in https://crrev.com/1475513004

NOTRY=true

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

8 years agoFix SkPixelXorXfermode serialization bug
robertphillips [Thu, 28 Jan 2016 16:50:26 +0000 (08:50 -0800)]
Fix SkPixelXorXfermode serialization bug

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

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

8 years agoTreat bad values passed to --images as a fatal error
scroggo [Thu, 28 Jan 2016 16:41:10 +0000 (08:41 -0800)]
Treat bad values passed to --images as a fatal error

If an option is passed to --images that is either a non-existent path or
a folder with no images matching the supported types, assume this is
an error and exit, so they can supply a valid path instead.

Share code between DM and nanobench in SkCommonFlags.

nanobench now behaves more like DM - it will check a directory for
images that match the supported extensions.

Only consider image paths ending in RAW suffixes as images if
SK_CODE_DECODES_RAW is defined. This prevents us from seeing failure
to decode errors on platforms that cannot decode it.

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

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

8 years agoImage filters: Make a recursive, forward-mapping bounds
senorblanco [Thu, 28 Jan 2016 16:23:02 +0000 (08:23 -0800)]
Image filters: Make a recursive, forward-mapping bounds
traversal which respects the CropRect. This is useful when
you want the device-space bounds of a primitive after
filtering. (This may also eventually subsume
computeFastBounds()).

This CL generalizes filterBounds() and onFilterBounds() to
take a mapping direction. It also makes filterBounds()
responsible for calling onFilterNodeBounds() and applying
the crop rect, simplifying onFilterBounds().

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

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

8 years agoDisable verbose mode for DNG SDK on mac/ios.
adaubert [Thu, 28 Jan 2016 15:56:15 +0000 (07:56 -0800)]
Disable verbose mode for DNG SDK on mac/ios.

The issue was, that the qDNGReportErrors was not disabled in xcode_settings.

With that also removed the complexety of the dng_sdk.gyp and unified the flags handling.

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

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

8 years agoRevert "Enable GL_CHROMIUM_bind_uniform_location, command buffer is fixed"
bsalomon [Thu, 28 Jan 2016 15:09:52 +0000 (07:09 -0800)]
Revert "Enable GL_CHROMIUM_bind_uniform_location, command buffer is fixed"

This reverts commit 1dc85cda5e990f379b891bb7b0356f796045e7f6.

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

TBR=

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

8 years agoMake SkPixelXorXfermode's opColor be SkPMColor
robertphillips [Thu, 28 Jan 2016 14:41:11 +0000 (06:41 -0800)]
Make SkPixelXorXfermode's opColor be SkPMColor

Xoring an SkColor with 2 SkPMColors creates rendering inconsistencies on Macs and some Android devices in 8888.

AFAICT Android doesn't compensate for this so we may be changing SkPixelXorXfermode's behavior on Android.

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

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

8 years agoAdd a background timing thread to kilobench
joshualitt [Thu, 28 Jan 2016 14:26:35 +0000 (06:26 -0800)]
Add a background timing thread to kilobench

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

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

8 years agoskiaserve: Clean up flags.
jcgregorio [Thu, 28 Jan 2016 14:24:19 +0000 (06:24 -0800)]
skiaserve: Clean up flags.

Remove unused flags.
Add --port and --source.

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

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

8 years agoAdding support for parsing extended gpu config parameters in nanobench
svaisanen [Thu, 28 Jan 2016 14:05:43 +0000 (06:05 -0800)]
Adding support for parsing extended gpu config parameters in nanobench

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

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

8 years agoskiaserve: Add CORS header, and debugger code is served over HTTPS.
jcgregorio [Thu, 28 Jan 2016 13:31:31 +0000 (05:31 -0800)]
skiaserve: Add CORS header, and debugger code is served over HTTPS.

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

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

8 years agoRemove SK_SUPPORT_LEGACY_SAVEFLAGS define on Android
fmalita [Thu, 28 Jan 2016 02:46:30 +0000 (18:46 -0800)]
Remove SK_SUPPORT_LEGACY_SAVEFLAGS define on Android

Android is the only platform still using SK_SUPPORT_LEGACY_SAVEFLAGS
(indirectly, due to SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG).

At this point it should be safe to remove the define.

R=djsollen@google.com,scroggo@google.com,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1636103002

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

8 years agoSkPngFilters: guard with libpng >= 1.5.7
mtklein [Thu, 28 Jan 2016 02:26:31 +0000 (18:26 -0800)]
SkPngFilters: guard with libpng >= 1.5.7

The read_filter array was added in libpng-1.5.7.
No point to these filter methods if we can't plug them into libpng.

TBR=msarett@google.com
NOTRY=true
NOPRESUBMIT=true

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

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

8 years agoSkPngFilters: use normal pointer types.
mtklein [Thu, 28 Jan 2016 00:10:53 +0000 (16:10 -0800)]
SkPngFilters: use normal pointer types.

TBR=msarett@google.com

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

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

8 years agokill SkValue
mtklein [Wed, 27 Jan 2016 21:08:33 +0000 (13:08 -0800)]
kill SkValue

This is clearly not what we're going to do.

TBR=reed@google.com

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

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

8 years agosketch hooking into PNG_FILTER_OPTIMIZATIONS
mtklein [Wed, 27 Jan 2016 21:01:41 +0000 (13:01 -0800)]
sketch hooking into PNG_FILTER_OPTIMIZATIONS

Local timing says this 4-byte Paeth function takes about 0.3x the time the serial libpng code does, dropping from ~10 cycles per byte to ~2.9.

bpp=4 is mainly an easy demo.  This approach can work for any bpp up to 16, 1 pixel at a time, at roughly the same cost per pixel.  Doing more than 1 pixel at a time is a tricky math problem I have yet to attempt to solve.

Everything here can be trivially downgraded to MMX, supporting bpp up to 8.  It seems to be a little slower (~3.5 cycles per byte), but it would make the code compatible with every x86 that can still power on.

I've tried four approaches:
  - this way;
  - doing things naively in 16-bit;
  - a 16-bit version that requires division by 3 (i.e. mulhi_epu16(..., 0x5580) );
  - a mostly 8-bit version of the same.

They're all fine, but this one is consistently the fastest I've measured.
I'd be happy to settle on the naive 16-bit version too, which would have a very clear implementation that's only minorly slower than this version.  The other two are way more complicated, and would require us to draw some serious ASCII diagrams to explain.

I have learned that the .skp serialization tests (serialize-8888) have a nice side effect of testing the correctness of these filters!

(Since writing the description above, I've bumped things up to {Paeth,Sub,Avg} x { 3 bpp, 4 bpp }.)

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

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

8 years agoskiaserve: Enable /cmd endpoint.
jcgregorio [Wed, 27 Jan 2016 20:15:38 +0000 (12:15 -0800)]
skiaserve: Enable /cmd endpoint.

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

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

8 years agoRevert of Consolidate SkStream copying methods (patchset #1 id:1 of https://coderevie...
msarett [Wed, 27 Jan 2016 20:06:22 +0000 (12:06 -0800)]
Revert of Consolidate SkStream copying methods (patchset #1 id:1 of https://codereview.chromium.org/1640793002/ )

Reason for revert:
Test to see if this fixes the bots.

Original issue's description:
> Consolidate SkStream copying methods
>
> Make SkCopyStreamToData call SkStreamCopy, removing duplicate code.
>
> The former still has its own method of copying with a length, since
> it saves one copy.
>
> BUG=skia:4788
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1640793002
>
> Committed: https://skia.googlesource.com/skia/+/440c5a98dee428c661b77d149e30c794d264b8cd

TBR=halcanary@google.com,scroggo@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4788

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

8 years agoSuppress jpeg valgrind errors
msarett [Wed, 27 Jan 2016 20:05:27 +0000 (12:05 -0800)]
Suppress jpeg valgrind errors

Do a better job suppressing these errors until I can prioritize fixing
them.

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

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

8 years agoskiaserve: Set 303 status code on redirect.
jcgregorio [Wed, 27 Jan 2016 19:44:38 +0000 (11:44 -0800)]
skiaserve: Set 303 status code on redirect.

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

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