diff --git a/renderdoc/driver/shaders/spirv/spirv_disassemble.cpp b/renderdoc/driver/shaders/spirv/spirv_disassemble.cpp index 585aa89b5..d8a4a444b 100644 --- a/renderdoc/driver/shaders/spirv/spirv_disassemble.cpp +++ b/renderdoc/driver/shaders/spirv/spirv_disassemble.cpp @@ -1499,6 +1499,9 @@ struct SPVInstruction ret += ", "; string arg; op->GetArg(ids, vec, arg); + + if((op->inlineArgs & (1<arguments[vec]->op && op->arguments[vec]->op->mathop) + arg = "(" + arg + ")"; ret += arg; ret += "."; } @@ -1544,7 +1547,7 @@ struct SPVInstruction string a; op->GetArg(ids, 0, a); - if(op->arguments[0]->op && op->arguments[0]->op->mathop) + if((op->inlineArgs & 1) && op->arguments[0]->op && op->arguments[0]->op->mathop) a = "(" + a + ")"; if(inlineOp)