Created attachment 94817 [details] Failing test report On OS X 1.11 Valgrind does not report conditional jump or move in one test. Reproducible: Always Steps to Reproduce: 1. $ make check 2. $ perl tests/vg_regtest memcheck/tests/x86/xor-undef-x86 Actual Results: The above tests fails on OS X 10.11 but does not on the predecessor OS X 10.10. Expected Results: Test passes, per OS X 10.10.
On macOS 10.13 stderr contains +valgrind: m_syswrap/syswrap-darwin.c:9826 (void vgSysWrap_darwin_csrctl_before(ThreadId, SyscallArgLayout *, SyscallArgs *, SyscallStatus *, UWord *)): Assertion 'sizeof(user_addr_t) <= sizeof(RegWord)' failed. Might be an easy fix.
If I get past the assert then I just get vex x86->IR: unhandled instruction bytes: 0x66 0xF 0x3A 0x22 ==19671== valgrind: Unrecognised instruction at address 0x18038d. ==19671== at 0x18038D: ??? (in /usr/lib/system/libdispatch.dylib) which is an unsupported (on x86) sse4 instruction. I'll probably mark this as wontfix as we're not going to add sse4 to x86 and macOS dropped x86 with 10.15 Catalina in 2019.
the opcode is pinsrd, see https://bugs.kde.org/show_bug.cgi?id=282910
With the patch from 282910 this testcase now passes on 10.13. Can't easily test this on 10.11.