vex amd64->IR: unhandled instruction bytes: 0xF 0x1 0xF9 0x89 0x45 0xF0 0x89 0x55 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=0 ==30670== valgrind: Unrecognised instruction at address 0x2468cd6. ==30670== Your program just tried to execute an instruction that Valgrind ==30670== did not recognise. There are two possible reasons for this. ==30670== 1. Your program has a bug and erroneously jumped to a non-code ==30670== location. If you are running Memcheck and you just saw a ==30670== warning about a bad jump, it's probably your program's fault. ==30670== 2. The instruction is legitimate but Valgrind doesn't handle it, ==30670== i.e. it's Valgrind's fault. If you think this is the case or ==30670== you are not sure, please let us know and we'll try to fix it. ==30670== Either way, Valgrind will now raise a SIGILL signal which will ==30670== probably kill your program. (gdb) disassemble rte_rdtsc Dump of assembler code for function rte_rdtsc: 0x0000000002468ccc <rte_rdtsc+0>: push %rbp 0x0000000002468ccd <rte_rdtsc+1>: mov %rsp,%rbp 0x0000000002468cd0 <rte_rdtsc+4>: mfence 0x0000000002468cd3 <rte_rdtsc+7>: lfence 0x0000000002468cd6 <rte_rdtsc+10>: rdtscp 0x0000000002468cd9 <rte_rdtsc+13>: mov %eax,-0x10(%rbp) 0x0000000002468cdc <rte_rdtsc+16>: mov %edx,-0xc(%rbp) 0x0000000002468cdf <rte_rdtsc+19>: mfence 0x0000000002468ce2 <rte_rdtsc+22>: lfence 0x0000000002468ce5 <rte_rdtsc+25>: mov -0x10(%rbp),%rax 0x0000000002468ce9 <rte_rdtsc+29>: leaveq 0x0000000002468cea <rte_rdtsc+30>: retq End of assembler dump. (gdb) x/3x 0x0000000002468cd6 0x2468cd6 <rte_rdtsc+10>: 0x89f9010f 0x5589f045 0xf0ae0ff4 Reproducible: Always Steps to Reproduce: 1.use instruction rdtscp get tsc register Actual Results: valgrind report the error that can not recognize the instruction Expected Results: rdtscp is recognised. and the program can excecute processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R) Core(TM) i5 CPU 650 @ 3.20GHz stepping : 2 cpu MHz : 3193.000 cache size : 4096 KB physical id : 0 siblings : 4 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid bogomips : 6384.63 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R) Core(TM) i5 CPU 650 @ 3.20GHz stepping : 2 cpu MHz : 3193.000 cache size : 4096 KB physical id : 0 siblings : 4 core id : 2 cpu cores : 2 apicid : 4 initial apicid : 4 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid bogomips : 6383.80 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 2 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R) Core(TM) i5 CPU 650 @ 3.20GHz stepping : 2 cpu MHz : 3193.000 cache size : 4096 KB physical id : 0 siblings : 4 core id : 0 cpu cores : 2 apicid : 1 initial apicid : 1 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid bogomips : 6383.84 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 3 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R) Core(TM) i5 CPU 650 @ 3.20GHz stepping : 2 cpu MHz : 3193.000 cache size : 4096 KB physical id : 0 siblings : 4 core id : 2 cpu cores : 2 apicid : 5 initial apicid : 5 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid bogomips : 6383.85 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management:
*** This bug has been marked as a duplicate of bug 251569 ***
Which version did you resolve this problem? I used the 3.8 version. It still have this problem. -----邮件原件----- 发件人: bugzilla_noreply@kde.org [mailto:bugzilla_noreply@kde.org] 代表 Tom Hughes 发送时间: 2013年1月16日 17:02 收件人: Lizhi (E) 主题: [valgrind] [Bug 313348] unhandled instruction is rdtscp, instruction bytes: 0xF 0x1 0xF9 0x89 0x45 0xF0 0x89 0x55 https://bugs.kde.org/show_bug.cgi?id=313348 Tom Hughes <tom@compton.nu> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED CC| |tom@compton.nu Resolution|--- |DUPLICATE --- Comment #1 from Tom Hughes <tom@compton.nu> --- *** This bug has been marked as a duplicate of bug 251569 ***
I didn't say it was fixed, just that it was a duplicate of an existing (open) bug.