Commit Graph

47181 Commits

Author SHA1 Message Date
Mike Klein
fe6fa7ebb8 allow fmas
Conveniently, the fmuladd intrinsic decays to mul->add on
machines that don't support fmas, not to some call out to
a complicated library implementation.  Just what we want!

Change-Id: I6828a4e38ecd7f0595050f30784cd0ec8b03eb7a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274083
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-02-28 19:37:46 +00:00
Mike Klein
22c007da34 select + stores
This is enough for another swath of tests.

Change-Id: Ida43fa2ee2ebd8e6086923fb9fafef8f646d0a93
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274074
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2020-02-28 19:32:42 +00:00
Kevin Lubick
79e41e7063 [canvaskit] Roll to v0.13.0
Change-Id: I4ff4e7549f0eeb15fe66755f3da26c15f51bf8f1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274052
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-02-28 19:27:22 +00:00
Robert Phillips
ce97857f5b Add GrSimpleMeshDrawOpHelper::CreateProgramInfo
This helper method can be used by the MeshDrawOps to (pre-)create their GrProgramInfos.

Bug: skia:9455
Change-Id: I41b7c2aefc0f633a1d32996c7f0cce3d11f8fcb1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273815
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-28 19:26:56 +00:00
Brian Salomon
b62cee315e Simplifications to GrTextureProducers
Move all MIP map code directly into GrTextureAdjust, not used by makers.

Make GrTextureAdjuster final.

Make some virtuals private

Change-Id: I12dc7d8fa015dc85aaca3f7d5e58e094bb859518
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274045
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-28 19:23:26 +00:00
Weston Tracey
9fbba62dc7 Format GN, isn't checked in third_party, so missed it the first time.
Bug: skia:9939
Change-Id: Ia02803f93a8b90fd8d03465226379b028add7f5e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274046
Auto-Submit: Weston Tracey <westont@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-28 19:05:35 +00:00
Florin Malita
917dddece6 [skottie] Add support for text grouping alignment
AE allows relative adjustments for text animator transform anchor
points [1].

[1] https://helpx.adobe.com/after-effects/using/animating-text.html#text_anchor_point_properties

Change-Id: If98d6b522e73a768ed2358d918867d2aefd09071
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274044
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-02-28 18:59:05 +00:00
Greg Daniel
c52968170d Fix CompatibleCoverageAsAlpha flag when reducing src-over to src.
Change-Id: I087ff64e0f23aee15ac2bf7b9d3c450e28400cef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274036
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-28 18:45:15 +00:00
Ravi Mistry
262796edeb Exclude G3 trybot for non-master branches
Change-Id: Iddbaa02fc2761f4dafbfd875864a425270f88384
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274042
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2020-02-28 18:25:17 +00:00
Herb Derby
1a0d00b879 Generate the correct instruction for neq_f32.
Check that all the f32 comparisons are correct:
vcmpeqps        %ymm0, %ymm11, %ymm12
vcmpneqps       %ymm1, %ymm11, %ymm13
vcmpltps        %ymm3, %ymm11, %ymm13
vcmpleps        %ymm5, %ymm11, %ymm14

Change-Id: I88ca45e3d58e04b95225a0d6d854dc5244f618d6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274077
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-02-28 18:23:47 +00:00
Nathaniel Nifong
e71bcc61e8 Add a condition to prevent a thread annotation meant for blaze from showing up to emscripten
Change-Id: Ie84d3fd6ae1625cd0e5b0959a30b94f9142ee30e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273876
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2020-02-28 17:57:20 +00:00
Weston Tracey
2d6261557e Add Dawn on Windows job.
This job currently does not build. Once fixed it will be added to the CQ.

Bug: skia:9939
Change-Id: I0f29292670554b43ba4518ba0d2d7593ef4beddf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273481
Commit-Queue: Weston Tracey <westont@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2020-02-28 17:48:37 +00:00
Julia Lavrova
76ae22e558 Bugs
Mainly, simplified iteration over visual run for performance reasons.
Check for locale when comparing fonts.
Try to resolve ALL unresolved codepoints.

