Files
l 85fcedb270 emitter: sweep the references the legacy header left behind
Follow-up to retiring legacy_instructions.h, and to the e_* typedefs
being replaced by <stdint.h> on the other side of that commit. Four
leftovers, all small, none load-bearing:

  * tests/emitter/reference/legacy_sse.cpp still defined the eight
    SSE_xxSS / SSE2_xxSD wrappers. Their only caller was the newbind
    byte suite, which now oracles the xe_* macros the recompilers
    actually emit through, so the definitions had no callers in either
    build. Removed; the TU stays in the suites' object list.
  * legacy_internal.h still included the deleted header.
  * recDoBranchImm's comment described its parameter as "the result of
    the appropriate J32 instruction (usually JZ32 or JNZ32)" -- names
    that no longer exist. It is a rel32 slot from xe_fwd_jcc32 now.
  * Two file-header comments in c89compat.h and reference/legacy.cpp
    named the deleted header as though it were still there.

Checked while here: no live e_u8/e_s32/e_uptr uses remain anywhere in
pcsx2, common, tests or libretro -- the only occurrence is the comment
in c89emit.h explaining what the typedefs were.

Verification: gates 36/36 in both configurations, all four byte suites
green (58,981 + 95,692 + 112,118 + 27,337, zero divergent), Tekken and
the 2048 ELF clean at 3000 real-BIOS frames, VIF1rec and VIFUnpackRec
hash-identical, mVU0rec and IOPrec within the documented envelope.
2026-08-21 07:26:39 +02:00

47 lines
1.8 KiB
C++

// The reference emitter's ModRM helper. The C-API wrappers this file used
// to carry moved into common/emitter/legacy_instructions.h and were retired
// with it; what is left is what only the reference build needs.
/* PCSX2 - PS2 Emulator for PCs
* Copyright (C) 2002-2010 PCSX2 Dev Team
*
* PCSX2 is free software: you can redistribute it and/or modify it under the terms
* of the GNU Lesser General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* PCSX2 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 for more details.
*
* You should have received a copy of the GNU General Public License along with PCSX2.
* If not, see <http://www.gnu.org/licenses/>.
*/
/*
* ix86 core v0.6.2
* Authors: linuzappz <[email protected]>
* alexey silinov
* goldfinger
* zerofrog(@gmail.com)
* cottonvibes(@gmail.com)
*/
//------------------------------------------------------------------
// ix86 legacy emitter functions
//------------------------------------------------------------------
#include "tests/emitter/reference/legacy_internal.h"
__fi void ModRM(uint mod, uint reg, uint rm)
{
xWrite8((mod << 6) | (reg << 3) | rm);
}
using namespace x86Emitter;
//////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////
// From here on are instructions that have NOT been implemented in the new emitter.
//////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////