【问题标题】:Eclipse disassembly view, can you view disassembly without debugging the program?Eclipse反汇编视图,不调试程序可以查看反汇编吗?
【发布时间】:2018-09-22 13:56:45
【问题描述】:

我在调试程序时使用了 Eclipse-CDT“反汇编”视图(在“调试”透视图中。我发现 Eclipse-CDT 使源代码显示和汇编代码显示同步的方式很有用。

我想在不运行调试器的情况下仔细阅读编译器生成的汇编代码。我有兴趣更改以下内容:

  • 编译器标志(例如:-O0、-O1、-O2、-O3)
  • 更改 C 代码

然后观察生成的汇编代码的变化。

在Eclipse-CDT中,不主动调试程序是否可以查看反汇编,yes/no?

如果是,怎么做?

也许 Eclipse-CDT 不是解决此问题的正确工具。我似乎记得有一种方法可以促使编译器生成一个详细/可读的汇编列表,其中包含行号和注释返回到原始源。

【问题讨论】:

  • 在 Eclipse-CDT 中,我刚刚注意到您可以双击一个目标文件并禁用生成程序集。我必须检查一下。
  • 如果您想更改源或编译器选项并查看 asm 更改,您可能需要安装 Matt Godbolt 的编译器资源管理器 Web 界面的本地副本,您可以在其中在大型代码库的一部分上运行它。 (或者在线使用gcc.godbolt.org,如果您需要特殊的标头,请使用特殊的#include 语法用于github repos。)请参阅How to remove "noise" from GCC/clang assembly output?,以及Matt 的CppCon2017 演讲:“What Has My Compiler Done for Me Lately? Unbolting the Compiler's Lid”,其中他提到了本地安装。
  • Eclipse 没有这个特性是非常令人失望的。您仍然必须使用 objdump 来查看与代码交错的反汇编,但这当然不是用户友好的。

标签: c++ c assembly eclipse-cdt disassembly


【解决方案1】:

在 Eclipse-CDT 中,我刚刚注意到您可以双击一个目标文件并禁用生成程序集。我必须检查一下。

我知道你也可以使用编译器来生成汇编列表。

我相信还有其他工具。

【讨论】:

    猜你喜欢
    • 2012-09-22
    • 2013-08-04
    • 1970-01-01
    • 2010-11-09
    • 1970-01-01
    • 2012-03-04
    • 1970-01-01
    • 1970-01-01
    • 2011-05-09
    相关资源
    最近更新 更多