Commit Graph

49873 Commits

Author SHA1 Message Date
Ravi Mistry
599eae5765 Use storage.ErrObjectNotExist in Canary-G3
Change-Id: I0bfd891b63b894aca29f7e566315a11a62768445
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306517
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2020-07-29 17:36:09 +00:00
Ben Wagner
0795361b45 SkUNREACHABLE should fail, not be UB.
The use of __builtin_unreachable() and __assume(false) are actually
injections of undefined behavior. They do not crash and they may allow
the compiler to assume that any values which could cause that location
to be reached cannot occur. They should only be used after code which
cannot return but the compiler cannot know that (such as inline assembly
which does not return and calls to functions which should have been
declared noreturn but were not).

Replace their use with __builtin_trap() and __failfast(). These are
similar to __builtin_debugtrap() or __debugbreak() but also indicate
that execution should not be resumed.

Change-Id: I46c1362f4e86944cc8e03f6f5837875ac71b69f3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/297024
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-07-29 17:24:29 +00:00
Robert Phillips
f8237cbafc Re-org image-cacherator-from-* GMs
Change-Id: I590b9649a409a79a8bb3e1b9d25c27995f084b47
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306598
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-07-29 16:56:27 +00:00
John Stiles
e911e265a4 Add LLDB debugging extensions for SkAutoTArray.
Change-Id: I42cd0a6544ae74f2af46850cf229d23c8da8ee32
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306596
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-07-29 16:34:26 +00:00
John Stiles
eeefbcf9ba Add LLDB debugging extensions for SkTArray and SkString.
Change-Id: I5c19099025d0e10a55485d4b8c582f010d917360
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306541
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-07-29 15:44:06 +00:00
Nathaniel Nifong
7839a2599f A puppeteer test that runs karma-like tests
Change-Id: Iedd98c03ba9d56b64390ffea23a50c945be9aff3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305557
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Elliot Evans <elliotevans@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-07-29 15:38:56 +00:00
Florin Malita
96d6c6f04d [skottie] Re-enable inval tracking in viewer
This was disabled accidentally at some point.

TBR=

Change-Id: I7d537e519aca983ce2f9b5428820ba87f8113789
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306539
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Florin Malita <fmalita@google.com>
2020-07-29 15:21:06 +00:00
Elliot Evans
fc5bbe0a6c Fix SIMD CanvasKit build to output to the expected directory.
the BUILD_DIR in compile.sh was not being set properly prior to this
change, resulting in build output in the `skia/out/canvaskit_wasm`
directory instead of the `skia/out/canvaskit_wasm_experimental_simd`
directory.

Change-Id: Idb599d4885a16c10848e4c90954e778f63065c45
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306299
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Nathaniel Nifong <nifong@google.com>
2020-07-29 15:04:22 +00:00
Adlai Holler
52ea577f93 Migrate MakeFromYUVATexturesCopy* to GrRecordingContext
These methods aren't used by our clients – plus we're only de-powering the
arg here so we should do fine on canaries.

Bug: skia:104662
Change-Id: I2ff5a4e06a5e82458148d555b6dc8643e7e5f60f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306336
Auto-Submit: Adlai Holler <adlai@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-07-29 15:00:36 +00:00
Jim Van Verth
3e03e117a0 Reland "Metal: Hold refs for input buffers from bindBuffer calls."
This is a reland of a75dc33a67

Original change's description:
> Metal: Hold refs for input buffers from bindBuffer calls.
> 
> Mirrors what we have in Vulkan and Direct3D.
> Also adds command buffer tracking, again like Vulkan and Direct3D.
> 
> Change-Id: I2280d92274d81830aec7950afc64a0147e38c317
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305396
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

Change-Id: I26ebad195fe044c82ea9ad5684ef1ac6d03cbc37
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306537
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-07-29 14:43:06 +00:00
Corentin Wallez
4f587337c3 Roll third_party/externals/spirv-cross/ d573a95a9..7778792ae (15 commits)
d573a95a9c..7778792aec

