c - 我怎样才能用gcc编译成汇编

标签 c linux gcc x86

如何使用 gcc 编译成程序集而不是可执行文件。我知道有一个 -S 标志,但我在 makefile 中的什么地方使用它。例如,如果我使用标志 -O3 -o exe_name,我应该将 -S 标志放在哪里?

最佳答案

我还建议使用 -fverbose-asm,因为这样生成的汇编程序会生成一些注释,“解释”代码。例如:

gcc -S -fverbose-asm -O2 foo.c

将在 foo.s 中生成(带有一些注释)通过编译 foo.c

生成的汇编代码

要了解 GCC 优化的作用,甚至可以尝试 -fdump-tree-all(但这会产生 数百 文件!)。

关于c - 我怎样才能用gcc编译成汇编,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8021874/

相关文章:

编译执行Redis ziplist.c

c - 函数中的静态变量

c - 简单的 C 程序 - 需要帮助

c++ - 这个 for 循环实际上是如何工作的?

linux - 更改 python 头文件目录以进行配置

c++ - 如何使用 C++ 在 Linux 中获取总 CPU 使用率

c - 哦不,不是另一个 undefined reference 问题!

与 Windows 平台相比,Linux 中的 CPU 需要花费太多时间来执行嵌套 for 循环

c++ - 为什么内置类型和类在不使用时会受到不同对待?

ubuntu - Ubuntu下连接X11