Commit Graph

37050 Commits

Author SHA1 Message Date
Chris Dalton
dedf8f238a ccpr: Fix heap use-after-free caused by member destruction order
Bug: skia:7733
Change-Id: Ia210dded84a2ee9c24fa7ea7fd86226e573a2bc3
Reviewed-on: https://skia-review.googlesource.com/156721
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-09-25 13:52:49 +00:00
Robert Phillips
646f637f4c Add rowBytes to createTestingOnlyBackendTexture
This is pulled out of:

https://skia-review.googlesource.com/c/skia/+/151983 (Test YUV images in DDL)

The YUV images seem to like to have row padding.

Change-Id: I517d2b63678beeafef88f86148fca15862176780
Reviewed-on: https://skia-review.googlesource.com/156367
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-09-25 13:48:29 +00:00
Leon Scroggins III
0098ccbab5 Remove unnecessary sk_tool_utils::EncodeImageToData
This template is only used in practice for SkBitmaps. There is already a
public API that does the same thing, so there's no need for this one.

Change-Id: I20b10aa8bc87a56face947689e1f0eaf4c3cc4e8
Reviewed-on: https://skia-review.googlesource.com/156540
Reviewed-by: Hal Canary <halcanary@google.com>
Auto-Submit: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2018-09-25 12:02:26 +00:00
skia-autoroll
58527bcf56 Roll third_party/externals/angle2 5272a543705e..85c4b43e6db1 (3 commits)
5272a54370..85c4b43e6d


git log 5272a543705e..85c4b43e6db1 --date=short --no-merges --format='%ad %ae %s'
2018-09-25 fjhenigman@chromium.org Vulkan: Translate line loop indices from buffer.
2018-09-25 tobine@google.com Avoid flush/invalidate of host-coherent memory
2018-09-25 jmadill@chromium.org Vulkan: Merge append/beginWriteResource.


Created with:
  gclient setdep -r third_party/externals/angle2@85c4b43e6db1

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=bsalomon@google.com

Change-Id: I3ab0901ad5eae27043922fbb355b256833849028
Reviewed-on: https://skia-review.googlesource.com/156780
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-25 06:14:50 +00:00
Mike Klein
4ef464cd3c FuzzPath() should probably make a valid path
This will point out if something's gone screwy earlier in Debug builds.

Bug: oss-fuzz:10488

Change-Id: Ib091ada75344140bbe2932e5c2f1e2257f05019b
Reviewed-on: https://skia-review.googlesource.com/156660
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-09-25 05:00:30 +00:00
Brian Osman
e514fa0f1a Report "correct" color type for lazy images
This may just be a suggested color type, but it's better than nothing.
In conjunction with a codec change, this would make it possible to
detect 8 vs. 16-bit PNG, for example.

Bug: skia:
Change-Id: I0886cca004b10ac9707c66e816316cf6f822ab01
Reviewed-on: https://skia-review.googlesource.com/156640
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-09-24 23:15:23 +00:00
Florin Malita
a85f3a138c Reland: [skottie] Initial property setters
Introduce a PropertyObserver to receive property notifications for layer
and shape nodes.

Properties are communicated using strongly-typed "handles", which act
as impedance adapters between the AE/BM model and the internal Skottie
model.

Reviewed-by: Mike Reed <reed@google.com>
Change-Id: Id155076faa8595f6b4d81672559f01c2e0c7455a
TBR=
Reviewed-on: https://skia-review.googlesource.com/156626
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-09-24 21:46:07 +00:00
skia-autoroll
9435ee3cf1 Roll third_party/externals/angle2 f668a4b5fb72..5272a543705e (1 commits)
f668a4b5fb..5272a54370


git log f668a4b5fb72..5272a543705e --date=short --no-merges --format='%ad %ae %s'
2018-09-24 jmadill@chromium.org Vulkan: Skip BufferDataTest.RepeatedDrawDynamicBug on Win/Intel.


Created with:
  gclient setdep -r third_party/externals/angle2@5272a543705e

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=bsalomon@google.com

Change-Id: I926ae2f0bd3549274d38e7c0a6d700e9bb03f2cd
Reviewed-on: https://skia-review.googlesource.com/156560
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-24 21:10:29 +00:00
Jim Van Verth
87a301158d More valid input checking for text
Bug: oss-fuzz: 10620
Change-Id: Ied2acba93719691d9fb889a25936b1ceded75d3f
Reviewed-on: https://skia-review.googlesource.com/156580
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-09-24 20:51:36 +00:00
Brian Salomon
39e1d13d35 Revert "[skottie] Initial property setters"
This reverts commit 7903957247.

