[llvm] [memcpyopt] handle memcpy from memset in more cases (PR #140954)

via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 9 08:01:30 PDT 2025


================
@@ -1418,51 +1437,52 @@ static bool hasUndefContents(MemorySSA *MSSA, BatchAAResults &AA, Value *V,
 bool MemCpyOptPass::performMemCpyToMemSetOptzn(MemCpyInst *MemCpy,
                                                MemSetInst *MemSet,
                                                BatchAAResults &BAA) {
-  // Make sure that memcpy(..., memset(...), ...), that is we are memsetting and
-  // memcpying from the same address. Otherwise it is hard to reason about.
-  if (!BAA.isMustAlias(MemSet->getRawDest(), MemCpy->getRawSource()))
----------------
dianqk wrote:

Oops, I misread this code.

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


More information about the llvm-commits mailing list