[PATCH] D26086: [MemorySSA] Const correctness. NFC.
Daniel Berlin via llvm-commits
llvm-commits at lists.llvm.org
Fri Oct 28 10:30:56 PDT 2016
This patch looks reversed
On Fri, Oct 28, 2016, 10:20 AM bryant <3.14472+reviews.llvm.org at gmail.com>
wrote:
> bryant created this revision.
> bryant added reviewers: george.burgess.iv, dberlin.
> bryant added a subscriber: llvm-commits.
> bryant set the repository for this revision to rL LLVM.
>
> From what I understand so far, `getClobberingMemoryAccess` isn't supposed
> to modify its `MemoryLocation` argument. Making this argument const permits
> callers to pass xvalues, such as:
>
> MemoryAccess *Start;
> MemCpyInst *M;
> ...
> MSSA->getWalker()->getClobberingMemoryAccess(Start,
> MemoryLocation::getForSource(M));
>
>
> Repository:
> rL LLVM
>
> https://reviews.llvm.org/D26086
>
> Files:
> include/llvm/Transforms/Utils/MemorySSA.h
> lib/Transforms/Utils/MemorySSA.cpp
>
>
> Index: lib/Transforms/Utils/MemorySSA.cpp
> ===================================================================
> --- lib/Transforms/Utils/MemorySSA.cpp
> +++ lib/Transforms/Utils/MemorySSA.cpp
> @@ -1097,7 +1097,7 @@
> using MemorySSAWalker::getClobberingMemoryAccess;
> MemoryAccess *getClobberingMemoryAccess(MemoryAccess *) override;
> MemoryAccess *getClobberingMemoryAccess(MemoryAccess *,
> - const MemoryLocation &)
> override;
> + MemoryLocation &) override;
> void invalidateInfo(MemoryAccess *) override;
>
> /// Whether we call resetClobberWalker() after each time we *actually*
> walk to
> @@ -2163,7 +2163,7 @@
> }
>
> MemoryAccess *MemorySSA::CachingWalker::getClobberingMemoryAccess(
> - MemoryAccess *StartingAccess, const MemoryLocation &Loc) {
> + MemoryAccess *StartingAccess, MemoryLocation &Loc) {
> if (isa<MemoryPhi>(StartingAccess))
> return StartingAccess;
>
> @@ -2266,7 +2266,7 @@
> }
>
> MemoryAccess *DoNothingMemorySSAWalker::getClobberingMemoryAccess(
> - MemoryAccess *StartingAccess, const MemoryLocation &) {
> + MemoryAccess *StartingAccess, MemoryLocation &) {
> if (auto *Use = dyn_cast<MemoryUseOrDef>(StartingAccess))
> return Use->getDefiningAccess();
> return StartingAccess;
> Index: include/llvm/Transforms/Utils/MemorySSA.h
> ===================================================================
> --- include/llvm/Transforms/Utils/MemorySSA.h
> +++ include/llvm/Transforms/Utils/MemorySSA.h
> @@ -783,7 +783,7 @@
> /// will return that MemoryDef, whereas the above would return the
> clobber
> /// starting from the use side of the memory def.
> virtual MemoryAccess *getClobberingMemoryAccess(MemoryAccess *,
> - const MemoryLocation &)
> = 0;
> + MemoryLocation &) = 0;
>
> /// \brief Given a memory access, invalidate anything this walker knows
> about
> /// that access.
> @@ -809,7 +809,7 @@
> using MemorySSAWalker::getClobberingMemoryAccess;
> MemoryAccess *getClobberingMemoryAccess(MemoryAccess *) override;
> MemoryAccess *getClobberingMemoryAccess(MemoryAccess *,
> - const MemoryLocation &)
> override;
> + MemoryLocation &) override;
> };
>
> using MemoryAccessPair = std::pair<MemoryAccess *, MemoryLocation>;
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161028/b6cd3bd6/attachment.html>
More information about the llvm-commits
mailing list