Change-Id: Ic126ca9bcb3970e2cbd6da9c384c493f9fd81b0d
Bug: skia:9956, skia:9970, skia:9951
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273463
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-02-28 17:43:07 +00:00
Mike Klein
bfd2332045 fix bitcode
looks like the API accepts these implicit bit casts
but the bitcode does not

Change-Id: Ia93bbc13c3c37e8955def7abac5aba5b5e2ead61
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274069
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-02-28 17:33:23 +00:00
Mike Klein
d7af3195b0 fill out loads, uniforms, and gathers
Everything follows a pattern based on a varying type,
so I've introduced a temporary type variable `t` to
represent that, with each variant setting `t` then
falling through to a common impl.

Change-Id: I2349308066d16ad4f497112570b666fc1dd14976
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274060
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-28 17:24:27 +00:00
Mike Klein
856282a44e initialize once
seems to fix the deadlocks?

Change-Id: Iac8b4247d2521250f18f54562d5696a566a6e71a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274028
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2020-02-28 17:18:57 +00:00
Herb Derby
5c5bd1a637 Add comparisons (eq|neq|gt|gte)(i32|f32)
Change-Id: Ic53758162507d769548953001bd761e84d717322
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274064
Reviewed-by: Mike Klein <mtklein@google.com>
2020-02-28 17:17:45 +00:00
Florin Malita
4bd834b167 [skottie] Fix default character transform origin
By default, per-character AE transforms are anchored on the glyph
baseline, mid-advance.

To support:

  - extend SkottieShaper to track per-fragment ascent and advance
  - adjust the fragment transform origin for (advance/2,0)

As an optimization, we only track the anchor point in the presence
of origin-dependent animators (scale & rotation ATM).

(note: the ascent info is going to be used in a follow up CL to support
relative anchor point adjustments)

Change-Id: I883a957028e624522fdf68a6b2fc44384dee18fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273984
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-02-28 17:06:47 +00:00
Herb Derby
7430a9a1d8 Add shl_i32, srs_i32, and shr_i32 ops
Change-Id: I28e3fb933f65e38997bf4afe8bdc970e0aad2a6c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274030
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-02-28 16:55:07 +00:00
Brian Salomon
03d9e8af0d Disable Programs test on TechoSpark3Pro Release
Bug: skia:9814

Change-Id: I4821b9de4254206acbd83053e7e985b27d97a338
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273986
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-28 16:36:11 +00:00
Brian Salomon
f539130d9e Remove code from GrTextureMaker that tries to make a MIP map copy.
All subclasses implement "willBeMipped" param to
refOriginalTextureProxyView()

Change-Id: I85a5540857255bdb6f79b536979f938d94a9591a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273990
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-28 16:36:01 +00:00
Mike Klein
2ea588fe99 add mad, to_f32, trunc
enough for SkVM_mad, SkVM_madder

Change-Id: Id5165e221ae9923f6ccffc6a987d973c7f11332c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274026
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-28 16:27:41 +00:00
Mike Klein
96380c2df4 simplifications
No real change, just exploring APIs to make our code terse.

Refactors I32/F32 to be the types we should use in emit(),
rather than always the vector types.  There were quite a
few (scalar ? i32 : I32) that this folds over.

Change-Id: I26e7b297d86f98dc056402c3108e2ea8e0f29667
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273974
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-02-28 15:43:15 +00:00
Robert Phillips
fad1e0f47b Rename 'dstView' to 'outputView' to avoid confusion w/ 'dstProxyView'
This is just a simple clean up from a CL request.

Change-Id: Ibc09e19aeb8a160e4e4e03573fcf56cb1d58525b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273983
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-28 15:38:20 +00:00
Chris Dalton
20e7a53cd2 Revert "Move setupGeometry() from GrGLGpu to GrGLOpsRenderPass"
This reverts commit b67081f9cb.

Reason for revert: Crash in glDeleteProgram on ES2

Original change's description:
> Move setupGeometry() from GrGLGpu to GrGLOpsRenderPass
> 
> Change-Id: I8788b96e07216be738c0ce1babb810b05bf46694
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273696
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

TBR=bsalomon@google.com,csmartdalton@google.com

