chore: [30-x-y] cherry-pick 3 changes from 0-M126 (#42602)
* chore: [30-x-y] cherry-pick 3 changes from 0-M126 * 33051b084850 from DirectXShaderCompiler * b845fed99111 from DirectXShaderCompiler * 9c6534f82db3 from dawn * chore: update patches --------- Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
This commit is contained in:
parent
5dd6c0a51d
commit
6a9ae16d76
6 changed files with 666 additions and 1 deletions
1
patches/dawn/.patches
Normal file
1
patches/dawn/.patches
Normal file
|
@ -0,0 +1 @@
|
|||
dawn_dxc_disable_dxc_pass_structurize-loop-exits-for-unroll.patch
|
|
@ -0,0 +1,34 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Antonio Maiorano <amaiorano@google.com>
|
||||
Date: Mon, 17 Jun 2024 18:33:47 +0000
|
||||
Subject: dawn/dxc: disable DXC pass 'structurize-loop-exits-for-unroll'
|
||||
|
||||
Multiple security bugs have been reported related to this optimization pass, and after careful consideration, we have decided to disable it.
|
||||
|
||||
Bug: chromium:333508731
|
||||
Bug: chromium:339171223
|
||||
Bug: chromium:339169163
|
||||
Bug: chromium:346595893
|
||||
Change-Id: I5c9d7180ed09e7417c120595937bcb1013b6ce66
|
||||
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/184422
|
||||
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
|
||||
Reviewed-by: Natalie Chouinard <chouinard@google.com>
|
||||
Reviewed-by: Austin Eng <enga@chromium.org>
|
||||
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/194160
|
||||
Reviewed-by: dan sinclair <dsinclair@chromium.org>
|
||||
|
||||
diff --git a/src/dawn/native/d3d/ShaderUtils.cpp b/src/dawn/native/d3d/ShaderUtils.cpp
|
||||
index e1937ca2d5f9b84f3590c5cc3285850a06db5a5d..2d2d5dc49b971dc52ed39c29bb443e127e6d5166 100644
|
||||
--- a/src/dawn/native/d3d/ShaderUtils.cpp
|
||||
+++ b/src/dawn/native/d3d/ShaderUtils.cpp
|
||||
@@ -58,6 +58,10 @@ std::vector<const wchar_t*> GetDXCArguments(std::wstring_view entryPointNameW,
|
||||
arguments.push_back(L"-E");
|
||||
arguments.push_back(entryPointNameW.data());
|
||||
|
||||
+ // TODO(chromium:346595893): Disable buggy DXC pass
|
||||
+ arguments.push_back(L"-opt-disable");
|
||||
+ arguments.push_back(L"structurize-loop-exits-for-unroll");
|
||||
+
|
||||
uint32_t compileFlags = r.compileFlags;
|
||||
if (compileFlags & D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY) {
|
||||
arguments.push_back(L"/Gec");
|
Loading…
Add table
Add a link
Reference in a new issue