Commit Graph

8385 Commits

Author SHA1 Message Date
James Price e6c76095fc builtins: Add smoothstep, deprecate smoothStep
Bug: tint:1483
Change-Id: I8702933312a7e46f82745f232214910433485fe5
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/85261
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-03-30 17:57:39 +00:00
James Price 2ec98d961c builtins: Use commas for struct members in tests
The test files were already updated manually in a previous change, so
we just need to update the template file to match.

Bug: tint:1475
Change-Id: I6f1b3d3a7a3df014b58e67ec2645b1dfcc275de1
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/85260
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-03-30 17:57:39 +00:00
Stephen White 9be06c8d23 GL: fix clear-on-init of depth/stencil textures.
Disable the scissor test during clear.

Change-Id: Ia6945304c257867ed5cb6a6ae0c2c49998a33ca7
Bug: dawn:1340
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85143
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-03-30 10:26:44 +00:00
dawn-autoroll cd2a3ffcc0 Roll vulkan-deps from e38e969e37fe to f9e3d5a50ca2 (4 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/e38e969e37fe..f9e3d5a50ca2

Changed dependencies:
* vulkan-loader: 5edd2f06d4..336508b06b
* vulkan-validation-layers: b0171bb028..15e2373828

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

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: I26f85002ee90abac3b8327528c8aa05a35a9ef70
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85201
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-30 09:13:34 +00:00
Dawn Autoroller c6e3c9459e Roll ANGLE from a161b08b4a9a to 9a0b306dcc6d (7 revisions)
a161b08b4a..9a0b306dcc

2022-03-30 aeubanks@google.com Remove set but otherwise unused variables
2022-03-30 syoussefi@chromium.org Vulkan: Use storeOp=None more opportunistically
2022-03-29 syoussefi@chromium.org Vulkan: Remove suppression of fixed VVL errors
2022-03-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 8da5cdbde887 to e38e969e37fe (4 revisions)
2022-03-29 lubosz.sarnecki@collabora.com Tests: Add Shadowgun Legends trace.
2022-03-29 geofflang@google.com Reland: Emulate RGB10 (no alpha) on desktop OpenGL.
2022-03-29 steven@valvesoftware.com Vulkan: add tests for clearing/drawing after invalidate

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

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: I2b72ea3534d427d5efd11d4a67ddd104d26ee076
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85181
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-30 03:35:33 +00:00
Brandon Jones bf0f2c1849 Stencil8 support fixups
Addressing issues that showed up after the initial stencil8 CL landed.

D3D12:
 - Selecting the `all` aspect of a `stencil8` texture was ASSERTing

Metal:
 - Using the `stencil` aspect of a `stencil8` texture was hitting an
   UNREACHABLE().

Bug: dawn:666
Change-Id: Ic2931dbb915e109727ca24e3216a661fba84e508
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85021
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
2022-03-29 23:01:54 +00:00
dawn-autoroll 431926670f Roll vulkan-deps from 8da5cdbde887 to e38e969e37fe (4 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/8da5cdbde887..e38e969e37fe

Changed dependencies:
* vulkan-headers: b6554a7ff3..0c5928795a
* vulkan-validation-layers: 4bf3f07497..b0171bb028

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

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: Ifb945b41594b124fd9112f0e9f2b58700bb10dc5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85142
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-29 20:04:53 +00:00
Corentin Wallez 982188ac16 Rename Surface::Type::Xlib to XlibWindow for consistency.
Bug: None
Change-Id: I2750c2fc86cc893d6f124cf7d539a85458bd4105
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84761
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-03-29 19:32:23 +00:00
Stephen White fd41f30c0b OpenGL: refactor FramebufferTexture* calls.
Change-Id: Iee67027431d791d6425e0cc502f6b6a23bc160d6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85141
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-03-29 18:52:23 +00:00
AlexVestin 1e627e23f3 Android: Fix incorrect variable name
Bug: dawn:286

Change-Id: I2ad301a243112db1cc11ef83e241eab0812a197f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85062
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-03-29 18:10:13 +00:00
Stephen White b5c5df50ab Implement support for depth24stencil8 on OpenGL.
Covered by existing tests.

Change-Id: Ibb6daf8cd195474560a306e830d69c484579ae1c
Bug: dawn:1338
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85140
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-03-29 16:34:23 +00:00
Antonio Maiorano 123761f40f Fix scripts/extract.py failing on Windows
Script was opening file in text mode and failing with:

UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position
299: character maps to <undefined>

Fixed by opening file in binary mode.

Change-Id: I4db670438164116d9a41eb9e7e725868037c17fc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85161
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-03-29 16:30:43 +00:00
Corentin Wallez dad225a896 Fix last reantrant object creation.
Fixed: dawn:723
Change-Id: I9697686a3a8a8d31539c04cd3e6073744152ff68
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85120
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-03-29 16:13:53 +00:00
Stephen White f32ae5b680 GLES: fix texture-to-texture copy with offset src or dest region.
glBlitFramebuffer() takes min and max coordinates, not min and size.

Bug: dawn:1084

Change-Id: I7b8b53ecd9c5ade20d4d7a909bd134c13a2d960b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85081
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-03-29 16:11:34 +00:00
Dawn Autoroller de6486f9f6 Roll ANGLE from a02fa8a015e5 to a161b08b4a9a (6 revisions)
a02fa8a015..a161b08b4a

2022-03-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 737665b8eab1 to 8da5cdbde887 (2 revisions)
2022-03-29 syoussefi@chromium.org Vulkan: Track LOAD/STORE_OP_NONE in perf counters
2022-03-29 zequanwu@google.com Fix -Wunused-but-set-variable
2022-03-29 steven@valvesoftware.com Vulkan: always respect deferred clears in render pass
2022-03-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from ea9806003d9e to bc5bec05c369 (15 revisions)
2022-03-28 cnorthrop@google.com Vulkan: Add tessellation to GetPipelineStage helper

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

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: I6d6e74fc69ca723b40f4977206e3ac342b3b9864
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85001
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-29 13:14:43 +00:00
Stephen White 3c44ba8376 OpenGL: refactor texture allocation.
Move texture allocation in an AllocateTexture() local.

Use the GL target to determine the choice of allocation call, not
the Dawn TextureDimension. This leaves TargetForTexture() and
TargetForTextureViewDimension() as the authorities on Dawn -> GL
conversion.

Change-Id: Ia31fbba9a8e71a9ce8dd9c89676dbc51d8848bb5
Bug: dawn:593
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85080
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-03-29 12:24:16 +00:00
Corentin Wallez e690a6654a Make SwapChain use a CreateView() instead of APICreateView()
This simplifies reference management and make the swapchain's reentrant
code avoid APIEntryPoints.

Bug: dawn:723
Change-Id: I6c456b9ec349c73d783dbb12a284f322d0be4e1a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84763
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-03-29 09:35:53 +00:00
Corentin Wallez 3d45533446 Remove TODOs in samples to "release stuff".
Now WebGPU objects can be destroyed in any order without the risk of
causing segfaults.

Bug: None
Change-Id: I00aecf49aa65308c13ab0accc69152fa1361d714
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84768
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-03-29 08:24:45 +00:00
Shaobo 8e414a140b Release D3D11on12Resource Cache after Texture::Destroy() has been called
On D3D12 backend, external texture holds mD3D11on12Resource which caches
D3D11on12Resources and guarding by refptr. The texture will released this ref
until destructor works.

This model leaks the gpu memory if client fails to release all the ref to
the texture.

Instead, external texture also provides a method called "Destroy". It is
called more eagerly and means the external texture is in the end of lifecycle.

So thid CL moves the ref reset of D3D11on12Resource into Destroy(). This prevents
unexpected gpu memory leak caused by client missing ref release call.

Bug: 1308405
Change-Id: I253e1eda192256e4bd1c470e26dcc6af3c234447
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85000
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
2022-03-29 08:14:53 +00:00
Corentin Wallez e055ae5b52 Make reeantrant creation calls returning Ref for command encoding.
Fixed: dawn:723
Change-Id: I953e0aa7d663f68e15c021448a90ecf799fef891
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84766
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-03-29 08:10:03 +00:00
Corentin Wallez 46d5480d20 Metal: Add ASTC and ETC2 texture compression support.
Fixed: dawn:1176

Change-Id: I7655ef98151a1bb78d23be0357a68cdd90e5078a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84481
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-03-29 07:58:23 +00:00
Corentin Wallez fc1a2ae904 dawn_node: Implement requesting limits
And reject the device creation promise with an error that looks like an
OperationError to make the CTS happy.

Bug: dawn:1242
Change-Id: I43ec3ebc030cb4178520c9174e164a42b94f6bf8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85060
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-03-29 07:45:03 +00:00
dawn-autoroll 21163f1ade Roll vulkan-deps from 6cb5b8e60e21 to 8da5cdbde887 (6 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/6cb5b8e60e21..8da5cdbde887

Changed dependencies:
* glslang: 870c75479f..abbe466451
* spirv-tools: 7841afd98e..bd325d2984
* vulkan-loader: b383c5131e..5edd2f06d4
* vulkan-validation-layers: 70835ff23b..4bf3f07497

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

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: I1bc2e9edff1ea3ec5f674cf2d65a1033c7fafa0d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85023
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-29 05:52:03 +00:00
Dawn Autoroller d6cd1ad668 Roll Tint from 3b671cb377 to 66d6668372 (4 revisions)
https://dawn.googlesource.com/tint.git/+log/3b671cb377e9..66d6668372d9

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

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: Icaf19d36a56ab5964b407c13dd81ad34226c4c8c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85103
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-29 02:57:44 +00:00
Dawn Autoroller c0c7a9abd1 Roll SwiftShader from dc3b5e209ef1 to bc5bec05c369 (14 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/dc3b5e209ef1..bc5bec05c369

2022-03-28 capn@google.com Update SPIR-V Tools to bd325d298
2022-03-26 swiftshader.regress@gmail.com Regres: Update test lists @ 40b410f4
2022-03-25 srisser@google.com Update simple limits for Vulkan's 2022 profile
2022-03-25 sugoi@google.com Add new core Vulkan 1.3 structures
2022-03-25 sugoi@google.com Use template functions for core Vulkan 1.3 properties
2022-03-25 sugoi@google.com Fix SPV_EXT_shader_stencil_export
2022-03-25 sugoi@google.com VK_KHR_shader_terminate_invocation implementation
2022-03-25 sugoi@google.com VK_KHR_shader_terminate_invocation promoted structures
2022-03-25 sugoi@google.com VK_EXT_shader_demote_to_helper_invocation support
2022-03-25 sugoi@google.com VK_EXT_shader_demote_to_helper_invocation promoted structures
2022-03-24 swiftshader.regress@gmail.com Regres: Update test lists @ 040e2534
2022-03-23 capn@google.com Force-inline all SPIR-V function calls
2022-03-23 capn@google.com Use SwiftShader's copy of SPIRV-Tools for GN builds
2022-03-23 capn@google.com Update SPIR-V Tools to 9668d2e4e

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

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: Ieccca52fe1011f269d6973537c01571621b4ccf4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85101
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-29 02:56:12 +00:00
Loko Kung b8a4f34ed9 Enables device.destroy API now that CTS tests have been implemented.
Bug: dawn:628
Change-Id: I52e9c2d04c605b64a5fd80762891fc44e2c2c53a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84921
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Loko Kung <lokokung@google.com>
2022-03-29 01:23:22 +00:00
Dawn Autoroller 0d7772208f Roll ANGLE from 7a85d114b5a3 to a02fa8a015e5 (5 revisions)
7a85d114b5..a02fa8a015

2022-03-28 steven@valvesoftware.com Vulkan: mark image contents defined on clear-invalidate-clear
2022-03-28 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 9fd63df2bc48 to 737665b8eab1 (13 revisions)
2022-03-28 ianelliott@google.com Add back another Pixel-6-specific FAIL expectation
2022-03-28 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 823d49cf5f5e to fbc38865227d (6 revisions)
2022-03-28 hans@chromium.org Remove a set but otherwise unused var in DynamicImage2DHLSL.cpp

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

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: I709833f45a572fd8183afc4a1e05b0a901ac4845
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85102
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-29 00:07:52 +00:00
Antonio Maiorano 66d6668372 Implement discard semantics
Implement new transform UnwindDiscardFunctions that replaces discard
statements with setting a module-level bool, adds a check and return for
this bool after every function call that may discard, and finally
invokes a single function that executes a discard from top-level
functions.

Regenerated tests and remove HLSL ones that used to fail FXC because it
had difficulty with discard.

Bug: tint:1478
Bug: chromium:1118
Change-Id: I09d680f59e2d5d0cad907bfbbdd426aae76d4bf3
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/84221
Reviewed-by: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-03-28 20:51:32 +00:00
Antonio Maiorano ade4e74ec4 test-runner: add 'fxc-and-dxc' arg to run both FXC and DXC for HLSL
When enabled, for each test, FXC is run first, and if it succeeds, DXC
is run. If both succeed, the test passes, otherwise it fails. This
option allows us to get meaningful feedback from running this script
against HLSL files, as well as taking advantage of the feature to delete
skips for tests that now pass (both FXC and DXC in this case).

Change-Id: Iae2ebfda7bd92f1b94893e648e2d1fb1f6979b39
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/84680
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-03-28 20:17:22 +00:00
Brandon Jones 8fa1eaf840 Better errors for incompatible attachment states
Now the message will report the details of both the expected and
incompatible attachment states, helping developers see what the source
of the error was.

Bug: dawn:563
Change-Id: I58eea166cb2da634f0295fb4660c982f96c62a2d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84940
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
2022-03-28 20:07:16 +00:00
Ben Clayton 6f8ff744da dawn/node: Fetch and use node 16.13
Fixed: dawn:1329
Change-Id: Ifbc97961f1cafa804908d24d61da72ce0f59dae0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85061
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-03-28 19:55:42 +00:00
Corentin Wallez ac0f60c307 Fix one APICreateBuffer use in CommandBufferVk.
Bug: dawn:723
Change-Id: I48c1c2594ee8b86dfe11b5dcaedcdd8170868def
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84765
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
2022-03-28 18:47:02 +00:00
Corentin Wallez 45b4893326 Remove TODOs that BGLD3D/Vk need updates for external textures
External textures are handled purely in the frontend so there is no need
to update the backend BGL to handle them. The TODOs can just be removed.

Bug: dawn:728
Change-Id: I319cf2a79bdc06a1457f3ec5746b07b5d05eef62
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84767
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
2022-03-28 18:38:14 +00:00
Austin Eng db68059da8 Unskip some CTS tests using the new harness
Bug: chromium:1306640
Change-Id: I1dd1d60490fdf2670d4a7ac189065eadf002e3cb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84781
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-03-28 18:13:22 +00:00
Ryan Harrison 3374f43c31 Normalize DEPS to ease merging with Dawn
- Format specific targets to have the hash in the target rule instead
  of a variable.
- Only have the base part of the URL in a variable
- Use vulkan-deps instead of individual DEPS (spirv-tools,
  spirv-headers & glslang)

BUG=tint:1481

Change-Id: I871a656e26050698da2c77f4f39fec94a9c4f8a4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/84723
Reviewed-by: David Neto <dneto@google.com>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
2022-03-28 18:01:02 +00:00
Dawn Autoroller 9f77bb15bd Roll Tint from 444e051faa to 3b671cb377 (1 revision)
https://dawn.googlesource.com/tint.git/+log/444e051faa2e..3b671cb377e9

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

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: I2072dee980811472e638d857daf81b247ecc2427
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85040
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-28 16:15:52 +00:00
dawn-autoroll 31bc299edf Roll vulkan-deps from e4527c95aeeb to 6cb5b8e60e21 (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/e4527c95aeeb..6cb5b8e60e21

Changed dependencies:
* spirv-tools: 05745cc9d4..7841afd98e

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

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: alanbaker@google.com
Change-Id: Ic8a5b569af4a4c371b61a1b0e36edd4a9260f0ba
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85020
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-28 16:07:43 +00:00
Antonio Maiorano 9e5484264a Implement mixed vector-scalar float % operator
W3C consensus on https://github.com/gpuweb/gpuweb/issues/2450
Spec change: https://github.com/gpuweb/gpuweb/pull/2495

Bug: tint:1370
Change-Id: I85bb9c802b0355bc53aa8dbacca8427fb7be1ff6
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/84880
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-03-28 14:36:31 +00:00
James Price 3b671cb377 wgsl: Separate struct members with commas
Use of semicolons is still supported, but deprecated.

Also updates the parsing methods for structures to better match the
WGSL grammar.

Bug: tint:1475
Change-Id: I7675ba42c13f91080b0ac173c352e0092021f80b
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/84380
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
2022-03-28 14:31:22 +00:00
Dawn Autoroller 70ae85f703 Roll ANGLE from bd173f0e8791 to 7a85d114b5a3 (1 revision)
bd173f0e87..7a85d114b5

2022-03-27 syoussefi@chromium.org Use [[nodiscard]] on RAII classes

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

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: jrprice@google.com
Change-Id: Ie39b9df4085d9e323c4bdf21bcbc53f5b6967726
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84986
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-28 09:28:22 +00:00
Shaobo 0a6c2b0f99 Wrap multiplanar iosurface in wgpuTexture
This CL supports wrapping multiplanar iosurface in wgpuTexture.
It also provides mechanism to create TextureView on each planes.

Bug:1307194

Change-Id: I5e82f47944fdea542abba097240c880628b1181f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/81482
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
2022-03-28 06:59:22 +00:00
Dawn Autoroller 6cacdc460a Roll ANGLE from e3c449196324 to bd173f0e8791 (1 revision)
e3c4491963..bd173f0e87

2022-03-27 gert.wollny@collabora.com Capture/Replay: limit per shader image uniforms when capturing

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

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: jrprice@google.com
Change-Id: Ic126d0d15019964c7c52f8f02b5e7750581eb0a4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84985
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-27 19:00:11 +00:00
Dawn Autoroller 54acc2c584 Roll ANGLE from 041c4c6d285c to e3c449196324 (2 revisions)
041c4c6d28..e3c4491963

2022-03-26 cnorthrop@google.com Debug: Add angle_enable_trace_events
2022-03-26 cnorthrop@google.com Fix handling of incomplete CubeMapArray textures

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

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: jrprice@google.com
Change-Id: I6dbc7e247c6fb4c1f0dab581620058e9feffe3c1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84984
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-27 06:01:12 +00:00
Dawn Autoroller d3cac1fa69 Roll ANGLE from 04680183f6f4 to 041c4c6d285c (3 revisions)
04680183f6..041c4c6d28

2022-03-26 syoussefi@chromium.org Vulkan: Track color attachment usage like D/S in render pass
2022-03-25 ianelliott@google.com Reland Remove unnecessary suppressions for Pixel6 dEQP
2022-03-25 syoussefi@chromium.org Vulkan: Dirty bits for depth/stencil access and feedback loop

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

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: jrprice@google.com
Change-Id: Idebde635e336ee30e63567098796a0f9fafd8bce
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84980
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-26 16:16:47 +00:00
dawn-autoroll 2c0a19cb18 Roll vulkan-deps from 9fd63df2bc48 to e4527c95aeeb (8 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/9fd63df2bc48..e4527c95aeeb

Changed dependencies:
* glslang: f1d286fcc2..870c75479f
* spirv-tools: 48c8363f0a..05745cc9d4
* vulkan-loader: ea503f36e6..b383c5131e
* vulkan-validation-layers: 26f222cf8b..70835ff23b

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

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: jrprice@google.com
Change-Id: Iebd34ba7030ee8768bf442482d3bdd06c193800c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84922
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-26 03:44:07 +00:00
Brandon Jones 2977100ee1 Format texture sample types and aspects in errors
Should help make a couple of previously ambiguous error messages clearer
for developers.

Bug: dawn:1259
Change-Id: I09a4598153d3340407c5a318dcf6be6d03efd2bd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84780
Commit-Queue: Brandon Jones <bajones@chromium.org>
Auto-Submit: Brandon Jones <bajones@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-03-26 01:44:16 +00:00
Dawn Autoroller d7e1a2f511 Roll ANGLE from 45543295b758 to 04680183f6f4 (11 revisions)
45543295b7..04680183f6

2022-03-25 cnorthrop@google.com Capture/Replay: Fixes for Car Chase
2022-03-25 senorblanco@chromium.org D3D: generalize more stuff (mImages, mReadonlyImages).
2022-03-25 senorblanco@chromium.org D3D: generalize Image2D, ReadonlyImage2D and AtomicCounter.
2022-03-25 senorblanco@chromium.org D3D: more generalization: cached Image2DBindLayouts.
2022-03-25 hans@chromium.org Suppress -Wunused-but-set-variable in Bison-generated code
2022-03-25 senorblanco@chromium.org D3D: generalize the Image2DBindLayoutCache to be per-shader.
2022-03-25 senorblanco@chromium.org D3D: generalize mImage2DUniforms.
2022-03-25 senorblanco@chromium.org D3D: generalize DynamicHLSL calls to take a shaderType.
2022-03-25 romanl@google.com Migrate capture_replay sample to trace_fixture
2022-03-25 ianelliott@google.com Remove unnecessary SKIPs for Pixel4* dEQP tests
2022-03-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 3ef0c7c00c08 to 9fd63df2bc48 (6 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-dawn-autoroll
Please CC jrprice@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: jrprice@google.com
Change-Id: I8b6150fccb2f561a235ed4f04df0aec46fa085f6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84828
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-26 01:42:29 +00:00
Stephen White 57b7db9c74 OpenGL: refactor texture-to-texture copies into UtilsGL.
Change-Id: I6210b192c0676dacecc0d0b1026905b31e869d72
Bug: dawn:593
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84440
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-03-25 17:29:57 +00:00
Dawn Autoroller e45ff6a4b3 Roll Tint from 1006b06c7d to 444e051faa (1 revision)
https://dawn.googlesource.com/tint.git/+log/1006b06c7d4a..444e051faa2e

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

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

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/main/autoroll/README.md

Bug: None
Tbr: jrprice@google.com
Change-Id: I7556d3226567c94bff47904c3ee24af97936aa21
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84860
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-25 15:43:17 +00:00
Alexander Vestin f2556ab35c Initial Android surface
Bug: dawn:286

Change-Id: I50b45706f031254ac5beba5c07c3c4c3d7f9ea12
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84200
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-03-25 13:18:46 +00:00