linux下gcc 编译器是怎么提高程序性能的?怎么根据gcc优化结果优化代码

2025-02-23 00:42:56
推荐回答(2个)
回答1:

GCC的优化有两种,空间(文件变小),时间(执行变快)。无论如何优化,都会反映在最终的机器码上,但是那个不具备可读性,通常分析汇编指令即可,方法是用objdump命令。
前提是你的代码要有足够的复杂,否在你就几行代码,人家根本没有更多优化余地,加什么选型都白搭。
最好找若干个文件的工程来验证,假设最好编译出 aaa 的执行文件,使用如下命令,objdump -S aaa > aaa.dump,你就可以慢慢的对比汇编了。

回答2:

你的程序可能太短,看不出区别来,你比对一下她们生成的汇编码就知道了,优化可能O1就优化完了,你用O0对比O1的汇编结果,肯定不同的,从中能看出它到底优化了哪个地方