Update to latest DXC

Now that all my upstream changes have landed, manually update to ToT.
Fix GN build with latest changes.

Bug: dawn:1862
Change-Id: I7de1e444abdaf33fefaab61ef9dffcff58398d8b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/141681
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/DEPS b/DEPS
index 4810101..9ccfc5f 100644
--- a/DEPS
+++ b/DEPS
@@ -178,7 +178,7 @@
   },
 
   'third_party/dxc': {
-    'url': '{chromium_git}/external/github.com/microsoft/DirectXShaderCompiler@5e080a772910f147cc447fc34e8eb489f0761144',
+    'url': '{chromium_git}/external/github.com/microsoft/DirectXShaderCompiler@5d796bf3f777ef263863de390fbb6fcc22041c80',
   },
   'third_party/dxheaders': {
     # The non-Windows build of DXC depends on DirectX-Headers, and at a specific commit (not ToT)
diff --git a/third_party/gn/dxc/BUILD.gn b/third_party/gn/dxc/BUILD.gn
index e09d1e2..bc5b0f1 100644
--- a/third_party/gn/dxc/BUILD.gn
+++ b/third_party/gn/dxc/BUILD.gn
@@ -75,7 +75,6 @@
   values = [
     # TODO(amaiorano): Many of the flags set here are duplicated for the "llvm-config-header" target below.
     # Factor this out somehow (template?).
-    "LLVM_ENABLE_ABI_BREAKING_CHECKS=1",
     "LLVM_ENABLE_THREADS=1",
     "LLVM_HAS_ATOMICS=1",
     "HAVE_INTTYPES_H=1",
@@ -280,7 +279,6 @@
     "LLVM_DATADIR=",
     "LLVM_DEFAULT_TARGET_TRIPLE=$llvm_target_triple",
     "LLVM_DOCSDIR=",
-    "LLVM_ENABLE_ABI_BREAKING_CHECKS=1",
     "LLVM_ETCDIR=",
     "LLVM_HAS_ATOMICS=1",
     "LLVM_HOST_TRIPLE=$llvm_current_triple",
@@ -317,6 +315,12 @@
   }
 }
 
+cmake_configure_file("abi-breaking-header") {
+  input = "$dawn_dxc_dir/include/llvm/Config/abi-breaking.h.cmake"
+  output = "$target_gen_dir/include/llvm/Config/abi-breaking.h"
+  values = [ "LLVM_ENABLE_ABI_BREAKING_CHECKS=" ]
+}
+
 cmake_configure_file("DataTypes-header") {
   input = "$dawn_dxc_dir/include/llvm/Support/DataTypes.h.cmake"
   output = "$target_gen_dir/include/llvm/Support/DataTypes.h"
@@ -398,6 +402,12 @@
   ]
 }
 
+cmake_configure_file("dxc-config-h") {
+  input = "$dawn_dxc_dir/include/dxc/config.h.cmake"
+  output = "$target_gen_dir/include/dxc/config.h"
+  values = [ "DXC_DISABLE_ALLOCATOR_OVERRIDES=1" ]
+}
+
 #######################################################################
 ## Common config shared by all targets
 #######################################################################
@@ -515,7 +525,9 @@
     ":AsmPrinters-def",
     ":Disassemblers-def",
     ":Targets-def",
+    ":abi-breaking-header",
     ":config-header",
+    ":dxc-config-h",
     ":llvm-config-header",
   ]
 
@@ -1122,6 +1134,7 @@
     "$dawn_dxc_dir/lib/DxcSupport/Unicode.cpp",
     "$dawn_dxc_dir/lib/DxcSupport/WinAdapter.cpp",
     "$dawn_dxc_dir/lib/DxcSupport/WinFunctions.cpp",
+    "$dawn_dxc_dir/lib/DxcSupport/WinIncludes.cpp",
     "$dawn_dxc_dir/lib/DxcSupport/dxcapi.use.cpp",
     "$dawn_dxc_dir/lib/DxcSupport/dxcmem.cpp",
     "$dawn_dxc_dir/lib/DxilContainer/DxcContainerBuilder.cpp",
@@ -1359,6 +1372,7 @@
     "$dawn_dxc_dir/lib/DxilPIXPasses/DxilForceEarlyZ.cpp",
     "$dawn_dxc_dir/lib/DxilPIXPasses/DxilOutputColorBecomesConstant.cpp",
     "$dawn_dxc_dir/lib/DxilPIXPasses/DxilPIXAddTidToAmplificationShaderPayload.cpp",
+    "$dawn_dxc_dir/lib/DxilPIXPasses/DxilPIXDXRInvocationsLog.cpp",
     "$dawn_dxc_dir/lib/DxilPIXPasses/DxilPIXMeshShaderOutputInstrumentation.cpp",
     "$dawn_dxc_dir/lib/DxilPIXPasses/DxilPIXPasses.cpp",
     "$dawn_dxc_dir/lib/DxilPIXPasses/DxilPIXVirtualRegisters.cpp",