在 GCC 中从 C/C 源生成汇编器输出
分析编译过程,从 C/C 源获取发出的汇编代码可以是无价的。 GCC 提供了两种方法来实现此目的:使用 -S 选项和利用 objdump。
使用 -S 选项:
-S 选项指示 GCC 运行预处理器并执行初始编译,但在汇编器执行之前停止。默认情况下,输出存储在扩展名为 .s 的文件中。要指定自定义输出文件,请使用 -o 选项。
gcc -S helloworld.c
使用 objdump:
如果您只有生成的目标文件,则可以使用 objdump使用 --disassemble 选项(-d 表示较短版本)来反汇编代码:
objdump -S --disassemble helloworld > helloworld.dump
其他选项:
示例:
获取详细汇编程序使用 Intel 语法从 .o 文件输出,该文件可能包含符号引用的占位符,使用:
objdump -drwC -Mintel -S foo.o | less
以上是如何使用 GCC 从 C/C 源代码生成汇编代码?的详细内容。更多信息请关注PHP中文网其他相关文章!