[llvm] [IR] Initial introduction of memset_pattern (PR #97583)

Philip Reames via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 13 09:32:54 PDT 2024


================
@@ -1219,14 +1220,16 @@ class MemIntrinsic : public MemIntrinsicBase<MemIntrinsic> {
   }
 };
 
-/// This class wraps the llvm.memset and llvm.memset.inline intrinsics.
+/// This class wraps the llvm.memset, llvm.memset.inline, and
+/// llvm.memset.pattern intrinsics.
 class MemSetInst : public MemSetBase<MemIntrinsic> {
 public:
   // Methods for support type inquiry through isa, cast, and dyn_cast:
   static bool classof(const IntrinsicInst *I) {
     switch (I->getIntrinsicID()) {
     case Intrinsic::memset:
     case Intrinsic::memset_inline:
+    case Intrinsic::memset_pattern:
----------------
preames wrote:

I'm very uncomfortable with adding memset_pattern in the current form to MemSetInst.  There's a bunch of code which visits MemSetInst, and without auditting all of them it's really hard to know if this is correct.  Do you *need* this for an initial patch?  Or can you reasonable separate an initial implementation without it, and then return to this merging in a second commit?

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


More information about the llvm-commits mailing list