<div dir="ltr"><div></div>Hi Chandler, Yaron & Tom,<br><div><br><div class="gmail_quote">r233312:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: yrnkrn<br>
Date: Thu Mar 26 14:45:19 2015<br>
New Revision: 233312<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=233312&view=rev" target="_blank">http://llvm.org/viewvc/llvm-<u></u>project?rev=233312&view=rev</a><br>
Log:<br>
Fix rare case where APInt divide algorithm applied un-needed transformation.<br>
<br>
APInt uses Knuth's D algorithm for long division. In rare cases the<br>
implementation applied a transformation that was not needed.<br>
<br>
Added unit tests for long division. KnuthDiv() procedure is fully covered.<br>
There is a case in APInt::divide() that I believe is never used (marked with<br>
a comment) as all users of divide() handle trivial cases earlier.<br>
<br>
Patch by Pawel Bylica!<br>
<br>
<a href="http://reviews.llvm.org/D8448" target="_blank">http://reviews.llvm.org/D8448</a><br>
<br>
<br>
Modified:<br>
llvm/trunk/lib/Support/APInt.<u></u>cpp<br>
llvm/trunk/unittests/ADT/APIntTest.cpp<br>
</blockquote></div></div></div>