<div dir="ltr">FWIW: This same problem applies to memcpyopt as well, depending on placement of the new instructions.<div><br><div><div><br></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 12, 2018 at 3:04 AM, Björn Steinbrink via Phabricator via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">dotdash created this revision.<br>
dotdash added reviewers: davide, Gerolf.<br>
<br>
MemDep caches results that signify that a dependence is non-local, and<br>
there is currently no way to invalidate such cache entries.<br>
Unfortunately, when MLSM sinks a store that can result in a non-local<br>
dependence becoming a local one, and then MemDep gives wrong answers.<br>
The easiest way out here is to just say that MLSM does indeed not<br>
preserve MemDep results.<br>
<br>
<br>
Repository:<br>
rL LLVM<br>
<br>
<a href="https://reviews.llvm.org/D43177" rel="noreferrer" target="_blank">https://reviews.llvm.org/<wbr>D43177</a><br>
<br>
Files:<br>
lib/Transforms/Scalar/<wbr>MergedLoadStoreMotion.cpp<br>
test/Transforms/GVN/pr36063.ll<br>
<br>
<br>______________________________<wbr>_________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>