Clang优化编译指示

时间:2018-05-17 12:35:00

标签: c clang

我正在尝试编译一个没有任何优化的特定函数。我在clang输出中使用--version

Apple LLVM version 6.0 (clang-600.0.57) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix

我尝试使用#pragma clang optimize off关闭优化功能。这是我的代码示例:

#pragma clang optimize off

int main()
{
    int x = 777;
    x = 555;
    x = 888;
    x = 999;

    printf("%d\n", x);

    return 0;
}
#pragma clang optimize on

但是当我检查clang -S -O3的输出时,冗余分配就消失了。使用__attribute__(optnone)也不起作用。顺便说一句,当我编译没有-O3选项时,冗余分配就在这里。

我做错了什么?

UPD:使用-Wall进行编译

opt.c:13:15: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma clang optimize off

0 个答案:

没有答案