mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-01-29 00:33:01 +00:00
SPUAnalyzer.h: Add missing category check functions (#12222)
Some instructions were moved into integer category.
This commit is contained in:
parent
cefc37a553
commit
5378fee1c3
@ -68,19 +68,10 @@ struct spu_itype
|
|||||||
STQA,
|
STQA,
|
||||||
STQR, // memory_tag last
|
STQR, // memory_tag last
|
||||||
|
|
||||||
CBD, // constant_tag first
|
ILH, // constant_tag_first
|
||||||
CBX,
|
|
||||||
CHD,
|
|
||||||
CHX,
|
|
||||||
CWD,
|
|
||||||
CWX,
|
|
||||||
CDD,
|
|
||||||
CDX,
|
|
||||||
ILH,
|
|
||||||
ILHU,
|
ILHU,
|
||||||
IL,
|
IL,
|
||||||
ILA,
|
ILA,
|
||||||
IOHL,
|
|
||||||
FSMBI, // constant_tag last
|
FSMBI, // constant_tag last
|
||||||
|
|
||||||
AH, // integer_tag first
|
AH, // integer_tag first
|
||||||
@ -107,6 +98,14 @@ struct spu_itype
|
|||||||
MPYHHA,
|
MPYHHA,
|
||||||
MPYHHU,
|
MPYHHU,
|
||||||
MPYHHAU,
|
MPYHHAU,
|
||||||
|
CBD,
|
||||||
|
CHD,
|
||||||
|
CWD,
|
||||||
|
CDD,
|
||||||
|
CBX,
|
||||||
|
CHX,
|
||||||
|
CWX,
|
||||||
|
CDX,
|
||||||
CLZ,
|
CLZ,
|
||||||
CNTB,
|
CNTB,
|
||||||
FSMB,
|
FSMB,
|
||||||
@ -130,6 +129,7 @@ struct spu_itype
|
|||||||
ORC,
|
ORC,
|
||||||
ORBI,
|
ORBI,
|
||||||
ORHI,
|
ORHI,
|
||||||
|
IOHL,
|
||||||
ORI,
|
ORI,
|
||||||
ORX,
|
ORX,
|
||||||
XOR,
|
XOR,
|
||||||
@ -263,6 +263,36 @@ struct spu_itype
|
|||||||
{
|
{
|
||||||
return value >= FMA && value <= FRDS;
|
return value >= FMA && value <= FRDS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Test for memory instruction
|
||||||
|
friend constexpr bool operator &(type value, memory_tag)
|
||||||
|
{
|
||||||
|
return value >= LQD && value <= STQR;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Test for compare instruction
|
||||||
|
friend constexpr bool operator &(type value, compare_tag)
|
||||||
|
{
|
||||||
|
return value >= CEQB && value <= CLGTI;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Test for integer instruction
|
||||||
|
friend constexpr bool operator &(type value, integer_tag)
|
||||||
|
{
|
||||||
|
return value >= AH && value <= SHUFB;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Test for shift or rotate instruction
|
||||||
|
friend constexpr bool operator &(type value, shiftrot_tag)
|
||||||
|
{
|
||||||
|
return value >= SHLH && value <= ROTMAI;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Test for constant loading instruction
|
||||||
|
friend constexpr bool operator &(type value, constant_tag)
|
||||||
|
{
|
||||||
|
return value >= CBD && value <= FSMBI;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct spu_iflag
|
struct spu_iflag
|
||||||
|
Loading…
x
Reference in New Issue
Block a user