Commit Graph

41948 Commits

Author SHA1 Message Date
Chris Dalton
4201eb1126 Revert "remove unused functions in sksl.inc"
This reverts commit 76ba2fb0a6.

Reason for revert: "mix" was used by CCPR

Original change's description:
> remove unused functions in sksl.inc
> 
> Bug: skia:
> Change-Id: I8f791324bbde13d51c7be2b85ee5d5fadb938e5e
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215423
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
> Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>

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

Change-Id: I68f809db99e9af68de322c4fd5b94b4a7ea4700f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215532
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-05-23 00:19:43 +00:00
recipe-roller
c826dd1731 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/2e0f8a6ee99d812e17a4b560d400e85235dd5b4e Switch from scroll to floppy disk. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I33d67fa97244af4ef72a5bedef1e7eecb82d7961
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215529
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-22 23:40:03 +00:00
recipe-roller
47f6fc90c9 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/d4e20baf1800a735f3ac6d42fdb118dac7af9f3e Implement new test runner. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id90d3e778d6d37d16e27bf25588970d6b99e1c21
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215482
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-22 23:11:53 +00:00
recipe-roller
9339a8a61a Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/fabc042a04faa20d56ca4a82425037e7f894d715 Refine check for `self` in magic_check_fn. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic48a66e758aed112e2acace3478b69a90752de6c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215524
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-22 22:21:33 +00:00
Ben Wagner
965de68dd7 Remove SkTextEncoding and SkFontHinting macros.
It appears all known users have been mirgrated to the new enums.

Change-Id: Id64083c18bf8aa5f2ec935c80af3babebad90a2d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215459
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-05-22 20:44:28 +00:00
Robert Phillips
08ba085253 Revert "De-GL-ify tests, gm and tools"
This reverts commit 89fb346d2b.

Reason for revert: Google3 failure

Original change's description:
> De-GL-ify tests, gm and tools
> 
> Change-Id: Id15a3a4b2c8b80b9dc7ecdab1cf1af1f9282f442
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215447
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=jvanverth@google.com,robertphillips@google.com

Change-Id: I155b033ac48d9fea15f66b22a090fb34f3bb81fa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215521
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-05-22 20:23:56 +00:00
recipe-roller
cdd8d3f0cc Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/cdb318f1f461a292c8b4b20b738433108419c88f Fix timeout bug in subproc runner. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: If360a1073ec7c0b186ae8ccb7bf01241f96d07cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215520
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-22 20:02:38 +00:00
Herb Derby
b98fc51dff Use bulk advances in SkFont
Change-Id: I0a846baa2c82deef46583d2e67d862f65465a95f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215099
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-22 19:47:08 +00:00
Robert Phillips
89fb346d2b De-GL-ify tests, gm and tools
Change-Id: Id15a3a4b2c8b80b9dc7ecdab1cf1af1f9282f442
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215447
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-05-22 19:24:17 +00:00
Jim Van Verth
40479ae5b0 Add new Metal bots
Bug: skia:8243
Change-Id: I660ccd8aa17c2c6575f006d2e07a4b904e636935
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215451
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2019-05-22 19:23:58 +00:00
Herb Derby
f084bb1310 Check for SDF or ARGB in SDF case.
The SDF case in painter assumes that glyphs will only
have formats of SDF or ARGB (or be empty).

