1

如果我希望 GCC 使用某些参数(如 GCC 中的 max-unroll-times)展开代码中的循环之一,我应该如何编写代码?

4

1 回答 1

0

尝试这个:

#pragma GCC push_options
#pragma GCC optimize ("O3", "unroll-loops")
void func()
{
    #pragma GCC unroll 4
    for (...)
    {
    }
}
#pragma GCC pop_options

像这样的参数max-unroll-times似乎无法通过#pragma; 如果您确实需要为不同的循环使用不同的值,请将每个循环移动到单独文件中的一个函数,并使用您需要的选项进行编译。

于 2018-11-11T03:31:22.540 回答