是否存在或将存在target_clones属性的“全局”版本?

时间:2016-10-11 14:42:00

标签: gcc avx avx2 gcc6

我最近使用了gcc 6.1及更高版本提供的target_clones属性。它非常漂亮,但是,现在,它需要一种有点笨拙的方法;想要多版本化的每个函数都必须手动声明属性。这不是最佳的,因为:

  • 它将编译器特定的东西放在代码中。
  • 它要求开发人员确定哪些功能应该接受此处理。

让我们举一个例子,我想编译一些可以利用AVX2指令的代码。如果我使用-fopt-info-vect构建,-mavx2将告诉我哪些函数是矢量化的,因此编译器已经知道这一点。有没有办法在全局范围内告诉编译器:“如果你找到一个你认为可以用AVX2优化的功能,那么就可以创建具有和不带AVX2的多个版本的功能。”?如果没有,请问我们可以吗?

0 个答案:

没有答案