spirv: Guard against typeless image reads on unsupported devices

This commit is contained in:
ReinUsesLisp 2021-04-11 02:37:03 -03:00 committed by ameerj
parent 8ec58e16b2
commit 480ce24b7e
6 changed files with 17 additions and 1 deletions

View file

@ -421,6 +421,13 @@ void VisitUsages(Info& info, IR::Inst& inst) {
inst.GetAssociatedPseudoOperation(IR::Opcode::GetSparseFromOp) != nullptr;
break;
}
case IR::Opcode::ImageRead: {
const auto flags{inst.Flags<IR::TextureInstInfo>()};
info.uses_typeless_image_reads |= flags.image_format == ImageFormat::Typeless;
info.uses_sparse_residency |=
inst.GetAssociatedPseudoOperation(IR::Opcode::GetSparseFromOp) != nullptr;
break;
}
case IR::Opcode::SubgroupEqMask:
case IR::Opcode::SubgroupLtMask:
case IR::Opcode::SubgroupLeMask: