[Unroll] Handle SwitchInst properly.

Previously successor selection was simply wrong.

llvm-svn: 243545
diff --git a/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp b/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
index 25b0877..6b64d4e 100644
--- a/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
@@ -619,8 +619,8 @@
           if (isa<UndefValue>(SimpleCond))
             Succ = SI->getSuccessor(0);
           else
-            Succ =
-                SI->getSuccessor(cast<ConstantInt>(SimpleCond)->getSExtValue());
+            Succ = SI->findCaseValue(cast<ConstantInt>(SimpleCond))
+                       .getCaseSuccessor();
           if (L->contains(Succ))
             BBWorklist.insert(Succ);
           continue;