[llvm] [InjectTLIMappings] Remove signext/zeroext attributes from vector functions. (PR #80546)

Yeting Kuo via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 22 06:37:43 PST 2024


================
@@ -56,6 +69,8 @@ static void addVariantDeclaration(CallInst &CI, const ElementCount &VF,
   Function *VecFunc =
       Function::Create(VectorFTy, Function::ExternalLinkage, VFName, M);
   VecFunc->copyAttributesFrom(CI.getCalledFunction());
+  removeIllegalAttributes(VecFunc, VectorFTy);
----------------
yetingk wrote:

I think signext/zeroext is to specify the behavior of a data is narrower than its storage. For most vector/simd implement, their scalar datas are packed into its vector register, so we don't need signext/zeroext for them. And I think it's the reason that I don't see an issue to adding signext/zeroext attributes for vector types.


https://github.com/llvm/llvm-project/pull/80546


More information about the llvm-commits mailing list