$ git log d573a95a9..7778792ae --date=short --no-merges --format='%ad %ae %s'
2020-07-28 post GLSL: Add option to force flattening IO blocks.
2020-07-23 tommek Adding BuiltInSampleMask in HLSL
2020-07-22 tommek Enabling setting a fixed sampleMask in Metal fragment shaders.
2020-02-20 cdavis MSL: Add support for processing more than one patch per workgroup.
2020-07-22 dsinclair Roll GLSLang, SPIRV-Headers and SPIRV-Tools.
2020-07-22 cdavis MSL: Factor creating a uint type into its own method.
2020-07-22 cdavis MSL: Factor a really gnarly condition into its own method.
2020-07-11 post MSVC 2013: Fix silently broken builds.
2020-07-07 troughton MSL: Ensure OpStore source operands are marked for inclusion in function arguments
2020-07-06 dsinclair Roll deps.
2020-07-01 post MSL: Do not emit swizzled writes in packing fixups.
2020-07-01 post MSL: Workaround broken vector -> scalar access chain in MSL.
2020-07-06 post MSL: Use input attachment index directly for resource index fallback.
2020-07-06 post GLSL: Support I/O flattening with arrays as final type.
2020-07-03 post GLSL: Support multi-level struct flattening for I/O.

Created with:
  roll-dep third_party/externals/spirv-cross

Change-Id: Idcbbea05932944da3ca4ec6041030d627a325e82
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306476
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-07-29 13:17:16 +00:00
Mike Reed
8c7ecc1c06 Revert "Revert "Never share pixels when we make a subset image""
This reverts commit 39d1c1ebb6.

Fix: update gm to handle failures from (bad) gpu: PreAbandonGpuContext


Change-Id: I5a8584ec3493df6c9b9bb94fb84716fda0aadccb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306378
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-07-29 12:42:16 +00:00
Lei Zhang
c34efe0da1 Fix use of undefined TARGET_OS_SIMULATOR for Non-Metal builds.
When skia_use_metal is set to false, there's no TargetConditionals.h
include to define TARGET_OS_SIMULATOR, as used in GrGLCaps.cpp.

Change-Id: Id6e91cfaa23d8def129a6752356f5ee49d0e5128
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306359
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-07-29 10:31:16 +00:00
skia-autoroll
4866d0ad5f Roll ANGLE from de309a42385f to c20449a879c6 (12 revisions)
de309a4238..c20449a879

