Support for Operation::ExtractVal on a struct

This commit is contained in:
Jake Turner
2025-10-05 06:49:54 +01:00
parent c1ba2694f7
commit 823ae93845
+11 -1
View File
@@ -5240,7 +5240,17 @@ bool ThreadState::ExecuteInstruction(DebugAPIWrapper *apiWrapper,
RDCASSERTEQUAL(inst.args.size(), 2);
uint32_t idx = ~0U;
RDCASSERT(getival(inst.args[1], idx));
RDCASSERT(idx < srcVal.columns);
ShaderVariable sourceData;
if(srcVal.type == VarType::Struct)
{
sourceData = srcVal.members[idx];
idx = 0;
}
else
{
sourceData = srcVal;
}
RDCASSERT(idx < sourceData.columns);
RDCASSERTEQUAL(result.type, srcVal.type);
switch(result.type)