Gcc 什么是太多BB';在循环中,can';t矢量化?
简而言之,情况是:我一直在尝试编译一个C代码,选项Gcc 什么是太多BB';在循环中,can';t矢量化?,gcc,loops,vectorization,Gcc,Loops,Vectorization,简而言之,情况是:我一直在尝试编译一个C代码,选项gcc-O2-ftree vectorie-msse4-ftree矢量器verbose=10-march=core2-g-C。对于代码中的某些嵌套For循环构造,gcc会抱怨 未矢量化:循环中的BBs太多 很抱歉,我对编译器和矢量化的理解非常有限 最初的一些搜索在gcc的邮件列表中找到了这个结果,上面说BB是构建块的首字母缩写。通过查看GCC内部文档,我发现GCC使用BB来构造控制流图(CFG) 有人能解释一下循环中的BB是什么意思吗 此外,我无
gcc-O2-ftree vectorie-msse4-ftree矢量器verbose=10-march=core2-g-C
。对于代码中的某些嵌套For循环构造,gcc会抱怨
未矢量化:循环中的BBs太多
很抱歉,我对编译器和矢量化的理解非常有限
最初的一些搜索在gcc的邮件列表中找到了这个结果,上面说BB是构建块的首字母缩写。通过查看GCC内部文档,我发现GCC使用BB来构造控制流图(CFG)
有人能解释一下循环中的BB是什么意思吗
此外,我无法说明有多少BB实际导致gcc矢量化失败?BB表示“基本块”。有关它们是什么的更多解释,请参阅
我想,如果有太多的基本块,那么控制流就不可能对操作进行矢量化。请参阅),特别是“存在控制流时”部分,以了解矢量化受到影响的原因