LLVM 选择工具不会矢量化由 clang -O0 生成的 IR



我正在尝试基于从opt工具借来的优化管道构建JIT编译器。 但是,我遇到了一个问题,即我的 JIT 不会对代码进行矢量化。 我试图在这里选择简单的示例来重现它。https://godbolt.org/z/eRKrLa

在该示例中,clang -O3 发出矢量化 IR,但是如果我尝试优化 clang -O0 生成的 IR,它不会进行任何更改。

我做错了什么?

这是意料之中的。clang -O0的输出不打算重新优化。你需要做一些类似clang -O3 -mllvm -disable-llvm-optzns

最新更新