6

Apple LLVM 5.0 编译器中的 GCC#pragma GCC optimize("O0")或 VS 的等价物是什么?#pragma optimize("", off)

我需要它来禁用一段代码的优化。

4

2 回答 2

4

从简短的搜索来看,clang/llvm 目前似乎不支持这样的编译指示。如果您不想关闭整个文件的优化,我建议将您不希望优化的内容分解到一个单独的文件中并单独设置 -O0 。

于 2013-11-04T17:38:41.043 回答
2

实际上,现在有一种方法可以通过指定__attribute__ ((optnone))包装您不想优化的代码的函数来做到这一点。

例如,我使用它来获得内联函数的明确基准

static void BM_notoptimizedfunction(benchmark::State& state) __attribute__ ((optnone)) {
    // your code here won't be optimized by clang
}

就是这样!

于 2015-10-03T09:27:18.503 回答