Valgrind 未处理的指令字节错误

标签 valgrind

为了在基于 Liv555 库的应用程序中搜索内存泄漏,我尝试使用 valgrind 运行它。它会导致以下错误:

vex amd64->IR: unhandled instruction bytes: 0xC5 0xF9 0x57 0xC0 0xC5 0xFA 0x10 0x15

在另一台计算机上运行它不会导致此错误(它运行得很好),所以我希望这是某些库版本的结果。这可能是问题所在吗?如果是这样,有谁知道哪个库可能导致错误? 带有 -v -v 选项的 valgrind 的输出位于 here .

最佳答案

这里是FAQ 有确切的解释。

搜索“vex x86->IR:未处理的指令字节”

问题在这里:

看起来您使用的是通过英特尔 SSE4 优化 (strncmp_sse42) 编译的二进制文件 (/usr/lib/libFLAC.so.8.2.0),您使用的 amd 不支持该二进制文件 (Arch 和 hwcaps:AMD64、amd64 -sse3-cx16)。

关于Valgrind 未处理的指令字节错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7875485/

相关文章:

c - 为什么 Valgrind 报告在 PETSc 中分配 char* 时大小为 8 的无效写入?

memory-leaks - 直接泄漏和间接泄漏有什么区别?

c++ - valgrind 在主机名命令输出中显示内存泄漏

c - 如何跟踪 C 中 malloc 中的内存分配错误

c - "reclaimation of storage"对于线程的 pthread_join() 和 pthread_detach() 是什么意思?

memory - 由于 openssl, ARM SIGILL 上的 valgrind

c - 我不是在某处释放内存吗?

c - 段错误,大小为 4 的无效写入

debugging - Valgrind 显示错误指向 Qt 的源文件,而不是我的源文件 - 从中​​可以得出什么结论?

c - Valgrind 错误 : failed in UME with error 22