我阅读了有关循环展开的文档。
它解释说,如果将展开因子设置为1,则该程序将与#pragma nounrolling一样工作。

但是,该文档不包含#pragma unroll(0)大小写。
由于n的范围是0到255,我只是出于好奇而想知道#pragma unroll(0)和#pragma unroll(1)情况之间有什么区别。

我将C与icc编译器一起使用。

最佳答案

从英特尔文档中:

编译器通过比较n和循环计数来生成正确的代码。

基于此,我将假设#pragma unroll(0) and #pragma unroll(1)之间没有区别,因为生成的代码是等效的。

关于c - #pragma unroll(0)和#pragma unroll(1)之间有什么区别吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50403321/

10-11 21:55