==11538== Memcheck, a memory error detector. ==11538== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al. ==11538== Using LibVEX rev 1732, a library for dynamic binary translation. ==11538== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP. ==11538== Using valgrind-3.2.3-Debian, a dynamic binary instrumentation framework. ==11538== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al. ==11538== For more details, rerun with: -v ==11538== vex amd64->IR: unhandled instruction bytes: 0x66 0x66 0x66 0x66 ==11538== valgrind: Unrecognised instruction at address 0x4016321. ==11538== Your program just tried to execute an instruction that Valgrind ==11538== did not recognise. There are two possible reasons for this. ==11538== 1. Your program has a bug and erroneously jumped to a non-code ==11538== location. If you are running Memcheck and you just saw a ==11538== warning about a bad jump, it's probably your program's fault. ==11538== 2. The instruction is legitimate but Valgrind doesn't handle it, ==11538== i.e. it's Valgrind's fault. If you think this is the case or ==11538== you are not sure, please let us know and we'll try to fix it. ==11538== Either way, Valgrind will now raise a SIGILL signal which will ==11538== probably kill your program. ==11538== ==11538== Process terminating with default action of signal 4 (SIGILL): dumping core ==11538== Illegal opcode at address 0x4016321 ==11538== at 0x4016321: (within /lib/ld-2.6.1.so) ==11538== by 0x400466E: (within /lib/ld-2.6.1.so) ==11538== by 0x4014457: (within /lib/ld-2.6.1.so) ==11538== by 0x400230A: (within /lib/ld-2.6.1.so) ==11538== by 0x4000A67: (within /lib/ld-2.6.1.so) ==11538== ==11538== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 1 from 1) ==11538== malloc/free: in use at exit: 0 bytes in 0 blocks. ==11538== malloc/free: 0 allocs, 0 frees, 0 bytes allocated. ==11538== For counts of detected errors, rerun with: -v ==11538== All heap blocks were freed -- no leaks are possible.