Просмотр исходного кода

shader: Add missing UndoUse case for GetSparseFromOp

ReinUsesLisp 5 лет назад
Родитель
Сommit
aece958c2b
1 измененных файлов с 4 добавлено и 0 удалено
  1. 4 0
      src/shader_recompiler/frontend/ir/microinstruction.cpp

+ 4 - 0
src/shader_recompiler/frontend/ir/microinstruction.cpp

@@ -364,6 +364,10 @@ void Inst::UndoUse(const Value& value) {
         AllocAssociatedInsts(assoc_inst);
         AllocAssociatedInsts(assoc_inst);
         RemovePseudoInstruction(assoc_inst->overflow_inst, Opcode::GetOverflowFromOp);
         RemovePseudoInstruction(assoc_inst->overflow_inst, Opcode::GetOverflowFromOp);
         break;
         break;
+    case Opcode::GetSparseFromOp:
+        AllocAssociatedInsts(assoc_inst);
+        RemovePseudoInstruction(assoc_inst->sparse_inst, Opcode::GetSparseFromOp);
+        break;
     case Opcode::GetInBoundsFromOp:
     case Opcode::GetInBoundsFromOp:
         AllocAssociatedInsts(assoc_inst);
         AllocAssociatedInsts(assoc_inst);
         RemovePseudoInstruction(assoc_inst->in_bounds_inst, Opcode::GetInBoundsFromOp);
         RemovePseudoInstruction(assoc_inst->in_bounds_inst, Opcode::GetInBoundsFromOp);