a00b80b04c5edb08639c1c6b32e9231fd8b066f7 |
|
23-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Fix a bunch of -Wdocumentation warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
a77b95a316e0eb04929c5d7fe96935124c3ed478 |
|
29-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
APInt: Simplify code. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160929 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
aa7507d68dcc04f3118a05b5dff4123ded03253e |
|
19-Jul-2012 |
Bill Wendling <isanbard@gmail.com> |
Remove tabs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160471 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
5449a1db40b75586c1daf70a14396295e7b3fe24 |
|
15-Jul-2012 |
Eric Christopher <echristo@apple.com> |
Move IsSameValue from clang's ASTImporter to be methods on the APInt/APSInt classes. Part of rdar://11875995 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
0fa2b7b90df9a20baf2d14b7bc4fe7db5144efde |
|
02-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add move semantics to APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157883 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
a7a2a3635f2fbe46d7d9074798e79e853f69d40b |
|
22-May-2012 |
Nuno Lopes <nunoplopes@sapo.pt> |
fix the quotient returned by sdivrem() for the case when LHS is negative and RHS is positive based on a patch by Preston Briggs, with some modifications git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
69ccf9fc0b131f2c71c3d60791425cbf52392ee4 |
|
14-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move APInt::operator[] inline. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
a18988518869a84cb4d6510e265b1fb1a52268d1 |
|
14-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move APInt::operator! inline, it's small and fuses well with surrounding code when inlined. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152688 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
ed7692a136a9bcf513b91b7b5eb33a1e2d83e7ee |
|
04-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Replace the hashing functions on APInt and APFloat with overloads of the new hash_value infrastructure, and replace their implementations using hash_combine. This removes a complete copy of Jenkin's lookup3 hash function (which is both significantly slower and lower quality than the one implemented in hash_combine) along with a somewhat scary xor-only hash function. Now that APInt and APFloat can be passed directly to hash_combine, simplify the rest of the LLVMContextImpl hashing to use the new infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152004 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
04594aeffa3360882eb09a888a0970321b987b16 |
|
28-Jan-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add r149110 back with a fix for when the vector and the int have the same width. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149151 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
39a2eb7dea034820eb4b93b2361ae307b0cee5f2 |
|
28-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Handle more cases in APInt::getLowBitsSet's fast path. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145249 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
dcd999624159842886d4be21efcc3ba0e61bab99 |
|
14-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Add APInt support for converting to/from hexatridecimal strings git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
3ba292dbc2acee2d1052fb7ffe332e2164147b47 |
|
18-Jul-2011 |
Jeffrey Yasskin <jyasskin@google.com> |
Add APInt(numBits, ArrayRef<uint64_t> bigVal) constructor to prevent future ambiguity errors like the one corrected by r135261. Migrate all LLVM callers of the old constructor to the new one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135431 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
cf886188fb04d9521db39fe5213df1295673f51e |
|
15-Jun-2011 |
Ted Kremenek <kremenek@apple.com> |
add option for literal formatting to APInt::toString() toString() now takes an optional bool argument that, depending on the radix, adds the appropriate prefix to the integer's string representation that makes it into a meaningful C literal, e.g.: hexademical: '-f' becomes '-0xf' octal: '77' becomes '077' binary: '110' becomes '0b110' Patch by nobled@dreamwidth.org! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
6208610fd602ebdb18bb793152899573d0b2b7ab |
|
27-Mar-2011 |
Frits van Bommel <fvbommel@gmail.com> |
Constant folding support for calls to umul.with.overflow(), basically identical to the smul.with.overflow() code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
d9103df51b858cf051a1650ac7eb33d416e9ac41 |
|
17-Mar-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add an argument to APInt's magic udiv calculation to specify the number of bits that are known zero in the divided number. This will come in handy soon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127828 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
9b6af8de58140566a0e6567508bf906027422e7c |
|
24-Feb-2011 |
Cameron Zwarich <zwarich@apple.com> |
Add a getNumSignBits() method to APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
16e036fa8f1d1da02deeaf9a77951f4dc711faa1 |
|
13-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
add a helper method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125453 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
40f8f6264d5af2c38e797e0dc59827cd231e8ff7 |
|
07-Dec-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: Change APInt methods trunc(), sext(), zext(), sextOrTrunc() and zextOrTrunc(), and APSInt methods extend(), extOrTrunc() and new method trunc(), to be const and to return a new value instead of modifying the object in place. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
fd6d53fbad9d3f48da4910ebba12d9d2a3c24bd8 |
|
04-Dec-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
APInt: microoptimize a few methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120912 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
bd7d2622a2ee828a02017dca19170b6f79ff6684 |
|
04-Dec-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Simplify APInt::getAllOnesValue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120911 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
7a874ddda037349184fbeb22838cc11a1a9bb78f |
|
01-Dec-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: Rename overloaded APInt methods set(), clear(), flip() to setAllBits(), setBit(unsigned), etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120564 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
a99793c5ea24dd3839f4925b89b1f6acfcb24604 |
|
30-Nov-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: Make APInt::set(), APInt::clear() and APInt::flip() return void. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120413 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
695ab519e4129ba1053383364a9241ec4c68904b |
|
28-Nov-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: remove unused methods APInt::Emit() and APInt::Read(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120262 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
e4d19c9eb22899c9a555395d446a9ceef3bea7eb |
|
28-Nov-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: change APInt::doubleToBits() and APInt::floatToBits() to be static methods that return a new APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120261 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
5005e27f9714f0eaa5b8b7a5a1f6751afa163f07 |
|
03-Nov-2010 |
Dan Gohman <gohman@apple.com> |
Factor code out of APInt to form a isUIntN helper function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
eafc5cb80d58cb9447623a557be4d4f55f42fbc3 |
|
14-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
add uadd_ov/usub_ov to apint, consolidate constant folding logic to use the new APInt methods. Among other things this implements rdar://8501501 - llvm.smul.with.overflow.i32 should constant fold which comes from "clang -ftrapv", originally brought to my attention from PR8221. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
08e90f5646e61c3be0eebfa172ec73a8b56abee8 |
|
14-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
missed a line :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116456 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
0a0a585e6bfc112cb8346b17edecb76969fb5532 |
|
14-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
constify these methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116455 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
f2ddc64c8701e432cc220f26c48d596cc0f30a97 |
|
14-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
add a few operations for signed operations that also return an overflow flag. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
452b93e7dc2802dea3a31ea12c397d11c3c5e23b |
|
13-Aug-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use getAllOnesValue, saves a copy and looks better. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110991 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
38e59891ee4417a9be2f8146ce0ba3269e38ac21 |
|
15-Jul-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Don't pass StringRef by reference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
e05678132345eb8a632362dbd320ee7d36226e67 |
|
09-Apr-2010 |
Dan Gohman <gohman@apple.com> |
Add variants of ult, ule, etc. which take a uint64_t RHS, for convenience. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100824 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
1e7ad3993d8700488895fa372ecad55443f53485 |
|
28-Feb-2010 |
John McCall <rjmccall@apple.com> |
Add an override to StringRef::getAsInteger which parses into an APInt. It gets its own implementation totally divorced from the (presumably performance-sensitive) routines which parse into a uint64_t. Add APInt::operator|=(uint64_t), which is situationally much better than using a full APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97381 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
e12b73816b50bbe2cc54b8005d86c95413b4f465 |
|
28-Feb-2010 |
John McCall <rjmccall@apple.com> |
Teach APFloat how to create both QNaNs and SNaNs and with arbitrary-width payloads. APFloat's internal folding routines always make QNaNs now, instead of sometimes making QNaNs and sometimes SNaNs depending on the type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97364 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
cbc7cc63b6c7ee1008f92064388c37327c183328 |
|
13-Oct-2009 |
Dan Gohman <gohman@apple.com> |
Add a ceilLogBase2 function to APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83932 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
91021d339004ff5a64c3c9614cff8966899c0c99 |
|
24-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
remove the dead std::ostream APInt inserter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79875 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
689ad6ef3fd2e89394f1e8860dfebfe56b73c3da |
|
13-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Convert APint::{fromString,APInt,getBitsNeeded} to use StringRef. - Patch by Erick Tryzelaar, with some edits (and a bug fix) from me. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78885 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
38a253ddf786b83dba14d980d269f7bb5c2252ea |
|
30-Jun-2009 |
Dan Gohman <gohman@apple.com> |
Reapply 74494, this time removing the conflicting definition of operator<< in APIntTest.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74550 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
527b6e62926673eb66e03f1250904a74a77667ae |
|
30-Jun-2009 |
Bill Wendling <isanbard@gmail.com> |
Temporarily revert r74494. It was causing failures in the unit tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
670031666cf4dea0d122a0df2ec1d18822c225e4 |
|
30-Jun-2009 |
Dan Gohman <gohman@apple.com> |
Define an operator<< for APInt to be used with std::ostream. This will allow it to be used in unittests that use gtest's EXPECT_EQ. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
4e5ea553d055512b0b8aa098e363ae17bafda957 |
|
30-Apr-2009 |
Jay Foad <jay.foad@gmail.com> |
Move helper functions for optimizing division by constant into the APInt class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70488 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
17893a5fb6b3b4b9e84674dfb7692abb57410dd1 |
|
13-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Add a static APInt::getNumWords git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68977 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
de551f91d8816632a76a065084caab9fab6aacff |
|
01-Apr-2009 |
Dan Gohman <gohman@apple.com> |
Use CHAR_BIT instead of hard-coding 8 in several places where it is appropriate. This helps visually differentiate host-oriented calculations from target-oriented calculations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68227 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
a2769a33c94f021a609a462b28ebea069eba6f74 |
|
20-Feb-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
Fixed lint errors: * Alphabetized #includes * Removed trailing whitespace * Wrapped or shortened lines over 80 chars git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65181 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
af9b6b264f2bf4315c25b286a1c24331038545e0 |
|
09-Feb-2009 |
Bill Wendling <isanbard@gmail.com> |
These function return 'void'. Don't have 'return' return anything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64136 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
9981b1f15681a2a09c9953cf6773a3b839ead4e7 |
|
20-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
eliminate use of uint32_t to improve compatibility with cygwin git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62591 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
3a54b3dc87a581c203b18050b4f787b4ca28a12c |
|
09-Jan-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
Removed trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62000 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
1d93b2e1b638cee7f012e8f636eb2cc137d855ff |
|
03-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
Fix isIntN to work with APInts > 64 bits. This method is only used by clang apparently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
3864cd4cab956526b99b634e15e7fd5d5441e3a7 |
|
01-Dec-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Fix bogus assertion using getSExtValue for legitimate values, like -1 in an 128-bit-wide integer. No testcase; the issue I ran into depends on local changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60311 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
71f95b8531183d4a2f7c84d66d5aec17bc41b316 |
|
12-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
random cleanup git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57383 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
944fac71e082cc2664cc71b4d3f6c72bab7143fb |
|
24-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Switch the asmprinter (.ll) and all the stuff it requires over to use raw_ostream instead of std::ostream. Among other goodness, this speeds up llvm-dis of kc++ with a release build from 0.85s to 0.49s (88% faster). Other interesting changes: 1) This makes Value::print be non-virtual. 2) AP[S]Int and ConstantRange can no longer print to ostream directly, use raw_ostream instead. 3) This fixes a bug in raw_os_ostream where it didn't flush itself when destroyed. 4) This adds a new SDNode::print method, instead of only allowing "dump". A lot of APIs have both std::ostream and raw_ostream versions, it would be useful to go through and systematically anihilate the std::ostream versions. This passes dejagnu, but there may be minor fallout, plz let me know if so and I'll fix it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55263 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
55767f69c5f925373b7901b180202a3d816a0eef |
|
21-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
remove redundant include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55116 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
aac0513ed08f7fd5279912b76d5a1e7cd3e96119 |
|
21-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Fix the build with gcc 4.3 as the host, patch by Zhongxing Xu! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
cbd56db62b7fa5a685bdca2eddefe9d04a1295f8 |
|
21-Aug-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Fix build on GCC 4.3. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55110 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
98f8ccfad06c8928d899f506731987f951b2ebe4 |
|
20-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Move the fast-path (<=i64) cases of various APInt methods inline and the slow-path cases out of line. This speeds up instcombine a bit in real world cases. Patch contributed by m-s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
fad86b003a839cef40ec8ce8408322f4913368ca |
|
17-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Rework the routines that convert AP[S]Int into a string. Now, instead of returning an std::string by value, it fills in a SmallString/SmallVector passed in. This significantly reduces string thrashing in some cases. More specifically, this: - Adds an operator<< and a print method for APInt that allows you to directly send them to an ostream. - Reimplements APInt::toString to be much simpler and more efficient algorithmically in addition to not thrashing strings quite as much. This speeds up llvm-dis on kc++ by 7%, and may also slightly speed up the asmprinter. This also fixes a bug I introduced into the asmwriter in a previous patch w.r.t. alias printing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54873 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
9f17eb0b79717d479e462f0284442adbeae903ef |
|
17-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
remove a dead APInt ctor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54869 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
df99c29e7b25771d202b969ca5dec359a62897b1 |
|
10-Jul-2008 |
Duncan Sands <baldrick@free.fr> |
Correct a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53401 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
300c6c5167d2869d1568d783d0e3e48bf4b03a6c |
|
23-Jun-2008 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
First step to fix PR2088. Implement routine to compute the multiplicative inverse of a given number. Modify udivrem to allow input and output pairs of arguments to overlap. Patch is based on the work by Chandler Carruth. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
8eab8a2798fe74c98703bdeac64661beea0b4dbc |
|
09-Jun-2008 |
Duncan Sands <baldrick@free.fr> |
Remove some DAG combiner assumptions about sizes of integer types. Fix the isMask APInt method to actually work (hopefully) rather than crashing because it adds apints of different bitwidths. It looks like isShiftedMask is also broken, but I'm leaving that one to the APInt people (it is not used anywhere). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52142 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
cdff51cabcebcd0eeb227ecf92eabbf8b1aeb77c |
|
30-May-2008 |
Dan Gohman <gohman@apple.com> |
Fix an error in the comment for APInt::getMinSignedBits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51720 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
48e8c80e1791adb7a07b8fd6e27edcdfbb756950 |
|
02-May-2008 |
Evan Cheng <evan.cheng@apple.com> |
Suppress -Wshorten-64-to-32 warnings for 64-bit hosts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50590 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
cf609575ef6e47cd5ce775af175c67a3b621120e |
|
29-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add support to APInt for shift and rotate operations with APInt instead of uint32_t for the shift/rotate count operand type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47741 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
e85fe660e4e99d30ca9292b706b8ffe6d0367dca |
|
26-Feb-2008 |
Bill Wendling <isanbard@gmail.com> |
Detabify git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
c9525263f6c519d987209eb39e33a73165c526d6 |
|
20-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Remove inline keywords from in-class function definitions, for consistency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47393 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
bd999178929c10bdeb0a2577fa02981778edaee7 |
|
20-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add an intersects method to APInt, to capture a common idiom. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
cd2ad1df5d2e0600200c81bc214e0b65ff699c5f |
|
13-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Fix a typo in a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47097 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
7649127ec152e226d761845983ba91e69712d7da |
|
13-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Rename APInt's isPositive to isNonNegative, to reflect what it actually does. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47090 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
42dd77f20702d5ca1e0f3882ad74e7a02fc9589c |
|
13-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add countTrailingOnes member functions to APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47086 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
b5cfaaedbea10d8fcf5ca23be7955ca0f4fd5c9c |
|
13-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Fix a typo in a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47085 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
ffe3e2514a2550152267072ed7afeebb3dd3016c |
|
12-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Change APInt::getBitsSet to accept a "half-open" range, where the hiBit parameter marks the index one past the last desired set bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
d3993d13be7b34fe8753eab9eb3d6499b7c4cd9f |
|
12-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Correct the order of the arguments in the examples in the comments for APInt::getBitsSet. And fix an off-by-one bug in "wrapping" mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
ec646cfd07f1354364e0899561aabffef5b702fd |
|
08-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add an isSignedIntN, like isIntN but for signed integer values instead of unsigned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46894 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
187784996c1bdf8aafb5f8719bcbde9260465865 |
|
19-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Changed argument name for 'Profile' method to potentially fix a name conflict reported in pr1929 (http://llvm.org/PR1929). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
e420debd26300cbeb6af2722e3342132b2be1b3c |
|
19-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added FoldingSet style 'profiling' support for APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46188 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
7ed47a13356daed2a34cd2209a31f92552e3bdd8 |
|
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Don't attribute in file headers anymore. See llvmdev for the discussion of this change. Boy are my fingers tired. ;-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
73481e04da1573d10c72982cfba0716c39902502 |
|
08-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
eliminate dependency on Bitcode headers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
9e513acd3145036bd06b5e0f5bcc83a3e5c08854 |
|
23-Nov-2007 |
Chris Lattner <sabre@nondot.org> |
Fix PR1816, by correcting the broken definition of APInt::countTrailingZeros. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44296 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
586504d5ed35d5765652370c4b4e68eb21b2b34a |
|
07-Nov-2007 |
Ted Kremenek <kremenek@apple.com> |
Fixed default ctor for APInt to properly initialize BitWidth to a non-random value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
1a43e5ffe1ba9bfcb531f7c6a68ac8c49bd28dc1 |
|
26-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added serialization support for APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43405 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
02760ed19ae02feca0cc536c035cdf08d222a8f3 |
|
26-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Fixed incorrect "path name" in preamble (comment) of header file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43401 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
68e53ad6cb0a9d64d256f9dcef70331cd72d795e |
|
08-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Add a new function tcExtract for extracting a bignum from an arbitrary range of bits embedded in the middle of another bignum. This kind of operation is desirable in many cases of software floating point, e.g. converting bignum integers to floating point numbers of fixed precision (you want to extract the precision most significant bits). Elsewhere, add an assertion, and exit the shift functions early if the shift count is zero. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42745 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
978661d05301a9bcd1222c048affef679da5ac43 |
|
06-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Generalize tcFullMultiply so that the operands can be of differing part widths. Also, return the number of parts actually required to hold the result's value. Remove an over-cautious condition from rounding of float->hex conversion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
910993e8dc49a25d9da3b53de4a82568c14e91cc |
|
22-Sep-2007 |
Dale Johannesen <dalej@apple.com> |
Change APFloat::convertFromInteger to take the incoming bit width instead of number of words allocated, which makes it actually work for int->APF conversions. Adjust callers. Add const to one of the APInt constructors to prevent surprising match when called with const argument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
8feb1f4467425d23ed74cce61e49f18a51a63421 |
|
18-Sep-2007 |
Devang Patel <dpatel@apple.com> |
Do not hide APInt::dump() inside #ifndef NDEBUG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42068 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
9e3d3abd937c9bb79d56d25ec0e0724c7cbba67c |
|
15-Sep-2007 |
Dale Johannesen <dalej@apple.com> |
Remove the assumption that FP's are either float or double from some of the many places in the optimizers it appears, and do something reasonable with x86 long double. Make APInt::dump() public, remove newline, use it to dump ConstantSDNode's. Allow APFloats in FoldingSet. Expand X86 backend handling of long doubles (conversions to/from int, mostly). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41967 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
cd3c4cac6ea3ce3bff0ce763d45c3f7a2d673178 |
|
29-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
getMinSignedBits needs to take into consider the sign bit when the value is positive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41566 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
9132a2b81842b0e2b77703fab3e6fe7467f859bb |
|
23-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
rename APInt::toString -> toStringUnsigned for symmetry with toStringSigned() Add an APSInt::toString() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41309 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
b39cdde41d3c91d1fd48a038e63b78122607bb10 |
|
21-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
initial checkin of Neil's APFloat work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41203 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
fe8e14a6c99261cfe9238c35761083cb4c99cc6a |
|
16-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
This adds a bunch of static functions that implement unsigned two's complement bignum arithmetic. They could be used to implement much of APInt, but the idea is they are enough to implement APFloat as well, which the current APInt interface is not suited for. Patch by Neil Booth! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
f094f81d36f0941f0e8ed9e4086b21db93186ff4 |
|
05-Aug-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Document a missing parameter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
19dc32a2d422ac0aafd047514e3e5e727796696e |
|
14-May-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add some things needed by the llvm-gcc version supporting bit accurate integer types: 1. Functions to compute div/rem at the same time. 2. Further assurance that an APInt with 0 bitwidth cannot be constructed. 3. Left and right rotate operations. 4. An exactLogBase2 function which requires an exact power of two or it returns -1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
49e1580214cd0b9e8d00b29f11f62fe9070a2a9c |
|
03-May-2007 |
Chris Lattner <sabre@nondot.org> |
remove useless type qualifiers git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36676 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
57ae4f5f01b6f8edf678d77ab935f3662993065d |
|
13-Apr-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement a getBitsNeeded method to determine how many bits are needed to represent a string in binary form by an APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35968 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
2b4c23438838034ee2a812f3cb094a9742b272f6 |
|
10-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
fix a comment bug Reid noticed git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
4bda52d6b5ffa13314fe32baa1784566f70483f9 |
|
10-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add a method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
6401260af24812454817891ca60b2126a14d5b6f |
|
04-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
trivial optimization git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35648 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
ef65293dc27c2d7b1ba1fc7c7ffd802e86b780ec |
|
03-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add missing operator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35613 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
febabcc02a1303a8e4d9bed76718a32f0273607a |
|
02-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add a helper function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35585 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
770e1798e110732e09540d53ffd2be261790f2c1 |
|
01-Apr-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Remove unused methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35553 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
48a3e98c272d673f075c51d078140765fc267eb8 |
|
30-Mar-2007 |
Duncan Sands <baldrick@free.fr> |
Correct typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35504 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
f6bef488eeab75b6c7746f9faa9731d45bb84aef |
|
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Compute getLowBitsSet correctly. Using the complement of a 64-bit value and shifting down without regard for the bitwidth of the APInt can lead to incorrect initialization values. Instead, check for the word size case (to avoid undef results from shift) and then do (1 << loBitsSet) - 1 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
5b9f2d6186317df88dbaf603bf8d0eafd6e83897 |
|
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix a typo in a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35316 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
a1689ea60eafb10a617ba588fe29e09683299368 |
|
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Actually, for getHighBitsSet and getLowBitsSet, don't make a 0 bit size illegal. Instead do the 0 valued construction for the user. This is because the caller may not know (or care to check) that the number of bits set is zero. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35315 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
758d1bc919f3f0856df102f6db64ef9b894d4c23 |
|
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make it illegal to set 0 bits in getHighBitsSet and getLowBitsSet. For that they should have used the uint64_t constructor. This avoids causing undefined results via shifts by the word size when the bit width is an exact multiple of the word size. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35313 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
5b7e659e220ed01c8d3a7335e2b52ff2f0fb2ef3 |
|
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
In the getBitsSet function, don't optimize for a common case that is already covered by getLowBitsSet (i.e. when loBits==0). Consequently, remove the default value for loBits and reorder the arguments to the more natural loBits, hiBits order. This makes it more clear that this function is for bit groups in the middle of the bit width and not towards one end or the other. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35312 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
ca76fc2cd3b97e4821e7d8247bc03bbbd2789ad9 |
|
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Don't invoke undefined behavior in shifts in the functions getHighBitsSet and getLowBitsSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35311 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
8f969ee62c3fed26f835a37c41f7c009f99ea3bf |
|
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement the getBitsSet function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35310 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
8da7d65b8350d0f47f47ab496328d9068ac6764d |
|
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement the getHighBitsSet and getLowBitsSet functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35308 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
013263f7b008e2fca293cf2720205f3f6db37dc2 |
|
24-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Get the signs in the right place! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35307 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
d3af825d29ab02f78665d5010c8439d34d65db65 |
|
24-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Undo the last change and make this really implement remainder and not modulus. The previous change was a result of incorrect documentation in the LangRef.html. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35305 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
53c9520b238514a9c1b63ff02221f7467aad1337 |
|
24-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Correct the implementation of srem to be remainder, not modulus. The sign of the result must follow the sign of the divisor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35302 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
7ac2f81e49442f76e3427227fb1e300ce60fceb4 |
|
24-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Clean up this interface: 1. Group similar methods into doxygen groups 2. Reorganize the groups into a consist flow. 3. Significantly improve the quality of the documentation on several methods 4. Rewrite srem and sdiv to eliminate a copy and improve readability. 5. Eliminate unneeded forward references. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
3a3aacfe10cc6a96de7357e07dcf8b3f0e5f63bb |
|
21-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35246 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
e51ffcf27fbbb8dd209e68fc8a74b108822cd162 |
|
20-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Correct the name: isStrictPositive --> isStrictlyPositive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
95da1213958b63c6a5ef65107bf8c3b6a07d3ffb |
|
19-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add an indication of signedness to the uint64_t constructor so sign bits can be extended. This helps fix test/Assembler/2007-03-19-NegValue.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35179 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
fdcd5a7740f5947a8679524f71852d36e79766a0 |
|
19-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Add isStrictPositive() to APInt to determine if this APInt Value > 0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35156 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
b991dfeae75fba839150a21272a2aa875ec3945f |
|
13-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Add zextOrCopy() into APInt for convenience. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35079 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
8db6a445e679817d9972c44d2bc366732388c7b0 |
|
11-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Add getSignBit() and operator<<= into APInt for convenience. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35059 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
3130835bdf4e965309fa3cbed1bfc976a04324f8 |
|
05-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Correct the calculation in APInt::logBase2(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34929 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
52f32d55665ef02e6ebe4518b0a1e2e2a4df0bea |
|
03-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Regularize the interface for conversion functions to/from float/double. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34881 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
28bb83625accaa7b44d60c71794d35e3e8d61039 |
|
03-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make getNumWords public so that those using getRawData stand a chance of not reading beyond the end of the buffer returned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34873 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
da347141ecb7ce44c532cdc51b000d5ab65db79f |
|
03-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add names for some of the operators. This is needed for the macros in the Interpreter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34872 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
239e4021ce2dc1e57f31190b9e9737d0f2c507c1 |
|
03-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add isPositive for symmetry with isNegative. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34862 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
b45a221348ee8693f1bff2df7b42689497083d41 |
|
02-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add an abs() function to get the absolute value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34819 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
53ee4f9d4083ce5106d95ab23985570a1f7413e5 |
|
01-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add doubleToBits and floatToBits methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
ab2ed8ec850b6dd9b152ab936d70b7376903168a |
|
01-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add bitsToDouble and bitsToFloat methods for re-interpretation of bits as FP. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34800 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
68e2300ad965bf08af11ae363bb85e3badf964dc |
|
01-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add methods for bit width modification: sextOrTrunc, zextOrTrunc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
af8fb1984674db462bc6923ed54db0275c78b711 |
|
01-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add a square root function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34775 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
f2253449e24712e96f7bdb7b54c20ddca8d6bb51 |
|
28-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make APInt a little more friendly to its users: * Add support for + and - of a uint64_t. * Make trunc/sext/zext return *this so it can be chained with other ops * Add smin, smax, umin, umax functions for getting min/max values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34742 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
84b4eeccc70b39f975a82ad098413d129d38a7d3 |
|
28-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
getActiveWords should return the number of words, not the index of the highest active words. Increment its result by one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34713 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
9d3c51923392f69b63512e59e44f72affbe6136e |
|
28-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add some syntactic sugar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34704 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
681dcd14e9d59c2070e3a298328db9aea6069480 |
|
27-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement countLeadingOnes() and getMinSignedBits(). This helps to minimize the bit width of negative numbers by computing the minimum bit width for a negative value. E.g. 0x1800000000000000 could be just 0x8000000000000000 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
66ed1099ff3591c61e008198bb5a30862e778fc0 |
|
27-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Improve APInt interface: 1. Add unsigned and signed versions of methods so a "bool" argument doesn't need to be passed in. 2. Make the various getMin/getMax functions all be inline since they are so simple. 3. Simplify sdiv and srem code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34680 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
409f092766e61ab317e46aec37b4a9234ead9b5a |
|
27-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Allow the RoundDoubleToAPInt function to specify a width to use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34672 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
946bca5bae2539ca55f8fb4700bff8b5e3f5a7eb |
|
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix indentation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34643 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
31a81f0190179b19dc72302dfea05cd1c2f0d22e |
|
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
1. Split getValue() into getSExtValue() and getZExtValue() to match ConstantInt better. 2. Add a getHashValue() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
f99705e8985bbd4ff5786f5fc9d843d5de38a3d4 |
|
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement inline methods that make transition of ConstantInt to use APInt easier to comprehend and might be useful elsewhere. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
ebf4ebd69155ea46c7937aec25df1f50dd61c136 |
|
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make isNegative() a const function since it doesn't modify the APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34630 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
dcffd5c3d90f295c90bc211a9c402e1fc18f8b12 |
|
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add an isNegative method to determine if the APInt's value is negative. This is much less expensive than a test against zero. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34619 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
c68c2243dcb716bc117f41aa543ca8a41046df41 |
|
25-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix clearUnusedBits to not depend on "undefined behavior" of >> operator when the bit size is equal to the word size. This happens to work out okay on x86, but might not on other platforms. The change just detects when there are no bits to clear (because BitWidth is a multiple of the word size) and returns early. Also, move some comments from .cpp file into header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
20b1f5db1e93d28debc6449dcd56da6ca7aa6b67 |
|
25-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add a private constructor for efficiency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34580 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
d03d012ad97fad9f91b107d206dadad4c34bebef |
|
24-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Improve documentation. Make divide function internal (it was briefly external for testing). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34557 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
f31c784f2774311d1f7194ac4ca86262197a8099 |
|
21-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add a dump() method for debugging. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34464 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
e91f7847e6126b266fb01de1f05da5655c359da8 |
|
20-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add an internal convenience method for division that urem and udiv use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34448 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
d81b0659501c66b2fec2009e8a999c3db6a1f95c |
|
19-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add some new constants. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34398 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
a932e3f799cbf2f689e4987fea543d3f8661e7a8 |
|
18-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
1. "unsigned" -> "uint32_t" to gaurantee its bit width on all platforms. Size matters in this case. 2. Remove the unused whichByte private function, which was also broken. 3. Remove the non-const overload of the getWord function, getWord() is never used as an lvalue. 4. Rename some local variables for clarity (e.g. API -> Result). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34390 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
443b570149f5756b298de6b63d13bbbf66b4f6fc |
|
18-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement signed output for toString. Fix bugs in countLeadingZeros and countTrailingZeros. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34386 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
cd6f2bfc268add3dd54cbdf98b2a2c4862fe4ba5 |
|
17-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix bugs introduced by constructor parameter order change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34357 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
e81d2dad2c54014d36c73573307db5852c5caf8e |
|
16-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Review changes: 1. Function style changes. 2. 80-col violations. 3. Better names for things. 4. Arrange constructors so they all take bit width first. 5. Add named signed and unsigned comparison functions and remove the corresponding operators. 6. Remove operator&& and operator|| but provide a getBoolValue function which converts to bool as comparison against 0. This allows the normal && and || operators to be used as if (X.getBoolValue() && Y.getBoolValue()) Note: this still doesn't function 100% yet. I'm working on the bugs now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34353 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
b04973edfaffb12905f58379d632f0d7e4bb5d9b |
|
15-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Fix some buges: 1. Make getMinValue() returns the right value. 2. Fix the ByteSwap() crash problem. 3. Make Postfix increment work correctly. 4. Fix some bugs in LogBase2, Hi/LoBits and UDiv. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
db3faa64ee89d537ca1b1410dd841ef51e957540 |
|
13-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make some minor improvements to APInt: 1. Make all the operators use uppercase 2. Rename APIntRoundToDouble method just RoundToDouble, the APInt is redundant. 3. Turn the class on for compilation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
d93f00c35dbd1ea415bb2b39435253aef9428d71 |
|
12-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
1. Make APInt::shl work correctly and more efficiently. 2. Add functions to support the numberical conversion between APInt and double/float. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
ff4304f8243f55e2e5c63bc95517cd38ff9295e1 |
|
09-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Eliminates friend function declaration inside APInt, instead, adds public methods as those global function's internal implementation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34083 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
0b706b18bd0a7760d971727460a1f26bff8289b0 |
|
08-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
As Chris and Reid suggested, remove "isSigned" field from APInt, instead, add some signed/unsigned arithmetic operation functions into APInt.h to handle the signed/unsigned issue. These functions will be defined inside a namespace "APIntOps" which is inside llvm namespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34053 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
58a0d64fae7ace05b27dad94fd427991d853619b |
|
07-Feb-2007 |
Lauro Ramos Venancio <lauro.venancio@gmail.com> |
Fix build error. include/llvm/ADT/APInt.h:326: error: âassertâ was not declared in this scope git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34002 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
f29a09d6272265e90362d5dfba201c4ed6dcf6d5 |
|
07-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
As Chris suggested, fixed some problems. (This is the first part.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33986 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
7406dcdc2981ae864a22ba34f96d1db5e3a4cf87 |
|
06-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
As Reid suggested, fixed some problems. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33954 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|
d0f285e212c47ac71af842bb39ea5364f1e556b4 |
|
05-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Add a class APInt to represent arbitrary precision constant integral values. It is a functional replacement for common case integer type like "unsigned", "uint64_t", but also allows non-byte-width integer type and large integer value types such as 3-bits, 15-bits, or more than 64-bits of precision. For more details, see pr1043. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/APInt.h
|