test(agc): fix mrt export index and vertex fetch abi checks

This commit is contained in:
boykopovar 2026-10-07 19:55:45 +03:00
parent 8c4e0b1524
commit 19ede29259
2 changed files with 2 additions and 1 deletions

View File

@ -55,6 +55,7 @@ void Run(AgcDriver::VulkanDevice& device, bool integer) {
auto other = state.color;
other.address = reinterpret_cast<std::uintptr_t>(otherPixels.data());
other.slot = 3;
other.exportIndex = 3;
state.colors = {state.color, other};
state.hasColorTarget = true;
state.renderExtent = {Extent, Extent};

View File

@ -77,7 +77,7 @@ void Run(AgcDriver::VulkanDevice& device) {
const auto vertex = ShaderRecompiler::Recompile(request);
Require(vertex.vertexInputs.empty() && vertex.vertexAttributes.empty(), "runtime vertex fetch created Vulkan vertex attributes");
Require(vertex.vertexOffsetSgpr == -1 && vertex.instanceOffsetSgpr == -1, "runtime vertex fetch requested draw offset folding");
Require(vertex.bdaAbiVersion != 0u, "runtime vertex fetch has no BDA ABI");
Require(vertex.runtimeAbiVersion == ShaderRecompiler::RuntimeAbi::Version, "runtime vertex fetch has an incompatible runtime ABI");
if (first.spirv.empty()) first = vertex;
else Require(vertex.cacheHit && vertex.variantId == first.variantId, "runtime vertex descriptor changed the artifact");
const auto pushBytes = static_cast<std::uint32_t>(vertex.pushConstants.size());