diff --git a/src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.cpp b/src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.cpp index 52b4cf1696..e66c46f4f3 100644 --- a/src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.cpp +++ b/src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.cpp @@ -372,7 +372,7 @@ int RegAlloc::RealizeReadImpl(const IR::Value& value) { template int RegAlloc::RealizeWriteImpl(const IR::Inst* value) { - defined_insts.insert(inst); + defined_insts.insert(value); ASSERT(!ValueLocation(value)); if constexpr (kind == HostLoc::Kind::Gpr) { @@ -396,7 +396,7 @@ int RegAlloc::RealizeWriteImpl(const IR::Inst* value) { template int RegAlloc::RealizeReadWriteImpl(const IR::Value& read_value, const IR::Inst* write_value) { - defined_insts.insert(inst); + defined_insts.insert(write_value); // TODO: Move elimination const int write_loc = RealizeWriteImpl(write_value); @@ -459,7 +459,7 @@ void RegAlloc::SpillFpr(int index) { } void RegAlloc::ReadWriteFlags(Argument& read, IR::Inst* write) { - defined_insts.insert(inst); + defined_insts.insert(write); const auto current_location = ValueLocation(read.value.GetInst()); ASSERT(current_location);