https://bugs.kde.org/show_bug.cgi?id=438640

Mark Wielaard <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #23 from Mark Wielaard <[email protected]> ---
This was fixed by:

commit 5c3c42b89e7e990825c820aa396554c0a696f3cd
Author: Martin Cermak <[email protected]>
Date:   Fri Jun 19 08:36:11 2026 +0200

    vex x86->IR: unhandled instruction CRC (SSE4.2)

    vex x86->IR: unhandled instruction bytes: 0xF2 0xF 0x38 0xF1
    (CRC, SSE4.2)

    VEX/priv/guest_x86_helpers.c:  Helper functions for
            crc32 computation
    VEX/pub/libvex_guest_x86.h:  Helper function decls
    VEX/priv/guest_x86_toIR.c:  The crc32 instruction decoder
    none/tests/x86/crc32.c:  New testcase
    none/tests/x86/crc32.stdout.exp:  Ditto (expected output)
    none/tests/x86/crc32.vgtest:  Ditto (testcase config)
    none/tests/x86/Makefile.am:  Plug the test in

    https://bugs.kde.org/show_bug.cgi?id=438640

With a small followup fixlet for the testcase.

commit 6c3584d5894e53e269ddeb7822e1ad2091c4812b
Author: Mark Wielaard <[email protected]>
Date:   Sat Jun 20 19:02:05 2026 +0200

    Fix none/tests/x86/crc32 u8 register testcase

    For the CRC32 U8 (crc32b) we were loading the input word into %edi but
    then used %dl as input byte (register) for te crc32 instruction. %dl
    however is the 8 byte variant of %edx. This made the testcase output
    depend on the specific compiler (version) used, since what was in %edx
    isn't strictly defined.

    The %edi register doesn't have a 8 byte variant. So use %edx instead
    to load the input word. For the CRC32 u16 (crc32w) we still use %edi
    because we can then use the 16 byte %di.

    https://bugs.kde.org/show_bug.cgi?id=438640

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to