2020-07-28 jmadill@chromium.org DEPS: Remove use_relative_hooks.
2020-07-28 cnorthrop@google.com Capture/Replay: Break up SetupContext
2020-07-28 jonahr@google.com Add mac_xcode_version gclient arg to DEPS
2020-07-28 jmadill@chromium.org Perf Tests: Use timestamp queries for GPU time.
2020-07-28 tobine@google.com Vulkan: Add new validation skips
2020-07-28 nguyenmh@google.com Remove context id serialization
2020-07-28 jmadill@chromium.org D3D11: Fix bug with static vertex attributes.
2020-07-28 nguyenmh@google.com Adds sampler serialization capability
2020-07-28 syoussefi@chromium.org Vulkan: Fix sub invalidate marking render targets undefined
2020-07-28 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-ValidationLayers from 361fb5311b9b to 171e04fac342 (8 revisions)
2020-07-28 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from 8b5ed4448dfe to 150be20d4334 (33 revisions)
2020-07-28 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 3b2cd31c7400 to 12c9d4ac61f2 (4 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC borenet@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: chromium:1107325,chromium:1107433
Tbr: borenet@google.com
Test: Test: NBA2K20 MEC
Change-Id: I094230ff6499be68990551fb02ce49d55c97e662
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306311
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-07-29 06:32:35 +00:00
skia-autoroll
620bfa3fff Roll SwiftShader from 12c9d4ac61f2 to dc8e77f0e521 (6 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/12c9d4ac61f2..dc8e77f0e521

2020-07-29 sugoi@google.com Work around dEQP-VK output_location test flakiness
2020-07-28 capn@google.com Expose VK_EXT_image_robustness support
2020-07-28 capn@google.com Perform texel replacement on out-of-bounds OpImageFetch accesses
2020-07-28 capn@google.com Perform out-of-bounds checks on texel pointers
2020-07-28 amaiorano@google.com Add CMake script to setup and build ANGLE
2020-07-28 amaiorano@google.com Add ANGLE as submodule

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 borenet@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: borenet@google.com
Change-Id: Ia61107ade413c3fd0ba29c79b731da7df34ed1bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306310
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-07-29 04:47:05 +00:00
Mike Reed
3a608e5bc9 remove (unused) DirectTo... methods
Change-Id: Ie5eea2902c64fc44e4e6e53b1ee3b869d430d482
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306331
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-07-28 23:47:07 +00:00
Mike Reed
39d1c1ebb6 Revert "Never share pixels when we make a subset image"
This reverts commit 3eff2459d4.

Reason for revert: did I break abandongpu bot?

Original change's description:
> Never share pixels when we make a subset image
> 
> - mostly just affects Lazy images (raster was already always copying)
> - issue with other factories that offer subsetting
>    - (e.g. MakeFromGenerator)
>    - can we remove those options, and require makeSubset() afterwards?
> - greatly simplifies dealing with mipmaps
> 
> Landing this would obsolete
> https://skia-review.googlesource.com/c/skia/+/305960
> 
> Related: https://skia-review.googlesource.com/c/skia/+/306136
> 
> Related: https://bugs.chromium.org/p/skia/issues/detail?id=10544
> 
> Change-Id: I074420543bd2fcd46ed1620bbf0eed00371ab018
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305970
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Leon Scroggins <scroggo@google.com>

TBR=mtklein@google.com,bsalomon@google.com,robertphillips@google.com,scroggo@google.com,brianosman@google.com,reed@google.com

Change-Id: Iab2f92855fe61e48f0e432b7257eb7ddef78fcfa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306377
Reviewed-by: Mike Reed <reed@google.com>
2020-07-28 21:29:45 +00:00
Mike Reed
3eff2459d4 Never share pixels when we make a subset image
- mostly just affects Lazy images (raster was already always copying)
- issue with other factories that offer subsetting
   - (e.g. MakeFromGenerator)
   - can we remove those options, and require makeSubset() afterwards?
- greatly simplifies dealing with mipmaps

Landing this would obsolete
https://skia-review.googlesource.com/c/skia/+/305960

Related: https://skia-review.googlesource.com/c/skia/+/306136

Related: https://bugs.chromium.org/p/skia/issues/detail?id=10544

Change-Id: I074420543bd2fcd46ed1620bbf0eed00371ab018
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305970
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2020-07-28 21:20:57 +00:00
John Stiles
ace773d8c0 Use SkScalar type where appropriate.
Change-Id: Iec4c3dedd0790fc637a914517b2abbb8e303520f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306320
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-07-28 20:13:37 +00:00
John Stiles
34344e20b0 Add missing #includes.
These headers are referenced without being directly #included. This was
noticed during a refactor.

Change-Id: I23420f1f2d02a428721b57d3195dae550effefa1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306319
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-07-28 20:12:07 +00:00
Robert Phillips
5890fec2db Skip the compressed_texture* GMs on the Pixel3
Bug: skia:10546
Change-Id: Ic34cb2680b7ddf47ca8b8a0c862bd9194c001ae5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306318
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-07-28 19:56:18 +00:00
Mike Klein
0cfd503996 JIT functions taking six pointers
This allows us to JIT functions taking one more argument.
Our x86 JIT was the weak link: LLVM handles arbitrary numbers
of arguments, and our aarch64 JIT handles up to seven already.

I plan to pass one more source varying sometimes, and in extremely
unusual cases it we could need six pointers:

    1) uniforms
    2) destination
    3) 8-bit coverage plane
    4) 8-bit multiply plane
    5) 8-bit add plane
    6) source varying

Those varyings 3-5 are all indexable off the coverage pointer 3) if we
know the dimensions, so I could be convinced that we should only pass
one there, making our maximum number of arguments four.  I'll be looking
at that independently, but it doesn't hurt to have our capability to go
up to six either way.

Change-Id: Id7a5b88e382a95bb560633e95c5be273b7ea67d1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306241
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-07-28 19:49:12 +00:00
Mike Klein
68d075e18b fix r12
The 3 bits that represent rsp are used as a signaling mechanism to
choose between compact base + disp encoding and full base + disp +
scale*index encoding, one byte longer.  If a base is encoded as rsp in
the MOD R/M byte, an SIB byte follows.

