Bug 126389

Summary: (fxrstr) vex x86->IR: unhandled instruction bytes: 0xF 0xAE 0x4D 0xF0
Product: [Developer tools] valgrind Reporter: Thomas Kühne <thomas-dloop>
Component: vexAssignee: Julian Seward <jseward>
Status: RESOLVED FIXED    
Severity: normal CC: m.b.lankhorst, nilesh_asher
Priority: NOR    
Version: 3.2 SVN   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:

Description Thomas Kühne 2006-04-28 03:29:49 UTC
89 55 f4                mov    DWORD PTR [ebp-12],edx
0f ae 4d f0             fxrstor DWORD PTR [ebp-16]
31 c0                   xor    eax,eax

(http://dstress.kuehne.cn/norun/a/asm_fxrstor_01.d)
Comment 1 Dan Kegel 2008-02-12 03:05:53 UTC
I can confirm this.
As of three weeks ago, Wine now uses this instruction; see
http://www.winehq.org/pipermail/wine-cvs/2008-January/039635.html
and today's valgrind from svn still doesn't support it.

To reproduce, just run the wine test suite under valgrind.
To pull the interesting bit out of the log, do 
  egrep 'asm|vex' log
This shows a bunch of instances of
vex x86->IR: unhandled instruction bytes: 0xF 0xAE 0xA 0xE9
701        __asm__ __volatile__( "fxrstor %0" : : "m" (*state) );
Comment 2 Julian Seward 2008-02-12 11:12:34 UTC
> vex x86->IR: unhandled instruction bytes: 0xF 0xAE 0xA 0xE9
> 701        __asm__ __volatile__( "fxrstor %0" : : "m" (*state) );


Hmm, this got punted because it's rarely used and a pain to implement.
I'll try to get to it in the next couple of weeks.
Comment 3 Dan Kegel 2008-02-28 15:35:23 UTC
This is more important than it sounds.  The instruction
is used in the exception handler in Wine.  That means
that any app that tends to use exceptions in normal
operation, like oh say Adobe InDesign, can't be valground.
Which is a shame. 

Can you at least confirm the bug?  :-)
Comment 4 Julian Seward 2008-02-28 16:01:40 UTC
Yes.  It's a real bug :-)
Comment 5 Tom Hughes 2008-02-28 16:24:13 UTC
*** Bug 158525 has been marked as a duplicate of this bug. ***
Comment 6 Julian Seward 2008-05-09 15:27:36 UTC
Fixed (vex r1836).
Comment 7 Tom Hughes 2011-08-11 10:09:11 UTC
*** Bug 149838 has been marked as a duplicate of this bug. ***