Bug 424248

Summary: Doesn't support CLFLUSHOPT instruction
Product: [Developer tools] valgrind Reporter: d.c.ddcc
Component: vexAssignee: Julian Seward <jseward>
Status: REPORTED ---    
Severity: normal CC: f.roeser, mark
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description d.c.ddcc 2020-07-15 18:27:11 UTC
Tested with Valgrind 3.16.1

STEPS TO REPRODUCE
1. Execute a program that uses the CLFLUSHOPT instruction

OBSERVED RESULT
vex amd64->IR: unhandled instruction bytes: 0x66 0xF 0xAE 0x3C 0x25 0xE0 0x1 0x0 0x70 0xC3
vex amd64->IR:   REX=0 REX.W=0 REX.R=0 REX.X=0 REX.B=0
vex amd64->IR:   VEX=0 VEX.L=0 VEX.nVVVV=0x0 ESC=0F
vex amd64->IR:   PFX.66=1 PFX.F2=0 PFX.F3=0
Comment 1 d.c.ddcc 2020-07-15 18:28:24 UTC
For reference, this is the corresponding disassembly:

   1531c:       66 0f ae 3c 25 e0 01    clflushopt 0x700001e0
   15323:       00 70
Comment 2 Mark Wielaard 2021-02-20 22:20:52 UTC
Note that you should check first with the cpuid feature flag CLFLUSHOPT whether the instruction is supported or not (valgrind doesn't set it).
Comment 3 Mark Wielaard 2022-07-20 18:48:26 UTC
*** Bug 456948 has been marked as a duplicate of this bug. ***