反汇编,指令级调试器里面有实现按照不同的汇编语法进行反汇编操作,符号级调试器里需要做的调整是,支持指定函数名或者源文件中的文件名、行号进行反汇编。
这里的工作量仅仅涉及到将这些符号转换为具体的指令地址、指令地址范围,后续的反汇编操作就和指令级调试器没有什么不同了。
前面我们也介绍过了如何读取DWARF行号表信息,有了这张表我们就很容易在源文件名、行号和指令地址以及地址范围之间做转换。对于函数名,我们也可以通过查找类型为函数的DIE,来找到其相关的信息,包括其入口地址、地址范围什么的。
要完成这里的任务就显得没那么复杂了。
TODO 任务优先级:高