Reason for revert: breaking SAN bots

Original change's description:
> [skottie] Initial property setters
> 
> Introduce a PropertyObserver to receive property notifications for layer
> and shape nodes.
> 
> Properties are communicated using strongly-typed "handles", which act
> as impedance adapters between the AE/BM model and the internal Skottie
> model.
> 
> Bug: skia:
> Change-Id: Ieb9be1ff843673f1f4fe900d3774c36956b7c941
> Reviewed-on: https://skia-review.googlesource.com/156186
> Commit-Queue: Florin Malita <fmalita@chromium.org>
> Reviewed-by: Mike Reed <reed@google.com>

TBR=fmalita@chromium.org,reed@google.com

Change-Id: Ic737766e305bb8dff10a817fa37f16fdfa051c93
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/156620
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2018-09-24 20:46:34 +00:00
Ben Wagner
41e404746d Filter TextBlob paints in Viewer.
In particular this allows subpixel positioning to be forced for
drawing.

Change-Id: I2c88311f075944fef66fe5ba0237804aa5755800
Reviewed-on: https://skia-review.googlesource.com/156370
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-09-24 20:04:24 +00:00
Michael Ludwig
9461dcf130 Revert "Implement an explicit binary search-based analytic gradient colorizer"
This reverts commit dcc85fc610.

Reason for revert: ANGLE is frequently corrupted, particularly radial_gradient4 and mixershader

Original change's description:
> Implement an explicit binary search-based analytic gradient colorizer
> 
> Provides a reasonably flexible fragment processor that defines another
> colorizer implementation for gradients. It can support up to 8
> interpolation intervals (which is 16 colors if every stop is a hard stop
> or 9 colors if every stop is a smooth transition). It
> supports mixtures of hard and smooth stops. It is conditionally compiled
> into versions specific to the interval count (so it can produce up to
> 8 shader variants).
> 
> The GrGradientShader controller does not remove the single and dual
> interval colorizers, which are useful specializations of this explicit
> binary search colorizer. Similarly, since it can only handle up to 8
> intervals, the texture colorizer is still used as a fallback.
> 
> Currently it does not employ capabilities detection to determine if the
> hardware can support the number of required uniforms, which can become
> substantial for the larger gradient configurations.
> 
> Bug: chromium:796479, chromium:729727, chromium:696603, chromium:543625, chromium:414254
> Change-Id: Ia1f735a5019766ae4796cc22964b2913db34b95b
> Reviewed-on: https://skia-review.googlesource.com/155080
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=bsalomon@google.com,brianosman@google.com,michaelludwig@google.com

Change-Id: I351a387f0528e4c2db2d47ab2e5d6b336991fb98
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:796479, chromium:729727, chromium:696603, chromium:543625, chromium:414254
Reviewed-on: https://skia-review.googlesource.com/156541
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2018-09-24 19:40:54 +00:00
Florin Malita
7903957247 [skottie] Initial property setters
Introduce a PropertyObserver to receive property notifications for layer
and shape nodes.

Properties are communicated using strongly-typed "handles", which act
as impedance adapters between the AE/BM model and the internal Skottie
model.

Bug: skia:
Change-Id: Ieb9be1ff843673f1f4fe900d3774c36956b7c941
Reviewed-on: https://skia-review.googlesource.com/156186
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2018-09-24 19:03:06 +00:00
skia-autoroll@skia-public.iam.gserviceaccount.com
45239cb84d Roll skia/third_party/skcms b9dc92669da2..82ea7fbce65f (1 commits)
https://skia.googlesource.com/skcms.git/+log/b9dc92669da2..82ea7fbce65f

2018-09-24 mtklein@google.com update a few bot packages


The AutoRoll server is located here: https://autoroll.skia.org/r/skcms-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
TBR=bsalomon@google.com

Change-Id: Iaec461ce9a1347bfdcf674bcdeb7fa32b6612980
Reviewed-on: https://skia-review.googlesource.com/156442
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-24 18:08:55 +00:00
Florin Malita
a1907679eb UBSAN: Divide-by-zero in SkRRect::setRectXY
Use SkScalarDivide to suppress divide-by-zero warnings.

