| Summary: | Illegal opcode - unhandled instruction bytes: 0xCB 0x55 0x8B 0xEC | ||
|---|---|---|---|
| Product: | [Developer tools] valgrind | Reporter: | esutton |
| Component: | general | Assignee: | Julian Seward <jseward> |
| Status: | REPORTED --- | ||
| Severity: | crash | CC: | njn, tom |
| Priority: | NOR | ||
| Version First Reported In: | 3.4.1 | ||
| Target Milestone: | --- | ||
| Platform: | RedHat Enterprise Linux | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Bug Depends on: | |||
| Bug Blocks: | 256630 | ||
Well 0xCB appears to be a FAR RET instruction, which is pretty obscure. It's not new though - it's an ancient artefact of 16 bit days. |
I believe the opcode is valid but perhaps not on the Intel Xeon quad-core that I am developing on. My application uses a closed-source video decoder made by Pegasus ( libpicl20.so ). This decoder supports multiple machine architectures so that at run-time it can select the best performing machine instructions to use. Is there a work-around to tell Valgrind to skip libpicl20.so? libFesVideo Version: 0.0.683 Date: 4/9/2009 10:44AM Adding Connections... Selecting Starboard Camera... Show window SDL_Init... vex x86->IR: unhandled instruction bytes: 0xCB 0x55 0x8B 0xEC ==9455== Process terminating with default action of signal 4 (SIGILL): dumping core ==9455== Illegal opcode at address 0x7B3ABB5 ==9455== at 0x7B3ABB5: ??? ==9455== by 0x407A2BE: picosCallPegasusProc (in /home/esutton/sys/bin/libpicl20.so) ==9455== by 0x4074724: (within /home/esutton/sys/bin/libpicl20.so) ==9455== by 0x407491E: (within /home/esutton/sys/bin/libpicl20.so) ==9455== by 0x40798DD: threadfn (in /home/esutton/sys/bin/libpicl20.so) ==9455== by 0x41C45A: start_thread (in /lib/libpthread-2.5.so) ==9455== by 0x373C4D: clone (in /lib/libc-2.5.so) Thanks for a great tool and thanks in advance for your help, -Ed