[llvm] [MemCpyOptimizer] Support scalable vectors in performStackMoveO… (PR #67632)
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 28 10:18:36 PDT 2023
================
@@ -1766,8 +1765,8 @@ bool MemCpyOptPass::processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI) {
ConstantInt *Len = dyn_cast<ConstantInt>(M->getLength());
if (Len == nullptr)
return false;
- if (performStackMoveOptzn(M, M, DestAlloca, SrcAlloca, Len->getZExtValue(),
- BAA)) {
+ if (performStackMoveOptzn(M, M, DestAlloca, SrcAlloca,
----------------
preames wrote:
As a possible follow up, extending the length matching from ConstantInt to also match a vscale expression here to form a scalable type size would seem relatively straight forward. I think that would allow this optimization to trigger for scalable allocas and scalable memcpys.
https://github.com/llvm/llvm-project/pull/67632
More information about the llvm-commits
mailing list