[SCEVExpander] Don't break SSA in replaceCongruentIVs

`SCEVExpander::replaceCongruentIVs` bypasses `hoistIVInc` if both the
original and the isomorphic increments are PHI nodes.  Doing this can
break SSA if the isomorphic increment is not dominated by the original
increment.  Get rid of the bypass, and let `hoistIVInc` do the right
thing.

Fixes PR27232 (compile time crash/hang).

llvm-svn: 269212
diff --git a/llvm/lib/Analysis/ScalarEvolutionExpander.cpp b/llvm/lib/Analysis/ScalarEvolutionExpander.cpp
index 86c7bb9..c71f1a5 100644
--- a/llvm/lib/Analysis/ScalarEvolutionExpander.cpp
+++ b/llvm/lib/Analysis/ScalarEvolutionExpander.cpp
@@ -1820,8 +1820,7 @@
                                                    IsomorphicInc->getType());
       if (OrigInc != IsomorphicInc && TruncExpr == SE.getSCEV(IsomorphicInc) &&
           SE.LI.replacementPreservesLCSSAForm(IsomorphicInc, OrigInc) &&
-          ((isa<PHINode>(OrigInc) && isa<PHINode>(IsomorphicInc)) ||
-           hoistIVInc(OrigInc, IsomorphicInc))) {
+          hoistIVInc(OrigInc, IsomorphicInc)) {
         DEBUG_WITH_TYPE(DebugType,
                         dbgs() << "INDVARS: Eliminated congruent iv.inc: "
                                << *IsomorphicInc << '\n');