来自https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
它说:"-ftree-slp-vectorize:在树上执行基本块矢量化。默认情况下,在-O2和-ftree-vectorize、-fprofile-use和-fprofile上启用此标志。“
然而,似乎我必须显式地传递一个标志才能打开SIMD。我是不是在这里搞错什么了?不过,它是在-O3上启用的。
发布于 2022-02-08 23:25:06
GCC的
不是由
-O2启用的-ftree-slp-vectorize吗?
是也不是。这取决于编译器的版本。
您已经链接到最新版本的文档。它适用于目前正在开发的版本,即目前的版本12。
然而,
似乎必须显式地传递一个标志才能打开SIMD。
https://www.godbolt.org/z/1ffzdqMoT
您的例子使用GCC版本11。
,我是不是在这里搞错什么了?
您阅读了错误的文档版本,或者使用了错误的编译器版本,因此您的假设不成立。
https://stackoverflow.com/questions/71042135
复制相似问题