This is a reland of f84daa070f
Eliminate static initializer(disallowed in Chromium) by replacing
shader string living in anonymous namespace from type "std::string"
to char array.
Original change's description:
> CopyTextureForBrowser: Support color format conversion
>
> This CL enables blit from RGBA8Unorm soruce texture to dst texture that
> |CopyImageBitmapToTexture| supported dst format.
>
> BUG=dawn:465
>
> Change-Id: I99846cf8dc37bc89e0c168a3d86193bb3a0c0ebb
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44020
> Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
> Reviewed-by: Austin Eng <enga@chromium.org>
Bug: dawn:465
Change-Id: Ic3a156f5a20b217fd2aa5f86b01bad8ce77dc41c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45443
Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Still leave deprecated `depth` functional as there are some references in
other clients. Using `depth` and `depthOrArrayLayers` at the same time is
invalid. Add DeprecatedAPITests.
Bug: chromium:1176969
Change-Id: Ia06645e4f3c17588323dd36b11f9f3988b2e3aba
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44640
Commit-Queue: Shrek Shao <shrekshao@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Destroying the adapter without the debug layer installed
would crash the process upon access of the debug filters.
Bug: dawn:460
Change-Id: I04819c5136af780fd3b981857bd87d69d4abc9c7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45560
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
This is in preparation of removing all the DAWN_ENABLE_WGSL logic: the
ShaderModuleBase will have either mSpirv or mTintProgram set based on
UseTintGenerator.
Also improves the constness of some functions.
Also simplifies a bit ShaderModuleBase::Initialize.
Bug: dawn:706
Change-Id: Ib879e2aec8a004aeb8ac5dc6e1176b1667fc227d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45422
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Since it isn't used by anyone yet we can make a breaking change to
CreateRenderPipelineAsync to immediately start using
RenderPipelineDescriptor2.
Bug: dawn:1177501
Change-Id: I9f88c6fc1b325b7a9356536e2a071d4f17abd6ea
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45280
Commit-Queue: Brandon Jones <bajones@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Converts var<storage_buffer> to var<storage>
Adds in [[access(read_write)]] when no access qualifier was supplied.
BUG=dawn:699
Change-Id: I9da95366d0bb8734f1d134ee2dc764a7c16ef0cf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45300
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Also does some updates for the new BindGroupLayoutEntry and
VertexFormats that were missed previously.
Bug: chromium:1177501
Change-Id: Icb336590673158538a1586a1f8d5ace398fb381e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45282
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
The CL that fixed deprecation warning expectations landed at the same
time as the CL which added this expectation and broke CQ.
We shouldn't check deprecation warnings here now because the warnings
for CreateRenderPipeline are temporarily disabled.
Bug: none
Change-Id: I99a8b6643e64f87b2354058dbac9a236c51a2afd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45180
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
First add a new but unused entry depthOrArrayLayers to Extent3D
Bug: chromium:1176969
Change-Id: Ie106c2be7306dd0f3f739385b4bbc89bf2359603
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44982
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Shrek Shao <shrekshao@google.com>
The WGSL spec has been updated with 'Default Struct Layouts':
https://github.com/gpuweb/gpuweb/pull/1447
This removes the `[[offset(n)]]` decoration, and replaces it with two optional decorations: `[[size(n)]]` and `[[align(n)]]`, and a sensible set of sizes and alignments for each type.
Most `[[stride(n)]]` decorations have also been removed from arrays.
Bug: tint:626
Bug: tint:629
Change-Id: Ib0d2741f61ea943e6fb99d00cbb5cab2f97ae7be
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44280
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
This patch fixes a bug in the computation of temporary buffer size in
the implementation of the workaround for the T2T copy issue on Intel
GPUs.
With this tests all the T2T operation tests in WebGPU CTS will be able
to pass on Intel Gen9 and Gen9.5 GPUs.
BUG=chromium:1161355
TEST=dawn_end2end_tests
Change-Id: Ic4fb0c0056cf7b01720e47cc91c37a9f293cd194
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44840
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
BUG=dawn:714
Change-Id: Ic9c478ae708d48cf78228edf831badb7c401d131
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44924
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
BUG=dawn:712
Change-Id: Ie8b504a3566fae18a35029b63cf74f55dbe93b0d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44922
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
BUG=dawn:711
Change-Id: I566f2631721d10374027cf3959fce7eaf20a85c0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44921
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
BUG=dawn:710
Change-Id: I47dac524f66f84e2d5e3aa966935bd2ca9d03144
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44920
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
BUG=dawn:709
Change-Id: Ib829a834546588a2948179f487fc75b1bf09cf06
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44901
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Constructor arguments need to match the vector element type.
Tint has new validation that now checks for this.
Bug: tint:632
Change-Id: Ifcb994260c167e326ce5c0776915d44954dd8aa9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44767
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Integer literals need to be suffixed with `u` in order to be unsigned. This also includes 0.
Tint has new validation that now checks for this.
Bug: tint:632
Change-Id: I1af07590d93620561df1a0084521eb071d4af7ed
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44766
Commit-Queue: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
https://chromium.googlesource.com/vulkan-deps/+log/23a4efc36ed9..105af117f053
$ git log 23a4efc36..105af117f --date=short --no-merges --format='%ad %ae %s'
2021-03-15 chromium-autoroll Roll Vulkan-Tools from d1cd2653949d to 27c21248221f (1 revision)
2021-03-15 chromium-autoroll Roll Vulkan-ValidationLayers from f648a59e1c73 to 053e2bf22dd2 (3 revisions)
2021-03-15 chromium-autoroll Roll glslang from a36d91e5acdb to b2e5b5c559e1 (1 revision)
2021-03-14 chromium-autoroll Roll SPIRV-Tools from 9e93b165c7ac to 478754c00537 (2 revisions)
2021-03-12 chromium-autoroll Roll SPIRV-Cross from 2e000a0be4d2 to 84d1f8aa2a40 (1 revision)
2021-03-12 chromium-autoroll Roll SPIRV-Cross from 60aa24566e01 to 2e000a0be4d2 (1 revision)
2021-03-12 chromium-autoroll Roll SPIRV-Tools from 5d8c40399e1a to 9e93b165c7ac (1 revision)
2021-03-11 chromium-autoroll Roll Vulkan-ValidationLayers from 6678fcd67ed8 to f648a59e1c73 (1 revision)
2021-03-11 chromium-autoroll Roll Vulkan-ValidationLayers from 46674d1c7a49 to 6678fcd67ed8 (2 revisions)
2021-03-11 chromium-autoroll Roll Vulkan-ValidationLayers from 8b29a083c140 to 46674d1c7a49 (1 revision)
2021-03-11 chromium-autoroll Roll Vulkan-ValidationLayers from be60dd27b119 to 8b29a083c140 (1 revision)
2021-03-11 chromium-autoroll Roll SPIRV-Tools from 77eb2b608e0c to 5d8c40399e1a (1 revision)
2021-03-10 chromium-autoroll Roll glslang from 84e11a858c55 to a36d91e5acdb (1 revision)
2021-03-10 chromium-autoroll Roll SPIRV-Tools from f7cf3ec2a5f6 to 77eb2b608e0c (1 revision)
2021-03-10 chromium-autoroll Roll Vulkan-Tools from 461b33cfa272 to d1cd2653949d (1 revision)
2021-03-10 chromium-autoroll Roll Vulkan-Loader from 237d3dcb5c67 to 1353e80d87b4 (1 revision)
2021-03-10 chromium-autoroll Roll SPIRV-Tools from 1746ed39d5b9 to f7cf3ec2a5f6 (1 revision)
2021-03-10 chromium-autoroll Roll SPIRV-Tools from 4a59fd47634f to 1746ed39d5b9 (1 revision)
2021-03-09 chromium-autoroll Roll Vulkan-ValidationLayers from 6fdf3d02d2be to be60dd27b119 (1 revision)
2021-03-09 chromium-autoroll Roll Vulkan-ValidationLayers from c0eb52829fe1 to 6fdf3d02d2be (1 revision)
2021-03-09 chromium-autoroll Roll Vulkan-ValidationLayers from d093e529c0e1 to c0eb52829fe1 (1 revision)
2021-03-09 chromium-autoroll Roll Vulkan-ValidationLayers from d1de19fea50f to d093e529c0e1 (1 revision)
2021-03-09 chromium-autoroll Roll SPIRV-Cross from fb1f295aaf40 to 60aa24566e01 (1 revision)
2021-03-09 chromium-autoroll Roll SPIRV-Tools from c6da5e343c60 to 4a59fd47634f (1 revision)
2021-03-09 chromium-autoroll Roll SPIRV-Cross from d57ab68a2198 to fb1f295aaf40 (3 revisions)
2021-03-09 chromium-autoroll Roll glslang from e3182379bab6 to 84e11a858c55 (1 revision)
2021-03-08 chromium-autoroll Roll glslang from c7c7982ebee9 to e3182379bab6 (1 revision)
2021-03-08 chromium-autoroll Roll Vulkan-ValidationLayers from bda4a85219e3 to d1de19fea50f (1 revision)
2021-03-08 chromium-autoroll Roll Vulkan-ValidationLayers from 2ece8add63fe to bda4a85219e3 (1 revision)
2021-03-08 chromium-autoroll Roll SPIRV-Tools from e6a9f4e4306a to c6da5e343c60 (1 revision)
2021-03-08 chromium-autoroll Roll glslang from 159b05708055 to c7c7982ebee9 (1 revision)
2021-03-08 chromium-autoroll Roll Vulkan-ValidationLayers from faa7a526b033 to 2ece8add63fe (2 revisions)
2021-03-08 chromium-autoroll Roll Vulkan-Headers from 4fe5828a0295 to 89d366355e6f (1 revision)
2021-03-05 chromium-autoroll Roll Vulkan-ValidationLayers from 392ba9fe7c98 to faa7a526b033 (4 revisions)
2021-03-05 chromium-autoroll Roll Vulkan-ValidationLayers from 0ec2c7a6935a to 392ba9fe7c98 (2 revisions)
2021-03-05 chromium-autoroll Roll SPIRV-Tools from 7d514cf1c7ab to e6a9f4e4306a (1 revision)
2021-03-05 chromium-autoroll Roll SPIRV-Tools from f7043c0de671 to 7d514cf1c7ab (1 revision)
2021-03-04 chromium-autoroll Roll Vulkan-ValidationLayers from a4cb494beeca to 0ec2c7a6935a (1 revision)
2021-03-03 chromium-autoroll Roll SPIRV-Tools from 43cfa9bc1ddb to f7043c0de671 (1 revision)
2021-03-03 chromium-autoroll Roll Vulkan-Tools from 88ea55de928a to 461b33cfa272 (2 revisions)
2021-03-03 chromium-autoroll Roll Vulkan-ValidationLayers from 030089e86335 to a4cb494beeca (2 revisions)
2021-03-03 chromium-autoroll Roll Vulkan-ValidationLayers from 79f0658e9fba to 030089e86335 (1 revision)
2021-03-03 chromium-autoroll Roll SPIRV-Tools from 939bc0260393 to 43cfa9bc1ddb (1 revision)
2021-03-03 chromium-autoroll Roll Vulkan-ValidationLayers from b95891b0b187 to 79f0658e9fba (1 revision)
2021-03-02 chromium-autoroll Roll Vulkan-ValidationLayers from 476f5e2a9f65 to b95891b0b187 (1 revision)
2021-03-02 chromium-autoroll Roll Vulkan-Loader from c5678a03db38 to 237d3dcb5c67 (2 revisions)
2021-03-02 chromium-autoroll Roll SPIRV-Tools from 0bd920eb9d44 to 939bc0260393 (1 revision)
2021-03-02 chromium-autoroll Roll Vulkan-Headers from c428484bc886 to 4fe5828a0295 (1 revision)
2021-03-02 chromium-autoroll Roll glslang from 0eca4130929e to 159b05708055 (1 revision)
2021-03-02 chromium-autoroll Roll Vulkan-ValidationLayers from bbe724bcf140 to 476f5e2a9f65 (1 revision)
2021-03-01 chromium-autoroll Roll glslang from 42ddfbd3d555 to 0eca4130929e (1 revision)
2021-03-01 chromium-autoroll Roll Vulkan-Headers from ac1702076683 to c428484bc886 (1 revision)
2021-03-01 chromium-autoroll Roll Vulkan-ValidationLayers from bc87f06a1718 to bbe724bcf140 (5 revisions)
2021-03-01 chromium-autoroll Roll glslang from e04a046ce7c2 to 42ddfbd3d555 (1 revision)
2021-03-01 chromium-autoroll Roll Vulkan-ValidationLayers from bf6f9a33cff0 to bc87f06a1718 (1 revision)
2021-03-01 chromium-autoroll Roll Vulkan-ValidationLayers from 9b741d501968 to bf6f9a33cff0 (2 revisions)
2021-03-01 chromium-autoroll Roll Vulkan-ValidationLayers from 94d71a5691b3 to 9b741d501968 (1 revision)
2021-03-01 chromium-autoroll Roll SPIRV-Tools from d28186db93d8 to 0bd920eb9d44 (1 revision)
2021-03-01 chromium-autoroll Roll Vulkan-Headers from a6a971aa64b3 to ac1702076683 (1 revision)
2021-03-01 chromium-autoroll Roll Vulkan-Headers from 1d99b835ec3c to a6a971aa64b3 (1 revision)
2021-02-27 chromium-autoroll Roll glslang from 3839066ee47a to e04a046ce7c2 (2 revisions)
2021-02-26 chromium-autoroll Roll glslang from 51d672b8a831 to 3839066ee47a (1 revision)
2021-02-26 chromium-autoroll Roll Vulkan-ValidationLayers from 4fdcd0eebfed to 94d71a5691b3 (2 revisions)
2021-02-26 chromium-autoroll Roll SPIRV-Tools from ef3290bbea35 to d28186db93d8 (1 revision)
2021-02-26 chromium-autoroll Roll SPIRV-Cross from 621884d70917 to d57ab68a2198 (1 revision)
2021-02-25 chromium-autoroll Roll Vulkan-ValidationLayers from 17708d0dc52f to 4fdcd0eebfed (1 revision)
2021-02-25 chromium-autoroll Roll glslang from 00c6d2d4a71c to 51d672b8a831 (1 revision)
2021-02-25 chromium-autoroll Roll glslang from 9801a9e42aeb to 00c6d2d4a71c (1 revision)
2021-02-24 chromium-autoroll Roll Vulkan-ValidationLayers from b1bf16e1c847 to 17708d0dc52f (2 revisions)
2021-02-24 chromium-autoroll Roll glslang from 2e99822c148c to 9801a9e42aeb (1 revision)
2021-02-24 chromium-autoroll Roll Vulkan-ValidationLayers from 521bc47360bf to b1bf16e1c847 (2 revisions)
2021-02-23 chromium-autoroll Roll Vulkan-ValidationLayers from b1c48517987f to 521bc47360bf (3 revisions)
2021-02-23 chromium-autoroll Roll Vulkan-ValidationLayers from dd3e73f3a025 to b1c48517987f (2 revisions)
2021-02-23 chromium-autoroll Roll glslang from 6f7a8ebf76cb to 2e99822c148c (1 revision)
2021-02-23 chromium-autoroll Roll Vulkan-ValidationLayers from 0d7751a78305 to dd3e73f3a025 (1 revision)
2021-02-23 chromium-autoroll Roll Vulkan-ValidationLayers from 9ce7c8e67684 to 0d7751a78305 (3 revisions)
2021-02-23 chromium-autoroll Roll Vulkan-ValidationLayers from 7245199c91ac to 9ce7c8e67684 (1 revision)
2021-02-23 chromium-autoroll Roll glslang from c8b95db65ec3 to 6f7a8ebf76cb (1 revision)
2021-02-23 chromium-autoroll Roll glslang from 5421877c380d to c8b95db65ec3 (1 revision)
2021-02-22 chromium-autoroll Roll Vulkan-ValidationLayers from 456634a51059 to 7245199c91ac (2 revisions)
2021-02-22 chromium-autoroll Roll glslang from e56beaee7368 to 5421877c380d (1 revision)
2021-02-22 chromium-autoroll Roll Vulkan-ValidationLayers from b1106d3a41b7 to 456634a51059 (1 revision)
2021-02-22 chromium-autoroll Roll Vulkan-ValidationLayers from 7ddbb307e52b to b1106d3a41b7 (1 revision)
2021-02-22 chromium-autoroll Roll Vulkan-ValidationLayers from 1db6edcaeed2 to 7ddbb307e52b (1 revision)
2021-02-19 chromium-autoroll Roll Vulkan-ValidationLayers from a3705f43f4ea to 1db6edcaeed2 (5 revisions)
2021-02-19 chromium-autoroll Roll Vulkan-ValidationLayers from 4edde62bf0c8 to a3705f43f4ea (1 revision)
2021-02-19 chromium-autoroll Roll SPIRV-Tools from 1b35745ad1c9 to ef3290bbea35 (1 revision)
2021-02-18 chromium-autoroll Roll glslang from 51b86c1a2b77 to e56beaee7368 (1 revision)
2021-02-18 chromium-autoroll Roll SPIRV-Tools from 05cda81aba8c to 1b35745ad1c9 (2 revisions)
TBR=enga@chromium.org
Created with:
roll-dep third_party/vulkan-deps
Change-Id: I777f5dee01fc967693097497d5e1d3be3ee2aac8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44762
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
It was causing issues building Dawn in Skia. The error message helpfully
suggests using WideCharToMultiByte instead.
Bug: dawn:706
Change-Id: I87dee1192123f49cc8e7243a29df446389454df4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44560
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>