mirror of https://github.com/PCSX2/pcsx2.git
x86emitter:group: uses base type
Add 64 bits support for free ;) Note: 64b still requires the REX prefix
This commit is contained in:
parent
e2602b3967
commit
fdaf0e9979
|
@ -38,9 +38,7 @@ struct xImpl_Group1
|
|||
{
|
||||
G1Type InstType;
|
||||
|
||||
void operator()( const xRegister8& to, const xRegister8& from ) const;
|
||||
void operator()( const xRegister16& to, const xRegister16& from ) const;
|
||||
void operator()( const xRegister32& to, const xRegister32& from ) const;
|
||||
void operator()( const xRegisterInt& to, const xRegisterInt& from ) const;
|
||||
|
||||
void operator()( const xIndirectVoid& to, const xRegisterInt& from ) const;
|
||||
void operator()( const xRegisterInt& to, const xIndirectVoid& from ) const;
|
||||
|
@ -91,9 +89,7 @@ struct xImpl_G1Logic
|
|||
{
|
||||
G1Type InstType;
|
||||
|
||||
void operator()( const xRegister8& to, const xRegister8& from ) const;
|
||||
void operator()( const xRegister16& to, const xRegister16& from ) const;
|
||||
void operator()( const xRegister32& to, const xRegister32& from ) const;
|
||||
void operator()( const xRegisterInt& to, const xRegisterInt& from ) const;
|
||||
|
||||
void operator()( const xIndirectVoid& to, const xRegisterInt& from ) const;
|
||||
void operator()( const xRegisterInt& to, const xIndirectVoid& from ) const;
|
||||
|
@ -112,9 +108,7 @@ struct xImpl_G1Arith
|
|||
{
|
||||
G1Type InstType;
|
||||
|
||||
void operator()( const xRegister8& to, const xRegister8& from ) const;
|
||||
void operator()( const xRegister16& to, const xRegister16& from ) const;
|
||||
void operator()( const xRegister32& to, const xRegister32& from ) const;
|
||||
void operator()( const xRegisterInt& to, const xRegisterInt& from ) const;
|
||||
|
||||
void operator()( const xIndirectVoid& to, const xRegisterInt& from ) const;
|
||||
void operator()( const xRegisterInt& to, const xIndirectVoid& from ) const;
|
||||
|
@ -131,9 +125,7 @@ struct xImpl_G1Arith
|
|||
// ------------------------------------------------------------------------
|
||||
struct xImpl_G1Compare
|
||||
{
|
||||
void operator()( const xRegister8& to, const xRegister8& from ) const;
|
||||
void operator()( const xRegister16& to, const xRegister16& from ) const;
|
||||
void operator()( const xRegister32& to, const xRegister32& from ) const;
|
||||
void operator()( const xRegisterInt& to, const xRegisterInt& from ) const;
|
||||
|
||||
void operator()( const xIndirectVoid& to, const xRegisterInt& from ) const;
|
||||
void operator()( const xRegisterInt& to, const xIndirectVoid& from ) const;
|
||||
|
|
|
@ -106,9 +106,7 @@ static void _g1_EmitOp( G1Type InstType, const xRegisterInt& to, int imm )
|
|||
}
|
||||
|
||||
#define ImplementGroup1( g1type, insttype ) \
|
||||
void g1type::operator()( const xRegister8& to, const xRegister8& from ) const { _g1_EmitOp( insttype, to, from ); } \
|
||||
void g1type::operator()( const xRegister16& to, const xRegister16& from ) const { _g1_EmitOp( insttype, to, from ); } \
|
||||
void g1type::operator()( const xRegister32& to, const xRegister32& from ) const { _g1_EmitOp( insttype, to, from ); } \
|
||||
void g1type::operator()( const xRegisterInt& to, const xRegisterInt& from ) const { _g1_EmitOp( insttype, to, from ); } \
|
||||
void g1type::operator()( const xIndirectVoid& to, const xRegisterInt& from ) const { _g1_EmitOp( insttype, to, from ); } \
|
||||
void g1type::operator()( const xRegisterInt& to, const xIndirectVoid& from ) const { _g1_EmitOp( insttype, to, from ); } \
|
||||
void g1type::operator()( const xRegisterInt& to, int imm ) const { _g1_EmitOp( insttype, to, imm ); } \
|
||||
|
|
Loading…
Reference in New Issue