什么SELECT指令降低到ISA?

问题描述 投票:1回答:1

在向量化时,如果循环包含'if constructs'llvm试图通过替换SELECT指令来使它们变平以使控制流直接,如果基本块不能转换为像SELECT这样的谓词指令,则llvm无法对其进行向量化。直到现在我假设应该有一些等效的SELECT指令,如IR指令。我搜索了英特尔架构中的预测指令我没有任何东西。有人可以告诉我当前的ISA架构是否支持预测指令?如果没有,SELECT指令将如何降低到机器指令中?如果我做了任何错误的假设,请纠正我。

提前致谢

llvm vectorization llvm-ir llvm-c++-api
1个回答
1
投票

是的几个架构支持条件/谓词执行。例如,ARM有csel AArch64 ISA

在VLIW架构中很常见,因为它们需要填充数据包。 Predicated execution