[PATCH] D21112: [LoopSimplify] Preserve LCSSA when merging exit blocks.

Sanjoy Das via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 7 19:11:33 PDT 2016


sanjoy added inline comments.

================
Comment at: lib/Transforms/Utils/LoopSimplify.cpp:786
@@ -785,3 +788,3 @@
   AC = &getAnalysis<AssumptionCacheTracker>().getAssumptionCache(F);
   bool PreserveLCSSA = mustPreserveAnalysisID(LCSSAID);
 
----------------
mzolotukhin wrote:
> sanjoy wrote:
> > Can this be folded to `true`?  (I'm not asking you to do that in this change itself.)
> Theoretically, there might be users that don't want LCSSA to be preserved. They don't have LCSSA prior loop-simplify, so PreserveLCSSA is `false` for them. But I'm not sure if such users exist in real world, and I'd be glad to replace it with plain `true` and always preserve LCSSA here (and eventually in all loop passes).
Yes, I'm more coming to the conclusion that this form of complexity
(having a prior pass affect behavior in a way that isn't obvious in
the IR itself) is probably not worth it unless it is actually paying off in
compile time / code quality.


http://reviews.llvm.org/D21112





More information about the llvm-commits mailing list