BufferConsumer wraps a buffer pointer and size and exposes a
limited number of operations to get data while decrementing
the remaining available size. This makes it so that code
reading or writing into a buffer cannot easily consume more
bytes than available.
This CL guards against serialization overflows using
BufferConsumer, and it implements GetPtrFromBuffer
(for deserialization) on top of BufferConsumer. A future patch
will make the rest of the deserialization code use BufferConsumer.
Bug: dawn:680
Change-Id: Ic2bd6e7039e83ce70307c2ff47aaca9891c16d91
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41780
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
This version renames HasBackendType() -> HasBackendTypeFilter() and
adds a test, similar to HasVendorIdFilter().
Bug: dawn:687
Change-Id: I444d3cb668eb7402ba45f14aaec290390f4c3944
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41900
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Roll third_party/shaderc/ 6216d098d..8d081127e (11 commits)
6216d098d8..8d081127ee
$ git log 6216d098d..8d081127e --date=short --no-merges --format='%ad %ae %s'
2021-02-09 quaresma.jose cmake: add option to skip build the examples (#1170)
2021-02-01 dneto Fix typo
2021-01-28 dneto Improve file+line parsing from Glslang messages
2021-01-18 rharrison Deprecate WebGPU SPIRV support (#1167)
2021-01-06 rharrison Roll 4 dependencies (#1165)
2020-12-09 rharrison Start shaderc v2020.5
2020-12-09 rharrison Finalize v2020.4
2020-12-09 rharrison Updated CHANGES
2020-12-09 rharrison Rolling 5 dependencies (#1161)
2020-12-07 dneto Update SPIRV-Tools, SPIRV-Headers, glslang with raytracing fixes
2020-11-12 dneto copyright check: Exclude .venv in source tree
Roll third_party/vulkan-deps/ c493c6112..0d42e8392 (141 commits)
https://chromium.googlesource.com/vulkan-deps/+log/c493c6112021..0d42e83928f7
$ git log c493c6112..0d42e8392 --date=short --no-merges --format='%ad %ae %s'
2021-02-17 chromium-autoroll Roll SPIRV-Cross from 92d379bab456 to 6f1f6775f35b (1 revision)
2021-02-17 chromium-autoroll Roll SPIRV-Cross from bae17e820438 to 92d379bab456 (1 revision)
2021-02-16 chromium-autoroll Roll SPIRV-Tools from c79edd260c2b to 05cda81aba8c (1 revision)
2021-02-16 chromium-autoroll Roll Vulkan-ValidationLayers from f9eec56cc82f to 74aa762a95df (1 revision)
2021-02-16 chromium-autoroll Roll Vulkan-ValidationLayers from 6302c649ca95 to f9eec56cc82f (1 revision)
2021-02-16 chromium-autoroll Roll Vulkan-Tools from 6952dfcc1df5 to 88ea55de928a (1 revision)
2021-02-16 chromium-autoroll Roll Vulkan-ValidationLayers from 97e718edc638 to 6302c649ca95 (2 revisions)
2021-02-16 chromium-autoroll Roll Vulkan-ValidationLayers from 47bbe90d54c8 to 97e718edc638 (1 revision)
2021-02-16 chromium-autoroll Roll Vulkan-ValidationLayers from c62432713f23 to 47bbe90d54c8 (1 revision)
2021-02-16 chromium-autoroll Roll SPIRV-Cross from 5789e3eed9bc to bae17e820438 (1 revision)
2021-02-15 chromium-autoroll Roll glslang from b0f8a0c3abb9 to 51b86c1a2b77 (1 revision)
2021-02-15 chromium-autoroll Roll glslang from 6ab923c69df7 to b0f8a0c3abb9 (1 revision)
2021-02-15 chromium-autoroll Roll Vulkan-Loader from a66ceba27225 to c5678a03db38 (1 revision)
2021-02-15 chromium-autoroll Roll SPIRV-Cross from 05a1a07f700f to 5789e3eed9bc (1 revision)
2021-02-15 chromium-autoroll Roll SPIRV-Cross from 8f5ab50fb832 to 05a1a07f700f (1 revision)
2021-02-15 chromium-autoroll Roll SPIRV-Cross from 4741bbaa641d to 8f5ab50fb832 (1 revision)
2021-02-15 chromium-autoroll Roll Vulkan-Headers from ec2db85225ab to 1d99b835ec3c (1 revision)
2021-02-12 chromium-autoroll Roll Vulkan-ValidationLayers from 7de10e83093e to c62432713f23 (1 revision)
2021-02-12 jmadill Update commit message script to write as strings.
2021-02-12 chromium-autoroll Roll Vulkan-ValidationLayers from e02e6f73e68c to 7de10e83093e (1 revision)
2021-02-12 chromium-autoroll Roll glslang from 4afd69177258 to 6ab923c69df7 (1 revision)
2021-02-11 chromium-autoroll Roll SPIRV-Tools from cfa1dadb1e62 to c79edd260c2b (1 revision)
2021-02-11 chromium-autoroll Roll Vulkan-ValidationLayers from 01c9ae9b47e5 to e02e6f73e68c (1 revision)
2021-02-10 chromium-autoroll Roll Vulkan-ValidationLayers from d1bfbcd594d6 to 01c9ae9b47e5 (1 revision)
2021-02-10 chromium-autoroll Roll Vulkan-Loader from ff6a9e31358a to a66ceba27225 (2 revisions)
2021-02-10 chromium-autoroll Roll SPIRV-Tools from f0c96f40c79d to cfa1dadb1e62 (1 revision)
2021-02-09 chromium-autoroll Roll Vulkan-Tools from a03938051ff6 to 6952dfcc1df5 (1 revision)
2021-02-09 chromium-autoroll Roll Vulkan-ValidationLayers from 7b727b773d50 to d1bfbcd594d6 (1 revision)
2021-02-09 chromium-autoroll Roll Vulkan-ValidationLayers from 64ffe55c3bf6 to 7b727b773d50 (2 revisions)
2021-02-09 jmadill Add script for formatting commit messages.
2021-02-09 chromium-autoroll Roll Vulkan-Loader from 6fcd515be5b3 to ff6a9e31358a (1 revision)
2021-02-09 chromium-autoroll Roll glslang from 386b4fcb28e5 to 4afd69177258 (1 revision)
2021-02-09 chromium-autoroll Roll Vulkan-ValidationLayers from b2c81e3615bf to 64ffe55c3bf6 (3 revisions)
2021-02-08 chromium-autoroll Roll Vulkan-ValidationLayers from db287d4ad474 to b2c81e3615bf (1 revision)
2021-02-08 chromium-autoroll Roll Vulkan-ValidationLayers from 264cce03f6e4 to db287d4ad474 (2 revisions)
2021-02-06 chromium-autoroll Roll Vulkan-ValidationLayers from 047a6b59c90b to 264cce03f6e4 (1 revision)
2021-02-05 chromium-autoroll Roll Vulkan-ValidationLayers from 6ee1006a4ec9 to 047a6b59c90b (1 revision)
2021-02-05 chromium-autoroll Roll Vulkan-ValidationLayers from 773871cc7e99 to 6ee1006a4ec9 (2 revisions)
2021-02-05 chromium-autoroll Roll SPIRV-Tools from 3ad7e5fcc0ee to f0c96f40c79d (1 revision)
2021-02-05 chromium-autoroll Roll Vulkan-ValidationLayers from 2292623a4339 to 773871cc7e99 (1 revision)
2021-02-05 chromium-autoroll Roll Vulkan-ValidationLayers from 4b8c885ffebf to 2292623a4339 (1 revision)
2021-02-05 chromium-autoroll Roll SPIRV-Tools from f11f74348158 to 3ad7e5fcc0ee (1 revision)
2021-02-05 chromium-autoroll Roll SPIRV-Tools from c91a25af13e1 to f11f74348158 (1 revision)
2021-02-05 chromium-autoroll Roll Vulkan-ValidationLayers from d68ee750eb0b to 4b8c885ffebf (1 revision)
2021-02-04 chromium-autoroll Roll Vulkan-ValidationLayers from e3025c6cdeba to d68ee750eb0b (2 revisions)
2021-02-04 chromium-autoroll Roll Vulkan-ValidationLayers from 1c3d365b1008 to e3025c6cdeba (1 revision)
2021-02-03 chromium-autoroll Roll glslang from 5c4f421121c4 to 386b4fcb28e5 (1 revision)
2021-02-03 chromium-autoroll Roll Vulkan-Loader from fd5cc6962213 to 6fcd515be5b3 (1 revision)
2021-02-03 chromium-autoroll Roll Vulkan-ValidationLayers from 5f585ae240dd to 1c3d365b1008 (1 revision)
2021-02-03 chromium-autoroll Roll Vulkan-ValidationLayers from 669dfd5ce67f to 5f585ae240dd (1 revision)
(...)
2021-01-22 chromium-autoroll Roll SPIRV-Tools from f37547c73a98 to 968659aee8af (1 revision)
2021-01-21 chromium-autoroll Roll glslang from 9b4e82efb482 to 6abdde3ce511 (1 revision)
2021-01-20 chromium-autoroll Roll SPIRV-Tools from 1bd539b9bfc4 to f37547c73a98 (1 revision)
2021-01-20 chromium-autoroll Roll SPIRV-Tools from 56f8ed48efd5 to 1bd539b9bfc4 (1 revision)
2021-01-19 chromium-autoroll Roll SPIRV-Tools from e25db023c47a to 56f8ed48efd5 (1 revision)
2021-01-19 chromium-autoroll Roll Vulkan-ValidationLayers from c7ffe6890160 to ab73ad637606 (2 revisions)
2021-01-19 chromium-autoroll Roll Vulkan-ValidationLayers from efecc309816c to c7ffe6890160 (2 revisions)
2021-01-19 chromium-autoroll Roll Vulkan-ValidationLayers from fb6e414f76dc to efecc309816c (1 revision)
2021-01-19 chromium-autoroll Roll Vulkan-ValidationLayers from 03e41cc0c2a8 to fb6e414f76dc (2 revisions)
2021-01-19 chromium-autoroll Roll Vulkan-ValidationLayers from 6886c4b57f10 to 03e41cc0c2a8 (3 revisions)
2021-01-19 chromium-autoroll Roll Vulkan-ValidationLayers from 10651a9c0bc2 to 6886c4b57f10 (1 revision)
2021-01-19 chromium-autoroll Roll glslang from 5b7d68ca6b3f to 9b4e82efb482 (1 revision)
2021-01-19 chromium-autoroll Roll glslang from 3de5cfe50ede to 5b7d68ca6b3f (1 revision)
2021-01-19 chromium-autoroll Roll Vulkan-Headers from 9efc4a631161 to 684390cedbff (1 revision)
2021-01-19 chromium-autoroll Roll SPIRV-Tools from 8383bd5d6f26 to e25db023c47a (1 revision)
2021-01-19 chromium-autoroll Roll Vulkan-ValidationLayers from ca3216a3a24f to 10651a9c0bc2 (1 revision)
2021-01-18 chromium-autoroll Roll Vulkan-ValidationLayers from fb2ab876edcd to ca3216a3a24f (2 revisions)
2021-01-18 chromium-autoroll Roll SPIRV-Tools from ee39b5db5f1d to 8383bd5d6f26 (1 revision)
2021-01-18 chromium-autoroll Roll Vulkan-Loader from 9ba835885ffe to aed40d52837d (1 revision)
2021-01-15 chromium-autoroll Roll Vulkan-Tools from 93a6c58d76e1 to 7c25ce965b92 (1 revision)
2021-01-15 chromium-autoroll Roll Vulkan-Tools from c86cec54abe6 to 93a6c58d76e1 (1 revision)
2021-01-15 chromium-autoroll Roll SPIRV-Tools from 9150cd441f43 to ee39b5db5f1d (1 revision)
2021-01-15 chromium-autoroll Roll SPIRV-Cross from a5eaf2f44a5d to 9acb9ec31f5a (1 revision)
2021-01-14 chromium-autoroll Roll SPIRV-Tools from b2cfc5d1ceca to 9150cd441f43 (1 revision)
2021-01-14 chromium-autoroll Roll Vulkan-ValidationLayers from 586c46b96b62 to fb2ab876edcd (1 revision)
2021-01-14 chromium-autoroll Roll SPIRV-Cross from 820179bf4689 to a5eaf2f44a5d (1 revision)
2021-01-14 chromium-autoroll Roll SPIRV-Tools from cec658c11603 to b2cfc5d1ceca (1 revision)
2021-01-13 chromium-autoroll Roll Vulkan-ValidationLayers from f5dea94f6f15 to 586c46b96b62 (1 revision)
2021-01-13 chromium-autoroll Roll Vulkan-Tools from a3b988fa5588 to c86cec54abe6 (1 revision)
2021-01-13 chromium-autoroll Roll Vulkan-ValidationLayers from 04b58c5bea3a to f5dea94f6f15 (1 revision)
2021-01-13 chromium-autoroll Roll SPIRV-Tools from 7bbe1a316419 to cec658c11603 (2 revisions)
2021-01-12 chromium-autoroll Roll Vulkan-Tools from be70e017bff5 to a3b988fa5588 (1 revision)
2021-01-12 chromium-autoroll Roll Vulkan-ValidationLayers from 61a57c023e10 to 04b58c5bea3a (1 revision)
2021-01-12 chromium-autoroll Roll SPIRV-Tools from c32277c0ba0d to 7bbe1a316419 (1 revision)
2021-01-11 chromium-autoroll Roll Vulkan-Tools from a7825740f316 to be70e017bff5 (1 revision)
2021-01-11 chromium-autoroll Roll Vulkan-ValidationLayers from 645a15bbaa59 to 61a57c023e10 (1 revision)
2021-01-11 chromium-autoroll Roll Vulkan-ValidationLayers from 46237b593c3f to 645a15bbaa59 (1 revision)
2021-01-11 chromium-autoroll Roll SPIRV-Tools from f3ccb633dfd7 to c32277c0ba0d (1 revision)
2021-01-10 chromium-autoroll Roll Vulkan-ValidationLayers from f0634ebbb36f to 46237b593c3f (2 revisions)
2021-01-09 chromium-autoroll Roll SPIRV-Cross from 702c903f982d to 820179bf4689 (1 revision)
2021-01-08 chromium-autoroll Roll Vulkan-ValidationLayers from 04cf3fd95555 to f0634ebbb36f (1 revision)
2021-01-08 chromium-autoroll Roll Vulkan-ValidationLayers from ebd3ea2ecbac to 04cf3fd95555 (2 revisions)
2021-01-08 chromium-autoroll Roll SPIRV-Cross from ce18d1b8a563 to 702c903f982d (1 revision)
2021-01-08 chromium-autoroll Roll SPIRV-Cross from 0e5078dc0cfb to ce18d1b8a563 (1 revision)
2021-01-08 chromium-autoroll Roll SPIRV-Cross from 134a52003407 to 0e5078dc0cfb (1 revision)
2021-01-08 chromium-autoroll Roll SPIRV-Cross from 234c65c0f32c to 134a52003407 (1 revision)
2021-01-07 chromium-autoroll Roll SPIRV-Tools from ad77ed7a8d52 to f3ccb633dfd7 (1 revision)
2021-01-07 chromium-autoroll Roll Vulkan-ValidationLayers from 9f10caf9c4f3 to ebd3ea2ecbac (2 revisions)
2021-01-07 chromium-autoroll Roll Vulkan-ValidationLayers from cc435b55410a to 9f10caf9c4f3 (2 revisions)
2021-01-07 chromium-autoroll Roll SPIRV-Tools from aa005e8bd435 to ad77ed7a8d52 (1 revision)
Created with:
roll-dep third_party/shaderc third_party/vulkan-deps
Change-Id: I70784aee8bd05fefa51a475f9d58e0c8cb1b9f5c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41860
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Bug: dawn:681
Change-Id: I5d9cd3636a656df1ba9d23964c18011b9cfcf5c0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41440
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Removes special casing depth-stencil or multi-planar formats.
Like depth-stencil, NV12 views can be created but not sampled.
BUG=dawn:551
Change-Id: I3cd43d079253f4ee45660d0efd2723e1650f88d3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41342
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Releasing this configuration is no longer part of the PoR, so no need
to fuzz it.
BUG=dawn:683,chromium:904410
Change-Id: Ic499c68d48b88240361f4ffa937c878b3e3c8526
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41760
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>
Some of these are skipped by lack of optional feature support,
but at least this brings them on the radar by increasing the
skip counts for the GL backends.
Bug: dawn:580
Change-Id: I3439f41584e70dd51f6d0f7826ef9da7c046020e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41401
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
This is a reland of fb0bf70459
Reland after making libx11-xcb dynamically loaded since it isn't present
on all Linux deployment targets of Chromium. Also includes a couple of
additional cosmetic changes to d3d12/PlatformFunctions noticed while
looking at it for inspiration.
Original change's description:
> Vulkan: Fallback to XCB for Xlib surfaces
>
> Chromium builds the Vulkan loader without support Xlib (because it
> prefers XCB) which caused Xlib wgpu::SwapChain creation to fail on the
> Vulkan backend.
>
> This CL adds a fallback to use VK_KHR_xcb_surface if VK_KHR_xlib_surface
> isn't present.
>
> Bug: dawn:662
> Change-Id: I0e0128ee6b5c75da03998dbae231d17e48bacc81
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41180
> Reviewed-by: Austin Eng <enga@chromium.org>
> Commit-Queue: Austin Eng <enga@chromium.org>
> Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Bug: dawn:662
Change-Id: I617fcd1059dddfa05c29ac20d77f891ca6962342
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41380
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Tint automatically infers a storage class of `handle` for these types
of variable, as per the WGSL spec. Explicitly specifying a storage
class for them will soon become an error.
Bug: tint:332
Change-Id: Ib67e44a5afcdd364470488fd4b456a2b42304daa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41402
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
This is to match the upstream WebGPU specification.
Also remove maxVertexAttributeEnd in favor maxVertexBufferStride.
Bug:dawn:678
Change-Id: Ia498ff522ba257d40e9ddd6e145a0ba77f6753ca
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41182
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Currently the queries availability info is only stored on the encoders
where they are written, and we need the info in the compute shader. If
resolving them from a different encoder, 0s are returned because the
queries are not written on resolving encoder.
Besides the encoders, we also need to add availability info to query
set, and use it in compute shader instead.
When resolving query set without any written, we need to reset queries
before resolveQuerySet based on the query set availability on Vulkan.
Added more end2end tests for these cases.
Bug: dawn:645
Change-Id: I09bf1230934aa885587fa4f671925940c1795cd9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/39740
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Hao Li <hao.x.li@intel.com>
Sample mask variables and all functionality introduced by GL_OES_sample_variables was not made core until ES 3.2.
Implement a toggle to disable the functionality if not supported by the backend.
Bug: dawn:673
Change-Id: I7a5ec61fb57da343f0f72ffd3b0c69031eaaff8f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41142
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Readback of stencil is not supported on vanilla ES, so we introduce a toggle to disable it. NVidia GLES drivers support NV_stencil_read and NV_depth_stencil_read extensions, so we use those where available.
It turns out ANGLE supports NV_stencil_read but not NV_depth_stencil_read (for reading from the packed depth/stencil buffers which Dawn uses), so that's the extension we check for.
Bug: dawn:667 dawn:634
Change-Id: I136674d3d47fecee2b8b390d5d219bab07e3bb64
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41141
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
This reverts commit fb0bf70459.
Reason for revert: Failing build during roll:
https://chromium-review.googlesource.com/c/chromium/src/+/2686267/2
Original change's description:
> Vulkan: Fallback to XCB for Xlib surfaces
>
> Chromium builds the Vulkan loader without support Xlib (because it
> prefers XCB) which caused Xlib wgpu::SwapChain creation to fail on the
> Vulkan backend.
>
> This CL adds a fallback to use VK_KHR_xcb_surface if VK_KHR_xlib_surface
> isn't present.
>
> Bug: dawn:662
> Change-Id: I0e0128ee6b5c75da03998dbae231d17e48bacc81
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41180
> Reviewed-by: Austin Eng <enga@chromium.org>
> Commit-Queue: Austin Eng <enga@chromium.org>
> Auto-Submit: Corentin Wallez <cwallez@chromium.org>
TBR=cwallez@chromium.org,jiawei.shao@intel.com,hao.x.li@intel.com,enga@chromium.org
Change-Id: Ia8d2ffb715260b1de490ca04cc76f41bb60b1f61
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: dawn:662
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41343
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
This CL removes the use_tint_inspector toggle which was deprecated in
favour of the use_tint_generator toggle.
Change-Id: I0d48b0cef4605021e0fcf26b9035faf0da6668f1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41241
Commit-Queue: dan sinclair <dsinclair@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Auto-Submit: dan sinclair <dsinclair@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Chromium builds the Vulkan loader without support Xlib (because it
prefers XCB) which caused Xlib wgpu::SwapChain creation to fail on the
Vulkan backend.
This CL adds a fallback to use VK_KHR_xcb_surface if VK_KHR_xlib_surface
isn't present.
Bug: dawn:662
Change-Id: I0e0128ee6b5c75da03998dbae231d17e48bacc81
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41180
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
SNORM textures are non-renderable on vanilla ES, which means they're also
non-readable. Use the EXT_render_snorm extension where available, otherwise
skip the test for now.
Bug: dawn:624 dawn:636 dawn:647 dawn:667
Change-Id: Ic50368032d6168060b6b52889b4ba952ce662f02
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40420
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Previousl the VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT was
chained on the VkComputePielineCreateInfo when instead it should be
chained on the VkPipelineShaderStageCreateInfo, causing Vulkan
Validation errors.
Fixed: dawn:671
Change-Id: I9cc803a4f9120cf81f4e143818c3be58b73635d8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40604
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Hao Li <hao.x.li@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Only set SwiftShader as the default ANGLE backend if the
ANGLE_DEFAULT_PLATFORM environment var is empty. This will allow
devs to set it.
Bug: dawn:447
Change-Id: I49aac4bcb4b0b7c56903eca68248ee22cdf1e6f2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/41140
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Can be used to help with deprecation during simple struct renames.
Includes typedefs for VertexAttributeDescriptor -> VertexAttribute and
VertexBufferLayoutDescriptor -> VertexBufferLayout as specified by the
latest RenderPipelineDescriptor changes.
Bug: dawn:642
Change-Id: Iab3d74d179884499540e813b0e66859713031ccb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40581
Commit-Queue: Brandon Jones <bajones@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
The wire now supports more than one device, and Chrome is updated
to use the new code path. This fixes same-device validation for
createReadyPipeline.
Bug: dawn:565
Change-Id: Id05001ed1a7e535690c87f535da6f72a0e794c59
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40460
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
This helper is no longer needed now that the descriptor has full
defaults and is even optional in CreateSampler.
Bug: dawn:599
Change-Id: I0d25233ebb1e817ad27f3ddaca988e01e2a5298c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40520
Commit-Queue: Stephen White <senorblanco@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Adds support for NV12 texture format and per plane view aspects.
Only allows planar sampling of imported DX11 textures. See usage
tests for examples and formats.h for rules.
Bug: dawn:551
Change-Id: I44b89d2c07bb9969638e77ce7c756ef367167f0c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/38781
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Roll build/ 3769c3b43..6fa63e6b1 (136 commits; 1 trivial rolls)
3769c3b43c..6fa63e6b15
$ git log 3769c3b43..6fa63e6b1 --date=short --no-merges --format='%ad %ae %s'
2021-02-04 thakis Revert "clang tot bots: Temporarily make -Warray-bounds not an error"
2021-02-04 chromium-autoroll Roll Fuchsia SDK from 0.20210203.2.1 to 0.20210204.0.1
2021-02-04 svenzheng Add strip_binary and strip_binary_chrome target
2021-02-03 chromium-autoroll Roll Fuchsia SDK from 0.20210203.1.1 to 0.20210203.2.1
2021-02-03 bjoyce Add size info files to builds
2021-02-03 thakis clang tot bots: Temporarily make -Warray-bounds not an error
2021-02-03 thomasanderson [Linux Sysroot] Remove pipewire header workaround
2021-02-03 wez [fuchsia] Remove opt-out from RELR packing dynamic relocation segments.
2021-02-03 agrieve Android: Never sign .aab files
2021-02-03 chromium-autoroll Roll Fuchsia SDK from 0.20210202.3.1 to 0.20210203.1.1
2021-02-03 aeubanks Reland again: Pin to LLVM's legacy pass manager
2021-02-03 chromium-autoroll Roll Fuchsia SDK from 0.20210202.2.1 to 0.20210202.3.1
2021-02-03 guterman Revert "Proof of concept for test selection via GN"
2021-02-03 thakis win toolchain: Remove assumption about relative path from setenv json file to toolchain root.
2021-02-02 findit-for-me Revert "Reland: Pin to LLVM's legacy pass manager"
2021-02-02 aeubanks Reland: Pin to LLVM's legacy pass manager
2021-02-02 wnwen Android: Add a build server for analysis tasks
2021-02-02 chromium-autoroll Roll Fuchsia SDK from 0.20210202.0.1 to 0.20210202.2.1
2021-02-02 grulja Remove PipeWire 0.2 from sysroot
2021-02-02 raphael.kubo.da.costa Make //build/linux compatible with Python 3.
2021-02-02 mheikal Android:Remove deprecated create_srcjar gn android_resources knob
2021-02-02 chromium-autoroll Roll Fuchsia SDK from 0.20210201.3.2 to 0.20210202.0.1
2021-02-02 fangzhoug Revert "Lacros: Flip OS_LINUX and OS_CHROMEOS on lacros."
2021-02-02 cduvall Avoid separate manifest for autofill_assistant in Trichrome
2021-02-02 steveroe [fuchsia] Switch from zstd to the Fuchsia SDK blobfs-compression utility.
2021-02-02 aeubanks Revert "Make optimize_max -Os when optimize_for_size"
2021-02-02 chromium-autoroll Roll Fuchsia SDK from 0.20210201.1.1 to 0.20210201.3.2
2021-02-02 findit-for-me Revert "Pin to LLVM's legacy pass manager"
2021-02-01 mheikal Reuse prepare_resources' generated R.txt files in java_library_impl
2021-02-01 aeubanks Pin to LLVM's legacy pass manager
2021-02-01 liaoyuke Lacros: Move binary size to a separate builder
2021-02-01 chromium-autoroll Roll Fuchsia SDK from 0.20210131.3.1 to 0.20210201.1.1
2021-02-01 chromium-autoroll Roll Fuchsia SDK from 0.20210131.2.1 to 0.20210131.3.1
2021-01-31 chromium-autoroll Roll Fuchsia SDK from 0.20210131.1.1 to 0.20210131.2.1
2021-01-31 chromium-autoroll Roll Fuchsia SDK from 0.20210130.3.1 to 0.20210131.1.1
2021-01-31 chromium-autoroll Roll Fuchsia SDK from 0.20210129.3.1 to 0.20210130.3.1
2021-01-30 chromium-autoroll Roll Fuchsia SDK from 0.20210129.2.1 to 0.20210129.3.1
2021-01-30 liaoyuke Lacros: Change builder name and move out of fyi
2021-01-30 ythjkt Lacros: Flip OS_LINUX and OS_CHROMEOS on lacros.
2021-01-30 cduvall Fix typo in proguard.py
2021-01-29 chromium-autoroll Roll Fuchsia SDK from 0.20210129.0.1 to 0.20210129.2.1
2021-01-29 brucedawson Add an option to put full PDB paths in PE files
2021-01-29 denik Reland "Extend the targets of debug_fission with ThinLTO"
2021-01-29 chromium-autoroll Roll Fuchsia SDK from 0.20210128.2.2 to 0.20210129.0.1
2021-01-29 chonggu [Fuchsia] Enable code coverage for Cr-Fuchsia test targets.
2021-01-29 findit-for-me Revert "Roll src/buildtools/third_party/libc++/trunk/ d9040c75c..69897abe2 (1149 commits)"
2021-01-29 bpastene chromeos: Make the test runner and its tests py3-compatible.
2021-01-29 chromium-autoroll Roll Fuchsia SDK from 0.20210128.1.1 to 0.20210128.2.2
2021-01-28 dullweber Split grouped tests by Feature annotation
2021-01-28 aeubanks Make optimize_max -Os when optimize_for_size
(...)
2021-01-22 wnwen Android: Remove md5_check for compile_resources.py
2021-01-22 chromium-autoroll Roll Fuchsia SDK from 0.20210121.3.1 to 0.20210122.1.1
2021-01-22 cwallez tool_wrapper.py: Use bytes in ExecLinkWrapper
2021-01-22 chromium-autoroll Roll Fuchsia SDK from 0.20210121.2.1 to 0.20210121.3.1
2021-01-22 bjoyce Fix test_log possibly being too large.
2021-01-22 agrieve Android: Plumb enabled_proguard_obfuscation to L8
2021-01-21 chromium-autoroll Roll Fuchsia SDK from 0.20210121.0.1 to 0.20210121.2.1
2021-01-21 wnwen Android: Add more java build configs to depfile
2021-01-21 steveroe [fuchsia] Exclude ICU component blobs from package size calculation.
2021-01-21 hans [build] Only apply thin_lto_enable_optimizations to select targets
2021-01-21 chromium-autoroll Roll Fuchsia SDK from 0.20210120.3.1 to 0.20210121.0.1
2021-01-21 liaoyuke Fix undefined gn variables in ebuild
2021-01-21 agrieve Add libstdc++.so.6 as data for llvm-symbolizer
2021-01-21 chromium-autoroll Roll Fuchsia SDK from 0.20210120.1.1 to 0.20210120.3.1
2021-01-20 agrieve Android: Add missing build edge for DFM build configs
2021-01-20 chromium-autoroll Roll Fuchsia SDK from 0.20210119.2.1 to 0.20210120.1.1
2021-01-20 ajgo Set enable_cet_shadow_stack for Windows x64
2021-01-20 chromium-autoroll Roll Fuchsia SDK from 0.20210119.1.1 to 0.20210119.2.1
2021-01-20 ythjkt Lacros: Remove complete-member-pointers flag from lacros.
2021-01-19 wnwen Android: Use fine-grain dependencies for desugar
2021-01-19 liaoyuke Reland "Lacros: create lacros tast test targets"
2021-01-19 hans build: Remove last leftover -enable-dse-memoryssa=false flag
2021-01-19 hans [build] Enable the ThinLTO cache also on Windows
2021-01-19 chromium-autoroll Roll Fuchsia SDK from 0.20210118.3.1 to 0.20210119.1.1
2021-01-19 chromium-autoroll Roll Fuchsia SDK from 0.20210118.2.1 to 0.20210118.3.1
2021-01-18 chromium-autoroll Roll Fuchsia SDK from 0.20210118.0.1 to 0.20210118.2.1
2021-01-18 pkotwicz [Build] Make Android Lint Tests Better Integration Tests
2021-01-18 thakis mac: Update hermetic Xcode to 12.3 and production SDK to 11.1.
2021-01-18 chromium-autoroll Roll Fuchsia SDK from 0.20210117.3.1 to 0.20210118.0.1
2021-01-18 chromium-autoroll Roll Fuchsia SDK from 0.20210116.0.1 to 0.20210117.3.1
2021-01-17 chromium-autoroll Roll Fuchsia SDK from 0.20210115.2.1 to 0.20210116.0.1
2021-01-17 thakis mac: Don't use rsp files with libtool either
2021-01-16 denik Extend the targets of debug_fission with ThinLTO
2021-01-15 jamescook lacros: Enable the crosapi mojo interface in interactive_ui_tests
2021-01-15 chromium-autoroll Roll Fuchsia SDK from 0.20210115.0.1 to 0.20210115.2.1
2021-01-15 wnwen Android: Use d8's desugar dependencies
2021-01-15 liaoyuke Revert "Lacros: create lacros tast test targets"
2021-01-15 liaoyuke Lacros: create lacros tast test targets
2021-01-15 chromium-autoroll Roll Fuchsia SDK from 0.20210114.3.1 to 0.20210115.0.1
2021-01-15 chromium-autoroll Roll Fuchsia SDK from 0.20210114.1.1 to 0.20210114.3.1
2021-01-15 bjoyce Escape characters in uploaded summary.
2021-01-14 agrieve apk_operations.py: Use //third_party/jdk for apksigner
2021-01-14 steveroe [fuchsia] Make fuchsia size test pass or fail depending on package sizes.
2021-01-14 chromium-autoroll Roll Fuchsia SDK from 0.20210111.3.1 to 0.20210114.1.1
2021-01-14 jwata [build] remove unused Swarming xcode install scripts
2021-01-14 ythjkt Lacros: Remove deprecated gn/macro variable names.
2021-01-13 hans build: Remove leftover -enable-dse-memoryssa=false flag
2021-01-13 yukishiino Revert "Roll Fuchsia SDK from 0.20210111.3.1 to 0.20210112.3.1"
2021-01-13 chromium-autoroll Roll Fuchsia SDK from 0.20210111.3.1 to 0.20210112.3.1
2021-01-12 ntfschr Android: print bundletool output
Roll buildtools/ 235cfe435..fc5af1ac7 (13 commits; 2 trivial rolls)
235cfe435c..fc5af1ac75
$ git log 235cfe435..fc5af1ac7 --date=short --no-merges --format='%ad %ae %s'
2021-02-02 olaola Updating re-client tooling version to 0.19.3.
2021-01-29 findit-for-me Revert "Roll src/buildtools/third_party/libc++/trunk/ d9040c75c..69897abe2 (1149 commits)"
2021-01-27 peconn 🍱 Add example regex for Java test DEPS.
2021-01-26 twellington Update checkdeps trailing slash failure message
2021-01-26 dpranke Roll GN from d62642c9..55ad154c
2021-01-26 olaola Upgrading reclient version to 0.19.2.
2021-01-25 olaola Bugfix: download reclient binaries on Windows
2021-01-25 hans DEPS: Pull clang-format scripts from the new mirror
2021-01-21 msavigny Add third_party/llvm-build/Release+Asserts to remote inputs.
2021-01-20 msavigny Change the default execution strategy for reclient.
2021-01-15 dpranke Roll GN from 595e3be7..1b4a9dfc
Roll tools/clang/ b12d1c836..aecd85e06 (34 commits)
b12d1c836e..aecd85e062
$ git log b12d1c836..aecd85e06 --date=short --no-merges --format='%ad %ae %s'
2021-02-04 keishi Force include blink common/ dirs in the rewrite_raw_ptr_fields rewrite
2021-02-03 omerkatz heap: Fix clang plugin build
2021-02-03 keishi Exclude TargetProcess::base_address_ from rewrite_raw_ptr_fields
2021-02-03 keishi Exclude PlatformSharedMemoryMapping::base_ from rewrite_raw_ptr_fields
2021-02-03 omerkatz heap: Fix plugin bug for cppgc builds
2021-02-03 omerkatz heap: Update clang plugin for cppgc library
2021-02-03 keishi Revert "Treat CheckedPtr specially in FindBadConstructsConsumer"
2021-02-03 keishi Treat CheckedPtr specially in FindBadConstructsConsumer
2021-02-03 thakis clang build script: Try to unbreak build after NDK update
2021-02-01 keishi Add fields to ignore in rewrite_raw_ptr_fields
2021-02-01 zequanwu Revert "Download and run update.py from build.py"
2021-02-01 glazunov [CheckedPtr] Update manual ignore list
2021-02-01 zequanwu Download and run update.py from build.py
2021-01-29 hans Update TranslationUnitGenerator.cpp for upstream change
2021-01-29 hans Fix clang's build.py GetCommitDescription() on windows
2021-01-28 hans Fix Blink GC plugin after Clang API change
2021-01-28 hans Clang: the tip-of-tree version is now 13.0.0
2021-01-28 rnk Update blink GC plugin for Clang API change
2021-01-27 lukasza Fixing test expectations to match ToT behavior.
2021-01-27 lukasza Skip fields of a struct that is used in `reinterpret_cast`.
2021-01-23 bartekn Add MiraclePtr team to OWNERS of related files
2021-01-22 glazunov [BackupRefPtr] Support pointers past the end of allocation
2021-01-22 thakis Roll clang llvmorg-12-init-16548-gf1d5cbbd-1 : llvmorg-12-init-17251-g6de48655-1.
2021-01-20 keishi Exclude BigEndianWriter::ptr_ from rewrite_raw_ptr_fields
2021-01-20 keishi Fix BackupRefPtr 32bit builds
2021-01-19 hans mac: Update clang build script for the SDK 11.1 bump
2021-01-19 thakis clang roll script: Remove linux_chromium_chromeos_asan_rel_ng from cq bots.
2021-01-19 thakis Roll clang llvmorg-12-init-16296-g5e476061-2 : llvmorg-12-init-16548-gf1d5cbbd-1.
2021-01-19 keishi Add chrome/install_static to manual-paths-to-ignore.txt
2021-01-18 hans Rebuild the clang package with a newer GCC version
2021-01-15 keishi Revert deletion of "const-char" filtering rule
2021-01-15 keishi Exclude fields being used with cbor decoder's ELEMENT() macro from rewrite_raw_ptr
2021-01-15 keishi Add win build detection to rewrite_raw_ptr_fields/rewrite.sh
2021-01-14 ramyan [Project Code Inclusion] Remove use of blacklist
Created with:
roll-dep build buildtools tools/clang
Change-Id: I3d67c9321af24814c8d26ecd768c1821333dc4cc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40380
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Re-enables Intel D3D12 GPU-based validation bots. This comes after the
--enable-backend-validation=partial option was introduced and the bot
configurations were changed to make use of it.
Bug: dawn:598
Change-Id: I9f5c5111340aeefa729e0d2fd26f9f884813eb3a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40481
Commit-Queue: Brandon Jones <brandon1.jones@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Callbacks should all reject instead of waiting for the device
to idle on shutdown.
Bug: dawn:652
Change-Id: Id4a9ab2560aa34b8ea574271f61f8a499e15ab3a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40360
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Refactors DawnTest's backend validation options to use an enum, as well
as adds the 'partial' option enable backend validation with a
reduced performance overhead to address TDR issues on the bots.
Bug: dawn:598
Change-Id: I759eff03bd117f1f20ad82aa2b71a87834f42b1d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40000
Commit-Queue: Brandon Jones <brandon1.jones@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
The tests should wait till the MapAsync operation is complete
before calling GetMappedRange.
Bug: dawn:651
Change-Id: Iec001efaa3c3b76704dc4d926e91d1b1c58901bb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40303
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
- Add more end2end tests for direct and indirect dispatches, including
0x0x0, 0xNxM, Nx0xM, NxMx0
- For direct dispatch, they will cause system crash on Metal backend.
Bug: dawn:640
Change-Id: I77a4bee87df89857b05b713de8d78b0cb1f0ca50
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/39520
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Hao Li <hao.x.li@intel.com>
Workaround for Metal becuase system crashes on 0 dispatches.
Bug: dawn:640
Change-Id: I5bd33b22242ddc31816a16acb019ce2f552808bb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/39521
Commit-Queue: Hao Li <hao.x.li@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Functions like CreateReadyRenderPipeline reserve an
ObjectId for the pipeline created but the Id can not be
used until the callback is called successfully.
Bug: chromium:1172774, chromium:1172775
Change-Id: I145c0f033a2bde7957d15da2da8b9b19c6520ceb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/39840
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Issues with log2 on Metal/Intel were actually due to floating point
precision not being guaranteed and the tests not accounting to that.
This has been corrected.
BUG=dawn:663
Change-Id: I401d22898e69ea6b3f96f3d2c57a28b1dc682ed5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40243
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>