mirror of
https://github.com/FEX-Emu/FEX.git
synced 2024-12-14 01:18:46 +00:00
AVX128: Implement support for vphaddsw
This commit is contained in:
parent
c283f80f48
commit
a48c65cd65
@ -1163,6 +1163,8 @@ public:
|
||||
template<IROps IROp, size_t ElementSize>
|
||||
void AVX128_VHADDP(OpcodeArgs);
|
||||
|
||||
void AVX128_VPHADDSW(OpcodeArgs);
|
||||
|
||||
// End of AVX 128-bit implementation
|
||||
|
||||
void InvalidOp(OpcodeArgs);
|
||||
|
@ -252,7 +252,7 @@ void OpDispatchBuilder::InstallAVX128Handlers() {
|
||||
// TODO: {OPD(2, 0b01, 0x00), 1, &OpDispatchBuilder::VPSHUFBOp},
|
||||
{OPD(2, 0b01, 0x01), 1, &OpDispatchBuilder::AVX128_VHADDP<IR::OP_VADDP, 2>},
|
||||
{OPD(2, 0b01, 0x02), 1, &OpDispatchBuilder::AVX128_VHADDP<IR::OP_VADDP, 4>},
|
||||
// TODO: {OPD(2, 0b01, 0x03), 1, &OpDispatchBuilder::VPHADDSWOp},
|
||||
{OPD(2, 0b01, 0x03), 1, &OpDispatchBuilder::AVX128_VPHADDSW},
|
||||
// TODO: {OPD(2, 0b01, 0x04), 1, &OpDispatchBuilder::VPMADDUBSWOp},
|
||||
|
||||
{OPD(2, 0b01, 0x05), 1, &OpDispatchBuilder::AVX128_VPHSUB<2>},
|
||||
@ -1852,4 +1852,9 @@ void OpDispatchBuilder::AVX128_VHADDP(OpcodeArgs) {
|
||||
});
|
||||
}
|
||||
|
||||
void OpDispatchBuilder::AVX128_VPHADDSW(OpcodeArgs) {
|
||||
AVX128_VectorBinaryImpl(Op, GetDstSize(Op), OpSize::i16Bit,
|
||||
[this](size_t _ElementSize, Ref Src1, Ref Src2) { return PHADDSOpImpl(OpSize::i128Bit, Src1, Src2); });
|
||||
}
|
||||
|
||||
} // namespace FEXCore::IR
|
||||
|
Loading…
Reference in New Issue
Block a user