<p dir="ltr"><br>
</p>
<p dir="ltr"></p>
<p dir="ltr">On Mon, Nov 16, 2015, 12:46 Michael Kruse <<a href="mailto:llvm@meinersbur.de">llvm@meinersbur.de</a>> wrote:</p>
<blockquote><p dir="ltr">Meinersbur created this revision.<br>
Meinersbur added subscribers: pollydev, llvm-commits.<br>
Meinersbur added a project: Polly.</p>
<p dir="ltr">Loop versioning modifies the scop, especially the PHI nodes in the entry and exit block. Code generation must take this into account and test for multiple cases where the PHIs could have landed which can also depend on the code surrounding the scop. Not considering all cases has been a source of many bugs.</p>
<p dir="ltr">With this patch we generate code before modifying the scop region into a region disconnected from the original code. Only after the code has been created, it is connected as an alternative of the original scop region.</p>
<p dir="ltr">Going further with this idea, we could generate all SCoPs in a function before connecting them in order to not require to verify whether other detected SCoPs are still valid.</p>
</blockquote>
<p dir="ltr"></p>
<p dir="ltr">==> i don't think we want to involve another function here. Not verifying other scops is a different matter. With/after the function pass patch we have to figure that out<br></p>
<blockquote><p dir="ltr"><br>
<a href="http://reviews.llvm.org/D14715">http://reviews.llvm.org/D14715</a></p>
<p dir="ltr">Files:<br>
include/polly/CodeGen/BlockGenerators.h<br>
include/polly/CodeGen/IRBuilder.h<br>
include/polly/CodeGen/IslNodeBuilder.h<br>
include/polly/ScopInfo.h<br>
include/polly/Support/ScopHelper.h<br>
lib/Analysis/ScopInfo.cpp<br>
lib/CodeGen/BlockGenerators.cpp<br>
lib/CodeGen/CodeGeneration.cpp<br>
lib/Support/ScopHelper.cpp</p>
<p dir="ltr">--<br>
You received this message because you are subscribed to the Google Groups "Polly Development" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an email to <a href="mailto:polly-dev%2Bunsubscribe@googlegroups.com">polly-dev</a><a href="mailto:polly-dev%2Bunsubscribe@googlegroups.com">+unsubscribe@googlegroups.com</a>.<br>
For more options, visit <a href="https://groups.google.com/d/optout">https</a><a href="https://groups.google.com/d/optout">://</a><a href="https://groups.google.com/d/optout">groups.google.com</a><a href="https://groups.google.com/d/optout">/d/</a><a href="https://groups.google.com/d/optout">optout</a>.<br>
</p>
</blockquote>
<p dir="ltr"><br>
</p>
<div dir="ltr">-- <br></div><p dir="ltr">/* ------------------------------------------------ */<br>
/* [ sent from my phone ] */<br>
/* ------------------------------------------------ */</p>