mirror of
https://github.com/hrydgard/ppsspp.git
synced 2024-10-07 19:03:29 +00:00
Merge NativeJit.cpp/h with JitCommon.cpp/h
This commit is contained in:
parent
5aadce59a2
commit
8b450c8034
@ -1389,8 +1389,6 @@ add_library(${CoreLibName} ${CoreLinkType}
|
||||
Core/FileLoaders/RetryingFileLoader.h
|
||||
Core/MIPS/JitCommon/JitCommon.cpp
|
||||
Core/MIPS/JitCommon/JitCommon.h
|
||||
Core/MIPS/JitCommon/NativeJit.cpp
|
||||
Core/MIPS/JitCommon/NativeJit.h
|
||||
Core/MIPS/JitCommon/JitBlockCache.cpp
|
||||
Core/MIPS/JitCommon/JitBlockCache.h
|
||||
Core/MIPS/JitCommon/JitState.cpp
|
||||
|
@ -426,7 +426,6 @@
|
||||
<ClCompile Include="MIPS\JitCommon\JitBlockCache.cpp" />
|
||||
<ClCompile Include="MIPS\JitCommon\JitCommon.cpp" />
|
||||
<ClCompile Include="MIPS\JitCommon\JitState.cpp" />
|
||||
<ClCompile Include="MIPS\JitCommon\NativeJit.cpp" />
|
||||
<ClCompile Include="MIPS\MIPS.cpp" />
|
||||
<ClCompile Include="MIPS\MIPSAnalyst.cpp" />
|
||||
<ClCompile Include="MIPS\MIPSAsm.cpp" />
|
||||
@ -667,7 +666,6 @@
|
||||
<ClInclude Include="MIPS\ARM\ArmRegCacheFPU.h" />
|
||||
<ClInclude Include="MIPS\JitCommon\JitBlockCache.h" />
|
||||
<ClInclude Include="MIPS\JitCommon\JitCommon.h" />
|
||||
<ClInclude Include="MIPS\JitCommon\NativeJit.h" />
|
||||
<ClInclude Include="MIPS\JitCommon\JitState.h" />
|
||||
<ClInclude Include="MIPS\MIPS.h" />
|
||||
<ClInclude Include="MIPS\MIPSAnalyst.h" />
|
||||
|
@ -631,9 +631,6 @@
|
||||
<ClCompile Include="FileLoaders\RamCachingFileLoader.cpp">
|
||||
<Filter>FileLoaders</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="MIPS\JitCommon\NativeJit.cpp">
|
||||
<Filter>MIPS\JitCommon</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="ELF\ElfReader.h">
|
||||
@ -681,9 +678,6 @@
|
||||
<ClInclude Include="MIPS\JitCommon\JitCommon.h">
|
||||
<Filter>MIPS\JitCommon</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="MIPS\JitCommon\NativeJit.h">
|
||||
<Filter>MIPS\JitCommon</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="FileSystems\DirectoryFileSystem.h">
|
||||
<Filter>FileSystems</Filter>
|
||||
</ClInclude>
|
||||
|
@ -11,7 +11,7 @@
|
||||
#include "Core/ELF/ParamSFO.h"
|
||||
#include "Core/System.h"
|
||||
#include "Core/HLE/sceCtrl.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
|
||||
#ifdef _WIN32
|
||||
#include "util/text/utf8.h"
|
||||
|
@ -23,7 +23,7 @@
|
||||
#include "Core/Debugger/SymbolMap.h"
|
||||
#include "Core/Host.h"
|
||||
#include "Core/MIPS/MIPSAnalyst.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/CoreTiming.h"
|
||||
|
||||
std::vector<BreakPoint> CBreakPoints::breakPoints_;
|
||||
|
@ -34,7 +34,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "Common/CommonTypes.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
|
||||
typedef int (* ReplaceFunc)();
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
#include "Common/ArmEmitter.h"
|
||||
#include "Core/MIPS/JitCommon/JitState.h"
|
||||
#include "Core/MIPS/JitCommon/JitBlockCache.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/ARM/ArmRegCache.h"
|
||||
#include "Core/MIPS/ARM/ArmRegCacheFPU.h"
|
||||
#include "Core/MIPS/MIPSVFPUUtils.h"
|
||||
|
@ -22,7 +22,7 @@
|
||||
#include "Common/Arm64Emitter.h"
|
||||
#include "Core/MIPS/JitCommon/JitState.h"
|
||||
#include "Core/MIPS/JitCommon/JitBlockCache.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/ARM64/Arm64RegCache.h"
|
||||
#include "Core/MIPS/ARM64/Arm64RegCacheFPU.h"
|
||||
#include "Core/MIPS/MIPSVFPUUtils.h"
|
||||
|
@ -42,7 +42,6 @@
|
||||
|
||||
#include "Core/MIPS/JitCommon/JitBlockCache.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
|
||||
// #include "JitBase.h"
|
||||
|
||||
|
@ -114,8 +114,7 @@ public:
|
||||
|
||||
int AllocateBlock(u32 em_address);
|
||||
// When a proxy block is invalidated, the block located at the rootAddress
|
||||
// is invalidated too.
|
||||
void ProxyBlock(u32 rootAddress, u32 startAddress, u32 size, const u8 *codePtr);
|
||||
void ProxyBlock(u32 rootAddress, u32 startAddress, u32 size, u8 *codePtr);
|
||||
void FinalizeBlock(int block_num, bool block_link);
|
||||
|
||||
void Clear();
|
||||
|
@ -15,17 +15,50 @@
|
||||
// Official git repository and contact information can be found at
|
||||
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/JitCommon/JitState.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Common/StringUtils.h"
|
||||
#include <cstdlib>
|
||||
|
||||
#include "ext/disarm.h"
|
||||
#include "ext/udis86/udis86.h"
|
||||
|
||||
#include "Common/StringUtils.h"
|
||||
#include "Core/Util/DisArm64.h"
|
||||
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/JitCommon/JitState.h"
|
||||
|
||||
#if defined(ARM)
|
||||
#include "../ARM/ArmJit.h"
|
||||
#elif defined(ARM64)
|
||||
#include "../ARM64/Arm64Jit.h"
|
||||
#elif defined(_M_IX86) || defined(_M_X64)
|
||||
#include "../x86/Jit.h"
|
||||
#elif defined(MIPS)
|
||||
#include "../MIPS/MipsJit.h"
|
||||
#else
|
||||
#include "../fake/FakeJit.h"
|
||||
#endif
|
||||
|
||||
namespace MIPSComp {
|
||||
JitInterface *jit;
|
||||
void JitAt() {
|
||||
jit->Compile(currentMIPS->pc);
|
||||
}
|
||||
|
||||
JitInterface *CreateNativeJit(MIPSState *mips) {
|
||||
#if defined(ARM)
|
||||
return new MIPSComp::ArmJit(mips);
|
||||
#elif defined(ARM64)
|
||||
return new MIPSComp::Arm64Jit(mips);
|
||||
#elif defined(_M_IX86) || defined(_M_X64)
|
||||
return new MIPSComp::Jit(mips);
|
||||
#elif defined(MIPS)
|
||||
return new MIPSComp::MipsJit(mips);
|
||||
#else
|
||||
return new MIPSComp::FakeJit(mips);
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
#if (defined(_M_IX86) || defined(_M_X64)) && defined(_WIN32)
|
||||
#define DISASM_ALL 1
|
||||
#endif
|
||||
|
@ -21,12 +21,120 @@
|
||||
#include <string>
|
||||
|
||||
#include "Common/Common.h"
|
||||
#include "Common/CommonTypes.h"
|
||||
#include "Core/MIPS/MIPS.h"
|
||||
|
||||
// TODO: Find a better place for these.
|
||||
std::vector<std::string> DisassembleArm2(const u8 *data, int size);
|
||||
std::vector<std::string> DisassembleArm64(const u8 *data, int size);
|
||||
std::vector<std::string> DisassembleX86(const u8 *data, int size);
|
||||
|
||||
struct JitBlock;
|
||||
class JitBlockCache;
|
||||
class PointerWrap;
|
||||
|
||||
#ifdef USING_QT_UI
|
||||
#undef emit
|
||||
#endif
|
||||
|
||||
class MIPSState;
|
||||
|
||||
namespace MIPSComp {
|
||||
void JitAt();
|
||||
}
|
||||
|
||||
class JitInterface {
|
||||
public:
|
||||
virtual ~JitInterface() {}
|
||||
|
||||
virtual bool DescribeCodePtr(const u8 *ptr, std::string &name) = 0;
|
||||
virtual const u8 *GetDispatcher() const = 0;
|
||||
virtual JitBlockCache *GetBlockCache() = 0;
|
||||
virtual void InvalidateCache() = 0;
|
||||
virtual void InvalidateCacheAt(u32 em_address, int length = 4) = 0;
|
||||
virtual void DoState(PointerWrap &p) = 0;
|
||||
virtual void DoDummyState(PointerWrap &p) = 0;
|
||||
virtual void RunLoopUntil(u64 globalticks) = 0;
|
||||
virtual void Compile(u32 em_address) = 0;
|
||||
virtual void ClearCache() = 0;
|
||||
virtual void EatPrefix() = 0;
|
||||
|
||||
// Block linking. This may need to work differently for whole-function JITs and stuff
|
||||
// like that.
|
||||
virtual void LinkBlock(u8 *exitPoint, const u8 *entryPoint) = 0;
|
||||
virtual void UnlinkBlock(u8 *checkedEntry, u32 originalAddress) = 0;
|
||||
|
||||
virtual void Comp_Generic(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RunBlock(MIPSOpcode op) = 0;
|
||||
virtual void Comp_ReplacementFunc(MIPSOpcode op) = 0;
|
||||
virtual void Comp_ITypeMem(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Cache(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RelBranch(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RelBranchRI(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPUBranch(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPULS(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPUComp(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Jump(MIPSOpcode op) = 0;
|
||||
virtual void Comp_JumpReg(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Syscall(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Break(MIPSOpcode op) = 0;
|
||||
virtual void Comp_IType(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RType2(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RType3(MIPSOpcode op) = 0;
|
||||
virtual void Comp_ShiftType(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Allegrex(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Allegrex2(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VBranch(MIPSOpcode op) = 0;
|
||||
virtual void Comp_MulDivType(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Special3(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPU3op(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPU2op(MIPSOpcode op) = 0;
|
||||
virtual void Comp_mxc1(MIPSOpcode op) = 0;
|
||||
virtual void Comp_SV(MIPSOpcode op) = 0;
|
||||
virtual void Comp_SVQ(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VPFX(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VVectorInit(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VMatrixInit(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VDot(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VecDo3(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VV2Op(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Mftv(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmfvc(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmtvc(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmmov(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VScl(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmmul(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmscl(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vtfm(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VHdp(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VCrs(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VDet(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vi2x(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vx2i(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vf2i(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vi2f(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vh2f(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vcst(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vhoriz(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VRot(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VIdt(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vcmp(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vcmov(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Viim(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vfim(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VCrossQuat(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vsgn(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vocp(MIPSOpcode op) = 0;
|
||||
virtual void Comp_ColorConv(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vbfy(MIPSOpcode op) = 0;
|
||||
virtual void Comp_DoNothing(MIPSOpcode op) = 0;
|
||||
|
||||
virtual int Replace_fabsf() = 0;
|
||||
};
|
||||
|
||||
typedef void (JitInterface::*MIPSCompileFunc)(MIPSOpcode opcode);
|
||||
typedef int (JitInterface::*MIPSReplaceFunc)();
|
||||
|
||||
extern JitInterface *jit;
|
||||
|
||||
JitInterface *CreateNativeJit(MIPSState *mips);
|
||||
}
|
||||
|
@ -1,53 +0,0 @@
|
||||
// Copyright (c) 2012- PPSSPP Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0 or later versions.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official git repository and contact information can be found at
|
||||
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
|
||||
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitState.h"
|
||||
|
||||
#if defined(ARM)
|
||||
#include "../ARM/ArmJit.h"
|
||||
#elif defined(ARM64)
|
||||
#include "../ARM64/Arm64Jit.h"
|
||||
#elif defined(_M_IX86) || defined(_M_X64)
|
||||
#include "../x86/Jit.h"
|
||||
#elif defined(MIPS)
|
||||
#include "../MIPS/MipsJit.h"
|
||||
#else
|
||||
#include "../fake/FakeJit.h"
|
||||
#endif
|
||||
|
||||
namespace MIPSComp {
|
||||
JitInterface *jit;
|
||||
void JitAt() {
|
||||
jit->Compile(currentMIPS->pc);
|
||||
}
|
||||
|
||||
JitInterface *CreateNativeJit(MIPSState *mips) {
|
||||
#if defined(ARM)
|
||||
return new MIPSComp::ArmJit(mips);
|
||||
#elif defined(ARM64)
|
||||
return new MIPSComp::Arm64Jit(mips);
|
||||
#elif defined(_M_IX86) || defined(_M_X64)
|
||||
return new MIPSComp::Jit(mips);
|
||||
#elif defined(MIPS)
|
||||
return new MIPSComp::MipsJit(mips);
|
||||
#else
|
||||
return new MIPSComp::FakeJit(mips);
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
@ -1,131 +0,0 @@
|
||||
// Copyright (c) 2012- PPSSPP Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0 or later versions.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official git repository and contact information can be found at
|
||||
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include "Common/CommonTypes.h"
|
||||
#include "Core/MIPS/MIPS.h"
|
||||
|
||||
struct JitBlock;
|
||||
class JitBlockCache;
|
||||
class PointerWrap;
|
||||
|
||||
#ifdef USING_QT_UI
|
||||
#undef emit
|
||||
#endif
|
||||
|
||||
class MIPSState;
|
||||
|
||||
namespace MIPSComp {
|
||||
|
||||
class JitInterface {
|
||||
public:
|
||||
virtual ~JitInterface() {}
|
||||
|
||||
virtual bool DescribeCodePtr(const u8 *ptr, std::string &name) = 0;
|
||||
virtual const u8 *GetDispatcher() const = 0;
|
||||
virtual JitBlockCache *GetBlockCache() = 0;
|
||||
virtual void InvalidateCache() = 0;
|
||||
virtual void InvalidateCacheAt(u32 em_address, int length = 4) = 0;
|
||||
virtual void DoState(PointerWrap &p) = 0;
|
||||
virtual void DoDummyState(PointerWrap &p) = 0;
|
||||
virtual void RunLoopUntil(u64 globalticks) = 0;
|
||||
virtual void Compile(u32 em_address) = 0;
|
||||
virtual void ClearCache() = 0;
|
||||
virtual void EatPrefix() = 0;
|
||||
|
||||
// Block linking. This may need to work differently for whole-function JITs and stuff
|
||||
// like that.
|
||||
virtual void LinkBlock(u8 *exitPoint, const u8 *entryPoint) = 0;
|
||||
virtual void UnlinkBlock(u8 *checkedEntry, u32 originalAddress) = 0;
|
||||
|
||||
virtual void Comp_Generic(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RunBlock(MIPSOpcode op) = 0;
|
||||
virtual void Comp_ReplacementFunc(MIPSOpcode op) = 0;
|
||||
virtual void Comp_ITypeMem(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Cache(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RelBranch(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RelBranchRI(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPUBranch(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPULS(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPUComp(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Jump(MIPSOpcode op) = 0;
|
||||
virtual void Comp_JumpReg(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Syscall(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Break(MIPSOpcode op) = 0;
|
||||
virtual void Comp_IType(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RType2(MIPSOpcode op) = 0;
|
||||
virtual void Comp_RType3(MIPSOpcode op) = 0;
|
||||
virtual void Comp_ShiftType(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Allegrex(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Allegrex2(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VBranch(MIPSOpcode op) = 0;
|
||||
virtual void Comp_MulDivType(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Special3(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPU3op(MIPSOpcode op) = 0;
|
||||
virtual void Comp_FPU2op(MIPSOpcode op) = 0;
|
||||
virtual void Comp_mxc1(MIPSOpcode op) = 0;
|
||||
virtual void Comp_SV(MIPSOpcode op) = 0;
|
||||
virtual void Comp_SVQ(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VPFX(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VVectorInit(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VMatrixInit(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VDot(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VecDo3(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VV2Op(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Mftv(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmfvc(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmtvc(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmmov(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VScl(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmmul(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vmscl(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vtfm(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VHdp(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VCrs(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VDet(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vi2x(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vx2i(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vf2i(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vi2f(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vh2f(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vcst(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vhoriz(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VRot(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VIdt(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vcmp(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vcmov(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Viim(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vfim(MIPSOpcode op) = 0;
|
||||
virtual void Comp_VCrossQuat(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vsgn(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vocp(MIPSOpcode op) = 0;
|
||||
virtual void Comp_ColorConv(MIPSOpcode op) = 0;
|
||||
virtual void Comp_Vbfy(MIPSOpcode op) = 0;
|
||||
virtual void Comp_DoNothing(MIPSOpcode op) = 0;
|
||||
|
||||
virtual int Replace_fabsf() = 0;
|
||||
};
|
||||
|
||||
typedef void (JitInterface::*MIPSCompileFunc)(MIPSOpcode opcode);
|
||||
typedef int (JitInterface::*MIPSReplaceFunc)();
|
||||
|
||||
extern JitInterface *jit;
|
||||
|
||||
JitInterface *CreateNativeJit(MIPSState *mips);
|
||||
}
|
@ -27,12 +27,10 @@
|
||||
#include "Core/MIPS/MIPSTables.h"
|
||||
#include "Core/MIPS/MIPSDebugInterface.h"
|
||||
#include "Core/MIPS/MIPSVFPUUtils.h"
|
||||
#include "Core/MIPS/JitCommon/JitBlockCache.h"
|
||||
#include "Core/Reporting.h"
|
||||
#include "Core/System.h"
|
||||
#include "Core/HLE/sceDisplay.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/CoreTiming.h"
|
||||
|
||||
MIPSState mipsr4k;
|
||||
|
@ -15,7 +15,7 @@
|
||||
#include "util/text/utf8.h"
|
||||
#include "Core/Debugger/SymbolMap.h"
|
||||
#include "Core/MemMapHelpers.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/MIPSAsm.h"
|
||||
|
||||
namespace MIPSAsm
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "Core/Reporting.h"
|
||||
#include "Core/Debugger/Breakpoints.h"
|
||||
|
||||
#include "JitCommon/NativeJit.h"
|
||||
#include "JitCommon/JitCommon.h"
|
||||
|
||||
enum MipsEncoding {
|
||||
Imme,
|
||||
|
@ -16,7 +16,7 @@
|
||||
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
|
||||
|
||||
#include "Core/MemMap.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/x86/RegCache.h"
|
||||
#include "Core/MIPS/x86/Jit.h"
|
||||
|
||||
|
@ -28,7 +28,7 @@
|
||||
#include "Common/x64Emitter.h"
|
||||
#include "Core/MIPS/JitCommon/JitBlockCache.h"
|
||||
#include "Core/MIPS/JitCommon/JitState.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/x86/JitSafeMem.h"
|
||||
#include "Core/MIPS/x86/RegCache.h"
|
||||
#include "Core/MIPS/x86/RegCacheFPU.h"
|
||||
|
@ -25,7 +25,7 @@
|
||||
#include "Core/Core.h"
|
||||
#include "Core/Config.h"
|
||||
#include "Core/CwCheat.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
|
||||
#include "UI/OnScreenDisplay.h"
|
||||
#include "UI/ui_atlas.h"
|
||||
|
@ -34,7 +34,6 @@
|
||||
#include "Core/System.h"
|
||||
#include "Core/CoreParameter.h"
|
||||
#include "Core/MIPS/MIPSTables.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitBlockCache.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "GPU/GPUInterface.h"
|
||||
|
@ -37,7 +37,7 @@
|
||||
#include "Core/Config.h"
|
||||
#include "Core/Host.h"
|
||||
#include "Core/System.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/HLE/sceUtility.h"
|
||||
#include "Common/FileUtil.h"
|
||||
#include "GPU/GPUState.h"
|
||||
|
@ -47,7 +47,7 @@
|
||||
#include "Windows/Debugger/Debugger_Disasm.h"
|
||||
#include "Windows/Debugger/Debugger_MemoryDlg.h"
|
||||
#include "Windows/GEDebugger/GEDebugger.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/JitCommon/JitBlockCache.h"
|
||||
|
||||
#include "main.h"
|
||||
|
@ -357,7 +357,6 @@ EXEC_AND_LIB_FILES := \
|
||||
$(SRC)/Core/MIPS/JitCommon/JitCommon.cpp \
|
||||
$(SRC)/Core/MIPS/JitCommon/JitBlockCache.cpp \
|
||||
$(SRC)/Core/MIPS/JitCommon/JitState.cpp \
|
||||
$(SRC)/Core/MIPS/JitCommon/NativeJit.cpp \
|
||||
$(SRC)/Core/Util/AudioFormat.cpp \
|
||||
$(SRC)/Core/Util/GameManager.cpp \
|
||||
$(SRC)/Core/Util/BlockAllocator.cpp \
|
||||
|
@ -22,7 +22,6 @@
|
||||
#include "input/input_state.h"
|
||||
#include "Core/MIPS/JitCommon/JitCommon.h"
|
||||
#include "Core/MIPS/JitCommon/JitBlockCache.h"
|
||||
#include "Core/MIPS/JitCommon/NativeJit.h"
|
||||
#include "Core/MIPS/MIPSCodeUtils.h"
|
||||
#include "Core/MIPS/MIPSDebugInterface.h"
|
||||
#include "Core/MIPS/MIPSAsm.h"
|
||||
|
Loading…
Reference in New Issue
Block a user