mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-04-20 03:25:16 +00:00
Small fix
This commit is contained in:
parent
e84fc6426c
commit
2d1d996c50
5 changed files with 19 additions and 7 deletions
|
@ -270,7 +270,7 @@ void decode_x64_reg_op(const u8* code, x64_op_t& out_op, x64_reg_t& out_reg, siz
|
|||
{
|
||||
case 0x7f:
|
||||
{
|
||||
if (repe && !oso) // MOVDQU xmm/m, xmm
|
||||
if ((repe && !oso) || (!repe && oso)) // MOVDQU/MOVDQA xmm/m, xmm
|
||||
{
|
||||
out_op = X64OP_STORE;
|
||||
out_reg = get_modRM_reg_xmm(code, rex);
|
||||
|
|
|
@ -189,7 +189,7 @@ u64 PPUThread::GetStackArg(s32 i)
|
|||
return vm::read64(vm::cast(GPR[1] + 0x70 + 0x8 * (i - 9)));
|
||||
}
|
||||
|
||||
u64 PPUThread::FastCall2(u32 addr, u32 rtoc)
|
||||
void PPUThread::FastCall2(u32 addr, u32 rtoc)
|
||||
{
|
||||
auto old_status = m_status;
|
||||
auto old_PC = PC;
|
||||
|
@ -212,8 +212,6 @@ u64 PPUThread::FastCall2(u32 addr, u32 rtoc)
|
|||
GPR[2] = old_rtoc;
|
||||
LR = old_LR;
|
||||
SetCurrentNamedThread(old_thread);
|
||||
|
||||
return GPR[3];
|
||||
}
|
||||
|
||||
void PPUThread::FastStop()
|
||||
|
|
|
@ -793,13 +793,27 @@ public:
|
|||
return false;
|
||||
}
|
||||
|
||||
u64 get_next_gpr_arg(u32& g_count, u32& f_count, u32& v_count)
|
||||
{
|
||||
assert(!f_count && !v_count); // not supported
|
||||
|
||||
if (g_count < 8)
|
||||
{
|
||||
return GPR[g_count++ + 3];
|
||||
}
|
||||
else
|
||||
{
|
||||
return GetStackArg(++g_count);
|
||||
}
|
||||
}
|
||||
|
||||
public:
|
||||
virtual void InitRegs() override;
|
||||
virtual void InitStack() override;
|
||||
virtual void CloseStack() override;
|
||||
virtual void Task() override;
|
||||
u64 GetStackArg(s32 i);
|
||||
u64 FastCall2(u32 addr, u32 rtoc);
|
||||
void FastCall2(u32 addr, u32 rtoc);
|
||||
void FastStop();
|
||||
virtual void DoRun() override;
|
||||
|
||||
|
|
|
@ -179,4 +179,4 @@ void fix_relocs(Module* module, u32 lib, u32 start, u32 end, u32 seg2);
|
|||
|
||||
#define REG_FUNC(module, name) module.AddFunc(get_function_id(#name), name)
|
||||
|
||||
#define UNIMPLEMENTED_FUNC(module) module.Fatal("%s", __FUNCTION__)
|
||||
#define UNIMPLEMENTED_FUNC(module) module.Error("%s", __FUNCTION__)
|
||||
|
|
|
@ -126,7 +126,7 @@ s32 sys_prx_get_module_id_by_address()
|
|||
s32 sys_prx_get_module_id_by_name()
|
||||
{
|
||||
sys_prx.Todo("sys_prx_get_module_id_by_name()");
|
||||
return CELL_OK;
|
||||
return CELL_PRX_ERROR_UNKNOWN_MODULE;
|
||||
}
|
||||
|
||||
s32 sys_prx_get_module_info()
|
||||
|
|
Loading…
Add table
Reference in a new issue