我正在 x64 上开发 JIT 编译器;一些代码必须是特定于操作系统的,所以我现在专注于 Windows 版本,Linux 端口稍后会出现。出于调试目的,我将需要某种反汇编程序(由我以外的其他人编写,因此我不只是重复我的错误)来检查我生成的机器代码真正对应的内容。
在 64 位 Windows 上,从 C++ 程序内存中的一大块机器代码中获取反汇编的最简单方法是什么?
如果我在调试器下运行我的程序,Visual C++ 肯定有能力为我反汇编生成的代码。有没有办法让它这样做?
libopcodes 原则上具有能力,但它是一个 Linux 库;有没有简单的方法让它用 Visual C++ 编译?
dumpbin 可以反汇编已写入磁盘的代码,但似乎需要一个适当的目标文件包装器。有没有办法解决这个问题,或者创建一个最小的包装器有多容易?
还是我忽略了其他一些选择?