0

Roll src/third_party/webgpu-cts/src/ f778e99c1..0e845f438 (6 commits)

f778e99c19..0e845f4383

$ git log f778e99c1..0e845f438 --date=short --no-merges --format='%ad %ae %s'
2021-08-09 kainino Make reftest slightly fuzzy to account for apparent differences ()
2021-08-09 kainino Catch promise rejection from video.play() ()
2021-08-06 bajones Add tests for requiredLimits in requestDevice ()
2021-08-06 bajones Roll @webgpu/types to 0.1.6 ()
2021-08-07 jiawei.shao Add operation tests on the T2B copies with depth aspects ()
2021-08-07 shaobo.yan Add refttests for different size of canvas and swapchain ()

Created with:
  roll-dep src/third_party/webgpu-cts/src

Bug: dawn:690, chromium:1237175, dawn:1064
Change-Id: I3c404b0c28c935eee0510a44eef50f292f524bfb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3083173
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Cr-Commit-Position: refs/heads/master@{#910159}
This commit is contained in:
Kai Ninomiya
2021-08-10 04:55:12 +00:00
committed by Chromium LUCI CQ
parent cd025558d2
commit d06327c018
6 changed files with 152 additions and 10 deletions

2
DEPS

@@ -1618,7 +1618,7 @@ deps = {
Var('chromium_git') + '/external/khronosgroup/webgl.git' + '@' + 'ad1419557298bfa2829818c12ae3bca2795a7c8f',
'src/third_party/webgpu-cts/src':
Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + 'f778e99c1963d1bc6403d3745165033cc91d5df4',
Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + '0e845f4383ecdee114e9011ba2e903a061b9adff',
'src/third_party/webrtc':
Var('webrtc_git') + '/src.git' + '@' + 'bb90497eaada6ea725eb7622536956b722bb8a8c',

@@ -72,13 +72,10 @@ crbug.com/dawn/986 wpt_internal/webgpu/cts.html?q=webgpu:api,validation,vertex_s
# These tests aren't working on CQ, unclear whether the test or harness (or Chrome) is broken.
# Mac: mostly works
# Linux: actual is white/blank - is actually crashing silently
crbug.com/1083478 [ Linux ] wpt_internal/webgpu/web_platform/reftests/canvas_clear.html [ Skip ]
crbug.com/1083478 [ Linux ] wpt_internal/webgpu/web_platform/reftests/canvas_complex_bgra8unorm.html [ Skip ]
# Win: takeScreenshot crashes
crbug.com/1083478 [ Win ] wpt_internal/webgpu/web_platform/reftests/canvas_clear.html [ Skip ]
crbug.com/1083478 [ Win ] wpt_internal/webgpu/web_platform/reftests/canvas_complex_bgra8unorm.html [ Skip ]
# Mac: Shifted by about half a pixel
# Linux: Crashes
crbug.com/1083478 [ Linux ] wpt_internal/webgpu/web_platform/reftests/* [ Skip ]
# Mac/Win: Shifted by about half a pixel
crbug.com/1083478 [ Win ] wpt_internal/webgpu/web_platform/reftests/canvas_complex_bgra8unorm.html [ Failure ]
crbug.com/1083478 [ Mac ] wpt_internal/webgpu/web_platform/reftests/canvas_complex_bgra8unorm.html [ Failure ]
# Spec was changed so BGLs should eagerly apply per-pipeline limits. Tests need fixing, then Dawn
@@ -167,6 +164,10 @@ crbug.com/dawn/666 wpt_internal/webgpu/cts.html?q=webgpu:api,validation,encoding
crbug.com/dawn/666 wpt_internal/webgpu/cts.html?q=webgpu:api,validation,encoding,cmds,buffer_texture_copies:depth_stencil_format,copy_usage_and_aspect:format="depth16unorm";* [ Failure ]
crbug.com/dawn/666 wpt_internal/webgpu/cts.html?q=webgpu:api,validation,encoding,cmds,buffer_texture_copies:depth_stencil_format,copy_buffer_offset:format="depth16unorm";* [ Failure ]
crbug.com/dawn/666 wpt_internal/webgpu/cts.html?q=webgpu:api,validation,encoding,cmds,buffer_texture_copies:depth_stencil_format,copy_buffer_offset:format="stencil8";* [ Failure ]
crbug.com/dawn/690 wpt_internal/webgpu/cts.html?q=webgpu:api,operation,command_buffer,image_copy:offsets_and_sizes_copy_depth_stencil:format="stencil8";* [ Failure ]
crbug.com/dawn/690 wpt_internal/webgpu/cts.html?q=webgpu:api,operation,command_buffer,image_copy:offsets_and_sizes_copy_depth_stencil:format="depth16unorm";* [ Failure ]
crbug.com/dawn/690 wpt_internal/webgpu/cts.html?q=webgpu:api,operation,command_buffer,image_copy:rowsPerImage_and_bytesPerRow_depth_stencil:format="stencil8";* [ Failure ]
crbug.com/dawn/690 wpt_internal/webgpu/cts.html?q=webgpu:api,operation,command_buffer,image_copy:rowsPerImage_and_bytesPerRow_depth_stencil:format="depth16unorm";* [ Failure ]
wpt_internal/webgpu/cts.html?q=webgpu:api,validation,createTexture:zero_size:dimension="1d";* [ Failure ]
wpt_internal/webgpu/cts.html?q=webgpu:api,validation,createTexture:mipLevelCount,bound_check:dimension="1d";* [ Failure ]
wpt_internal/webgpu/cts.html?q=webgpu:api,validation,createTexture:mipLevelCount,format:format="depth16unorm";* [ Failure ]
@@ -248,7 +249,9 @@ crbug.com/dawn/812 wpt_internal/webgpu/cts.html?q=webgpu:api,validation,resource
# Stencil textures with more than one mip level are disabled on Metal
crbug.com/dawn/838 [ Mac ] wpt_internal/webgpu/cts.html?q=webgpu:api,validation,resource_usages,texture,in_pass_encoder:subresources_and_binding_types_combination_for_aspect:format="depth24plus-stencil8";* [ Failure ]
crbug.com/dawn/838 [ Mac ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,command_buffer,image_copy:offsets_and_sizes_upload_to_stencil_aspect:stencilFormat="depth24plus-stencil8";mipLevel=2;* [ Failure ]
crbug.com/dawn/838 [ Mac ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,command_buffer,image_copy:offsets_and_sizes_copy_depth_stencil:format="depth24plus-stencil8";mipLevel=2;* [ Failure ]
crbug.com/dawn/838 [ Mac ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,command_buffer,image_copy:rowsPerImage_and_bytesPerRow_upload_to_stencil_aspect:stencilFormat="depth24plus-stencil8";mipLevel=2;* [ Failure ]
crbug.com/dawn/838 [ Mac ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,command_buffer,image_copy:rowsPerImage_and_bytesPerRow_depth_stencil:format="depth24plus-stencil8";mipLevel=2;* [ Failure ]
crbug.com/tint/993 [ Mac ] wpt_internal/webgpu/cts.html?q=webgpu:shader,execution,robust_access:linear_memory:storageClass="workgroup";* [ Failure ]
# Timeout + compilation failure
@@ -284,6 +287,9 @@ crbug.com/1236130 [ Linux ] wpt_internal/webgpu/cts.html?q=webgpu:web_platform,c
crbug.com/1236130 [ Linux ] wpt_internal/webgpu/cts.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:onscreenCanvas,snapshot:* [ Crash ]
crbug.com/1236130 [ Linux ] wpt_internal/webgpu/cts.html?q=webgpu:web_platform,canvas,readbackFromWebGPUCanvas:onscreenCanvas,uploadToWebGL:* [ Crash ]
# Error from debug layer
crbug.com/dawn/1064 [ Linux ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,adapter,requestDevice_limits:worse_than_default:* [ Crash ]
###
### Windows (D3D12) specific
###
@@ -300,6 +306,7 @@ crbug.com/tint/993 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:shader,executio
# Handling of base_vertex base_instance is not implemented for indirect draws on D3D12.
crbug.com/dawn/548 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,rendering,draw:arguments:indirect=true;* [ Failure ]
# (Intel-only) StoreOpClear handling is overclearing resources that should be preserved
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="CopyToBuffer";format="rg32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=1;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="CopyToBuffer";format="rg32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=7;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="CopyToBuffer";format="rgba32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=1;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
@@ -308,3 +315,7 @@ crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,re
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="CopyToTexture";format="rg32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=7;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="CopyToTexture";format="rgba32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=1;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="CopyToTexture";format="rgba32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=7;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="Sample";format="rg32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=1;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="Sample";format="rg32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=7;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="Sample";format="rgba32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=1;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]
crbug.com/1237175 [ Win ] wpt_internal/webgpu/cts.html?q=webgpu:api,operation,resource_init,texture_zero:uninitialized_texture_is_zero:dimension="2d";readMethod="Sample";format="rgba32float";aspect="all";mipLevelCount=5;sampleCount=1;uninitializeMethod="StoreOpClear";layerCount=7;nonPowerOfTwo=true;canaryOnCreation=true [ Failure ]

@@ -47,6 +47,10 @@
<!-- Variant list is auto-generated below this line: -->
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice:request_default_after_error:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice_limits:unknown_limits:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice_limits:supported_limits:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice_limits:better_than_supported:*'>
<meta name=variant content='?q=webgpu:api,operation,adapter,requestDevice_limits:worse_than_default:*'>
<meta name=variant content='?q=webgpu:api,operation,buffers,map:mapAsync,write:*'>
<meta name=variant content='?q=webgpu:api,operation,buffers,map:mapAsync,write,unchanged_ranges_preserved:*'>
<meta name=variant content='?q=webgpu:api,operation,buffers,map:mapAsync,read:*'>
@@ -658,8 +662,8 @@
<meta name=variant content='?q=webgpu:api,operation,command_buffer,image_copy:mip_levels:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm";*'>
<meta name=variant content='?q=webgpu:api,operation,command_buffer,image_copy:mip_levels:initMethod="CopyB2T";checkMethod="FullCopyT2B";format="bc7-rgba-unorm-srgb";*'>
<meta name=variant content='?q=webgpu:api,operation,command_buffer,image_copy:undefined_params:*'>
<meta name=variant content='?q=webgpu:api,operation,command_buffer,image_copy:rowsPerImage_and_bytesPerRow_copy_with_stencil_aspect:*'>
<meta name=variant content='?q=webgpu:api,operation,command_buffer,image_copy:offsets_and_sizes_copy_with_stencil_aspect:*'>
<meta name=variant content='?q=webgpu:api,operation,command_buffer,image_copy:rowsPerImage_and_bytesPerRow_depth_stencil:*'>
<meta name=variant content='?q=webgpu:api,operation,command_buffer,image_copy:offsets_and_sizes_copy_depth_stencil:*'>
<meta name=variant content='?q=webgpu:api,operation,compute,basic:memcpy:*'>
<meta name=variant content='?q=webgpu:api,operation,compute,basic:large_dispatch:*'>
<meta name=variant content='?q=webgpu:api,operation,device,lost:not_lost_on_gc:*'>

@@ -0,0 +1,26 @@
<html class="reftest-wait">
<base href="/gen/third_party/webgpu-cts/src/webgpu/web_platform/reftests/" />
<title>WebGPU canvas_back_buffer_different_size</title>
<meta charset="utf-8" />
<link rel="help" href="https://gpuweb.github.io/gpuweb/" />
<meta
name="assert"
content="WebGPU canvas should present correctly with different size of back buffer"
/>
<meta name=fuzzy content="maxDifference=1;totalPixels=0-2000">
<link rel="match"
href="./ref/canvas_size_different_with_back_buffer_size-ref.html" />
<canvas id="cvs_larger_than_back_buffer" width="6" height="8"></canvas>
<canvas id="cvs_same_as_back_buffer" width="3" height="4"></canvas>
<canvas id="cvs_smaller_than_back_buffer" width="3" height="4"></canvas>
<canvas id="cvs_change_size_after_configure" width="3" height="4"></canvas>
<canvas id="cvs_change_size_and_reconfigure" width="3" height="4"></canvas>
<canvas id="back_buffer_smaller_than_cvs_and_css" width="6" height="8" style="width: 12px; height: 16px;"></canvas>
<canvas id="cvs_smaller_than_back_buffer_and_css" width="3" height="4" style="width: 12px; height: 16px;"></canvas>
<script src="/common/reftest-wait.js"></script>
<script type="module">
import { run } from './canvas_size_different_with_back_buffer_size.html.js';
run();
</script>
</html>

@@ -0,0 +1,99 @@
<html>
<base href="/gen/third_party/webgpu-cts/src/webgpu/web_platform/reftests/ref/" />
<title>WebGPU canvas_back_buffer_different_size (ref)</title>
<meta charset="utf-8" />
<link rel="help" href="https://gpuweb.github.io/gpuweb/" />
<canvas id="cvs_larger_than_back_buffer_ref" width="3" height="4" style="width: 6px; height: 8px;"></canvas>
<canvas id="cvs_same_as_back_buffer_ref" width="3" height="4"></canvas>
<canvas id="cvs_smaller_than_back_buffer_ref" width="6" height="8" style="width: 3px; height: 4px;"></canvas>
<canvas id="cvs_change_size_after_configure_ref" width="3" height="4" style="width: 6px; height: 8px;"></canvas>
<canvas id="cvs_change_size_and_reconfigure_ref" width="6" height="8"></canvas>
<canvas id="back_buffer_smaller_than_cvs_and_css_ref" width="3" height="4" style="width: 12px; height: 16px;"></canvas>
<canvas id="cvs_smaller_than_back_buffer_and_css" width="6" height="8" style="width: 12px; height: 16px;"></canvas>
<script>
{
const context = cvs_larger_than_back_buffer_ref.getContext('2d');
context.fillStyle = "#FF0000";
context.fillRect(0, 0, 2, 2);
context.fillStyle = "#00FF00";
context.fillRect(2, 0, 1, 2);
context.fillStyle = "#0000FF";
context.fillRect(0, 2, 2, 2);
context.fillStyle = "#FFFF00";
context.fillRect(2, 2, 1, 2);
}
{
const context = cvs_same_as_back_buffer_ref.getContext('2d');
context.fillStyle = "#FF0000";
context.fillRect(0, 0, 2, 2);
context.fillStyle = "#00FF00";
context.fillRect(2, 0, 1, 2);
context.fillStyle = "#0000FF";
context.fillRect(0, 2, 2, 2);
context.fillStyle = "#FFFF00";
context.fillRect(2, 2, 1, 2);
}
{
const context = cvs_smaller_than_back_buffer_ref.getContext('2d');
context.fillStyle = "#FF0000";
context.fillRect(0, 0, 4, 4);
context.fillStyle = "#00FF00";
context.fillRect(4, 0, 2, 4);
context.fillStyle = "#0000FF";
context.fillRect(0, 4, 4, 4);
context.fillStyle = "#FFFF00";
context.fillRect(4, 4, 2, 4);
}
{
const context = cvs_change_size_after_configure_ref.getContext('2d');
context.fillStyle = "#FF0000";
context.fillRect(0, 0, 2, 2);
context.fillStyle = "#00FF00";
context.fillRect(2, 0, 1, 2);
context.fillStyle = "#0000FF";
context.fillRect(0, 2, 2, 2);
context.fillStyle = "#FFFF00";
context.fillRect(2, 2, 1, 2);
}
{
const context = cvs_change_size_and_reconfigure_ref.getContext('2d');
context.fillStyle = "#FF0000";
context.fillRect(0, 0, 4, 4);
context.fillStyle = "#00FF00";
context.fillRect(4, 0, 2, 4);
context.fillStyle = "#0000FF";
context.fillRect(0, 4, 4, 4);
context.fillStyle = "#FFFF00";
context.fillRect(4, 4, 2, 4);
}
{
const context = back_buffer_smaller_than_cvs_and_css_ref.getContext('2d');
context.fillStyle = "#FF0000";
context.fillRect(0, 0, 2, 2);
context.fillStyle = "#00FF00";
context.fillRect(2, 0, 1, 2);
context.fillStyle = "#0000FF";
context.fillRect(0, 2, 2, 2);
context.fillStyle = "#FFFF00";
context.fillRect(2, 2, 1, 2);
}
{
const context = cvs_smaller_than_back_buffer_and_css.getContext('2d');
context.fillStyle = "#FF0000";
context.fillRect(0, 0, 4, 4);
context.fillStyle = "#00FF00";
context.fillRect(4, 0, 2, 4);
context.fillRect(2, 1, 1, 1);
context.fillStyle = "#0000FF";
context.fillRect(0, 4, 4, 4);
context.fillStyle = "#FFFF00";
context.fillRect(4, 4, 2, 4);
}
</script>
</html>

@@ -111,6 +111,7 @@ src/webgpu/api/operation/labels.spec.ts
src/webgpu/api/operation/onSubmittedWorkDone.spec.ts
src/webgpu/api/operation/uncapturederror.spec.ts
src/webgpu/api/operation/adapter/requestDevice.spec.ts
src/webgpu/api/operation/adapter/requestDevice_limits.spec.ts
src/webgpu/api/operation/buffers/mapping_test.ts
src/webgpu/api/operation/buffers/map.spec.ts
src/webgpu/api/operation/buffers/map_detach.spec.ts
@@ -251,3 +252,4 @@ src/webgpu/web_platform/external_texture/video.spec.ts
src/webgpu/web_platform/reftests/gpu_ref_test.ts
src/webgpu/web_platform/reftests/canvas_clear.html.ts
src/webgpu/web_platform/reftests/canvas_complex.html.ts
src/webgpu/web_platform/reftests/canvas_size_different_with_back_buffer_size.html.ts