]> granicus.if.org Git - llvm/commit
[MemorySSA] Extend allowed behavior for simplified instructions.
authorAlina Sbirlea <asbirlea@google.com>
Tue, 30 Jul 2019 20:10:33 +0000 (20:10 +0000)
committerAlina Sbirlea <asbirlea@google.com>
Tue, 30 Jul 2019 20:10:33 +0000 (20:10 +0000)
commit803bdc70514b71606594214e4ec8bfb77368281f
tree1a6da770f5f270d7a53fe1d62a12bfe2386c8185
parent4034ad44e4ac5d9ef10d5eede4d8c9f773a7f609
[MemorySSA] Extend allowed behavior for simplified instructions.

Summary:
LoopRotate may simplify instructions, leading to the new instructions not having memory accesses created for them.
Allow this behavior, by allowing the new access to be null when the template is null, and looking upwards for the proper defined access when dealing with simplified instructions.

Reviewers: george.burgess.iv

Subscribers: jlebar, Prazek, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D65338

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@367352 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/MemorySSA.h
lib/Analysis/MemorySSA.cpp
lib/Analysis/MemorySSAUpdater.cpp
test/Analysis/MemorySSA/loop-rotate-simplified-clone.ll [new file with mode: 0644]