gpt4 book ai didi

assembly - gdb:在源代码和 asm 中显示相应的行

转载 作者:行者123 更新时间:2023-12-04 10:46:08 25 4
gpt4 key购买 nike

在 TUI 模式下运行 gdb 时,显示源代码和程序集,是否有一个选项可以突出显示映射到所选源代码行的指令集?

最佳答案

您可以使用 GDB Dashboard 部分完成此操作。

https://github.com/cyrus-and/gdb-dashboard

从下面的屏幕截图中,您可以看到第一次调用 operator<<在这行代码中:

std::cout << a << std::endl;

映射到 4 个汇编指令:
0x00000000004011a2  main()+28 mov    -0x4(%rbp),%eax
0x00000000004011a5 main()+31 mov %eax,%esi
0x00000000004011a7 main()+33 mov $0x404060,%edi
0x00000000004011ac main()+38 callq 0x401070 <_ZNSolsEi@plt>

它们在 assembly 部分以绿色突出显示。

您可以转到第二次调用 operator<<在同一行执行 ni命令几次,您将看到第二个映射到 3 个汇编指令:
0x00000000004011b1  main()+43 mov    $0x401030,%esi
0x00000000004011b6 main()+48 mov %rax,%rdi
0x00000000004011b9 main()+51 callq 0x401050 <_ZNSolsEPFRSoS_E@plt>

enter image description here

关于assembly - gdb:在源代码和 asm 中显示相应的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59697897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com