Bug 391845

Summary: Unrecognised instruction: __svml_irem8_l9
Product: [Developer tools] valgrind Reporter: Thomas Magnusson <thomas.magnusson>
Component: callgrindAssignee: Josef Weidendorfer <josef.weidendorfer>
Status: REPORTED ---    
Severity: normal CC: jseward
Priority: NOR    
Version First Reported In: 3.11.0   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Thomas Magnusson 2018-03-14 08:47:02 UTC
This is code compiled with Intel icpc C++ compiler, version 18.0.1 20171018

output from valgrind --tool=callgrind:

vex amd64->IR: unhandled instruction bytes: 0xF3 0xF 0x1E 0xFA 0x55 0x48 0x89 0xE5
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=0 PFX.F2=0 PFX.F3=1
==846== valgrind: Unrecognised instruction at address 0x460e40.
==846==    at 0x460E40: __svml_irem8_l9 (in ....)
[ ... stack back trace ... ]
==846== Your program just tried to execute an instruction that Valgrind
==846== did not recognise.  There are two possible reasons for this.
==846== 1. Your program has a bug and erroneously jumped to a non-code
==846==    location.  If you are running Memcheck and you just saw a
==846==    warning about a bad jump, it's probably your program's fault.
==846== 2. The instruction is legitimate but Valgrind doesn't handle it,
==846==    i.e. it's Valgrind's fault.  If you think this is the case or
==846==    you are not sure, please let us know and we'll try to fix it.
==846== Either way, Valgrind will now raise a SIGILL signal which will
==846== probably kill your program.
==846==
==846== Process terminating with default action of signal 4 (SIGILL)
==846==  Illegal opcode at address 0x460E40
==846==    at 0x460E40: __svml_irem8_l9 (in ...)
[ ... stack back trace ... ]
==846==
==846== Events    : Ir
==846== Collected : 0
==846==
==846== I   refs:      0
Illegal instruction (core dumped)
Comment 1 Julian Seward 2018-08-06 09:03:03 UTC
3.11.0 is pretty old.  Can you re-test with 3.13.0 or better with the 
latest git trunk sources?