Bug 158525

Summary: Valgrind doesn't recognise fxrstor instruction
Product: [Developer tools] valgrind Reporter: m.b.lankhorst
Component: vexAssignee: Julian Seward <jseward>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: NOR    
Version: 3.4 SVN   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:

Description m.b.lankhorst 2008-02-28 02:36:59 UTC
When trying to run wine.git's comctl32 imagelist test with valgrind svn I get
the following error:

vex x86->IR: unhandled instruction bytes: 0xF 0xAE 0xA 0xE9
==31875== valgrind: Unrecognised instruction at address 0x7BC62C23.
==31875== Your program just tried to execute an instruction that Valgrind
==31875== did not recognise.  There are two possible reasons for this.
==31875== 1. Your program has a bug and erroneously jumped to a non-code
==31875==    location.  If you are running Memcheck and you just saw a
==31875==    warning about a bad jump, it's probably your program's fault.
==31875== 2. The instruction is legitimate but Valgrind doesn't handle it,
==31875==    i.e. it's Valgrind's fault.  If you think this is the case or
==31875==    you are not sure, please let us know and we'll try to fix it.
==31875== Either way, Valgrind will now raise a SIGILL signal which will
==31875== probably kill your program.

Wine tells the following instruction is the cause of it:

701         __asm__ __volatile__( "fxrstor %0" : : "m" (*state) );
Comment 1 Tom Hughes 2008-02-28 16:24:11 UTC

*** This bug has been marked as a duplicate of 126389 ***