diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2021-04-11 07:37:03 +0200 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2021-07-23 03:51:27 +0200 |
commit | ab543f18213133b3076b81f30df386d5cb470e49 (patch) | |
tree | 7d34e2e5e168225a4e1d5a6750eae31174d2a530 /src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp | |
parent | shader: Move LaneId to the warp emission file and fix AMD (diff) | |
download | yuzu-ab543f18213133b3076b81f30df386d5cb470e49.tar yuzu-ab543f18213133b3076b81f30df386d5cb470e49.tar.gz yuzu-ab543f18213133b3076b81f30df386d5cb470e49.tar.bz2 yuzu-ab543f18213133b3076b81f30df386d5cb470e49.tar.lz yuzu-ab543f18213133b3076b81f30df386d5cb470e49.tar.xz yuzu-ab543f18213133b3076b81f30df386d5cb470e49.tar.zst yuzu-ab543f18213133b3076b81f30df386d5cb470e49.zip |
Diffstat (limited to 'src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp')
-rw-r--r-- | src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp b/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp index 8c63c9876..9ef8688c9 100644 --- a/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp +++ b/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp @@ -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: |