<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 30, 2017 at 7:48 AM, Craig Topper via cfe-commits <span dir="ltr"><<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Author: ctopper<br>
Date: Thu Mar 30 00:48:58 2017<br>
New Revision: 299058<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=299058&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project?rev=299058&view=rev</a><br>
Log:<br>
[APInt] Remove references to integerPartWidth and integerPart outside of APFloat implentation.<br>
<br>
Turns out integerPartWidth only explicitly defines the width of the tc functions in the APInt class. Functions that aren't used by APInt implementation itself. Many places in the code base already assume APInt is made up of 64-bit pieces. Explicitly assuming 64-bit here doesn't make that situation much worse. A full audit would need to be done if it ever changes.<br>
<br>
Modified:<br>
    cfe/trunk/lib/AST/<wbr>ItaniumMangle.cpp<br>
<br>
Modified: cfe/trunk/lib/AST/<wbr>ItaniumMangle.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ItaniumMangle.cpp?rev=299058&r1=299057&r2=299058&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project/cfe/trunk/lib/AST/<wbr>ItaniumMangle.cpp?rev=299058&<wbr>r1=299057&r2=299058&view=diff</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- cfe/trunk/lib/AST/<wbr>ItaniumMangle.cpp (original)<br>
+++ cfe/trunk/lib/AST/<wbr>ItaniumMangle.cpp Thu Mar 30 00:48:58 2017<br>
@@ -982,9 +982,8 @@ void CXXNameMangler::mangleFloat(<wbr>const l<br>
     unsigned digitBitIndex = 4 * (numCharacters - stringIndex - 1);<br>
<br>
     // Project out 4 bits starting at 'digitIndex'.<br>
-    llvm::integerPart hexDigit<br>
-      = valueBits.getRawData()[<wbr>digitBitIndex / llvm::integerPartWidth];<br>
-    hexDigit >>= (digitBitIndex % llvm::integerPartWidth);<br>
+    uint64_t hexDigit = valueBits.getRawData()[<wbr>digitBitIndex / 64];<br>
+    hexDigit >>= (digitBitIndex % 64);<br></blockquote><div><br></div><div>Would be nice to use APINT_BITS_PER_WORD to make this coupling more explicit.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
     hexDigit &= 0xF;<br>
<br>
     // Map that over to a lowercase hex digit.<br>
<br>
<br>
______________________________<wbr>_________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@lists.llvm.org">cfe-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-commits</a><br>
</blockquote></div><br></div></div>