Compiler construction 如果在链接时间中不使用-g会发生什么

Compiler construction 如果在链接时间中不使用-g会发生什么,compiler-construction,llvm,Compiler Construction,Llvm,使用gcc或clang,我使用-g选项进行编译,而不使用它进行链接。这是否意味着在整个编译过程中,最终的二进制在性能上等同于没有-g选项的二进制?-g在编译步骤中生成调试信息;它被链接器完全忽略。因此,您所做的工作相当于一步编译和链接,使用-g.通常,如果包含调试信息的二进制文件的性能与不包含调试信息的二进制文件的性能不同,则会被视为编译器错误。因此,是的,您应该期望相同的性能。我在使用-g时从未注意到性能上的任何显著差异。。。事实上,您甚至可以使用-g和-O,尽管生成的二进制文件在调试器中可能

使用gcc或clang,我使用-g选项进行编译,而不使用它进行链接。这是否意味着在整个编译过程中,最终的二进制在性能上等同于没有-g选项的二进制?

-g在编译步骤中生成调试信息;它被链接器完全忽略。因此,您所做的工作相当于一步编译和链接,使用-g.

通常,如果包含调试信息的二进制文件的性能与不包含调试信息的二进制文件的性能不同,则会被视为编译器错误。因此,是的,您应该期望相同的性能。

我在使用-g时从未注意到性能上的任何显著差异。。。事实上,您甚至可以使用-g和-O,尽管生成的二进制文件在调试器中可能很难逐步完成。