[APInt] Modify tcMultiplyPart's overflow detection to not depend on 'i' from the earlier loop. NFC

The value of 'i' is always the smaller of DstParts and SrcParts so we can just use that fact to write all the code in terms of SrcParts and DstParts.

llvm-svn: 302408
diff --git a/llvm/lib/Support/APInt.cpp b/llvm/lib/Support/APInt.cpp
index 4a136f7..caa0691 100644
--- a/llvm/lib/Support/APInt.cpp
+++ b/llvm/lib/Support/APInt.cpp
@@ -2254,8 +2254,7 @@
   /* N loops; minimum of dstParts and srcParts.  */
   unsigned n = std::min(dstParts, srcParts);
 
-  unsigned i;
-  for (i = 0; i < n; i++) {
+  for (unsigned i = 0; i < n; i++) {
     WordType low, mid, high, srcPart;
 
       /* [ LOW, HIGH ] = MULTIPLIER * SRC[i] + DST[i] + CARRY.
@@ -2306,10 +2305,10 @@
     carry = high;
   }
 
-  if (i < dstParts) {
+  if (srcParts < dstParts) {
     /* Full multiplication, there is no overflow.  */
-    assert(i + 1 == dstParts);
-    dst[i] = carry;
+    assert(srcParts + 1 == dstParts);
+    dst[srcParts] = carry;
     return 0;
   }
 
@@ -2321,7 +2320,7 @@
      non-zero.  This is true if any remaining src parts are non-zero
      and the multiplier is non-zero.  */
   if (multiplier)
-    for (; i < srcParts; i++)
+    for (unsigned i = dstParts; i < srcParts; i++)
       if (src[i])
         return 1;