Allowing inf is fine because we next apply min() and one of the terms is
guaranteed to be < 1.

Bug: oss-fuzz:10579
Change-Id: I2bb83b7d942f3545d1cfee143469ac9dba46107f
Reviewed-on: https://skia-review.googlesource.com/156440
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-09-24 17:56:25 +00:00
Hal Canary
abf8e41ccb SkPDF: simplify SkPDFDevice::drawPaint.
Now just calls drawRect with the current clip's bounding box.  This
might be slightly more efficient for the rasterizer.  Deletes  20 lines
of code, making things more maintainable.  remove internalDrawPaint().

Of 702 test images:
    692 produced identical results.
    19 produced slightly different PDFs that render identically.
    1 rendered impoerceptable differently in perspective.

Change-Id: I5539e58c8a27ead461922a04f2518daa1c7995ba
Reviewed-on: https://skia-review.googlesource.com/156366
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-09-24 17:00:59 +00:00
Jim Van Verth
ac9f090976 Make sure ReflexHash grid count is reasonable
Bug: chromium:888233
Change-Id: I42bea81d8dc6eee3516ed585f8bb838ef20ce554
Reviewed-on: https://skia-review.googlesource.com/156368
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-09-24 16:51:18 +00:00
Michael Ludwig
dcc85fc610 Implement an explicit binary search-based analytic gradient colorizer
Provides a reasonably flexible fragment processor that defines another
colorizer implementation for gradients. It can support up to 8
interpolation intervals (which is 16 colors if every stop is a hard stop
or 9 colors if every stop is a smooth transition). It
supports mixtures of hard and smooth stops. It is conditionally compiled
into versions specific to the interval count (so it can produce up to
8 shader variants).

The GrGradientShader controller does not remove the single and dual
interval colorizers, which are useful specializations of this explicit
binary search colorizer. Similarly, since it can only handle up to 8
intervals, the texture colorizer is still used as a fallback.

Currently it does not employ capabilities detection to determine if the
hardware can support the number of required uniforms, which can become
substantial for the larger gradient configurations.

Bug: chromium:796479, chromium:729727, chromium:696603, chromium:543625, chromium:414254
Change-Id: Ia1f735a5019766ae4796cc22964b2913db34b95b
Reviewed-on: https://skia-review.googlesource.com/155080
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-09-24 16:40:36 +00:00
Mike Klein
4fb073ac73 use __builtin_debugtrap() in sk_abort_no_print() where possible
I got a little jealous of the Windows version of this that breaks into
the debugger.  Using __builtin_debugtrap() here should have basically
the effect of abort() when not under a debugger, but lets you continue
on if you want when run under a debugger.

Change-Id: If5f12776758b1753ffad083b34a53661450b0812
Reviewed-on: https://skia-review.googlesource.com/156248
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-09-24 16:21:34 +00:00
Mike Klein
78c6015cb0 make only valid SkRRects in FuzzPath
As far as I can tell, the attached bugs are self-inflicted wounds.

Bug: skia:8383, oss-fuzz:10378
Change-Id: Ie0bee292982d9e56193b90c04fef5e43bb2e36d4
Reviewed-on: https://skia-review.googlesource.com/156249
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-09-24 16:08:00 +00:00
Kevin Lubick
2f9c1cccdd Remove coverage bots
See https://skia-review.googlesource.com/c/buildbot/+/156232

Bug: skia:
Change-Id: I731db6dd63d39e04b84a65dd7a18b7236d24a708
Reviewed-on: https://skia-review.googlesource.com/156365
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-09-24 15:46:49 +00:00
Mike Klein
f6a4bd8717 Reland "focus exported color apis"
This is a reland of c5de102ff4

This time around, SkColor4f::FromColor() is also exported,
as it is used by Chrome OS.

Original change's description:
> focus exported color apis
>
> Change-Id: I97f9db61698b6fee783fa3d6bfbbdd023fd6fee5
> Reviewed-on: https://skia-review.googlesource.com/156245
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

Bug: chromium:888381
Cq-Include-Trybots: luci.chromium.try:linux-chromeos-compile-dbg
Change-Id: I616e28ab7262bdce1c80a027a898119f4ff0eee3
Reviewed-on: https://skia-review.googlesource.com/156246
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-09-24 15:43:10 +00:00
Hal Canary
a9adb6f035 SkPDF: cleanup GraphicStackState
Remove unused fn: SkPDFDevice::GraphicStateEntry::compareInitialState

