[llvm-commits] [llvm] r145627 - /llvm/trunk/lib/Support/APInt.cpp
David Blaikie
dblaikie at gmail.com
Thu Dec 1 12:58:31 PST 2011
Author: dblaikie
Date: Thu Dec 1 14:58:30 2011
New Revision: 145627
URL: http://llvm.org/viewvc/llvm-project?rev=145627&view=rev
Log:
Fix unreachable return & simplify some branches.
Modified:
llvm/trunk/lib/Support/APInt.cpp
Modified: llvm/trunk/lib/Support/APInt.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/APInt.cpp?rev=145627&r1=145626&r2=145627&view=diff
==============================================================================
--- llvm/trunk/lib/Support/APInt.cpp (original)
+++ llvm/trunk/lib/Support/APInt.cpp Thu Dec 1 14:58:30 2011
@@ -1440,15 +1440,11 @@
APInt nextSquare((x_old + 1) * (x_old +1));
if (this->ult(square))
return x_old;
- else if (this->ule(nextSquare)) {
- APInt midpoint((nextSquare - square).udiv(two));
- APInt offset(*this - square);
- if (offset.ult(midpoint))
- return x_old;
- else
- return x_old + 1;
- } else
- llvm_unreachable("Error in APInt::sqrt computation");
+ assert(this->ule(nextSquare) && "Error in APInt::sqrt computation");
+ APInt midpoint((nextSquare - square).udiv(two));
+ APInt offset(*this - square);
+ if (offset.ult(midpoint))
+ return x_old;
return x_old + 1;
}
More information about the llvm-commits
mailing list