[PATCH] D137707: Move "auto-init" instructions to the dominator of their users
serge via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 2 16:28:51 PST 2023
serge-sans-paille marked an inline comment as done.
serge-sans-paille added inline comments.
================
Comment at: llvm/lib/Transforms/Utils/MoveAutoInit.cpp:72-73
+ } else if (auto *M = dyn_cast<MemoryPhi>(MA)) {
+ for (unsigned i = 0, n = M->getNumIncomingValues(); i != n; ++i)
+ WorkList.push_back(M->getIncomingValue(i));
+ }
----------------
nickdesaulniers wrote:
> serge-sans-paille wrote:
> > nickdesaulniers wrote:
> > > Are you able to use a range-for here with `MemoryPhi::incoming_values()`?
> > Unfortunately not, `SmallVector::append` doesn't accept `iterator_range`. I'll implement that.
> I was just thinking
>
> ```
> for (MemoryAccess *MA : M->incoming_values())
> Worklist.push_back(MA);
> ```
Yeah, but incoming_values iterates over `Use*` so I'd need a cast, so I'd rather keep current implementation.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D137707/new/
https://reviews.llvm.org/D137707
More information about the llvm-commits
mailing list