Allow nonuniformEXT() on sampler types.

Also add missing NonUniformEXT decoration on OpImageTexelPointer.
This commit is contained in:
Jeff Bolz
2020-03-09 10:48:12 -05:00
parent f333272eb5
commit 39ffdaf2ab
7 changed files with 136 additions and 1 deletions

View File

@@ -4835,6 +4835,9 @@ spv::Id TGlslangToSpvTraverser::createImageTextureFunctionCall(glslang::TIntermO
resultTypeId = builder.makePointer(spv::StorageClassImage, resultType());
}
spv::Id pointer = builder.createOp(spv::OpImageTexelPointer, resultTypeId, operands);
if (imageType.getQualifier().nonUniform) {
builder.addDecoration(pointer, spv::DecorationNonUniformEXT);
}
std::vector<spv::Id> operands;
operands.push_back(pointer);