diff --git a/src/xenia/cpu/x64/x64_emitter.cc b/src/xenia/cpu/x64/x64_emitter.cc index 4edcc1357..ef3e27e3c 100644 --- a/src/xenia/cpu/x64/x64_emitter.cc +++ b/src/xenia/cpu/x64/x64_emitter.cc @@ -1156,9 +1156,12 @@ void X64Emitter::write_gpu_register(uint32_t r, GpVar& v) { X86Compiler& c = compiler_; GpVar this_imm(c.newGpVar()); + c.alloc(this_imm, rcx); c.mov(this_imm, imm((uint64_t)gpu_this_)); GpVar reg_imm(c.newGpVar()); + c.alloc(reg_imm, rdx); c.mov(reg_imm, imm(r & 0xFFFF)); + c.alloc(v, r8); X86CompilerFuncCall* call = c.call(gpu_write_); call->setPrototype(kX86FuncConvDefault,