Apple LLVM 5.0編譯器中GCC的#pragma GCC optimize("O0")
或VS的#pragma optimize("", off)
的等效項是什麼?Apple LLVM 5.0 pragma optimize
我需要它僅針對一段代碼禁用優化。
Apple LLVM 5.0編譯器中GCC的#pragma GCC optimize("O0")
或VS的#pragma optimize("", off)
的等效項是什麼?Apple LLVM 5.0 pragma optimize
我需要它僅針對一段代碼禁用優化。
從一個簡短的搜索它看起來不像clang/llvm目前支持這樣的編譯指示。如果你不想關閉整個文件的優化,我建議將你不想優化的內容分解成一個單獨的文件並單獨設置-O0。
實際上,現在有一種方法可以通過指定一個__attribute__ ((optnone))
來封裝不希望優化的代碼的函數。
例如我用它有一個內聯函數
static void BM_notoptimizedfunction(benchmark::State& state) __attribute__ ((optnone)) {
// your code here won't be optimized by clang
}
明確的基準,這就是它!