516289 illumos lsframe2 regtest fails
516748 Incorrect use of SET_STATUS_Failure for syscall wrappers that return
error codes rather than -1 on error
+517455 Add PCMPEQQ SSE4.1 support for x86
517697 Implement CLRSSONSTACK and SETUJMPBUF handling on Solaris.
517748 Add ability to redirect global functions to Darwin
517840 Add PTEST SSE4.1 support for x86
goto decode_success;
}
+ /* 66 0F 38 29 = PCMPEQQ
+ 64x2 equality comparison */
+ if (sz == 2 && insn[0] == 0x0F && insn[1] == 0x38 && insn[2] == 0x29) {
+ delta = dis_SSEint_E_to_G( sorb, delta+3, "pcmpeqq",
+ Iop_CmpEQ64x2, False);
+ goto decode_success;
+ }
+
/* 66 0F 38 38 /r - PMINSB xmm1, xmm2/m128
66 0F 38 3C /r - PMAXSB xmm1, xmm2/m128
Minimum/Maximum of Packed Signed Byte Integers (XMM)
return dst;
}
+ case Iop_CmpEQ64x2:
+ fn = (HWord)h_generic_calc_CmpEQ64x2;
+ goto do_SseAssistedBinary;
case Iop_NarrowBin32to16x8:
fn = (HWord)h_generic_calc_NarrowBin32to16x8;
goto do_SseAssistedBinary;
}
-void test_PCMPEQQ ( void )
-{
- V128 src, dst;
- Int i;
- for (i = 0; i < 10; i++) {
- randV128(&src);
- randV128(&dst);
- switch (i - 6) {
- case 0: memset(&src[0], 0x55, 8);
- memset(&dst[0], 0x55, 8); break;
- case 1: memset(&src[8], 0x55, 8);
- memset(&dst[8], 0x55, 8); break;
- default:
- break;
- }
- DO_mandr_r("pcmpeqq", src, dst);
- }
-}
-
-
void test_PEXTRB ( void )
{
V128 src;
}
}
+static inline void test_PCMPEQQ ( void )
+{
+ V128 src, dst;
+ Int i;
+ for (i = 0; i < 10; i++) {
+ randV128(&src);
+ randV128(&dst);
+ switch (i - 6) {
+ case 0: memset(&src[0], 0x55, 8);
+ memset(&dst[0], 0x55, 8); break;
+ case 1: memset(&src[8], 0x55, 8);
+ memset(&dst[8], 0x55, 8); break;
+ default:
+ break;
+ }
+ DO_mandr_r("pcmpeqq", src, dst);
+ }
+}
+
#endif /* __SSE4_COMMON_H */
test_BLENDVPD();
test_BLENDVPS();
test_PTEST();
+ test_PCMPEQQ();
return 0;
}
r ptest fffffffffffffffefffffffffffffffe fffffffffffffffffffffffffffffffe -> flags 0000
r ptest fffffffffffffffefffffffffffffffe fffffffffffffffeffffffffffffffff -> flags 0000
r ptest fffffffffffffffefffffffffffffffe fffffffffffffffefffffffffffffffe -> flags 0001
+r pcmpeqq 685c54d57186f6e2a353dba0ead5df70 f92e3cc13e4f1fc8f3fa1382738f705b 00000000000000000000000000000000
+m pcmpeqq 685c54d57186f6e2a353dba0ead5df70 f92e3cc13e4f1fc8f3fa1382738f705b 00000000000000000000000000000000
+r pcmpeqq 9c423a145875f5144ccc5e105c99661d cdd47e0b8597b02c38527c577ae28aed 00000000000000000000000000000000
+m pcmpeqq 9c423a145875f5144ccc5e105c99661d cdd47e0b8597b02c38527c577ae28aed 00000000000000000000000000000000
+r pcmpeqq e77b184466b967d624750ac67ebe825f 2533f6bc813a13365b808a28feded669 00000000000000000000000000000000
+m pcmpeqq e77b184466b967d624750ac67ebe825f 2533f6bc813a13365b808a28feded669 00000000000000000000000000000000
+r pcmpeqq a353e8d137de89d3071b5bad6b52ee61 5c979f40cdc58392364fbbe21b8d12fc 00000000000000000000000000000000
+m pcmpeqq a353e8d137de89d3071b5bad6b52ee61 5c979f40cdc58392364fbbe21b8d12fc 00000000000000000000000000000000
+r pcmpeqq 2d16a827667197b8d187cbb340606850 d04b750405c33deba68d8a6feefdf8d2 00000000000000000000000000000000
+m pcmpeqq 2d16a827667197b8d187cbb340606850 d04b750405c33deba68d8a6feefdf8d2 00000000000000000000000000000000
+r pcmpeqq e11053b38ffdcd305e88d8c318f5aa57 dc9d7472c7c07dee870474bd92394516 00000000000000000000000000000000
+m pcmpeqq e11053b38ffdcd305e88d8c318f5aa57 dc9d7472c7c07dee870474bd92394516 00000000000000000000000000000000
+r pcmpeqq 1b8ce6e04f0e66e85555555555555555 dbd798f8ac487f465555555555555555 0000000000000000ffffffffffffffff
+m pcmpeqq 1b8ce6e04f0e66e85555555555555555 dbd798f8ac487f465555555555555555 0000000000000000ffffffffffffffff
+r pcmpeqq 55555555555555553175b6b243e17860 55555555555555550ccf8549bf47029a ffffffffffffffff0000000000000000
+m pcmpeqq 55555555555555553175b6b243e17860 55555555555555550ccf8549bf47029a ffffffffffffffff0000000000000000
+r pcmpeqq 913db0cc02f1b3c72ff97f68cd517cb9 263641f8552cb7a768bca55e8030eb32 00000000000000000000000000000000
+m pcmpeqq 913db0cc02f1b3c72ff97f68cd517cb9 263641f8552cb7a768bca55e8030eb32 00000000000000000000000000000000
+r pcmpeqq 850ae0642ddae0466041d5d9cb7738db 2af3bd4b509e6608a513cfe482162be8 00000000000000000000000000000000
+m pcmpeqq 850ae0642ddae0466041d5d9cb7738db 2af3bd4b509e6608a513cfe482162be8 00000000000000000000000000000000