BUG=dawn:702
Change-Id: I1a75929bbb91411c10dac5a5408e8fc57d67102b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44460
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Remove usage of the depth offset in TextureCopySplitter. Because there
is no slice pitch alignment requirement, it is simpler to express the
subresource footprint with just width and height. Fixes incorrect copies
when using WriteTexture on a texture with 64 or less width.
Bug: dawn:573
Change-Id: I51cb73b522a443b8b42d9ba290c69541211be4bb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/39200
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Brandon Jones <brandon1.jones@intel.com>
This patch adds a workaround for a compile error when calling
std::begin on C-style arrays when rolling Dawn to Skia.
BUG=chromium:1161355
Change-Id: I6b697c383c0f76866e1d35f75bd1f64b96c5d6c5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44520
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Allow external images to specify all allowed texture usages which will
be checked by ProduceTexture. This avoids needing to assume the usage
between multiple calls to ProduceTexture is always the same.
Bug=dawn:625
Change-Id: I9fdb59af23e6c160e939ab1c51de03542248c0c8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/44260
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Currently normalizes anything using the new layout to the old one for
the sake of getting things working as quickly as possible. Follow up
changes will gradually push the new layout through more of the stack.
Bug: dawn:642
Change-Id: Ie92fa9dde21174f62ceba1a1f4866cbc24c5fc6f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/38600
Commit-Queue: Brandon Jones <bajones@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
On Intel Gen9 (SKL) and Gen9.5 (KBL, CFL, CML) GPUs with latest
Intel D3D12 driver (27.20.100.9316), there is a bug in the command
CopyTextureRegion() when we want to do the texture-to-texture copy
with the formats whose texel block size < 4 bytes and source mipmap
level > destination mipmap level.
This patch adds a workaround for this driver bug by implementing
the functionality of the T2T copy with one T2B copy and one B2T
copy.
BUG=chromium:1161355
TEST=dawn_end2end_tests
Change-Id: I688bb8bae277832aaba1be2680012040ee8e1160
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43860
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
For sanitizing symbols.
Replaces use of Inspector::GetRemappedNameForEntryPoint()
Change-Id: I1e20f719e0e80c04c5c4e4ae52bdb47f8d0572f6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43884
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
This is to follow the renames in the upstream WebGPU specification.
Typedef are left in places to make a smooth deprecation period.
Bug: dawn:22
Change-Id: I5134b897930c1fa883c49dd80d2665d6684ec022
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43882
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
And standardizes dawn_standalone to be the first condition.
Bug: tint:261
Change-Id: I1bd74becd03776b1d7cdd74a4972378b7d951057
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43880
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
This is to follow the changes in the upstream WebGPU spec.
Bug: dawn:22
Change-Id: I192c5ffe6008ac13ce466e712dd98528938b5e63
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43881
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
This allows us to enable white_box tests that use Tint. It
fixes linking with symbols from both dawn_native statically
and dynamically.
Bug: dawn:696
Change-Id: I6a002ae5ec55a27b6bf7329c9ba301ce8014d521
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43840
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Calling Texture::DestroyImpl will cause a crash when passing a
nullptr D3D12 resource to the Present method of
ID3D12SharingContract.
Protect against crashes by checking whether the allocation we're
destroying is valid before proceeding.
Change-Id: Ifb68c1f85383db5027006cf435f43c84d1a463d9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42580
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Bug: dawn:447 dawn:667
Change-Id: I66d5a33febeee6a5ea4efd7c4e97461accce22ee
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43580
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Caught by the bots running SwiftShader
BUG=tint:516
Change-Id: I4e93c2f73cf48242b49c8aea1f5f29a21ac6b8e7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43600
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
CopyTextureForBrowserTests will cover incoming color format conversion
cases. While it is OK for |unorm| formats to compare their pixel values
on the CPU side, we cannot do such comparisons for the |float| formats
because we may meet the precision issues when comparing a value
generated at the CPU side to the one from the GPU side.
Refactor this test suites by using compute shader and do bit-by-bit
comparison from source texture and destination texture.
BUG=dawn:465
Change-Id: I979fcf1a1d96bbe9f8a4cf2f1a305d488e88b257
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36140
Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
This patch uses RecordCopyBufferToTextureFromTextureCopySplit() to
record the D3D12 commands in Texture::ClearTexture() so that we can
remove some redundant code in that function.
BUG=dawn:145, dawn:693
Change-Id: Ifd0ba319c335fdf13e60bf748163451d71dad962
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42760
Reviewed-by: Bryan Bernhart <bryan.bernhart@intel.com>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Replaces use of EXPECT_EQ with ASSERT_EQ and allows
ASSERT_EQ to propagate to caller so the test returns
early.
BUG=dawn:625
Change-Id: I6c12aad201f1821fa8c7c1f9a9b735910049cdcf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42940
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Bryan Bernhart <bryan.bernhart@intel.com>
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
The level-less variants have been removed from the WGSL spec, so will
be removed from Tint soon.
BUG=tint:516
Change-Id: Ic09ffadc2902ca9cdb3198b91f8ad694887258d4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42704
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
f4cd17472a..0e11e49d19
$ git log f4cd17472..0e11e49d1 --date=short --no-merges --format='%ad %ae %s'
2021-03-01 angle-autoroll Roll SwiftShader from 349abccec8f7 to 106e01583a3a (2 revisions)
2021-03-01 angle-autoroll Roll Chromium from 61aec087e2f8 to 2a5fa9108962 (430 revisions)
2021-01-25 cnorthrop Capture/Replay: Support CaptureGetQueryObject
2021-02-27 ynovikov Fix Ozone backend build flags.
2021-02-26 ynovikov Add EGL_WINDOW_BIT to all Ozone configs' EGL_SURFACE_TYPE
2021-02-25 m.maiya Vulkan: Avoid using assign with BitSets
2021-01-29 shrekshao Reland "Workaround for Mac Intel drawArraysInstanced with first > 0"
2021-02-25 syoussefi Vulkan: Move SPIR-V validation function to common/
2021-02-25 m.maiya Vulkan: Check texture type before calling into feedbackloop check
2021-02-24 m.maiya Vulkan: No need to unmap buffer when adding to mInFlightBuffers
2021-02-25 stha09 GCC: add missing static constexpr member definition
2021-02-24 senorblanco Check that pixel store params are 0 for fastUnpack path on D3D.
2021-02-25 cnorthrop Capture/Replay: Add CubeMapArray support
2021-02-26 ynovikov Skip 3 SimpleStateChangeTestES31
2021-02-24 lubosz.sarnecki gles_ext_params: Implement CaptureGetTexLevelParameterivANGLE.
2021-02-17 ddavenport Query revision id for GPU devices
2021-02-24 lubosz.sarnecki gl_angle_ext: Add param groups to glGetTexLevelParameterivANGLE.
2021-02-26 angle-autoroll Roll vulkan-deps from 55434360b05d to 3ca55e802f5b (6 revisions)
2021-02-26 angle-autoroll Roll SwiftShader from 22186f076bf3 to 349abccec8f7 (6 revisions)
2021-02-26 angle-autoroll Roll Chromium from b90646417bd3 to 61aec087e2f8 (994 revisions)
2021-02-25 lubosz.sarnecki gl.xml: Annotate glDiscardFramebufferEXT with param groups.
2021-02-19 syoussefi Vulkan: Generate xfb support code in SPIR-V for emulation path
2021-02-22 ianelliott Vulkan: Add GPU memory report and analysis documentation
2021-02-24 ynovikov Cleanup EGLMakeCurrentPerfTest instantiation
2021-02-25 ynovikov Suppress 1 VulkanExternalImageTest on Linux AMD Vulkan
2021-02-25 lubosz.sarnecki gen_vk_internal_shaders: Don't include full path on Python 3.4+.
2021-02-24 m.maiya Vulkan: Handle vertex count and primitive mode error cases in TS
2021-02-24 m.maiya Vulkan: Shader support for EXT_shader_framebuffer_fetch_non_coherent
2021-02-23 syoussefi Vulkan: Fix missing visibility barrier for glReadPixels
2021-02-23 syoussefi Vulkan: Fix PBO read pixels with unaligned output pitch
2021-02-18 syoussefi Vulkan: Optimize glMemoryBarrier more
2021-02-23 cnorthrop Capture/Replay: Fix compressed texture level caching
2021-02-23 cnorthrop Docs: Update ANGLE trace creation steps
2021-02-20 amy.liu Fix crash of MultithreadingTest end2end tests.
2021-02-19 jmadill Stubs for OpenCL entry points.
2021-02-11 lubosz.sarnecki Remove redundant (c) from license headers.
2021-02-24 angle-autoroll Roll vulkan-deps from ca177df9b948 to 55434360b05d (16 revisions)
2021-02-24 angle-autoroll Roll Chromium from d163fd7c6905 to b90646417bd3 (481 revisions)
2021-02-18 syoussefi Add a test for sample after deferred clear
2021-02-17 syoussefi Vulkan: Don't break the render pass on dispatch calls
2021-02-18 syoussefi Remove incorrect memory barrier tests
2021-02-11 lubosz.sarnecki Add Collabora, Ltd. to AUTHORS and CONTRIBUTORS
2021-02-23 angle-autoroll Roll VK-GL-CTS from 1a524349f06b to 9cdde06fb38a (1 revision)
2021-02-22 syoussefi Assert valid when using SPIR-V ids
2021-02-12 lubosz.sarnecki capture_replay_tests: Fix repository path retrieval.
2021-02-11 lubosz.sarnecki Generators: Use fixed year in license headers.
2021-02-22 ynovikov Remove old Win x64 bots from CQ
2021-02-19 jmadill Clean up entry point generation script.
2021-02-23 angle-autoroll Roll SwiftShader from d85a7a27b272 to 22186f076bf3 (4 revisions)
2021-02-23 angle-autoroll Roll VK-GL-CTS from a075fac2c633 to 1a524349f06b (4 revisions)
(...)
2021-01-14 jmadill Revert "Vulkan: Prefer host cached memory for Buffers"
2021-01-12 natsu Update roll AOSP scripts to reflect vulkan-deps subdirectory
2021-01-12 timvp Fix call to getImageFormatFeatureBits() in SurfaceVk.cpp
2021-01-14 angle-autoroll Roll SwiftShader from 3549479dc4cc to 5255c465bbba (6 revisions)
2021-01-14 angle-autoroll Roll vulkan-deps from 50bcbaad4cbf to 5869a809d551 (4 revisions)
2021-01-14 angle-autoroll Roll Chromium from 451c64aaec04 to fabc0b0b129a (518 revisions)
2020-08-06 sunnyps Support importing NV12/P010/P016 D3D textures as EGLImage
2021-01-13 ynovikov Don't build angle_end2end_tests_mac_sources on iOS
2021-01-11 m.maiya Allow attributes and uniforms to have the same name
2021-01-13 jmadill infra: Fix win-trace-rel bot typo.
2020-12-30 jmadill Program: Support multiple varying packings.
2021-01-12 cnorthrop Capture/Replay: Add DrawBuffer state to MEC
2021-01-12 jmadill Test Runner: Add a slow tests list.
2021-01-12 jmadill Remove Sleep() from PrimitivesWrittenAndGenerated test.
2021-01-13 jmadill infra: Fixes for config.
2021-01-13 jwata Use CAS in scripts/trigger.py
2021-01-12 jmadill Add configuration for trace test bots.
2021-01-13 angle-autoroll Roll vulkan-deps from e59ae1af7571 to 50bcbaad4cbf (7 revisions)
2021-01-13 angle-autoroll Roll Chromium from 2a7e78c75a37 to 451c64aaec04 (494 revisions)
2021-01-12 cnorthrop State: Provide reference to image unit binding vector
2021-01-12 jmadill Vulkan: Add YUV G8_B8_R8_3PLANE_420_UNORM format.
2020-12-02 cnorthrop Allow GL_OES_shader_image_atomic when non-conformant
2021-01-11 jmadill Vulkan: Index mandatory support table by ANGLE format.
2021-01-12 syoussefi Vulkan: Increment buffer view serials only when used
2021-01-11 syoussefi Vulkan: Notify ContextVk when UtilsVk binds compute pipelines
2021-01-12 angle-autoroll Roll SwiftShader from 348ba200aa29 to 3549479dc4cc (3 revisions)
2020-06-25 jonahr GL: Clean up Display code related to multithreading
2021-01-12 syoussefi Reland "Use is_apple instead of is_mac and is_ios everywhere"
2021-01-12 angle-autoroll Roll Chromium from 734de1a6b288 to 2a7e78c75a37 (67 revisions)
2021-01-12 angle-autoroll Roll Chromium from 193bb22c8c9d to 734de1a6b288 (311 revisions)
2021-01-08 natsu Default roll_aosp.sh to copy artifacts to vendor partition
2021-01-08 jmadill Vulkan: Use angle::FormatID instead of VkFormat.
2021-01-11 stha09 libstdc++: fix incomplete type for FramebufferCache
2020-11-04 vantablack Reland "Created test and fixed texture storage bug in d3d11"
2021-01-07 lfy Vulkan: Prefer host cached memory for Buffers
2021-01-11 ynovikov Fix iOS build
2021-01-11 ynovikov Enable building angle_white_box_tests on Fuchsia
2021-01-08 ianelliott dEQP: Avoid undefined right-shift behavior for GLhalf
2021-01-11 jmadill Remove obsolete build flag.
2021-01-11 angle-autoroll Roll Chromium from 29d2d6a2d436 to 193bb22c8c9d (106 revisions)
2021-01-11 angle-autoroll Roll vulkan-deps from e395b66ed41c to e59ae1af7571 (5 revisions)
2021-01-11 angle-autoroll Roll SwiftShader from 937395c1ed5d to 348ba200aa29 (6 revisions)
2021-01-11 angle-autoroll Roll Chromium from 28ecef438c2c to 29d2d6a2d436 (82 revisions)
2021-01-09 ynovikov Roll chromium_revision 1e679b773d..28ecef438c (841389:841845)
2021-01-08 syoussefi Revert "Use is_apple instead of is_mac and is_ios everywhere"
2020-12-30 timvp Tests: Add Saint Seiya Awakening: Knights of the Zodiac trace
2021-01-07 syoussefi Vulkan: Add a perf test for pre-rotation code injection
2021-01-08 syoussefi Fix translator fuzzer
2021-01-06 timvp Tests: Add World War Doh trace
2021-01-08 jmadill Add OWNERS info for Vulkan test utils.
Created with:
roll-dep third_party/angle
Bug: dawn:447
Change-Id: I3653ae78cad4503d29cecad9a8c8184ef4eb25a6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/43420
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
This patch adds a regression test to dawn_end2end_tests for an
Intel D3D12 driver bug about the T2T copies with specific texture
formats when the source mipmap level is greater than 0.
This patch also does several clean-ups in CopyTests.cpp to support
testing arbitrary texture formats:
1. Initialize the source textures with device.WriteTexture().
2. Set default values for TextureSpec.copyLevel (0),
TextureSpec.levelCount (1) and TextureSpec.copyOrigin ({0, 0, 0}).
3. Add TextureSpec.format and set the default value for it (RGBA8Unorm).
4. Support initializing and comparing the texture data with arbitrary
texture format instead of RGBA8Unorm only in CopyTests_T2T.
5. Check all the texels in the related destination texture subresources
instead of only the copied texels.
BUG=chromium:1161355
TEST=dawn_end2end_tests
Change-Id: Ib32aac57dc7bdc9a4c2edc96093afa945aa08a5c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42240
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
This change allows multiple Dawn textures to be created from the same
D3D11 resource. This avoids re-opening the shared handle by caching the
D3D12 resource outside of the Dawn texture.
Re-opening the handle costs 5-10% of CPU cycles per frame, which far
exceeded syncronization costs.
In a future change, WrapSharedHandle will be depreciated.
BUG=dawn:625
Change-Id: If0d2dc9b7445ec3ae718bc5305164db88057c4ea
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42140
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
tint::transform::Transform::Output::diagnostics is deprecated.
Diagnostics are now all in the Output::program.
Use the VertexPulling(const Config&) constructor instead of the setters. These are deprecated.
Change-Id: Icefb84719d4915550c1e554e6d0c6e06ebb05f5c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42266
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Although VkPhysicalDeviceVulkan11Features::storageBuffer16BitAccess is a subset
of VkPhysicalDeviceVulkan11Features::uniformAndStorageBuffer16BitAccess, when
the SPIR-V Capability (StorageBuffer16BitAccess) was declared, we must enable
the VkPhysicalDeviceVulkan11Features::storageBuffer16BitAccess feature
according to the requirements of the spec.
BUG=dawn:675
Change-Id: I99f9eb4c5f2fd6c6565a51063817efb8bc88216f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42620
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Hao Li <hao.x.li@intel.com>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Shifts the older enum values up by 30, but if anyone was using values
rather than the enums themselves they'd land on the right formats
anyway.
Bug: dawn:695
Change-Id: I92a177b427fb1bb14b60d9280f89d030c5941a38
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42561
Commit-Queue: Brandon Jones <bajones@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Auto-Submit: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Async functions should fail by rejecting the callback instead of
generating a device error. This fixes a leak in the wire where
the allocation for the callback was never delete since it was
never called.
Fixed: chromium:1181627
Change-Id: I840073c1d1b5f1401aa8ed29d3c8f0e1e4fefd35
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/42540
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>