Change-Id: Ibd1ae7c01ac8ac6ade94f6d542a6b711f53e7fb6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274021
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-02-28 15:38:10 +00:00
Robert Phillips
55f681faf3 Splitup GrSimpleMeshDrawOpHelper.h
Change-Id: Ie3d05053633176ba27e55cc2de61eeba1e9f45d6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273981
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-28 15:04:02 +00:00
Jim Van Verth
888ba8b3da Initialize D3D format table.
Set up the expected formats we'll want.
Doesn't include YUV formats just yet.

Bug: skia:9935
Change-Id: I934a7ef006b5a218a5f637774aea5f082202cd3a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273877
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-28 15:01:31 +00:00
Kevin Lubick
bde9fcce15 [canvaskit] Precise font measuring
Bug: skia:9864
Change-Id: I097ca54b55e0864a7659fa1c3a05ea7f02811aed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273297
Reviewed-by: Nathaniel Nifong <nifong@google.com>
2020-02-28 13:36:34 +00:00
skia-recreate-skps
0a3900fb33 Update Go Deps
Change-Id: Icc254e51c6983a8798d8318aa4bb3dbd30b389fc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273944
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-02-28 05:26:40 +00:00
recipe-roller
e4995b4e30 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
  https://crrev.com/33340afc751dd03e69ec96a67311e6d56a6ab50b (yuanjunh@google.com)
    Add --no-docs for the command 'test run'

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ida25e55eab9e2b179e1a152e179afa8601fa4cf8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273932
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>
2020-02-28 05:24:31 +00:00
skia-autoroll
52037e8ecc Roll third_party/externals/swiftshader 4d40271e3f09..05f5e0b34ac8 (3 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/4d40271e3f09..05f5e0b34ac8

git log 4d40271e3f09..05f5e0b34ac8 --date=short --first-parent --format='%ad %ae %s'
2020-02-27 jmadill@chromium.org Add codereview.settings.
2020-02-27 amaiorano@google.com Subzero: add support for variadic calls (System V)
2020-02-27 jmadill@chromium.org Fix comparison of specialization constant keys.

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC jlavrova@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: jlavrova@google.com
Change-Id: I78dc271d24b2aac2498bb3e34daf399978abc244
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273936
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-28 04:34:40 +00:00
Herb Derby
70d4938cba Add LLVM floor code for SkVM
loopK:                                            ; preds = %testK
  %5 = bitcast i8* %3 to <8 x i32>*
  %6 = load <8 x i32>, <8 x i32>* %5, align 1
  %7 = bitcast <8 x i32> %6 to <8 x float>
  %8 = call <8 x float> @llvm.floor.v8f32(<8 x float> %7)
  %9 = bitcast <8 x float> %8 to <8 x i32>
  %10 = bitcast i8* %3 to <8 x i32>*
  store <8 x i32> %9, <8 x i32>* %10, align 1
  %11 = sub i64 %2, 8
  %12 = getelementptr i8, i8* %3, i64 32
  br label %testK

LBB0_2:                                 ## %loopK
                                        ## =>This Inner Loop Header: Depth=1
        vroundps        $9, (%rsi), %ymm0
        vmovups %ymm0, (%rsi)
        addq    $-8, %rdi
        addq    $32, %rsi
        cmpq    $7, %rdi
        ja      LBB0_2

Change-Id: I0e0dab3ad2ed0f28b1a13282a6607a8de16eac76
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273924
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-02-28 04:08:40 +00:00
recipe-roller
23d978da38 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/488712ab5735c18de8827b7dff7b6f4f0d904306 (ehmaldonado@google.com)
    my_activity.py: Run using vpython3 by default.
  https://crrev.com/b10ba796eecc47b809ec20eefe57f107345e7fad (ehmaldonado@chromium.org)
    Revert "Print content of description backup on exit"

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ifb6779a841399af4ca934b4e78051e11b7c1eae5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273926
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>
2020-02-28 03:12:36 +00:00
Chris Dalton
b67081f9cb Move setupGeometry() from GrGLGpu to GrGLOpsRenderPass
Change-Id: I8788b96e07216be738c0ce1babb810b05bf46694
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273696
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-02-28 02:41:36 +00:00
recipe-roller
d8c604b855 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/780e6bf8d43870389e6eba66611c7f25c8e0f6f3 (ehmaldonado@google.com)
    gclient: Allow setting GCLIENT_PY3 to 0 to run on Python 2.

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id413142efe7727125fcea3e4ec0b4f7bf3306f9f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273920
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>
2020-02-28 01:00:46 +00:00
recipe-roller
0e29459cda Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/24fd86307f0bd07c9db4d0530ad47834263ed0c2 (vapier@chromium.org)
    my_activity: search gerrit review too
  https://crrev.com/6eb1d32f5d864561e7f600a874de77f3a74fb60d (ehmaldonado@google.com)
    presubmit_support: Refactor and add tests for DoPostUploadExecuter.
  https://crrev.com/7552630e0d993ba7faf727392f2bfaaec19a7bfb (ehmaldonado@google.com)
    git-cl: Run PostUpload hooks via CLI.

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I88b360aa01c97028124f74b043464a044549da23
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273875
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>
2020-02-27 23:08:46 +00:00
Brian Salomon
2536b7f974 Handle dirty context state in GrGLGpu::deleteFramebuffer
Change-Id: I5bae83b8f4c8a50f0638fa2ac09be6dcdf8a72af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273880
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-02-27 22:35:06 +00:00
recipe-roller
337064f847 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/fdf027a728e975bfc7eb2f2cd2b93eb5b768b818 (vapier@chromium.org)
    my_activity: add short url for android CLs

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I09135815ecd4b84364e651d4bfb4a171b855eaba
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273869
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>
2020-02-27 22:34:36 +00:00
Mike Klein
a7dc878938 add some more instructions
Keeping all the values i32/I32 for now.
Maybe something more complex later?

Change-Id: Iaf804fa51e51d378ea7857b8c5aa2f20c3403e2c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273863
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-27 22:09:56 +00:00
Jim Van Verth
62a644bf5a Add GrD3DUtil.
Trying to stage the texture format CLs in a little at a time.

Bug: skia:9935
Change-Id: I0fc6fe09fdb55d6c24b53af7edbcc8e8fc857ed7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273803
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-02-27 21:26:16 +00:00
Jim Van Verth
c86c83cd80 Add DXGI_FORMAT to BackendFormat.
First steps to getting D3D texture format caps set up.

Bug: skia:9935
Change-Id: I905aaedd7d5fcc8b5137fcc8d8189e93260c9359
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273797
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-02-27 21:24:46 +00:00
Mike Klein
102488f038 bit_and and gather
Enough to run SkVM_gather32 test.

SSE looks good, unrolled as you'd expect.  HSW oddly is also
unrolled like SSE, not using vpgatherdd like we want.  TODO!

SKX looks great!

(lldb) dis -s fJITEntry -c 40
    0x10a6e8000: movabsq $0x10a6f6000, %rax        ; imm = 0x10A6F6000
    0x10a6e800a: cmpq   $0xf, %rdi
    0x10a6e800e: jbe    0x10a6e8054
    0x10a6e8010: vmovdqu64 (%rdx), %zmm0
    0x10a6e8016: vpandd (%rax){1to16}, %zmm0, %zmm0
    0x10a6e801c: movq   (%rsi), %rcx
    0x10a6e801f: kxnorw %k0, %k0, %k1
    0x10a6e8023: vpgatherdd (%rcx,%zmm0,4), %zmm1 {%k1}
    0x10a6e802a: vmovdqu64 %zmm1, (%rdx)
    0x10a6e8030: addq   $-0x10, %rdi
    0x10a6e8034: addq   $0x40, %rdx
    0x10a6e8038: cmpq   $0xf, %rdi
    0x10a6e803c: ja     0x10a6e8010
    0x10a6e803e: jmp    0x10a6e8054
    0x10a6e8040: movl   (%rdx), %eax
    0x10a6e8042: movq   (%rsi), %rcx
    0x10a6e8045: andl   $0x7, %eax
    0x10a6e8048: movl   (%rcx,%rax,4), %eax
    0x10a6e804b: movl   %eax, (%rdx)
    0x10a6e804d: decq   %rdi
    0x10a6e8050: addq   $0x4, %rdx
    0x10a6e8054: testq  %rdi, %rdi
    0x10a6e8057: jne    0x10a6e8040
    0x10a6e8059: vzeroupper
    0x10a6e805c: retq

Change-Id: If84bff6954b46aee5a4fd862c2899b6bf97fb164
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273854
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-02-27 21:15:48 +00:00
Robert Phillips
6c59fe4110 Add a GrSimpleMeshDrawOpHelper CreatePipeline method that doesn't require a GrFlushState
This CL also adds helper functions (i.e., createPipeline and createPipelineWithStencil) to better encapsulate pipeline creation.

This is a first step towards making GrSimpleMeshDrawOpHelper surface its GrProgramInfos.

Bug: skia:9455
Change-Id: Ic6cc7a01383e42436305358a9b193958d862786c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273556
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-02-27 21:15:41 +00:00
Brian Salomon
3aef301cac Reset GrGLGpu::fBoundDrawFramebuffer on resetContext
Change-Id: I873fc46cf68eaa49cf74270f8e0ac9282a19542e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273804
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-27 21:11:46 +00:00
recipe-roller
5827438af5 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools, recipe_engine) into this repository.