Change-Id: I5fe1d6f017bd639163c4c3f0582d7f84a6455f51
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215454
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-22 19:16:18 +00:00
Ethan Nicholas
76ba2fb0a6 remove unused functions in sksl.inc
Bug: skia:
Change-Id: I8f791324bbde13d51c7be2b85ee5d5fadb938e5e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215423
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-05-22 18:36:51 +00:00
recipe-roller
0cfdf7fd4c Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/c923df1b4ecf75345768d71a09e0ce17fd21c9aa Autoformat recipes.py with yapf chromium style (olivernewman@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie3ac5d67b4b1f060d3721100f742dec8fb87deb0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215449
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-22 17:57:25 +00:00
Hal Canary
db5863c24c SkMatrix: get rid of AggregateMatrix
Change-Id: I9bb7b1f0f238937b59539d1b60e0f9b106498201
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215444
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-05-22 17:48:04 +00:00
Herb Derby
e384a1ed7f Reland "Make SkRemoteGlyphCache obey the prepareForDrawing contract"
This is a reland of 4e045301f1

Original change's description:
> Make SkRemoteGlyphCache obey the prepareForDrawing contract
>
> Change-Id: I3f781b8d72f460edb73c5b3d446676db19a4a935
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215090
> Commit-Queue: Herb Derby <herb@google.com>
> Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>

Change-Id: Ia1e8f09c8969a83cf9281936931b795efbaf5dc3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215168
Commit-Queue: Khushal Sagar <khushalsagar@chromium.org>
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
2019-05-22 16:47:19 +00:00
Mike Klein
f77dbd04b9 remove -ffp-contract
We don't set it in Chrome, so this'll make our local bots a little more
consistent with what we see in Chrome.  Very, very minor stuff.

Bug: skia:9103
Change-Id: Iecedd367780b6a721bc49dfa2d0a7837eb3bd28d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215144
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-05-22 16:29:09 +00:00
Stephen White
c4dbc3758f GrTessellator: improved straight skeleton implementation.
This patch improves the straight skeleton implementation used by
GrTessellator to collapse overlap regions in the alpha gradient border.
The resulting quality improvement can be seen in the
"thinconcavepaths" GM, for example, where the coverage values of
the "thin right angle", "thin rect and triangle" and "skinny snake"
are now lower and match the raster backend more closely. It also improves
correctness, such as on the linked Chromium bugs below.

Previously, the straight skeleton was performed using the same Vertex
and Edge classes used for tessellation, but this led to fragility in
maintaining the connectivity and ordering required by those classes.
Instead, that functionality has been moved to new SSEdge and SSVertex
classes. Their construction results in alternating SSVertex and
SSEdges around the boundary of the each overlap region, shrunk by one
SSEdge as the boundary collapses.

Applying events may now also create further events (chained events),
as intersections between newly-adjacent bisectors change the structure
of the skeleton. This is always calculated from the bisectors of
original boundary, not the shrunk boundary of the straight skeleton,
which is why each SSEdge points at its originating Edge. If the edges
are parallel or near-parallel, the bisector may be infinite. This is
handled by a new flavour of create_event(), which does a Line/Line
intersection (rather than an Edge/Edge intersection) to find the
intersection between the infinite bisector and an adjacent bisector.

Several ancillary bugs were fixed: the priority queue used to represent
edge events was sorting the inner edges incorrectly. These need to be
sorted in descending not ascending order of coverage. Its implementation
was moved from Skia's TDPQueue to std::priority_queue(), which is more
flexible in specifying a comparator.

check_for_intersection()'s partner synthesis code was moved into a new
function, compute_bisector(), also used by the chained skeleton events
code.

Degenerate edges are now removed during the simplify_boundary() pass.
They were previously detected but ignored, causing incorrect inner and
outer tangents to be computed in stroke_boundary().

An fSynthetic flag was added to Vertex, in order to detect vertices
which cannot be moved by an edge collapse event (e.g., intersections
with non-boundary edges, merged vertices, straight skeleton vertices).

More raw implementation notes:
Connect straight skeleton vertices as we find them, so we don't
have to use partnering (ss_connect()).
Only disconnect edges which are still alive after event application.
Add a check for near-parallel lines in compute_bisector().
Don't use edge type to determine direction to offset for bisectors.
The winding should already include this information.
Move Event ownership to SSEdge.
If we're down to the last two edges in a skeleton, don't check for events.
Add concave_arc_and_circle GM.
Add a collapsepaths GM.

Bug: 941429, 913349, 929915, 945853

Change-Id: Ib89e231d0e8611f8735fd3592db6391da096369d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215094
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-05-22 16:16:59 +00:00
Herb Derby
f59ea7ddf3 Move SkFont over to SkStrikeSpecStorage
Change-Id: I5b4adec40162896aa3f6d36f9c83a1fc3744110c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215095
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-22 16:15:29 +00:00
Chris Dalton
1706cbffc7 Remove VisitorType from GrOp::visitProxies
We are planning to start detecting mipmaps and MSAA resolves during
the "gather" step now, so all visits should behave the same at this
point. (And it appears there might not have been any GrOps that
actually changed their behavior based on this flag at the moment.)

Bug: skia:
Change-Id: I7a7a1c9c47cbe03683c42025bf6d0ecb32a57ba1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215145
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-05-22 15:13:50 +00:00
Jim Van Verth
57b177dc91 Fix resize and vsync issues in Mac Viewer
* Move OpenGL vsync setup out of initial context setup block
* Fix window repaints for OpenGL and Metal
* Also moved some Mac-specific code into Mac-specific Metal class

Bug: skia:9095
Change-Id: I221edfbd2292d949cc15232ed2791f8fe1bbe2ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214686
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-05-22 14:54:20 +00:00
Robert Phillips
b04b694689 Make GrGLGpu::createBackendTexture parallel GrGLGpu::createTextureImpl
- in preparation for making createBackendTexture call createTextureImpl (just like GrGLGpu::onCreateTexture)

This is more pre-work for making https://skia-review.googlesource.com/c/skia/+/214445/ (Expand backend allocation API to allow an initialization color) reasonable to review.

Change-Id: I28a9ec889532fb72fd05bea4b1fdbb8935e5228b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215170
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-05-22 14:40:20 +00:00
Hal Canary
48cd11f004 VkTestUtils: respect new optional SK_GPU_TOOLS_VK_LIBRARY_NAME define
Motivation:  someone who wants to build against swiftshader might want
to set to "libvk_swiftshader.so".

args.gn:
    extra_cflags=["-DSK_GPU_TOOLS_VK_LIBRARY_NAME=\"libvk_swiftshader.so\""]

Change-Id: I33174d58aa047739020c27996ce14254755b0c72
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215420
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-05-22 14:27:50 +00:00
Jim Van Verth
cf23f5817f ARC cleanup and memory leak fix.
After looking at it again, we don't need autoreleasepool blocks in
as many places as I originally thought, so this removes those. In
doing so I found that we were leaking SamplerState and DepthStencilState.

Bug: skia:8245
Change-Id: Ibb53b1d4c3f077b8c62f9bfdf39c0f8c9a1b9b9c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215160
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-05-22 14:25:20 +00:00
Mike Klein
459aed1e29 use float -> float math functions
double foo(double) --> float foof(float)
  If you prefer, I think std::foo would work too.

  Rename src to field to match the new macro.

Change-Id: I61ca11d6bc1fc8cb90004b72429b3941007cd5d8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215143
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-05-22 14:17:06 +00:00
Zhenyu Shan
d2f2c04e7e Add AVX2 implementation for blit_row_s32a_opaque
The function is added in SkOpts_hsw but doesn't have a AVX2 implementation.
The implementation boosts Vellamo Pixelblender test case for 20% performance

Change-Id: I3bf77eb7629213df1f1bdfa1087ebaf40894d7c4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215400
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-05-22 14:14:55 +00:00
Joe Gregorio
2961ddb9ea Add Huawei P30 to the tree.
First bot is here:
   https://chromium-swarm.appspot.com/bot?id=skia-rpi-064

Bug: skia:
Change-Id: I60a4eb11a6aa187450c513c544ef5a3938695024
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215097
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2019-05-22 12:26:29 +00:00
skia-autoroll
17ea5f8c84 Roll third_party/externals/angle2 e8247a574956..fb8e1b25ad71 (6 commits)
e8247a5749..fb8e1b25ad


git log e8247a574956..fb8e1b25ad71 --date=short --no-merges --format='%ad %ae %s'
2019-05-21 syoussefi@chromium.org Vulkan: Fix multisampled clear
2019-05-21 ynovikov@chromium.org Skip failing MultisampleTest on Nexus 6P and NVIDIA Shield TV
2019-05-21 syoussefi@chromium.com Vulkan: Update glslang_validator binary for Windows
2019-05-21 syoussefi@chromium.org Vulkan: Update glslang_validator binary for Linux
2019-05-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src 6e384fef6c0f..27ec91958501 (2 commits)
2019-05-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 9dfd4b835807..47741f05043a (2 commits)


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

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=csmartdalton@google.com

Change-Id: Idf83212298f184d2f7fb168144b8d7c62f1a8c9d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215198
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-05-22 05:29:23 +00:00
skia-autoroll
77d15733d1 Roll ../src 09fbfa7a6919..aacbdfe80aea (446 commits)
09fbfa7a69..aacbdfe80a


Created with:
  gclient setdep -r ../src@aacbdfe80a

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-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:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=csmartdalton@google.com

Change-Id: Ic6a8cfec82678ede465ed077555f4a23fa0c4a2b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215199
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-05-22 04:51:52 +00:00
skia-autoroll
c18a52bef6 Roll third_party/externals/swiftshader 9e2844fa2744..f4d2a446cc12 (2 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/9e2844fa2744..f4d2a446cc12


git log 9e2844fa2744..f4d2a446cc12 --date=short --no-merges --format='%ad %ae %s'
2019-05-21 samans@chromium.org Add gn files for Vulkan Swiftshader
2019-05-21 swiftshader.regress@gmail.com Regres: Update test lists @ 9e2844fa


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

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=csmartdalton@google.com

Change-Id: I31ff637e1ab703188cede4a03e71a5f610069b15
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215197
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-05-22 04:32:32 +00:00
recipe-roller
b8ab2a7885 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/7a6143385da466fa4ac8f60a196d21acbacde251 Decode datetime string when it's not utf-8 (sangwoo.ko@navercorp.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I05dc20e4a5ff2a67064d8934748cfe146f778104
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215146
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-22 03:26:33 +00:00
recipe-roller
4ef7c2db21 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/bae937d72f6b21b53a3218efdb0471861a332c0c Check validity of _resolved nodes before accessing them. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I36822157777996a28b5ee2a4edf4d4b9202211d1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215311
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-22 02:07:17 +00:00
recipe-roller
2ddeb69957 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/1d6478a5ffed7d272a7910d678e0a35d2f9fd69b gclient: Require a target ref when applying patches. (ehmaldonado@chromium.org)
  https://crrev.com/9a01eb27ff0165716965ee037cc97fecee228818 Revert "gclient: Require a target ref when applying patches." (ehmaldonado@chromium.org)
recipe_engine:
  https://crrev.com/46311e5fca95329b511a45b42648ead457b2eea5 Don't write annotations when running simulation tests. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icac0b82076277743fc90d50135fb9b58d29dca2f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215308
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-22 01:27:27 +00:00
recipe-roller
7952e3fe7c Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/85fd521fdda1e253ba8b7f736bf2e69a446e2c8c Add runner subprocess command. (iannucci@chromium.org)
  https://crrev.com/f0e05ce44e073ad5282ce65e200f29eab9d87666 Add functions for reporting new test result data to the user. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie95890965b443d46c2e81073dcdbf210edef28c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215260
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-21 23:45:30 +00:00
recipe-roller
1ec8dc791f Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/1318a30f19cf6c531ab2bb9894619c3c9d3eaf6c Call new CheckJsonParses in PRESUBMIT (agable@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ibfb1f32269b1b12868b417b28815e35b3323b153
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215240
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-21 22:28:07 +00:00
Hal Canary
e63b01b364 SkTypeface_mac/SkPDF codepoints out of BMP
Bug: chromium:962655
Change-Id: Ia7c6984f95da674c990ff0b2a889705df9e94645
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215093
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-05-21 20:57:05 +00:00
Ethan Nicholas
82162eead5 SkSL interpreter intrinsics
Bug: skia:
Change-Id: I418fb05444f9c1ee076ace41a24072c4a5e7ef6c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214691
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-05-21 20:38:20 +00:00
Herb Derby
201491e734 Revert "Make SkRemoteGlyphCache obey the prepareForDrawing contract"
This reverts commit 4e045301f1.

Reason for revert: Breaks unit test for Windows 10 all native fonts

Original change's description:
> Make SkRemoteGlyphCache obey the prepareForDrawing contract
> 
> Change-Id: I3f781b8d72f460edb73c5b3d446676db19a4a935
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215090
> Commit-Queue: Herb Derby <herb@google.com>
> Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>

TBR=herb@google.com,khushalsagar@chromium.org,khushalsagar@google.com

Change-Id: Ia4207104d97d1cc6d2cc058eb1e938f7239f1bb5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215166
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-21 20:23:31 +00:00
Herb Derby
219e426dc1 Simplify scale handling
SkCanonicalizeFont default fScale to 0, and in later code checks
for 0 and treats it like 1.0. Just make 1.0 mean 1.0.

Change-Id: Ibb6c8ed31013d6adc280d1105e2efcf4274f84dc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215164
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-21 20:20:20 +00:00
Chris Dalton
45f6b3d637 ccpr: Visit atlas proxies during visitProxies()
Also makes sure to flag _cached_ atlas textures as ignored by the
resource allocator.

Bug: skia:
Change-Id: I30d4af1832798bc325fd082143755cf84d40515a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215140
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-05-21 20:05:20 +00:00
recipe-roller
5ab06e2285 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/aca5b6aca87dd7872c457ae6589902876556c854 Add JSON-parsing presubmit check (agable@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I19c86fa3d2a1957fa911ceeae921e878e0570c9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215161
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-21 20:03:15 +00:00
Herb Derby
4e045301f1 Make SkRemoteGlyphCache obey the prepareForDrawing contract
Change-Id: I3f781b8d72f460edb73c5b3d446676db19a4a935
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215090
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
2019-05-21 20:00:15 +00:00
Mike Klein
c19999801d simplify VECTOR macros, negates
- type is never used
  - sp[foo].fTarget can just be sp[foo], with C++ handling types
  - same deal in negates

Change-Id: If325fa620e89aa55f96dffd5e559a7ed5f4e1846
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215141
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-05-21 18:45:55 +00:00
Robert Phillips
f0313ee3c1 Rename createTestingOnlyBackendTexture to createBackendTexture
and other cruft from https://skia-review.googlesource.com/c/skia/+/214445 (Expand backend allocation API to allow an initialization color)

Change-Id: I33f53fde2bda6ed44e2eaf0772c629288adc00a7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215120
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-05-21 18:42:55 +00:00
Chris Dalton
786dcfd9cf Blacklist PinnedImageTest on LenovoYogaC630
Bug: angleproject:3414
Change-Id: Ibb4a9ebfd1c07a28c48ca55bbb9f1b7c28375390
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215044
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-05-21 17:51:06 +00:00
Mike Klein
108e935ccd 16-bit instructions
This should give us plenty of coding space.
If anything this seems to run faster:

Before:   21/21  MB	1	4.33ms	4.33ms	4.34ms	4.36ms	0%	▁▁▃▁▂▂▁▂▂█	8888	GM_runtime_cf_interp_1
After:    21/21  MB	1	4.17ms	4.17ms	4.17ms	4.18ms	0%	▃▂▁▅▄▃█▅▅▆	8888	GM_runtime_cf_interp_1

Change-Id: I6beb785fc0d00fb274a1f87c2fdd5ed530b96b8f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215046
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-05-21 17:35:47 +00:00
Mike Klein
12710911dc negateS -> negateI
The same negate should work fine for unsigned, right?
This seems to eliminate the need for kInvaid.

    ~ $ cat test.c
    int main(void) {
        unsigned u = 0;
        do {
            unsigned nu = -u,
                     ns = -(int)u;
            if (nu != ns) {
                return 1;
            }
        } while (++u != 0);

        return 0;
    }
    ~ $ clang -Os test.c
    ~ $ ./a.out && echo ok
    ok

Change-Id: If4eec8aa24dce634e3196c8631adec4362a3b69b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215045
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-05-21 17:31:17 +00:00
recipe-roller
ddca30ad96 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/d6bf517dd4f5e899d79b865e671353b4ce616f6e Improved comments for the recent optimization in owners.py (bratell@opera.com)
recipe_engine:
  https://crrev.com/86003d0c34d194b08701a0cca237b5d33fff4a26 Add "pipe" helpers for multiprocess communication. (iannucci@chromium.org)
  https://crrev.com/a890ea91304d39295cbbf0ebc2ead97037ca9167 Escape newlines when writing enviroment values to execution logs. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I0ce961ad8c119b588016c5bc95eff5d9e8684e5c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215043
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-21 15:52:58 +00:00
recipe-roller
47d381527a Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/ad39f9d8f8d117ef63fc7d50b207a14017f05c08 [lucicfg] Release v1.7.5 (tandrii@chromium.org)
recipe_engine:
  https://crrev.com/eeac8fccee349f073b6244a1032d083555b803ec Redact line numbers for traceback frames which originate outside the (iannucci@chromium.org)
  https://crrev.com/4579203e4d12ba6ea65ecaf040ac4cf2e4e5f632 Add coverage pattern information directly to RecipeDeps. (iannucci@chromium.org)


R=benjaminwagner@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I75e230db5a24ef21561d4aeea4253865b0725da1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215041
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-05-21 15:21:30 +00:00
Mike Klein
e700738f3c Revert "Revert "SkSLInterpreter refactoring""
This reverts commit 3fb1503700.
PS 2 puts the if (n) { memcpy() } check back.

Cq-Include-Trybots: skia.primary:Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Debug-All-ASAN
Change-Id: I58ead198e89c2d0e6d58d81825cd4a2d9cb4e7f5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215042
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-05-21 14:19:30 +00:00
Ben Wagner
ab6eefe60e Move SkLeanWindows.h to src.
This file pulls in Windows headers in a custom way, which is somewhat
awkward for a library header. The only use in include/ has been replaced
with a single forward declaration.

Change-Id: Ibef4cf7a2d1c9957a6a5b145b95aca1a6868cb5e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214689
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-05-21 13:48:00 +00:00