[llvm] [LoopIdiom] Select llvm.experimental.memset.pattern intrinsic rather than memset_pattern16 libcall (PR #126736)
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 26 00:37:04 PDT 2025
================
@@ -411,14 +421,12 @@ static Constant *getMemSetPatternValue(Value *V, const DataLayout *DL) {
if (Size > 16)
return nullptr;
- // If the constant is exactly 16 bytes, just use it.
- if (Size == 16)
- return C;
+ // For now, don't handle types that aren't int, floats, or pointers.
+ if (!isa<ConstantInt>(C) && !isa<ConstantFP>(C) &&
----------------
nikic wrote:
Better check the type for these, otherwise it's going to implicitly allow vector splats in the future...
https://github.com/llvm/llvm-project/pull/126736
More information about the llvm-commits
mailing list