r12 shares its 3 bottom bits with rsp, so we need to treat it like rsp
when deciding whether or not we need an SIB byte.  (As usual registers
r8-15's distinguishing upper bit is carried by a REX/VEX prefix.)

rsp is also treated as a special signal in the index field of the SIB
byte, meaning essentially scale=0, and as a result it's not possible to
use rsp as an index.  It _is_ possible to use r12 as an index, with a
test added here.  This worked without any code change.  It seems the
index=rsp -> scale=0 signal is triggered by all four bits of the index
registger, including the X upper bit from REX/VEX.

I have found these charts useful:
https://wiki.osdev.org/X86-64_Instruction_Encoding#32.2F64-bit_addressing_2

Looking at those charts I noticed that rbp/r13 are also special cases,
so I'm eyeing them warily and will avoid using them for now.

Change-Id: Id78f826a39c060b03000eae7c50c642ef44d57db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306237
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-07-28 19:46:17 +00:00
Robert Phillips
cdfdb39138 Fix up image-cacherator-from-* GMs for direct context
Change-Id: I0755e22d09f2b65e1af674dfd2eb1cb5b792ccbf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306259
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-07-28 19:44:07 +00:00
Ravi Mistry
b394db45e6 Migrate Canary-G3 to task driver
Migrates https://skia.googlesource.com/skia/+/master/infra/bots/g3_canary/trigger_wait_g3_task.py to task driver with a similar flow.

Bug: skia:10545
Change-Id: I1ccea76faa67fa1179cfd6ce9e6a9519fb38dd07
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305566
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2020-07-28 19:13:27 +00:00
Ben Wagner
1e67f7fced Mark sk_abort_no_print [[noreturn]].
It isn't expected that sk_abort_no_print should return (it should
abort). This also allows removal of the SkUNREACHABLE from SK_ABORT.

Also make sk_abort_no_print actually not able to return.

Change-Id: Ibd5eda019820ed7e91de37a048efdfb0d1097aff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306188
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-07-28 17:40:31 +00:00
John Stiles
afb7870f75 Update Slide::getName to return a const reference.
The Viewer slide list stores the values from repeated calls to
Slide::getName().c_str() in a large list for filtering purposes.
However, the temporary SkString was being destroyed before the list was
complete. This luckily happened to work because SkString's refcounting
behavior kept the internal buffer alive past the lifetime of the
temporary SkString object, but it's not intended to work.

Returning a const-ref to the internal SkString is more efficient, and
gives us long-lived SkStrings to work with.

Change-Id: I958148ba46332f9ec576ac60d0a9b916284c4761
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306256
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-07-28 17:37:01 +00:00
Mike Reed
564d49ec10 Remove subset parameter from making encoded/generator images
Since subsetting may require rasterizing/resolving the generator, we may
also need access to the GrDirectContext. To simplify apis, rely on
makeSubset() for that.

Related: https://skia-review.googlesource.com/c/skia/+/305970

Change-Id: I1980e3c823fb6cf54f197c350942c2f82b03e20f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306136
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-07-28 17:33:12 +00:00
Julia Lavrova
3d404beb7c Reland "Attach whitespaces to the neighbor unresolved blocks"
This reverts commit 143646297e.

Reason for revert: Have to fix it and reland again

Original change's description:
> Revert "Attach whitespaces to the neighbor unresolved blocks"
>
> This reverts commit 131c5ad6f1.
>
> Reason for revert: Blocking the G3 roll
>
> Original change's description:
> > Attach whitespaces to the neighbor unresolved blocks
> >
> > Fix the situation when an unresolved {arabic} text is broken into
> > many small runs by resolved english spaces.
> >
> > Bug: skia:10487
> > Change-Id: I3a739501c0fb7e0fc845e68392e1d214df9302db
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/304000
> > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> > Reviewed-by: Ben Wagner <bungeman@google.com>
>
> TBR=bungeman@google.com,jlavrova@google.com
>
> Change-Id: Iaa338dd5fb5c9962df2ee32bafbc089da0e2b8a1
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:10487
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305797
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=bungeman@google.com,robertphillips@google.com,jlavrova@google.com

Bug: skia:10487
Change-Id: If8a85254fd536f465d80766de0406053d90c96a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306062
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2020-07-28 17:19:21 +00:00
Brian Salomon
ba15fe1f94 Remove asserts in SkMatrix get_scale_factor
No principled reason these values have to be > -SK_ScalarNearlyZero

Speculative fix for:
Bug: chromium:1096001

Change-Id: I53cb7ec2aa46f3d0507e6010130be8925e587238
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305565
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-07-28 15:16:31 +00:00
Adlai Holler
c0ca856c05 Change makeTextureImage staging to allow either API
This fixes a Chrome canary failure in skia CL 305970 where
Chrome has the flag set, and so we can't internally call the
GrDirectContext variant.

This matches the more recent migrations we've done. Hopefully
soon Chrome's GrDirectContext CL will get its final approvals and
all of this can go away.

