https://bugs.kde.org/show_bug.cgi?id=403123

            Bug ID: 403123
           Summary: vex amd64->IR: unhandled instruction bytes: 0xF3 0x48
                    0xF 0xAE 0xD3 0x48 0x83 0xC4 0x8 0x5B
           Product: valgrind
           Version: 3.15 SVN
          Platform: Compiled Sources
                OS: FreeBSD
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: vex
          Assignee: jsew...@acm.org
          Reporter: bogorods...@gmail.com
  Target Milestone: ---

I'm running a freebsd fork based 3.15, however, it looks like this isuue is not
related to the freebsd specifics.

Running any application (using uname in this example as a very simple one)
results in:

==2934== Memcheck, a memory error detector
==2934== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==2934== Using Valgrind-3.15.0.GIT and LibVEX; rerun with -h for copyright info
==2934== Command: uname
==2934==
vex amd64->IR: unhandled instruction bytes: 0xF3 0x48 0xF 0xAE 0xD3 0x48 0x83
0xC4 0x8 0x5B
vex amd64->IR:   REX=1 REX.W=1 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
==2934== valgrind: Unrecognised instruction at address 0x400899c.
==2934==    at 0x400899C: ??? (in /libexec/ld-elf.so.1)
==2934==    by 0x4009D0F: ??? (in /libexec/ld-elf.so.1)
==2934==    by 0x4008018: ??? (in /libexec/ld-elf.so.1)
==2934== Your program just tried to execute an instruction that Valgrind
==2934== did not recognise.  There are two possible reasons for this.
==2934== 1. Your program has a bug and erroneously jumped to a non-code
==2934==    location.  If you are running Memcheck and you just saw a
==2934==    warning about a bad jump, it's probably your program's fault.
==2934== 2. The instruction is legitimate but Valgrind doesn't handle it,
==2934==    i.e. it's Valgrind's fault.  If you think this is the case or
==2934==    you are not sure, please let us know and we'll try to fix it.
==2934== Either way, Valgrind will now raise a SIGILL signal which will
==2934== probably kill your program.
==2934==
==2934== Process terminating with default action of signal 4 (SIGILL): dumping
core
==2934==  Illegal opcode at address 0x400899C
==2934==    at 0x400899C: ??? (in /libexec/ld-elf.so.1)
==2934==    by 0x4009D0F: ??? (in /libexec/ld-elf.so.1)
==2934==    by 0x4008018: ??? (in /libexec/ld-elf.so.1)
==2934==
==2934== HEAP SUMMARY:
==2934==     in use at exit: 0 bytes in 0 blocks
==2934==   total heap usage: 0 allocs, 0 frees, 0 bytes allocated
==2934==
==2934== All heap blocks were freed -- no leaks are possible
==2934==
==2934== For lists of detected and suppressed errors, rerun with: -s
==2934== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 1 from 1)
Illegal instruction

$ objdump -S /libexec/ld-elf.so.1|grep -i 899c:
    899c:       f3 48 0f ae d3          wrfsbase %rbx
$

System compiler version is:
FreeBSD clang version 7.0.1 (tags/RELEASE_701/final 349250) (based on LLVM
7.0.1)

Linker:
LLD 7.0.1 (FreeBSD 349250-1300001) (compatible with GNU linkers)

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to