mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 21:00:17 +02:00
1 parent
adad3c27dd
commit
5ba070f600
4 files changed
+85
-1
No files matched your search
@@ -2171,7 +2171,7 @@ void OpDispatchBuilder::PSIGN(OpcodeArgs, IR::OpSize ElementSize) {
|
||||
Ref Dest = LoadSourceFPR(Op, Op->Dest, Op->Flags);
|
||||
Ref Res = PSIGNImpl(Op, ElementSize, Dest, Src);
|
||||
|
||||
StoreResultFPR(Op, Res);
|
||||
StoreResult_WithAVXInsert(VectorOpType::SSE, RegClass::FPR, Op, Res);
|
||||
}
|
||||
|
||||
void OpDispatchBuilder::VPSIGN(OpcodeArgs, IR::OpSize ElementSize) {
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
%ifdef CONFIG
|
||||
{
|
||||
"HostFeatures": ["AVX"],
|
||||
"RegData": {
|
||||
"XMM0": ["0xfd14d271553fa4a5", "0x837c338836d0613e", "0xccdbcfc31f3ff0f3", "0x108390defebac4be"],
|
||||
"XMM1": ["0x000043341a2a690b", "0x4549437e4c6a1278", "0", "0"],
|
||||
"XMM2": ["0xc4be43cc1ad6970b", "0x4549bd7eb46a1278", "0xf793ef673dac6e4c", "0xbb7b5b3d85d34271"],
|
||||
"XMM3": ["0x000043cc1ad6970b", "0x4549bd7eb46a1278", "0xf793ef673dac6e4c", "0xbb7b5b3d85d34271"]
|
||||
}
|
||||
}
|
||||
%endif
|
||||
|
||||
vmovaps ymm0, [rel .data]
|
||||
vmovaps ymm1, [rel .data + (1 * 32)]
|
||||
vmovaps ymm2, [rel .data + (2 * 32)]
|
||||
vmovaps ymm3, [rel .data + (3 * 32)]
|
||||
|
||||
psignb xmm0, xmm1
|
||||
vpsignb xmm1, xmm2, xmm3
|
||||
|
||||
hlt
|
||||
|
||||
align 32
|
||||
.data:
|
||||
dq 0xfdecd28fab3fa4a5, 0x7d7ccd8836d09fc2, 0xccdbcfc31f3ff0f3, 0x108390defebac4be
|
||||
dq 0x43cc1ad6970b4549, 0xbd7eb46a1278f793, 0xef673dac6e4cbb7b, 0x5b3d85d342718be9
|
||||
dq 0xc4be43cc1ad6970b, 0x4549bd7eb46a1278, 0xf793ef673dac6e4c, 0xbb7b5b3d85d34271
|
||||
dq 0x000043cc1ad6970b, 0x4549bd7eb46a1278, 0xf793ef673dac6e4c, 0xbb7b5b3d85d34271
|
||||
@@ -0,0 +1,28 @@
|
||||
%ifdef CONFIG
|
||||
{
|
||||
"HostFeatures": ["AVX"],
|
||||
"RegData": {
|
||||
"XMM0": ["0xfdecd28f54c05b5b", "0x8283327836d09fc2", "0xccdbcfc31f3ff0f3", "0x108390defebac4be"],
|
||||
"XMM1": ["0xc4be43cc1ad6970b", "0x4549bd7e4b95ed88", "0", "0"],
|
||||
"XMM2": ["0xc4be43cc1ad6970b", "0x4549bd7eb46a1278", "0xf793ef673dac6e4c", "0xbb7b5b3d85d34271"],
|
||||
"XMM3": ["0x000043cc1ad6970b", "0x4549bd7eb46a1278", "0xf793ef673dac6e4c", "0xbb7b5b3d85d34271"]
|
||||
}
|
||||
}
|
||||
%endif
|
||||
|
||||
vmovaps ymm0, [rel .data]
|
||||
vmovaps ymm1, [rel .data + (1 * 32)]
|
||||
vmovaps ymm2, [rel .data + (2 * 32)]
|
||||
vmovaps ymm3, [rel .data + (3 * 32)]
|
||||
|
||||
psignd xmm0, xmm1
|
||||
vpsignd xmm1, xmm2, xmm3
|
||||
|
||||
hlt
|
||||
|
||||
align 32
|
||||
.data:
|
||||
dq 0xfdecd28fab3fa4a5, 0x7d7ccd8836d09fc2, 0xccdbcfc31f3ff0f3, 0x108390defebac4be
|
||||
dq 0x43cc1ad6970b4549, 0xbd7eb46a1278f793, 0xef673dac6e4cbb7b, 0x5b3d85d342718be9
|
||||
dq 0xc4be43cc1ad6970b, 0x4549bd7eb46a1278, 0xf793ef673dac6e4c, 0xbb7b5b3d85d34271
|
||||
dq 0x000043cc1ad6970b, 0x4549bd7eb46a1278, 0xf793ef673dac6e4c, 0xbb7b5b3d85d34271
|
||||
@@ -0,0 +1,28 @@
|
||||
%ifdef CONFIG
|
||||
{
|
||||
"HostFeatures": ["AVX"],
|
||||
"RegData": {
|
||||
"XMM0": ["0xfdecd28f54c1a4a5", "0x8284327836d0603e", "0xccdbcfc31f3ff0f3", "0x108390defebac4be"],
|
||||
"XMM1": ["0x000043cc1ad668f5", "0x454942824b961278", "0", "0"],
|
||||
"XMM2": ["0xc4be43cc1ad6970b", "0x4549bd7eb46a1278", "0xf793ef673dac6e4c", "0xbb7b5b3d85d34271"],
|
||||
"XMM3": ["0x000043cc1ad6970b", "0x4549bd7eb46a1278", "0xf793ef673dac6e4c", "0xbb7b5b3d85d34271"]
|
||||
}
|
||||
}
|
||||
%endif
|
||||
|
||||
vmovaps ymm0, [rel .data]
|
||||
vmovaps ymm1, [rel .data + (1 * 32)]
|
||||
vmovaps ymm2, [rel .data + (2 * 32)]
|
||||
vmovaps ymm3, [rel .data + (3 * 32)]
|
||||
|
||||
psignw xmm0, xmm1
|
||||
vpsignw xmm1, xmm2, xmm3
|
||||
|
||||
hlt
|
||||
|
||||
align 32
|
||||
.data:
|
||||
dq 0xfdecd28fab3fa4a5, 0x7d7ccd8836d09fc2, 0xccdbcfc31f3ff0f3, 0x108390defebac4be
|
||||
dq 0x43cc1ad6970b4549, 0xbd7eb46a1278f793, 0xef673dac6e4cbb7b, 0x5b3d85d342718be9
|
||||
dq 0xc4be43cc1ad6970b, 0x4549bd7eb46a1278, 0xf793ef673dac6e4c, 0xbb7b5b3d85d34271
|
||||
dq 0x000043cc1ad6970b, 0x4549bd7eb46a1278, 0xf793ef673dac6e4c, 0xbb7b5b3d85d34271
|
||||
Reference in new issue
Block a user