【问题标题】:What does O2 optimization flag do to the stack frames at compilation in C?O2 优化标志在 C 中编译时对堆栈帧有什么作用?
【发布时间】:2021-01-25 15:18:25
【问题描述】:

O2 优化标志在编译时对堆栈帧有什么作用?如果你有一些这样的递归函数:

long long fibb(long long a, long long b, int n) {
    return (--n>0)?(fibb(b, a+b, n)):(a);
}

【问题讨论】:

    标签: c recursion optimization stack frames


    【解决方案1】:

    编译后的代码不会有任何递归。 https://godbolt.org/z/7cWGhv

    所以这种情况下的优化将完全消除递归。

    【讨论】:

      猜你喜欢
      • 2013-12-05
      • 2011-10-05
      • 2011-08-25
      • 1970-01-01
      • 2021-11-17
      • 2018-04-10
      • 2017-01-05
      • 2014-02-04
      • 1970-01-01
      相关资源
      最近更新 更多