Bug: skia:104662
Change-Id: I09cdff54e01c22578a970e5967815a2e470752bf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306185
Commit-Queue: Adlai Holler <adlai@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Adlai Holler <adlai@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-07-28 15:05:26 +00:00
Leon Scroggins III
a4c8098aea Remove gendered language
Bug: chromium:1101491
Bug: b/161896447

Found using

  git grep -wiEIl \ '(he)|(she)|(his)|(hers)|(him)|(her)|(guy)|(guys)'

Change-Id: I6b91853de067fd4c2e84f7ec70275522ce6c8bfc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306186
Commit-Queue: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-07-28 15:02:41 +00:00
John Stiles
9119625aae Remove unnecessary macros from SkString header.
They have been replaced with equivalent constants (and given the
requisite k prefix).

Change-Id: I70907eec234e0861cc97aac1ca03086faca42f9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306160
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-07-28 15:00:21 +00:00
Robert Phillips
a84caa3a5f Make some GMs compatible with the *ooprddl configs
The more we can test these configs the better.

Change-Id: I2d86985770047937d7f31c9659ad6984caafe11d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305569
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Adlai Holler <adlai@google.com>
2020-07-28 14:33:11 +00:00
Jim Van Verth
3557ab4dc3 Initialize temp vertex array for GrAAHairlinePathRenderer.
Bug: skia:10540
Change-Id: I5625b3785ced1951a6a91e62e7aca3279e309989
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306183
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-07-28 14:18:01 +00:00
Brian Salomon
f7353515be Add nearest MIP filtering to GPU and wire up to SkImageShader
Change-Id: I04b949f8962d35aed5c5e8b4d4290dc5157073d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305404
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-07-28 14:04:13 +00:00
Brian Salomon
f7f5433a45 Remove GrSurfacePriv and GrRenderTargetPriv
No longer needed as GrSurface and GrRenderTarget are private.

Change-Id: I2ec653b2d9daa115233bb7eaa1f2b7f880772c0a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305730
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-07-28 13:52:07 +00:00
Leon Scroggins III
07b0099820 Remove "master" from lua files
Bug: chromium:1101491
Bug: b/161896447

Change-Id: I68f7f0ed65ac94550b167328e70d7bdb25a60189
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305964
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2020-07-28 13:35:37 +00:00
Leon Scroggins III
487d9d1908 Remove experimental/Networking code
Bug: chromium:1101491
Bug: b/161896447

The motivation here was to remove uses of the word "master". But this
code is in experimental/, and it doesn't look to be used (based on
code searches in Chromium, Android, and Google3). The last meaningful
changes were in 2011; other changes have just been upkeep.

Change-Id: I5993402008877ec8c12c0bca4cf09c02dc6de9ec
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305965
Auto-Submit: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-07-28 13:25:27 +00:00
Leon Scroggins III
1ff07066f9 Remove more references to "master"
Bug: chromium:1101491
Bug: b/161896447

Switch to more inclusive language, like "main", or remove where
simply unnecessary.

Change-Id: I36ef6ec631eb991f54f42b98887333f07c0984c2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306060
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-07-28 13:06:07 +00:00
skia-autoroll
6007f3bd6f Roll ANGLE from 3f851efa2adc to de309a42385f (16 revisions)
3f851efa2a..de309a4238

