mirror of
https://git.suyu.dev/suyu/dynarmic.git
synced 2026-03-10 13:46:27 +00:00
Implement UHASX, UHSAX, SHASX and SHSAX (#75)
This commit is contained in:
@@ -442,6 +442,14 @@ Value IREmitter::PackedHalvingSubS16(const Value& a, const Value& b) {
|
||||
return Inst(Opcode::PackedHalvingSubS16, {a, b});
|
||||
}
|
||||
|
||||
Value IREmitter::PackedHalvingSubAddU16(const Value& a, const Value& b, bool asx) {
|
||||
return Inst(Opcode::PackedHalvingSubAddU16, {a, b, Imm1(asx)});
|
||||
}
|
||||
|
||||
Value IREmitter::PackedHalvingSubAddS16(const Value& a, const Value& b, bool asx) {
|
||||
return Inst(Opcode::PackedHalvingSubAddS16, {a, b, Imm1(asx)});
|
||||
}
|
||||
|
||||
Value IREmitter::PackedSaturatedAddU8(const Value& a, const Value& b) {
|
||||
return Inst(Opcode::PackedSaturatedAddU8, {a, b});
|
||||
}
|
||||
|
||||
@@ -157,6 +157,8 @@ public:
|
||||
Value PackedHalvingAddS16(const Value& a, const Value& b);
|
||||
Value PackedHalvingSubU16(const Value& a, const Value& b);
|
||||
Value PackedHalvingSubS16(const Value& a, const Value& b);
|
||||
Value PackedHalvingSubAddU16(const Value& a, const Value& b, bool asx);
|
||||
Value PackedHalvingSubAddS16(const Value& a, const Value& b, bool asx);
|
||||
Value PackedSaturatedAddU8(const Value& a, const Value& b);
|
||||
Value PackedSaturatedAddS8(const Value& a, const Value& b);
|
||||
Value PackedSaturatedSubU8(const Value& a, const Value& b);
|
||||
|
||||
@@ -99,6 +99,8 @@ OPCODE(PackedHalvingAddU16, T::U32, T::U32, T::U32
|
||||
OPCODE(PackedHalvingAddS16, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedHalvingSubU16, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedHalvingSubS16, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedHalvingSubAddU16, T::U32, T::U32, T::U32, T::U1 )
|
||||
OPCODE(PackedHalvingSubAddS16, T::U32, T::U32, T::U32, T::U1 )
|
||||
OPCODE(PackedSaturatedAddU8, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedSaturatedAddS8, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedSaturatedSubU8, T::U32, T::U32, T::U32 )
|
||||
|
||||
Reference in New Issue
Block a user