Clang是否具备类似GCC的循环展开函数级属性?
Clang循环展开优化的属性说明
- 语句级控制:Clang支持用
#pragma clang loop unroll(enable)对单个循环开启展开优化,这是针对特定循环的语句级提示。 - GCC的函数级方案:GCC提供
__attribute__((optimize("unroll-loops")))属性,可直接给整个函数开启循环展开优化。 - Clang的函数级属性现状:目前Clang没有和GCC上述属性直接对应的函数级循环展开控制选项。如果需要为某个函数内的所有循环启用展开,除了给每个循环单独添加语句级pragma外,也可以使用编译选项
-funroll-loops全局开启,但该选项会作用于整个编译单元,而非单个函数。
内容的提问来源于stack exchange,提问作者hstk
相关产品推荐
相关产品推荐