2020-07-28 cclao@google.com Vulkan: Make staging buffer per context
2020-07-28 nguyenmh@google.com Serializes GL context states and reformats frame_capture_utils
2020-07-27 jmadill@chromium.org Disable GPU time tracking in trace tests.
2020-07-27 cclao@google.com Vulkan: Add cache for driver uniform descriptor set
2020-07-27 syoussefi@chromium.org Vulkan: Fix render target's tracking of content defined
2020-07-27 m.maiya@samsung.com Vulkan: Enable VK_KHR_get_memory_requirements2 extension
2020-07-27 cclao@google.com Vulkan: Increase default uniform buffer size to 64K
2020-07-27 jmadill@chromium.org Tests: Add getProcAddress method to GLWindowBase.
2020-07-27 tobine@google.com Vulkan:Enable Validation best practices layer
2020-07-27 cclao@google.com Vulkan: Make mDefaultUniformStorage per ContextVk
2020-07-27 flibitijibibo@gmail.com Add GGP to Platform Support table
2020-07-27 msisov@igalia.com X11: cast native display type to XDisplay.
2020-07-27 nguyenmh@google.com Update CaptureAndReplay.md and Python script with links
2020-07-27 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 6a8a74986c35 to 3b2cd31c7400 (9 revisions)
2020-07-27 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-ValidationLayers from adf938680697 to 361fb5311b9b (13 revisions)
2020-07-27 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-Headers from 83825d55c7d5 to a0f1f5149d91 (1 revision)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC borenet@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: chromium:1085700
Tbr: borenet@google.com
Change-Id: Idfdb1345be0e0584b7923e2bc2240fb44002d96b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306198
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-07-28 05:06:37 +00:00
skia-autoroll
3e64bda30e Roll SwiftShader from 3b2cd31c7400 to 12c9d4ac61f2 (4 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/3b2cd31c7400..12c9d4ac61f2

2020-07-27 sugoi@google.com Manual changes required for SPIR-V update
2020-07-27 sugoi@google.com Merge changes Icf7b69da,I2c88ee38
2020-07-27 sugoi@google.com Merge changes Id54668de,I200b4417
2020-07-27 caramelli.devel@gmail.com Add Wayland support for Vulkan WSI

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 borenet@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: borenet@google.com
Change-Id: Ic37fe3a2bf19c497acc2ec026a85bff7fe8909cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306196
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-07-28 04:42:56 +00:00
skia-autoroll
b65d72be24 Roll dawn from d5a4775cfc77 to c11a19145f1f (3 revisions)
https://dawn.googlesource.com/dawn.git/+log/d5a4775cfc77..c11a19145f1f

2020-07-28 jiawei.shao@intel.com Support buffer lazy initialization before CopyTextureToBuffer
2020-07-27 enga@chromium.org Update max storage buffer bindings per stage to 6
2020-07-27 bryan.bernhart@intel.com Disable MultisampledRenderingTests on NV/D3D12.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC cwallez@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: cwallez@google.com
Change-Id: I50f144f6573b85f61d204e023268ff276fca5a00
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306197
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-07-28 04:37:56 +00:00
John Stiles
2c904ee90a Fix self-assignment error in SkBitSet.
Previously, assigning a SkBitSet to itself would zero out its size.

Change-Id: I2179e93ebc054626dee8366beaad78aa3d62b8c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306159
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-07-28 02:11:34 +00:00
John Stiles
b3038f8cb5 Remove layout(key) support for rects and points.
It's hard to imagine a scenario where it makes sense to recompile a
shader for every possible point or rect.

Change-Id: Ic4ca9a4826c4ae4b604705549170503c8ec580a6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306075
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-07-28 00:26:34 +00:00
John Stiles
738c271b4a Update DataEntry struct to properly support move semantics.
Previously, DataEntry supported only move-construction but not move-
assignment.

Change-Id: I1dc1b2bc90a3dfe4cd74d4a6c2986b7d777f84d3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306156
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2020-07-27 23:27:31 +00:00
John Stiles
45f5b031b3 Allow GLSL processor keys to use floats with full precision.
Previously, floats would be converted to int32 using a C-style cast when
added to a processor key, truncating any fractional component of the
value. This would cause two processors compiled with different floats to
generate the same key.

The float is now sk_bit_cast to a uint32 instead; this will preserve the
uniqueness of all values.

Additionally, the CPP generator will now abort if asked to add an
unsupported type to the processor key. Previously, it would do a C-style
cast to int32 for all unrecognized types and hope for the best.

Change-Id: I270ae8b3036497a9e9a77747255f763d9aad1927
Bug: skia:10486
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305572
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-07-27 22:14:50 +00:00
John Stiles
0307e9114c Remove unreferenced function SkStrDup.
This isn't used, and doesn't seem like we will have a use for it going
forward. The SkString class should be used to allocate strings.

Change-Id: I024d1d7edb5d4946fa9ecfd4e10af84afc8b5df8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306065
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-07-27 21:31:37 +00:00
John Stiles
9d5461f368 Add missing #includes for referenced types, and missing headers in GN.
These missing items were discovered when attempting a refactor.

Change-Id: Ibf905dacba14ebf5d3174f11c557741c7ab7848f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306061
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-07-27 21:00:55 +00:00
John Stiles
059ed6749d Update types in TextStyle to use member initialization syntax.
While doing a refactor, Clang issued some warnings about having copy-
constructors without assignment operators in some TextStyle classes.
Rewrote the code to minimize custom constructor/copy/assignment methods,
favoring C++11 member initialization syntax instead.

Change-Id: I4f0361ce38d4b0ada346b0ede4fcad4e2b686d67
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305959
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-07-27 20:53:15 +00:00