原文
-vasm
选项,给dmd
加了个为每个函数
显示生成汇编代码的基于数字火星反汇编程序的内置反汇编器
.
Godbolt
要你准备小示例代码
来上传.很麻烦.
obj2asm
工作,但打印出了目标文件
中所有内容,信息太多
.工作量很大.
让用户很易查看函数
生成代码,鼓励它熟悉自己构造了啥代码.使用户编写
更好代码.
更易诊断编译器生成
的错误代码,更易为它提交错误报告
.
用户可以轻松判断
是否内联关键函数.
我最初在1982-83
年左右编写了作为开发C编译器
工具的反汇编器
.我只需要它工作,而不必太漂亮.它不断的,扩展到支持32
位代码,然后是64
位代码,然后是所有额外指令
.扩展它来支持dmd
支持的所有目标文件格式
.
但它如此
有用代码一直仅在obj2asm
中.我一直想解放它.现在成功
了.
第一项任务是把该反汇编器
从处理,修复文件和符号表
等分开.然后翻译成D
.目标是使disasm86.d
不依赖其他D库
而完全独立.
在此,粗略地固定在dmd
上,且有Boost
许可.代码有点丑,是1982
年的遗留
问题,但它有效.
通过更广泛
使用它,希望能更好维护它,并更值得打磨.
如果你想给Emacs
,或新调试器
项目,自己的编译器
资源管理器,IDE
等加反汇编器
,我已经完成
了无聊的部分.请享受
!