From f69c5e4c4e6426077136964b97922ca768675b89 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Fri, 16 Nov 2018 19:47:34 +0100 Subject: [PATCH] [dxbc] Emit Index decoration for pixel shader outputs Simplifies shader patching when dual-source blending is used. --- src/dxbc/dxbc_compiler.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/dxbc/dxbc_compiler.cpp b/src/dxbc/dxbc_compiler.cpp index fdf66c177..e42e3d97e 100644 --- a/src/dxbc/dxbc_compiler.cpp +++ b/src/dxbc/dxbc_compiler.cpp @@ -719,6 +719,10 @@ namespace dxvk { if (info.sclass == spv::StorageClassOutput) { m_module.decorateLocation(varId, regIdx); m_entryPointInterfaces.push_back(varId); + + // Add index decoration for potential dual-source blending + if (m_programInfo.type() == DxbcProgramType::PixelShader) + m_module.decorateIndex(varId, 0); } m_oRegs.at(regIdx) = { regType, varId };