假设我要反汇编文件x的行m-n,其中文件x不在当前上下文中。这项操作是否可行,若然,怎么办?注意:我正在使用x86 Linux。
答案 0 :(得分:3)
您可以使用带有/m
键的反汇编命令在其装配对应物前面显示原始C行:
disassemble /m 'my_file.c'::my_function
这不需要任何预备步骤,但它似乎并不像您要求的那样接受源行范围。
答案 1 :(得分:1)
这是一种愚蠢的方法:在您感兴趣的行上设置断点,断点确认为您提供地址。然后清除断点并在该地址上运行disas
或x/20i
。
答案 2 :(得分:1)
这是一个很晚的答案,也许是多余的答案,但是希望对像我这样的人有用,我想对这个问题和your other question on getting the address of a line number做出完整的答复。
disassemble
命令can disassemble address ranges:disassemble [Start],[End]
。但是您想拆卸行范围。
要获取源代码行的地址,可以使用the info line
command:info line [File]:[Line]
。