如何查看由C / C ++程序的gcc(任何风格)编译器生成的汇编代码?

我正在尝试优化大量乘法和指针算术,并希望看到当我放入优化标志时,编译器会做什么。

– 编辑 –

如何限制它到一个特定的function或代码块?

–Edit_2–

如何让gcc生成一个不太冗长的汇编代码?

将-S切换到您的命令行。

编辑:不要忘记它会将程序集放到您在-o切换下指定的文件中。

如何限制它到一个特定的function或代码块?

将该函数放在一个单独的源文件中(并为该源文件使用不同的命令行参数)。

你也可以在像gdb这样的debugging器中运行该程序并使用反汇编视图。 在gdb您可以使用disass/m命令查看当前位置上与C代码混合的程序集。

您可以停止在Visual Studiodebugging器中的断点处编程,并执行“显示汇编”,甚至一次只执行一条指令。