diff --git a/pcsx2/CMakeLists.txt b/pcsx2/CMakeLists.txt
index 38a6aaae90..4e98afbf98 100644
--- a/pcsx2/CMakeLists.txt
+++ b/pcsx2/CMakeLists.txt
@@ -1010,21 +1010,10 @@ set(pcsx2x86Sources
# x86 headers
set(pcsx2x86Headers
x86/BaseblockEx.h
- x86/iCOP0.h
x86/iCore.h
- x86/iFPU.h
- x86/iMMI.h
x86/iR3000A.h
- x86/iR5900Arit.h
- x86/iR5900AritImm.h
- x86/iR5900Branch.h
x86/iR5900.h
x86/iR5900Analysis.h
- x86/iR5900Jump.h
- x86/iR5900LoadStore.h
- x86/iR5900Move.h
- x86/iR5900MultDiv.h
- x86/iR5900Shift.h
x86/microVU_Alloc.inl
x86/microVU_Analyze.inl
x86/microVU_Branch.inl
diff --git a/pcsx2/R5900OpcodeTables.cpp b/pcsx2/R5900OpcodeTables.cpp
index 3644483b5b..ff460639e4 100644
--- a/pcsx2/R5900OpcodeTables.cpp
+++ b/pcsx2/R5900OpcodeTables.cpp
@@ -6,19 +6,6 @@
#include "R5900OpcodeTables.h"
#include "R5900.h"
-// TODO(Stenzek): Move headers to common code.
-#include "x86/iR5900AritImm.h"
-#include "x86/iR5900Arit.h"
-#include "x86/iR5900MultDiv.h"
-#include "x86/iR5900Shift.h"
-#include "x86/iR5900Branch.h"
-#include "x86/iR5900Jump.h"
-#include "x86/iR5900LoadStore.h"
-#include "x86/iR5900Move.h"
-#include "x86/iMMI.h"
-#include "x86/iCOP0.h"
-#include "x86/iFPU.h"
-
namespace R5900
{
namespace Opcodes
diff --git a/pcsx2/R5900OpcodeTables.h b/pcsx2/R5900OpcodeTables.h
index 7816a3fc0f..b1bc73e1aa 100644
--- a/pcsx2/R5900OpcodeTables.h
+++ b/pcsx2/R5900OpcodeTables.h
@@ -118,6 +118,285 @@ namespace R5900
void recTEQI();
void recTNEI();
+ // Arithmetic with immediate (OP rt, rs, immediate)
+ void recADDI();
+ void recADDIU();
+ void recDADDI();
+ void recDADDIU();
+ void recANDI();
+ void recORI();
+ void recXORI();
+ void recSLTI();
+ void recSLTIU();
+
+ // Register arithmetic (OP rd, rs, rt)
+ void recADD();
+ void recADDU();
+ void recDADD();
+ void recDADDU();
+ void recSUB();
+ void recSUBU();
+ void recDSUB();
+ void recDSUBU();
+ void recAND();
+ void recOR();
+ void recXOR();
+ void recNOR();
+ void recSLT();
+ void recSLTU();
+
+ // Register mult/div (OP rs, rt)
+ void recMULT();
+ void recMULTU();
+ void recDIV();
+ void recDIVU();
+
+ // Shift arithmetic (OP rd, rt, sa / OP rd, rt, rs)
+ void recSLL();
+ void recSRL();
+ void recSRA();
+ void recDSLL();
+ void recDSRL();
+ void recDSRA();
+ void recDSLL32();
+ void recDSRL32();
+ void recDSRA32();
+ void recSLLV();
+ void recSRLV();
+ void recSRAV();
+ void recDSLLV();
+ void recDSRLV();
+ void recDSRAV();
+
+ // Branch (OP rs, rt, offset)
+ void recBEQ();
+ void recBEQL();
+ void recBNE();
+ void recBNEL();
+ void recBLTZ();
+ void recBLTZL();
+ void recBLTZAL();
+ void recBLTZALL();
+ void recBGTZ();
+ void recBGTZL();
+ void recBLEZ();
+ void recBLEZL();
+ void recBGEZ();
+ void recBGEZL();
+ void recBGEZAL();
+ void recBGEZALL();
+
+ // Jump (OP target / OP rs)
+ void recJ();
+ void recJAL();
+ void recJR();
+ void recJALR();
+
+ // Load and store for GPR (OP rt, offset(base))
+ void recLB();
+ void recLBU();
+ void recLH();
+ void recLHU();
+ void recLW();
+ void recLWU();
+ void recLWL();
+ void recLWR();
+ void recLD();
+ void recLDR();
+ void recLDL();
+ void recLQ();
+ void recSB();
+ void recSH();
+ void recSW();
+ void recSWL();
+ void recSWR();
+ void recSD();
+ void recSDL();
+ void recSDR();
+ void recSQ();
+ void recLWC1();
+ void recSWC1();
+ void recLQC2();
+ void recSQC2();
+
+ // Move (OP rd, rs)
+ void recLUI();
+ void recMFLO();
+ void recMFHI();
+ void recMTLO();
+ void recMTHI();
+ void recMOVN();
+ void recMOVZ();
+
+ // These are instructions contained in the MMI "opcode space" but are not
+ // actually MMI instructions. They are just specialized versions of standard
+ // instructions that "fit" into the second pipeline of the EE.
+ void recMADD1();
+ void recMADDU1();
+ void recMADD();
+ void recMADDU();
+ void recMTHI1();
+ void recMTLO1();
+ void recMFHI1();
+ void recMFLO1();
+ void recMULT1();
+ void recMULTU1();
+ void recDIV1();
+ void recDIVU1();
+
+ // Multimedia Extensions (MMI)
+ namespace MMI
+ {
+ void recPLZCW();
+ void recMMI0();
+ void recMMI1();
+ void recMMI2();
+ void recMMI3();
+ void recPMFHL();
+ void recPMTHL();
+ void recPMAXW();
+ void recPMINW();
+ void recPPACW();
+ void recPEXTLH();
+ void recPPACH();
+ void recPEXTLB();
+ void recPPACB();
+ void recPEXT5();
+ void recPPAC5();
+ void recPABSW();
+ void recPADSBH();
+ void recPABSH();
+ void recPADDUW();
+ void recPSUBUW();
+ void recPSUBUH();
+ void recPEXTUH();
+ void recPSUBUB();
+ void recPEXTUB();
+ void recQFSRV();
+ void recPMADDW();
+ void recPSLLVW();
+ void recPSRLVW();
+ void recPMSUBW();
+ void recPINTH();
+ void recPMULTW();
+ void recPDIVW();
+ void recPMADDH();
+ void recPHMADH();
+ void recPMSUBH();
+ void recPHMSBH();
+ void recPEXEH();
+ void recPREVH();
+ void recPMULTH();
+ void recPDIVBW();
+ void recPEXEW();
+ void recPROT3W();
+ void recPMADDUW();
+ void recPSRAVW();
+ void recPINTEH();
+ void recPMULTUW();
+ void recPDIVUW();
+ void recPEXCH();
+ void recPEXCW();
+ void recPSRLH();
+ void recPSRLW();
+ void recPSRAH();
+ void recPSRAW();
+ void recPSLLH();
+ void recPSLLW();
+ void recPMAXH();
+ void recPCGTB();
+ void recPCGTH();
+ void recPCGTW();
+ void recPADDSB();
+ void recPADDSH();
+ void recPADDSW();
+ void recPSUBSB();
+ void recPSUBSH();
+ void recPSUBSW();
+ void recPADDB();
+ void recPADDH();
+ void recPADDW();
+ void recPSUBB();
+ void recPSUBH();
+ void recPSUBW();
+ void recPEXTLW();
+ void recPEXTUW();
+ void recPMINH();
+ void recPCEQB();
+ void recPCEQH();
+ void recPCEQW();
+ void recPADDUB();
+ void recPADDUH();
+ void recPMFHI();
+ void recPMFLO();
+ void recPAND();
+ void recPXOR();
+ void recPCPYLD();
+ void recPNOR();
+ void recPMTHI();
+ void recPMTLO();
+ void recPCPYUD();
+ void recPOR();
+ void recPCPYH();
+ } // namespace MMI
+
+ // System Control Coprocessor (COP0)
+ namespace COP0
+ {
+ void recMFC0();
+ void recMTC0();
+ void recBC0F();
+ void recBC0T();
+ void recBC0FL();
+ void recBC0TL();
+ void recTLBR();
+ void recTLBWI();
+ void recTLBWR();
+ void recTLBP();
+ void recERET();
+ void recDI();
+ void recEI();
+ } // namespace COP0
+
+ // Floating Point Unit Coprocessor (COP1 / FPU)
+ namespace COP1
+ {
+ void recMFC1();
+ void recCFC1();
+ void recMTC1();
+ void recCTC1();
+ void recCOP1_BC1();
+ void recCOP1_S();
+ void recCOP1_W();
+ void recC_EQ();
+ void recC_F();
+ void recC_LT();
+ void recC_LE();
+ void recADD_S();
+ void recSUB_S();
+ void recMUL_S();
+ void recDIV_S();
+ void recSQRT_S();
+ void recABS_S();
+ void recMOV_S();
+ void recNEG_S();
+ void recRSQRT_S();
+ void recADDA_S();
+ void recSUBA_S();
+ void recMULA_S();
+ void recMADD_S();
+ void recMSUB_S();
+ void recMADDA_S();
+ void recMSUBA_S();
+ void recCVT_S();
+ void recCVT_W();
+ void recMAX_S();
+ void recMIN_S();
+ void recBC1F();
+ void recBC1T();
+ void recBC1FL();
+ void recBC1TL();
+ } // namespace COP1
} }
///////////////////////////////////////////////////////////////////////////
diff --git a/pcsx2/pcsx2.vcxproj b/pcsx2/pcsx2.vcxproj
index 119e7bc4a4..4f893490e1 100644
--- a/pcsx2/pcsx2.vcxproj
+++ b/pcsx2/pcsx2.vcxproj
@@ -910,18 +910,7 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pcsx2/pcsx2.vcxproj.filters b/pcsx2/pcsx2.vcxproj.filters
index b9e3c1a922..b20ef0934f 100644
--- a/pcsx2/pcsx2.vcxproj.filters
+++ b/pcsx2/pcsx2.vcxproj.filters
@@ -1559,42 +1559,9 @@
System\Ps2\EmotionEngine\EE
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
System\Ps2\EmotionEngine\EE\Dynarec
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
-
- System\Ps2\EmotionEngine\EE\Dynarec
-
System\Ps2\Iop
diff --git a/pcsx2/x86/iCOP0.cpp b/pcsx2/x86/iCOP0.cpp
index 254768618c..6c667bcd0a 100644
--- a/pcsx2/x86/iCOP0.cpp
+++ b/pcsx2/x86/iCOP0.cpp
@@ -8,9 +8,9 @@
// suffice.
#include "Common.h"
+#include "COP0.h"
#include "R5900OpcodeTables.h"
#include "iR5900.h"
-#include "iCOP0.h"
namespace Interp = R5900::Interpreter::OpcodeImpl::COP0;
using namespace x86Emitter;
diff --git a/pcsx2/x86/iCOP0.h b/pcsx2/x86/iCOP0.h
deleted file mode 100644
index 67110fbb7d..0000000000
--- a/pcsx2/x86/iCOP0.h
+++ /dev/null
@@ -1,35 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-#include "COP0.h"
-
-/*********************************************************
-* COP0 opcodes *
-* *
-*********************************************************/
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-namespace COP0 {
-
- void recMFC0();
- void recMTC0();
- void recBC0F();
- void recBC0T();
- void recBC0FL();
- void recBC0TL();
- void recTLBR();
- void recTLBWI();
- void recTLBWR();
- void recTLBP();
- void recERET();
- void recDI();
- void recEI();
-
-} // namespace COP0
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iFPU.cpp b/pcsx2/x86/iFPU.cpp
index 42fd33a750..02a2c07a5d 100644
--- a/pcsx2/x86/iFPU.cpp
+++ b/pcsx2/x86/iFPU.cpp
@@ -4,7 +4,6 @@
#include "Common.h"
#include "R5900OpcodeTables.h"
#include "iR5900.h"
-#include "iFPU.h"
using namespace x86Emitter;
diff --git a/pcsx2/x86/iFPU.h b/pcsx2/x86/iFPU.h
deleted file mode 100644
index 4deb4b48fe..0000000000
--- a/pcsx2/x86/iFPU.h
+++ /dev/null
@@ -1,53 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-alignas(16) extern const u32 g_minvals[4];
-alignas(16) extern const u32 g_maxvals[4];
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-namespace COP1 {
-
- void recMFC1();
- void recCFC1();
- void recMTC1();
- void recCTC1();
- void recCOP1_BC1();
- void recCOP1_S();
- void recCOP1_W();
- void recC_EQ();
- void recC_F();
- void recC_LT();
- void recC_LE();
- void recADD_S();
- void recSUB_S();
- void recMUL_S();
- void recDIV_S();
- void recSQRT_S();
- void recABS_S();
- void recMOV_S();
- void recNEG_S();
- void recRSQRT_S();
- void recADDA_S();
- void recSUBA_S();
- void recMULA_S();
- void recMADD_S();
- void recMSUB_S();
- void recMADDA_S();
- void recMSUBA_S();
- void recCVT_S();
- void recCVT_W();
- void recMAX_S();
- void recMIN_S();
- void recBC1F();
- void recBC1T();
- void recBC1FL();
- void recBC1TL();
-
-} // namespace COP1
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iFPUd.cpp b/pcsx2/x86/iFPUd.cpp
index 92163ff139..44acb449a8 100644
--- a/pcsx2/x86/iFPUd.cpp
+++ b/pcsx2/x86/iFPUd.cpp
@@ -5,7 +5,6 @@
#include "R5900OpcodeTables.h"
#include "common/emitter/x86emitter.h"
#include "iR5900.h"
-#include "iFPU.h"
/* This is a version of the FPU that emulates an exponent of 0xff and overflow/underflow flags */
diff --git a/pcsx2/x86/iMMI.cpp b/pcsx2/x86/iMMI.cpp
index d9fb282019..8d10bfa412 100644
--- a/pcsx2/x86/iMMI.cpp
+++ b/pcsx2/x86/iMMI.cpp
@@ -4,7 +4,6 @@
#include "Common.h"
#include "R5900OpcodeTables.h"
#include "iR5900.h"
-#include "iMMI.h"
#include "common/BitUtils.h"
using namespace x86Emitter;
diff --git a/pcsx2/x86/iMMI.h b/pcsx2/x86/iMMI.h
deleted file mode 100644
index b1000b9203..0000000000
--- a/pcsx2/x86/iMMI.h
+++ /dev/null
@@ -1,126 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- // These are instructions contained the MMI "opcode space" but are not
- // actually MMI instructions. They are just specialized versions of standard
- // instructions that "fit" into the second pipeline of the EE.
-
- void recMADD1();
- void recMADDU1();
- void recMADD();
- void recMADDU();
-
- void recMTHI1();
- void recMTLO1();
- void recMFHI1();
- void recMFLO1();
- void recMULT1();
- void recMULTU1();
- void recDIV1();
- void recDIVU1();
-
-namespace MMI {
-
- void recPLZCW();
- void recMMI0();
- void recMMI1();
- void recMMI2();
- void recMMI3();
- void recPMFHL();
- void recPMTHL();
- void recPMAXW();
- void recPMINW();
- void recPPACW();
- void recPEXTLH();
- void recPPACH();
- void recPEXTLB();
- void recPPACB();
- void recPEXT5();
- void recPPAC5();
- void recPABSW();
- void recPADSBH();
- void recPABSH();
- void recPADDUW();
- void recPSUBUW();
- void recPSUBUH();
- void recPEXTUH();
- void recPSUBUB();
- void recPEXTUB();
- void recQFSRV();
- void recPMADDW();
- void recPSLLVW();
- void recPSRLVW();
- void recPMSUBW();
- void recPINTH();
- void recPMULTW();
- void recPDIVW();
- void recPMADDH();
- void recPHMADH();
- void recPMSUBH();
- void recPHMSBH();
- void recPEXEH();
- void recPREVH();
- void recPMULTH();
- void recPDIVBW();
- void recPEXEW();
- void recPROT3W();
- void recPMADDUW();
- void recPSRAVW();
- void recPINTEH();
- void recPMULTUW();
- void recPDIVUW();
- void recPEXCH();
- void recPEXCW();
-
- void recPSRLH();
- void recPSRLW();
- void recPSRAH();
- void recPSRAW();
- void recPSLLH();
- void recPSLLW();
- void recPMAXH();
- void recPCGTB();
- void recPCGTH();
- void recPCGTW();
- void recPADDSB();
- void recPADDSH();
- void recPADDSW();
- void recPSUBSB();
- void recPSUBSH();
- void recPSUBSW();
- void recPADDB();
- void recPADDH();
- void recPADDW();
- void recPSUBB();
- void recPSUBH();
- void recPSUBW();
- void recPEXTLW();
- void recPEXTUW();
- void recPMINH();
- void recPCEQB();
- void recPCEQH();
- void recPCEQW();
- void recPADDUB();
- void recPADDUH();
- void recPMFHI();
- void recPMFLO();
- void recPAND();
- void recPXOR();
- void recPCPYLD();
- void recPNOR();
- void recPMTHI();
- void recPMTLO();
- void recPCPYUD();
- void recPOR();
- void recPCPYH();
-
-} // namespace MMI
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iR5900.h b/pcsx2/x86/iR5900.h
index cd28a1a9db..40841bb0a5 100644
--- a/pcsx2/x86/iR5900.h
+++ b/pcsx2/x86/iR5900.h
@@ -21,6 +21,10 @@ extern u32 target; // branch target
extern u32 s_nBlockCycles; // cycles of current block recompiling
extern bool s_nBlockInterlocked; // Current block has VU0 interlocking
+// FPU clamping constants
+alignas(16) extern const u32 g_minvals[4];
+alignas(16) extern const u32 g_maxvals[4];
+
// x86 can use shorter displacement if it fits in an s8, so offset 144 bytes into the cpuRegs
// This will allow us to reach r1-r16 with a shorter encoding
// TODO: Actually figure out what things are used most often, maybe rearrange the cpuRegs struct, and point at that
diff --git a/pcsx2/x86/iR5900Arit.h b/pcsx2/x86/iR5900Arit.h
deleted file mode 100644
index 7af6143fe7..0000000000
--- a/pcsx2/x86/iR5900Arit.h
+++ /dev/null
@@ -1,32 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-/*********************************************************
-* Register arithmetic *
-* Format: OP rd, rs, rt *
-*********************************************************/
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- void recADD();
- void recADDU();
- void recDADD();
- void recDADDU();
- void recSUB();
- void recSUBU();
- void recDSUB();
- void recDSUBU();
- void recAND();
- void recOR();
- void recXOR();
- void recNOR();
- void recSLT();
- void recSLTU();
-
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iR5900AritImm.h b/pcsx2/x86/iR5900AritImm.h
deleted file mode 100644
index f1e5d6db0f..0000000000
--- a/pcsx2/x86/iR5900AritImm.h
+++ /dev/null
@@ -1,27 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-/*********************************************************
-* Arithmetic with immediate operand *
-* Format: OP rt, rs, immediate *
-*********************************************************/
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- void recADDI();
- void recADDIU();
- void recDADDI();
- void recDADDIU();
- void recANDI();
- void recORI();
- void recXORI();
-
- void recSLTI();
- void recSLTIU();
-
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iR5900Branch.h b/pcsx2/x86/iR5900Branch.h
deleted file mode 100644
index 5d16eed651..0000000000
--- a/pcsx2/x86/iR5900Branch.h
+++ /dev/null
@@ -1,34 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-/*********************************************************
-* Shift arithmetic with constant shift *
-* Format: OP rd, rt, sa *
-*********************************************************/
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- void recBEQ();
- void recBEQL();
- void recBNE();
- void recBNEL();
- void recBLTZ();
- void recBLTZL();
- void recBLTZAL();
- void recBLTZALL();
- void recBGTZ();
- void recBGTZL();
- void recBLEZ();
- void recBLEZL();
- void recBGEZ();
- void recBGEZL();
- void recBGEZAL();
- void recBGEZALL();
-
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iR5900Jump.h b/pcsx2/x86/iR5900Jump.h
deleted file mode 100644
index 2773fc640b..0000000000
--- a/pcsx2/x86/iR5900Jump.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-/*********************************************************
-* Jump to target *
-* Format: OP target *
-*********************************************************/
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- void recJ();
- void recJAL();
- void recJR();
- void recJALR();
-
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iR5900LoadStore.h b/pcsx2/x86/iR5900LoadStore.h
deleted file mode 100644
index 5ab29ede44..0000000000
--- a/pcsx2/x86/iR5900LoadStore.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-/*********************************************************
-* Load and store for GPR *
-* Format: OP rt, offset(base) *
-*********************************************************/
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- void recLB();
- void recLBU();
- void recLH();
- void recLHU();
- void recLW();
- void recLWU();
- void recLWL();
- void recLWR();
- void recLD();
- void recLDR();
- void recLDL();
- void recLQ();
- void recSB();
- void recSH();
- void recSW();
- void recSWL();
- void recSWR();
- void recSD();
- void recSDL();
- void recSDR();
- void recSQ();
- void recLWC1();
- void recSWC1();
- void recLQC2();
- void recSQC2();
-
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iR5900Move.h b/pcsx2/x86/iR5900Move.h
deleted file mode 100644
index cc6b107dfb..0000000000
--- a/pcsx2/x86/iR5900Move.h
+++ /dev/null
@@ -1,20 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- void recLUI();
- void recMFLO();
- void recMFHI();
- void recMTLO();
- void recMTHI();
- void recMOVN();
- void recMOVZ();
-
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iR5900MultDiv.h b/pcsx2/x86/iR5900MultDiv.h
deleted file mode 100644
index b5ba198494..0000000000
--- a/pcsx2/x86/iR5900MultDiv.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-/*********************************************************
-* Register mult/div & Register trap logic *
-* Format: OP rs, rt *
-*********************************************************/
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- void recMULT();
- void recMULTU();
- void recDIV();
- void recDIVU();
-
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/iR5900Shift.h b/pcsx2/x86/iR5900Shift.h
deleted file mode 100644
index 6c3242355b..0000000000
--- a/pcsx2/x86/iR5900Shift.h
+++ /dev/null
@@ -1,34 +0,0 @@
-// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
-// SPDX-License-Identifier: GPL-3.0+
-
-#pragma once
-
-/*********************************************************
-* Shift arithmetic with constant shift *
-* Format: OP rd, rt, sa *
-*********************************************************/
-
-namespace R5900 {
-namespace Dynarec {
-namespace OpcodeImpl {
-
- void recSLL();
- void recSRL();
- void recSRA();
- void recDSLL();
- void recDSRL();
- void recDSRA();
- void recDSLL32();
- void recDSRL32();
- void recDSRA32();
-
- void recSLLV();
- void recSRLV();
- void recSRAV();
- void recDSLLV();
- void recDSRLV();
- void recDSRAV();
-
-} // namespace OpcodeImpl
-} // namespace Dynarec
-} // namespace R5900
diff --git a/pcsx2/x86/ix86-32/iR5900LoadStore.cpp b/pcsx2/x86/ix86-32/iR5900LoadStore.cpp
index eb245cc5bf..d811570683 100644
--- a/pcsx2/x86/ix86-32/iR5900LoadStore.cpp
+++ b/pcsx2/x86/ix86-32/iR5900LoadStore.cpp
@@ -4,7 +4,6 @@
#include "Common.h"
#include "R5900OpcodeTables.h"
#include "x86/iR5900.h"
-#include "x86/iR5900LoadStore.h"
using namespace x86Emitter;
diff --git a/pcsx2/x86/ix86-32/iR5900Templates.cpp b/pcsx2/x86/ix86-32/iR5900Templates.cpp
index cb9c6f79c4..ed49d22dd7 100644
--- a/pcsx2/x86/ix86-32/iR5900Templates.cpp
+++ b/pcsx2/x86/ix86-32/iR5900Templates.cpp
@@ -7,9 +7,6 @@
#include "VU.h"
#include "VUmicro.h"
#include "vtlb.h"
-#include "x86/iCOP0.h"
-#include "x86/iFPU.h"
-#include "x86/iMMI.h"
#include "x86/iR5900.h"
using namespace x86Emitter;