All test PDFs render identically

Change-Id: I99bb708b27fbe75b49244b8b70001204235e984f
Reviewed-on: https://skia-review.googlesource.com/156364
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-09-24 15:11:29 +00:00
Kevin Lubick
de54d7c5e3 Update autodetects for newer fuzzers
Bug: skia:
Change-Id: I2d5dd62dd42b818bea3d322c58427ee24031f382
Reviewed-on: https://skia-review.googlesource.com/156363
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-09-24 13:09:56 +00:00
skia-autoroll
0a38646514 Roll third_party/externals/angle2 77db6f4af19f..f668a4b5fb72 (1 commits)
77db6f4af1..f668a4b5fb


git log 77db6f4af19f..f668a4b5fb72 --date=short --no-merges --format='%ad %ae %s'
2018-09-24 jmadill@chromium.org Skip Texture::syncState when no dirty bits.


Created with:
  gclient setdep -r third_party/externals/angle2@f668a4b5fb72

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=bsalomon@google.com

Change-Id: I0dc05e56a2c5fe5e1b24602de2c5a9157dcf68c5
Reviewed-on: https://skia-review.googlesource.com/156402
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-24 12:06:29 +00:00
skia-autoroll
c955a16451 Roll third_party/externals/angle2 55e57f96fbf8..77db6f4af19f (1 commits)
55e57f96fb..77db6f4af1


git log 55e57f96fbf8..77db6f4af19f --date=short --no-merges --format='%ad %ae %s'
2018-09-24 jmadill@chromium.org Use global Context lookup in single-threaded cases.


Created with:
  gclient setdep -r third_party/externals/angle2@77db6f4af19f

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=bsalomon@google.com

Change-Id: I9b8969c773c0d445774dd328ebf6e3ef82a792eb
Reviewed-on: https://skia-review.googlesource.com/156401
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-24 03:01:19 +00:00
Mike Klein
ae967aa5c4 Revert "focus exported color apis"
This reverts commit c5de102ff4.

Reason for revert: SkColor4f::FromColor() is used by Chromium too.

Original change's description:
> focus exported color apis
> 
> Change-Id: I97f9db61698b6fee783fa3d6bfbbdd023fd6fee5
> Reviewed-on: https://skia-review.googlesource.com/156245
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

TBR=mtklein@google.com,bungeman@google.com,brianosman@google.com,reed@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: Ib8479e8d5ac9e124358188b1f58d3100613312fb
Reviewed-on: https://skia-review.googlesource.com/156362
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-09-24 01:41:44 +00:00
Brian Osman
bdb32d1799 Remove SkPM4f::toF16
Android use of this API has been removed

Bug: skia:
Change-Id: I7f05704472a6024c9009123a169a8ece37761447
Reviewed-on: https://skia-review.googlesource.com/156361
Auto-Submit: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-09-24 01:20:29 +00:00
skia-recreate-skps
937348d4d4 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I94539172921274bcd79681499b4c3de406f0dcc8
Reviewed-on: https://skia-review.googlesource.com/156383
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-09-23 08:36:01 +00:00
skia-autoroll
175b587a63 Roll third_party/externals/angle2 9d84ccbaf233..55e57f96fbf8 (3 commits)
9d84ccbaf2..55e57f96fb


git log 9d84ccbaf233..55e57f96fbf8 --date=short --no-merges --format='%ad %ae %s'
2018-09-22 jmadill@chromium.org Remove some redundant dirty bits notifications.
2018-09-21 bryan.bernhart@intel.com ES31: Support atomic functions on D3D11 - Part III
2018-09-21 geofflang@chromium.org Revert "D3D11: Resolve multisampled EGL surfaces at eglSwapBuffers"


Created with:
  gclient setdep -r third_party/externals/angle2@55e57f96fbf8

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=reed@google.com

Change-Id: I899bc189d667b8ee275cb9f3df09f5648055d990
Reviewed-on: https://skia-review.googlesource.com/156400
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-22 06:08:01 +00:00
Brian Osman
11f4994b84 Revert "Reland "Preserve colorType and alphaType in SkImage::makeColorSpace""
This reverts commit 893052ea51.

Reason for revert: Chrome roll layout failures.

