瀏覽代碼

Shader decompiler: Fix storage tracking in deko3d.

Fernando Sahmkow 4 年之前
父節點
當前提交
ec9f0f064e
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      src/shader_recompiler/ir_opt/global_memory_to_storage_buffer_pass.cpp

+ 2 - 1
src/shader_recompiler/ir_opt/global_memory_to_storage_buffer_pass.cpp

@@ -334,7 +334,8 @@ std::optional<LowAddrInfo> TrackLowAddress(IR::Inst* inst) {
 /// Tries to track the storage buffer address used by a global memory instruction
 std::optional<StorageBufferAddr> Track(const IR::Value& value, const Bias* bias) {
     const auto pred{[bias](const IR::Inst* inst) -> std::optional<StorageBufferAddr> {
-        if (inst->GetOpcode() != IR::Opcode::GetCbufU32) {
+        if (inst->GetOpcode() != IR::Opcode::GetCbufU32 &&
+            inst->GetOpcode() != IR::Opcode::GetCbufU32x2) {
             return std::nullopt;
         }
         const IR::Value index{inst->Arg(0)};