代码手工优化的效果是否在不同的gcc优化级别内保持一致?

时间:2013-05-02 18:15:50

标签: c optimization gcc

如果我使用-O0运行gcc,并使用诸如here之类的技术手动优化我的代码,那么我的优化代码通常会运行得比未经优化的代码更快当我用-O3运行gcc时?

也就是说,如果我在特定的编译器优化级别下手动优化代码,那么在不同(更高或更低)的编译器优化级别下,这些优化通常是否仍然有效(而不是适得其反)?

1 个答案:

答案 0 :(得分:0)

在不同的编译器中可能不一样。即使编译器可以取消您的手优化,我的意思是忽略它们。它在很大程度上取决于编译器本身的实现和行为。大多数优化就像是对编译器的请求,可以随时删除(大多数没有任何通知)