Original change's description:
> Reland "Preserve colorType and alphaType in SkImage::makeColorSpace"
> 
> This reverts commit 0d08b3e4b1.
> 
> Reason for revert: Fixed Chrome test.
> 
> Original change's description:
> > Revert "Preserve colorType and alphaType in SkImage::makeColorSpace"
> > 
> > This reverts commit d842557c07.
> > 
> > Reason for revert: Chrome roll failing CanvasAsyncBlobCreatorTest.ColorManagedConvertToBlob test.
> > 
> > Original change's description:
> > > Preserve colorType and alphaType in SkImage::makeColorSpace
> > > 
> > > Raster images were always converting to N32, and GPU images were
> > > always converting to premul. These were unexpected and inconsistent.
> > > 
> > > Bug: skia:8382
> > > Change-Id: I78fe6cff1208eef077a71d08e676cf8f8d5fed9a
> > > Reviewed-on: https://skia-review.googlesource.com/156142
> > > Commit-Queue: Brian Osman <brianosman@google.com>
> > > Reviewed-by: Mike Klein <mtklein@google.com>
> > 
> > TBR=mtklein@google.com,brianosman@google.com
> > 
> > Change-Id: I366b097644ac1fa920fc9addcad3e09c2a0a63cc
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: skia:8382
> > Reviewed-on: https://skia-review.googlesource.com/156184
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Brian Osman <brianosman@google.com>
> 
> TBR=mtklein@google.com,brianosman@google.com
> 
> Change-Id: I860f33a1d57e0e77ce63b78d66d49a1082d2b4dd
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:8382
> Reviewed-on: https://skia-review.googlesource.com/156188
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=mtklein@google.com,brianosman@google.com

