mirror of
https://git.suyu.dev/suyu/dynarmic.git
synced 2026-02-18 22:42:58 +00:00
TranslateArm: Implement QADD16/QSUB16/UQADD16/UQSUB16.
This commit is contained in:
@@ -298,6 +298,22 @@ IR::Value IREmitter::PackedSaturatedSubS8(const IR::Value& a, const IR::Value& b
|
||||
return Inst(IR::Opcode::PackedSaturatedSubS8, {a, b});
|
||||
}
|
||||
|
||||
IR::Value IREmitter::PackedSaturatedAddU16(const IR::Value& a, const IR::Value& b) {
|
||||
return Inst(IR::Opcode::PackedSaturatedAddU16, {a, b});
|
||||
}
|
||||
|
||||
IR::Value IREmitter::PackedSaturatedAddS16(const IR::Value& a, const IR::Value& b) {
|
||||
return Inst(IR::Opcode::PackedSaturatedAddS16, {a, b});
|
||||
}
|
||||
|
||||
IR::Value IREmitter::PackedSaturatedSubU16(const IR::Value& a, const IR::Value& b) {
|
||||
return Inst(IR::Opcode::PackedSaturatedSubU16, {a, b});
|
||||
}
|
||||
|
||||
IR::Value IREmitter::PackedSaturatedSubS16(const IR::Value& a, const IR::Value& b) {
|
||||
return Inst(IR::Opcode::PackedSaturatedSubS16, {a, b});
|
||||
}
|
||||
|
||||
IR::Value IREmitter::TransferToFP32(const IR::Value& a) {
|
||||
return Inst(IR::Opcode::TransferToFP32, {a});
|
||||
}
|
||||
|
||||
@@ -102,6 +102,10 @@ public:
|
||||
IR::Value PackedSaturatedAddS8(const IR::Value& a, const IR::Value& b);
|
||||
IR::Value PackedSaturatedSubU8(const IR::Value& a, const IR::Value& b);
|
||||
IR::Value PackedSaturatedSubS8(const IR::Value& a, const IR::Value& b);
|
||||
IR::Value PackedSaturatedAddU16(const IR::Value& a, const IR::Value& b);
|
||||
IR::Value PackedSaturatedAddS16(const IR::Value& a, const IR::Value& b);
|
||||
IR::Value PackedSaturatedSubU16(const IR::Value& a, const IR::Value& b);
|
||||
IR::Value PackedSaturatedSubS16(const IR::Value& a, const IR::Value& b);
|
||||
|
||||
IR::Value TransferToFP32(const IR::Value& a);
|
||||
IR::Value TransferToFP64(const IR::Value& a);
|
||||
|
||||
@@ -64,6 +64,10 @@ OPCODE(PackedSaturatedAddU8, T::U32, T::U32, T::U32
|
||||
OPCODE(PackedSaturatedAddS8, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedSaturatedSubU8, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedSaturatedSubS8, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedSaturatedAddU16, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedSaturatedAddS16, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedSaturatedSubU16, T::U32, T::U32, T::U32 )
|
||||
OPCODE(PackedSaturatedSubS16, T::U32, T::U32, T::U32 )
|
||||
|
||||
// Floating-point
|
||||
OPCODE(TransferToFP32, T::F32, T::U32 )
|
||||
|
||||
Reference in New Issue
Block a user