[PATCH] D67572: [VectorUtils] Introduce the Vector Function Database (VFDatabase).
Francesco Petrogalli via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 12 08:04:55 PST 2019
fpetrogalli added a comment.
In D67572#1781286 <https://reviews.llvm.org/D67572#1781286>, @uabelho wrote:
>
> We have a bunch of target intrinsics that we say are vectorizable, but we don't provide a name of the vector version of the intrinsic.
You can still use the name mangling of the VFABI attribute (for internal LLVM mangling) to map a scalar attribute to its vector version:
_ZGV_LLVM_N2v_llvm.custom.attribute(llvm.custom.attribute)
With this, the `VFDatabase::getMappings(*CI).empty()` woudl return false, so that the intrinsic would be vectorized as a regular function. Then, you could use the post-vectorization pass I mentioned in the previous message to scalarize it.
The mappings in the IR could be added by the frontend, or in a pre-vectorization pass if you don't want to touch the frontend.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D67572/new/
https://reviews.llvm.org/D67572
More information about the llvm-commits
mailing list