Change-Id: Ib53912d014916374e5d0ee3d224ba69d41a5018c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8382
Reviewed-on: https://skia-review.googlesource.com/156360
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-09-21 22:04:40 +00:00
skia-autoroll
f0b2393fde Roll third_party/externals/swiftshader 9f6c0b899ae6..c5e68abdea9e (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/9f6c0b899ae6..c5e68abdea9e


git log 9f6c0b899ae6..c5e68abdea9e --date=short --no-merges --format='%ad %ae %s'
2018-09-21 chrisforbes@google.com Fix constant folding of nonsquare mat * vec and vec * mat


Created with:
  gclient setdep -r third_party/externals/swiftshader@c5e68abdea9e

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=reed@google.com

Change-Id: I7db2151c70ab5fd8fda332a40568eadac5e14852
Reviewed-on: https://skia-review.googlesource.com/156324
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-21 21:39:07 +00:00
Brian Osman
358558a4ce Cleanup SkPatchUtils, stop using SkColorSpaceXform
Bug: skia:
Change-Id: If60b571be2aaf0ab6e1ec37e28a2fb29a2940270
Reviewed-on: https://skia-review.googlesource.com/156191
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
2018-09-21 21:28:37 +00:00
Mike Klein
c5de102ff4 focus exported color apis
Change-Id: I97f9db61698b6fee783fa3d6bfbbdd023fd6fee5
Reviewed-on: https://skia-review.googlesource.com/156245
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-09-21 21:20:15 +00:00
skia-autoroll
2f10afa432 Roll third_party/externals/angle2 ab5fb5edb186..9d84ccbaf233 (1 commits)
ab5fb5edb1..9d84ccbaf2


git log ab5fb5edb186..9d84ccbaf233 --date=short --no-merges --format='%ad %ae %s'
2018-09-21 fjhenigman@chromium.org Vulkan: renderer->finish() before reading buffers.


Created with:
  gclient setdep -r third_party/externals/angle2@9d84ccbaf233

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=reed@google.com

Change-Id: I4aef5ec2400c8cc765cc16d7b96d0ede52567ff9
Reviewed-on: https://skia-review.googlesource.com/156322
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-21 20:56:24 +00:00
Cary Clark
709e888533 move color4f docs to in progress
take color4f out of bookmakers completed list,
since it ain't so

TBR=brianosman@google.com,reed@google.com
NOTRY=true
Bug: skia:
Change-Id: I45af282964e2013e45909a0f8ca258eac0faaea9
Reviewed-on: https://skia-review.googlesource.com/156192
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-09-21 20:54:29 +00:00
skia-autoroll
f6a662bbec Roll third_party/externals/swiftshader 4daedcd8c612..9f6c0b899ae6 (2 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/4daedcd8c612..9f6c0b899ae6


git log 4daedcd8c612..9f6c0b899ae6 --date=short --no-merges --format='%ad %ae %s'
2018-09-21 chrisforbes@google.com Avoid emitting nonsquare scale matrix entries where there is no main diagonal element
2018-09-21 chrisforbes@google.com Fix nonsquare matrix construction from scalar


Created with:
  gclient setdep -r third_party/externals/swiftshader@9f6c0b899ae6

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=reed@google.com

Change-Id: Ia967ba8d8f01d3ba98b719ddaccbdd3dde8da354
Reviewed-on: https://skia-review.googlesource.com/156323
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-21 20:51:20 +00:00
Brian Osman
d25b7c10b5 Introduce SkRGBA4f, templated on SkAlphaType
Most functionality is shared, but this lets us get type safety.
SkColor4f = SkRGBA4f<kUnpremul>
SkPMColor4f = SkRGBA4f<kPremul>

Change-Id: I27408565dc92e722f42a185cecbf7af15d1dde3f
Reviewed-on: https://skia-review.googlesource.com/156243
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2018-09-21 20:37:04 +00:00
skia-autoroll
470ee464b2 Roll third_party/externals/swiftshader c89f75b65555..4daedcd8c612 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/c89f75b65555..4daedcd8c612


git log c89f75b65555..4daedcd8c612 --date=short --no-merges --format='%ad %ae %s'
2018-09-21 chrisforbes@google.com Fix missing case for declarations in glslang AST dump


Created with:
  gclient setdep -r third_party/externals/swiftshader@4daedcd8c612

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=reed@google.com

Change-Id: I9a649a19b7775161ca211ea368187f921b1e36ff
Reviewed-on: https://skia-review.googlesource.com/156321
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-21 20:07:30 +00:00
Hal Canary
62589c6537 Docs: update to docs from a4daf19319
NoTry: true
Change-Id: Icb9e940a9b0c801188ae910805e61056994681ea
Reviewed-on: https://skia-review.googlesource.com/156190
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-09-21 20:01:25 +00:00
Hal Canary
00529a1771 SK_SUPPORT_LEGACY_DOCUMENT_FACTORY: clean up part 1/2
part 2 can follow after android patch lands.

Change-Id: If2a8135ac7384d84fd97d68933684ad8486d7471
Reviewed-on: https://skia-review.googlesource.com/156189
Auto-Submit: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-09-21 19:50:40 +00:00
Herb Derby
bac6beda57 Regularize path cache lookup with Mask and Fallback
Have path use the same scaler flags as BMP because fallback
may use the same cache as the fallback, and fallback should
have the same flags as BMP.

Change-Id: I3721d43324d894ffb9bd02c30e2c10cb323df7e6
Reviewed-on: https://skia-review.googlesource.com/156244
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-09-21 19:43:58 +00:00
skia-autoroll
188a627251 Roll third_party/externals/swiftshader 2ecc8b712b08..c89f75b65555 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/2ecc8b712b08..c89f75b65555


git log 2ecc8b712b08..c89f75b65555 --date=short --no-merges --format='%ad %ae %s'
2018-09-21 chrisforbes@google.com Fix code generation for vec.swiz *= mat


Created with:
  gclient setdep -r third_party/externals/swiftshader@c89f75b65555

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=reed@google.com

Change-Id: I077ada2842bd9572408240267a0e3f0836bb9dcd
Reviewed-on: https://skia-review.googlesource.com/156320
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-09-21 19:22:49 +00:00
Jim Van Verth
9b2182551f Optimize SkTriangulateSimplePolygon.
Adds a grid data structure for doing fast triangle checks.

Bug: skia:7971
Change-Id: I1c492fab55dbc20125dd5f2460b53ba60c62c6c7
Reviewed-on: https://skia-review.googlesource.com/155002
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-09-21 18:50:20 +00:00
Robert Phillips
4524e25634 Fix Chrome iOS builder
Change-Id: Ie93981df676e5e525f64ff8754760f24fa317412
Reviewed-on: https://skia-review.googlesource.com/156187
Commit-Queue: Robert Phillips <robertphillips@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-09-21 18:44:17 +00:00
Cary Clark
c9b49fe8d5 sync color4f with docs
NOTRY=true
TBR=brianosman@google.com

Docs-Preview: https://skia.org/?cl=156300
Bug: skia:
Change-Id: I7e4f8079b5c30dfaf08cf719a5d90a0eff64906b
Reviewed-on: https://skia-review.googlesource.com/156300
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-09-21 18:38:38 +00:00
Lee Salzman
5d8949c119 mark SkCanvas layer device as immutable before compositing it on restore
Making a SkSpecialImage via snapSpecial on the layer device during restore
triggers an unnecessary and problematic copy. The layer device will never
be further modified since it is about to be destroyed, but the snapshot
does not know of this since it is never informed.

This ensures that the layer device's internal bitmap is properly marked
as immutable before it is composited so that snapshotting it does not
create a copy anymore.

Bug: skia:
Change-Id: I13dd3b5c0e1b8e7c9dfededba53d21dbac2d5c63
Reviewed-on: https://skia-review.googlesource.com/155635
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-09-21 18:34:32 +00:00
Brian Osman
893052ea51 Reland "Preserve colorType and alphaType in SkImage::makeColorSpace"
This reverts commit 0d08b3e4b1.

Reason for revert: Fixed Chrome test.

Original change's description:
> Revert "Preserve colorType and alphaType in SkImage::makeColorSpace"
> 
> This reverts commit d842557c07.
> 
> Reason for revert: Chrome roll failing CanvasAsyncBlobCreatorTest.ColorManagedConvertToBlob test.
> 
> Original change's description:
> > Preserve colorType and alphaType in SkImage::makeColorSpace
> > 
> > Raster images were always converting to N32, and GPU images were
> > always converting to premul. These were unexpected and inconsistent.
> > 
> > Bug: skia:8382
> > Change-Id: I78fe6cff1208eef077a71d08e676cf8f8d5fed9a
> > Reviewed-on: https://skia-review.googlesource.com/156142
> > Commit-Queue: Brian Osman <brianosman@google.com>
> > Reviewed-by: Mike Klein <mtklein@google.com>
> 
> TBR=mtklein@google.com,brianosman@google.com
> 
> Change-Id: I366b097644ac1fa920fc9addcad3e09c2a0a63cc
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:8382
> Reviewed-on: https://skia-review.googlesource.com/156184
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=mtklein@google.com,brianosman@google.com

Change-Id: I860f33a1d57e0e77ce63b78d66d49a1082d2b4dd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8382
Reviewed-on: https://skia-review.googlesource.com/156188
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-09-21 18:21:38 +00:00
Cary Clark
8fe2940ae2 doc change for getAlphaf
Please add this to your CL when you reland.
Thanks!

R=reed@google.com
NOTRY=true
Docs-Preview: https://skia.org/?cl=156007
Bug: skia:
Change-Id: Iba458272d34d2dee412b95baeabaf6eff181e93a
Reviewed-on: https://skia-review.googlesource.com/156007
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-09-21 18:11:06 +00:00
Mike Reed
c25f440d53 Reland "add getAlphaf() to pixmap/bitmap"
This is a reland of f3ebd312f2

PS 2: use faster half->float routine
PS 3: relax tolerance to 2^-10 for half, keeping others 2^-12

Original change's description:
> add getAlphaf() to pixmap/bitmap
>
> Convenient for just extracting alpha (and more efficient than getColor()) and
> works for super-normal formats w/o loss of precision.
>
> Somewhat inspired by examining multiple chrome call-sites for getColor(), where
> chrome only really cared about the alpha. This new method runs about twice
> as fast as getColor() for the simple cases (i.e. no colorspace xforms), and
> even faster in the complex cases (since retrieving alpha doesn't care about
> colorspaces).
>
> Bug: skia:
> Change-Id: I7cd5a2c7f78de781aaa69dd1aa0dba3c532fcb73
> Reviewed-on: https://skia-review.googlesource.com/155606
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>

Cq-Include-Trybots: skia.primary:Test-Android-Clang-Nexus7-CPU-Tegra3-arm-Debug-All-Android,Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-All-SK_CPU_LIMIT_SSE2,Test-Debian9-GCC-GCE-CPU-AVX2-x86_64-Release-All,Test-Win2016-MSVC-GCE-CPU-AVX2-x86_64-Release-All,Test-Win8-Clang-Golo-CPU-AVX-x86_64-Debug-All
Bug: skia:
Change-Id: Ie94e5c89e185fde12cbd6c56ed4026c4dc5a1623
Reviewed-on: https://skia-review.googlesource.com/156242
Commit-Queue: Ravi Mistry <rmistry@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-09-21 17:41:03 +00:00