mirror of
https://github.com/HeyPuter/gex.git
synced 2026-11-13 18:34:21 -10:00
phminposuw, dpps, dppd, mpsadbw, crc32 (all widths), the four pcmpXstrX with every immediate (formats, aggregations, polarities, index and mask forms, the flags) and pclmulqdq were SIGILL. They are lifted now, in sse/sse4.rs. dpps and dppd sum in the hardware's order and keep the NaN an x86 add keeps (the first operand's, quieted), spelled out so the function tier's C gives the same NaN. pcmpestrX take their lengths from RAX and RDX under REX.W, EAX and EDX otherwise. test/fixtures/x86-programs/sse4.c runs SSSE3, SSE4.1, SSE4.2 and PCLMULQDQ over pseudo-random inputs and every immediate, and compares a hash per group with the one a real CPU gave, so the native and page legs check it with no dependency on the host's CPU (programs.mjs's SELF). The native legs take GEX_TEST_ONLY as the page legs do. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_853378b774d645b4ac78b16d9af91a31