diff --git a/src/core/cpu_newrec_compiler_aarch32.cpp b/src/core/cpu_newrec_compiler_aarch32.cpp index 3d4d8a86d..88df0bede 100644 --- a/src/core/cpu_newrec_compiler_aarch32.cpp +++ b/src/core/cpu_newrec_compiler_aarch32.cpp @@ -1676,7 +1676,7 @@ void CPU::NewRec::AArch32Compiler::Compile_lwc2(CompileFlags cf, MemoryAccessSiz std::optional(); FlushForLoadStore(address, false, use_fastmem); const Register addr = ComputeLoadStoreAddressArg(cf, address, addr_reg); - const Register value = GenerateLoad(addr, MemoryAccessSize::Word, false, use_fastmem, [this, action]() { + const Register value = GenerateLoad(addr, MemoryAccessSize::Word, false, use_fastmem, [this, action = action]() { return (action == GTERegisterAccessAction::CallHandler && g_settings.gpu_pgxp_enable) ? Register(AllocateTempHostReg(HR_CALLEE_SAVED)) : RRET; diff --git a/src/core/cpu_newrec_compiler_aarch64.cpp b/src/core/cpu_newrec_compiler_aarch64.cpp index 34a1ce5a8..4a30afac2 100644 --- a/src/core/cpu_newrec_compiler_aarch64.cpp +++ b/src/core/cpu_newrec_compiler_aarch64.cpp @@ -1655,7 +1655,7 @@ void CPU::NewRec::AArch64Compiler::Compile_lwc2(CompileFlags cf, MemoryAccessSiz std::optional(); FlushForLoadStore(address, false, use_fastmem); const WRegister addr = ComputeLoadStoreAddressArg(cf, address, addr_reg); - const WRegister value = GenerateLoad(addr, MemoryAccessSize::Word, false, use_fastmem, [this, action]() { + const WRegister value = GenerateLoad(addr, MemoryAccessSize::Word, false, use_fastmem, [this, action = action]() { return (action == GTERegisterAccessAction::CallHandler && g_settings.gpu_pgxp_enable) ? WRegister(AllocateTempHostReg(HR_CALLEE_SAVED)) : RWRET; diff --git a/src/core/cpu_newrec_compiler_riscv64.cpp b/src/core/cpu_newrec_compiler_riscv64.cpp index cffc58cb8..7cb29d5ee 100644 --- a/src/core/cpu_newrec_compiler_riscv64.cpp +++ b/src/core/cpu_newrec_compiler_riscv64.cpp @@ -1963,7 +1963,7 @@ void CPU::NewRec::RISCV64Compiler::Compile_lwc2(CompileFlags cf, MemoryAccessSiz g_settings.gpu_pgxp_enable ? std::optional(GPR(AllocateTempHostReg(HR_CALLEE_SAVED))) : std::optional(); FlushForLoadStore(address, false, use_fastmem); const GPR addr = ComputeLoadStoreAddressArg(cf, address, addr_reg); - const GPR value = GenerateLoad(addr, MemoryAccessSize::Word, false, use_fastmem, [this, action]() { + const GPR value = GenerateLoad(addr, MemoryAccessSize::Word, false, use_fastmem, [this, action = action]() { return (action == GTERegisterAccessAction::CallHandler && g_settings.gpu_pgxp_enable) ? GPR(AllocateTempHostReg(HR_CALLEE_SAVED)) : RRET; diff --git a/src/core/cpu_newrec_compiler_x64.cpp b/src/core/cpu_newrec_compiler_x64.cpp index 0b59bac47..fbe4ce683 100644 --- a/src/core/cpu_newrec_compiler_x64.cpp +++ b/src/core/cpu_newrec_compiler_x64.cpp @@ -1623,7 +1623,7 @@ void CPU::NewRec::X64Compiler::Compile_lwc2(CompileFlags cf, MemoryAccessSize si std::optional(); FlushForLoadStore(address, false, use_fastmem); const Reg32 addr = ComputeLoadStoreAddressArg(cf, address, addr_reg); - const Reg32 value = GenerateLoad(addr, MemoryAccessSize::Word, false, use_fastmem, [this, action]() { + const Reg32 value = GenerateLoad(addr, MemoryAccessSize::Word, false, use_fastmem, [this, action = action]() { return (action == GTERegisterAccessAction::CallHandler && g_settings.gpu_pgxp_enable) ? Reg32(AllocateTempHostReg(HR_CALLEE_SAVED)) : RWRET;