DirectXShaderCompiler/lib/DxilPIXPasses
Jeff Noyle cf285db4ab
Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897)
The impetus for these changes was unexplained crashes in a display
driver while attempting to create a debug-instrumented shader for PIX.
The heart of it is the new test in pixtest.cpp: use the compiler to
generate a raw UAV, and then compare the generated DXIL with what PIX
generates for the same purpose.
Some of the PIX passes need only one UAV for a module, but some need two
or more. In the latter case, the previous code was a bit loose about
what it was doing with respect to adding the UAV resource, and creating
its handles for each interested function. Most of the actual changes
herein are to do with that.
Lastly, the PIX UAV is raw at the D3D API level, but the instrumentation
had been doing non-raw writes. No driver seemed to care, but I've fixed
it anyway.

(cherry picked from commit bf24b7a54d)
2024-09-05 13:21:34 -07:00
..
CMakeLists.txt [PIX] Add pass to log DXR 1.0 shader invocation info into a UAV (#5301) 2023-06-16 14:01:18 -07:00
DxilAddPixelHitInstrumentation.cpp Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897) 2024-09-05 13:21:34 -07:00
DxilAnnotateWithVirtualRegister.cpp Fix a PIX pass's attempt to set the validator version (#6707) 2024-07-01 12:58:55 -07:00
DxilDbgValueToDbgDeclare.cpp Cherry-Pick: Fix debug info offsets for vectors with 16-bit types (#6775) (#6893) 2024-09-04 15:02:26 -07:00
DxilDebugInstrumentation.cpp Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897) 2024-09-05 13:21:34 -07:00
DxilForceEarlyZ.cpp Change getPassName return type to StringRef. (#4247) 2022-02-10 14:14:43 -08:00
DxilOutputColorBecomesConstant.cpp Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897) 2024-09-05 13:21:34 -07:00
DxilPIXAddTidToAmplificationShaderPayload.cpp Pix: Cope with group shared AS->MS payload (#6619) 2024-05-15 14:49:22 -07:00
DxilPIXDXRInvocationsLog.cpp Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897) 2024-09-05 13:21:34 -07:00
DxilPIXMeshShaderOutputInstrumentation.cpp Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897) 2024-09-05 13:21:34 -07:00
DxilPIXPasses.cpp Automate generating of intrinsic code (#4001) 2021-11-02 13:43:47 -05:00
DxilPIXVirtualRegisters.cpp PIX: Optimize debug instrumentation for fewest emitted instructions (#6281) 2024-02-13 08:08:22 -08:00
DxilReduceMSAAToSingleSample.cpp Change getPassName return type to StringRef. (#4247) 2022-02-10 14:14:43 -08:00
DxilRemoveDiscards.cpp Change getPassName return type to StringRef. (#4247) 2022-02-10 14:14:43 -08:00
DxilShaderAccessTracking.cpp Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897) 2024-09-05 13:21:34 -07:00
LLVMBuild.txt Clean up and rework DXIL library depencencies (#4877) 2023-01-03 10:04:22 -06:00
PixPassHelpers.cpp Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897) 2024-09-05 13:21:34 -07:00
PixPassHelpers.h Cherry-Pick: PIX: Rationalize UAV generation (#6883) (#6897) 2024-09-05 13:21:34 -07:00