Bug 303804

Summary: vex x86->IR: unhandled instruction bytes: 0x66 0xF 0x3A 0xDF
Product: [Developer tools] valgrind Reporter: Mariusz Plucinski <plucinski.mariusz>
Component: vexAssignee: Julian Seward <jseward>
Status: RESOLVED INTENTIONAL    
Severity: normal CC: philippe.waroquiers
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: macOS (DMG)   
OS: macOS   
See Also: https://bugs.kde.org/show_bug.cgi?id=332917
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Valgrind output.
Stubs for several SSE instructions in x86 mode.

Description Mariusz Plucinski 2012-07-19 15:32:20 UTC
Problem occurs when trying to debug an application using Valgrind (current SVN trunk).


Reproducible: Always

Steps to Reproduce:
1. Run Valgrind with application using OS X cryptographic libraries.
Actual Results:  
vex x86->IR: unhandled instruction bytes: 0x66 0xF 0x3A 0xDF
==96147== valgrind: Unrecognised instruction at address 0x330be41.
==96147==    at 0x330BE41: aes_encrypt_key_hw (in /usr/lib/system/libcommonCrypto.dylib)


Expected Results:  
No information about unhandled instruction when running an application.
Comment 1 Mariusz Plucinski 2012-07-19 15:33:44 UTC
Created attachment 72632 [details]
Valgrind output.
Comment 2 Philippe Waroquiers 2012-07-22 18:00:53 UTC
This is the same problem as discussed in bug 290655 comment 13 and 14.
There is currently no plan to have SSE 4 in 32 bits mode.
So, at least for the moment, the only solution is to switch to 64 bit app.
Comment 3 Mariusz Plucinski 2012-08-01 11:30:44 UTC
Understand.

Anyway, I have created stubs for a few instructions (AESDEC, AESDECLAST, AESENC, AESENCLAST, AESIMC, AESKEYGENASSIST and PEXTRD). It made my application working. Maybe it will help someone.
Comment 4 Mariusz Plucinski 2012-08-01 11:32:03 UTC
Created attachment 72871 [details]
Stubs for several SSE instructions in x86 mode.