depot_tools:
  https://crrev.com/a4f9aa037585a99a5c5e1b029991c040f5a29e7c (iannucci@chromium.org)
    Refactor OWNERS for LUCI-related tools.
  https://crrev.com/9468eba70dbda8f1c6992c6e64772b0a44153cbe (ehmaldonado@google.com)
    git-cl: Add tests for git-cl presubmit
  https://crrev.com/8c5cdf1812e4642b53ee660c767e8a71d88ea6ab (sokcevic@google.com)
    Print content of description backup on exit
recipe_engine:
  https://crrev.com/aed02b3aa61d3d56bfe5616667ab09cafc08fb4a (iannucci@chromium.org)
    [test] Fix location of --stop flag.

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iad429299e5d0c0badeb37c085317fc58ca3c5cd8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273806
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>
2020-02-27 21:10:36 +00:00
Nathaniel Nifong
f106bc27a4 Add SK_NO_FONTS check around font uses in skottie
Prerequisite to cl/297131877

Change-Id: Icd58c69fd53b703e43d67f4a1a9bafe096943edc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273765
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2020-02-27 20:50:16 +00:00
Stephen White
dbb0a25d1f Skia-Dawn: update for recent GrRenderPass::onDraw* changes.
Change-Id: I2b1a07dccb5e58dbe2488acf1b87281215b84f98
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273799
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2020-02-27 20:20:47 +00:00
Brian Salomon
510eb15cbd Fix NVPR with explicitly sampled FPs.
Use uniforms rather than fixed function computed varyings to implement
coord transforms for FPs that are sampled explicitly.

Change-Id: I43be3f9649550e36dbb4d1f72090a497dfeb0d31
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273798
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-02-27 20:05:36 +00:00
Mike Klein
4c690b442f add metadata to calculated bounds
For Flutter, mark each bounds rect as a draw or not.

saveLayer() is the trickiest part: it doesn't draw, but its paired
restore() does, while a restore() paired with save() doesn't.

Change-Id: I5f0dc61ad5543265c5ea2bf41b236f57915847b9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273501
Reviewed-by: Emmanuel Garcia <egarciad@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-27 19:12:35 +00:00
Mike Klein
11efa18eca impl load32
This means we can write a memset32 (load32 -> store32),
tested explicitly with the new unit test.

Slightly changes to the type protocol,
  - load and splat now generate scalars or vectors
    depending on how `scalar` is set
  - store should no longer have to pay attention to `scalar`;
    it's input values will already be the right size

Clean up some of the type declarations where we don't
actually need the subclass types, holding llvm::Type* instead.
This makes using ?: easier.

Change-Id: I2f98701ebdeead0513d355b2666b024794b90193
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273781
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-27 18:50:05 +00:00