DirectXShaderCompiler/lib
Tex Riddell 22bb0786b6
Fix downlevel validator compatibility with DXR 1.1 flag (#6333)
It turns out that in the prior validator version, if a subobject
required DXR 1.1, the DXR 1.1 flag would be set on each function in RDAT
output, as well as the global flags. It didn't appear this was the case
through a D3DReflect test because that goes through disassembly to
assembly step, where subobjects are lost because they aren't in the llvm
IR. The previous change assumed this was not the case when the
subobjects were removed, but this removal occurs after the RDATWriter
constructor, which does the full RDAT serialization since size if
required right away.

This restores the detection code and hooks it into
DxilModule::ComputeShaderCompatInfo when validator version is in range
[1.5, 1.7]. DXR 1.1 was introduced in 1.5, and we no longer tag every
function as requiring DXR 1.1 based on subobjects in 1.8.

At the moment, there is no way to CHECK the subobject RDAT in D3DReflect
because they get stripped from the module (even reflection and debug
modules) before serialization, and the test path for D3DReflect goes
through a disassemble/re-assemble step between the prior stage and the
D3DReflect stage.

Fixes #6321 (really).
2024-02-20 17:58:45 -08:00
..
Analysis [NFC] Clang-format DXC sources (#5602) 2023-09-19 07:49:22 -05:00
AsmParser Revert license text in banner comments to original llvm verbage (#33) 2017-01-24 17:54:00 -08:00
Bitcode Remove some warnings from GCC when building DXC (#5262) 2023-06-02 13:10:20 -07:00
CodeGen [NFC] Clang-format DXC sources (#5602) 2023-09-19 07:49:22 -05:00
DXIL Fix downlevel validator compatibility with DXR 1.1 flag (#6333) 2024-02-20 17:58:45 -08:00
DebugInfo Revert license text in banner comments to original llvm verbage (#33) 2017-01-24 17:54:00 -08:00
DxcBindingTable [NFC] Clang-format DXC sources (#5602) 2023-09-19 07:49:22 -05:00
DxcSupport [SPIR-V] Add fspv-enable-maximal-reconvergence opt (#6248) 2024-02-08 14:13:55 -05:00
DxilCompression [ClangCL] Fix warning for rest part except clang. (#5705) 2023-10-09 16:59:01 -04:00
DxilContainer RDAT: Check flags and WaveSize for min SM; fix flag detection and merging (#6207) 2024-02-09 17:14:12 -08:00
DxilDia PIX: Deduplicate globals when referenced in multiple library fns (#6305) 2024-02-14 12:37:11 -08:00
DxilPIXPasses PIX: Optimize debug instrumentation for fewest emitted instructions (#6281) 2024-02-13 08:08:22 -08:00
DxilPdbInfo [NFC] Clang-format DXC sources (#5602) 2023-09-19 07:49:22 -05:00
DxilRootSignature Fix UBSAN error in DxilRootSignatureSerializer (#5795) 2023-09-29 10:28:05 -04:00
DxrFallback [NFC] Clang-format DXC sources (#5602) 2023-09-19 07:49:22 -05:00
ExecutionEngine Merge branch 'main' into 'staging-sm-6.8' (#5741) 2023-09-18 22:01:12 -07:00
Fuzzer Clean up mistakes made when fixing copyright banners. 2017-01-25 14:36:50 -08:00
HLSL Fix downlevel validator compatibility with DXR 1.1 flag (#6333) 2024-02-20 17:58:45 -08:00
IR Merge branch 'main' into 'staging-sm-6.8' (#5741) 2023-09-18 22:01:12 -07:00
IRReader Revert license text in banner comments to original llvm verbage (#33) 2017-01-24 17:54:00 -08:00
LTO Revert license text in banner comments to original llvm verbage (#33) 2017-01-24 17:54:00 -08:00
Linker Merge branch 'main' into 'staging-sm-6.8' (#5741) 2023-09-18 22:01:12 -07:00
MC Merge branch 'main' into 'staging-sm-6.8' (#5741) 2023-09-18 22:01:12 -07:00
MSSupport Merge branch 'main' into 'staging-sm-6.8' (#5741) 2023-09-18 22:01:12 -07:00
Object Revert license text in banner comments to original llvm verbage (#33) 2017-01-24 17:54:00 -08:00
Option Fallthrough (#4843) 2022-12-09 10:13:56 -08:00
PassPrinters [NFC] Clang-format DXC sources (#5602) 2023-09-19 07:49:22 -05:00
Passes Revert license text in banner comments to original llvm verbage (#33) 2017-01-24 17:54:00 -08:00
ProfileData [linux-port] Evade unused in LLVM code (#1327) 2018-06-05 14:07:51 -04:00
Support Remove unnecessary in C++11 c_str() calls (#5932) (#5933) 2023-10-26 11:28:30 -07:00
TableGen Fallthrough (#4843) 2022-12-09 10:13:56 -08:00
Target [linux-port] Fix warnings from lambda functions (#1320) 2018-05-31 13:39:26 -04:00
Transforms Fix bad arg indexing after array of struct in semantic assignment (#6122) 2024-01-04 15:05:25 -08:00
CMakeLists.txt [Linux] Enable PixTest for Linux (#5945) 2023-10-31 12:49:44 -04:00
LLVMBuild.txt Clean up and rework DXIL library depencencies (#4877) 2023-01-03 10:04:22 -06:00