Bug 275786 - disInstr(ppc): unhandled instruction: 0x10E40301
Summary: disInstr(ppc): unhandled instruction: 0x10E40301
Status: REPORTED
Alias: None
Product: valgrind
Classification: Developer tools
Component: memcheck (show other bugs)
Version: 3.6 SVN
Platform: unspecified Linux
: NOR major
Target Milestone: ---
Assignee: Julian Seward
URL:
Keywords:
: 275787 342610 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-06-16 08:20 UTC by sirian
Modified: 2021-10-14 18:46 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description sirian 2011-06-16 08:20:32 UTC
Some error occued when I run "$valgrind ls" on my board based on powerpc hardware platform.

my OS version: linux kernel 2.6.32

$valgrind ls
==1312== Memcheck, a memory error detector
==1312== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==1312== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info
==1312== Command: ls
==1312== 
disInstr(ppc): unhandled instruction: 0x10E40301
                 primary 4(0x4), secondary 769(0x301)
==1312== valgrind: Unrecognised instruction at address 0x4018ff0.
==1312== Your program just tried to execute an instruction that Valgrind
==1312== did not recognise.  There are two possible reasons for this.
==1312== 1. Your program has a bug and erroneously jumped to a non-code
==1312==    location.  If you are running Memcheck and you just saw a
==1312==    warning about a bad jump, it's probably your program's fault.
==1312== 2. The instruction is legitimate but Valgrind doesn't handle it,
==1312==    i.e. it's Valgrind's fault.  If you think this is the case or
==1312==    you are not sure, please let us know and we'll try to fix it.
==1312== Either way, Valgrind will now raise a SIGILL signal which will
==1312== probably kill your program.
==1312== 
==1312== Process terminating with default action of signal 4 (SIGILL)
==1312==  Illegal opcode at address 0x4018FF0
==1312==    at 0x4018FF0: memcpy (in /lib/ld-2.8.so)
==1312==    by 0x40021C3: _dl_start_final (in /lib/ld-2.8.so)
==1312==    by 0x4015F8B: _start (in /lib/ld-2.8.so)
==1312== 
==1312== HEAP SUMMARY:
==1312==     in use at exit: 0 bytes in 0 blocks
==1312==   total heap usage: 0 allocs, 0 frees, 0 bytes allocated
==1312== 
==1312== All heap blocks were freed -- no leaks are possible
==1312== 
==1312== For counts of detected and suppressed errors, rerun with: -v
==1312== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 4 from 2)
Illegal instruction
Comment 1 Julian Seward 2011-10-12 15:49:01 UTC
*** Bug 275787 has been marked as a duplicate of this bug. ***
Comment 2 Florian Krohm 2015-04-26 18:20:44 UTC
*** Bug 342610 has been marked as a duplicate of this bug. ***
Comment 3 Will Schmidt 2021-10-14 18:46:47 UTC
disInstr(ppc): unhandled instruction: 0x10E40301
                 primary 4(0x4), secondary 769(0x301)

This appears to map to the evldd instruction.  There are references to the instruction in Power ISA version 2.07 documents (2013) under the SPE (Signal Processing Engine) category.  There are no references in Power ISA version 3.0 or newer.