Gitiles
Code Review
Sign In
gerrit-public.fairphone.software
/
toolchain
/
llvm-project
/
ada8c398d0f810c37e6a9d2d22c8312bf4e595a2
/
llvm
/
lib
/
Support
/
APInt.cpp
4051652
[APInt] Move the single word cases of countTrailingZeros and countLeadingOnes inline for consistency with countTrailingOnes and countLeadingZeros. NFCI
by Craig Topper
· 8 years ago
e6a2318
[APInt] Use std::end to avoid mentioning the size of a local buffer repeatedly.
by Craig Topper
· 8 years ago
8885f93
[APInt] Add support for dividing or remainder by a uint64_t or int64_t.
by Craig Topper
· 8 years ago
6a1d020
[APInt] Simplify a for loop initialization based on the fact that 'n' is known to be 1 by an earlier 'if'.
by Craig Topper
· 8 years ago
2c9a706
[APInt] Use Lo_32/Hi_32/Make_64 in a few more places in the divide code. NFCI
by Craig Topper
· 8 years ago
4b83b4d
[APInt] Fix typo in comment. NFC
by Craig Topper
· 8 years ago
b1a71ca
[APInt] Add early outs for a division by 1 to udiv/urem/udivrem
by Craig Topper
· 8 years ago
2579c7c
[APInt] In udivrem, remember the bit width in a local variable so we don't reread it from the LHS which might be aliased with Quotient or Remainder.
by Craig Topper
· 8 years ago
4bdd621
[APInt] Add an assert to check for divide by zero in udivrem. NFC
by Craig Topper
· 8 years ago
06da081
[APInt] Remove unnecessary checks of rhsWords==1 with lhsWords==1 from udiv and udivrem. NFC
by Craig Topper
· 8 years ago
8769403
[APInt] Fix a case where udivrem might delete and create a new allocation instead of reusing the original.
by Craig Topper
· 8 years ago
a92fd0b
[APInt] Add a utility method to change the bit width and storage size of an APInt.
by Craig Topper
· 8 years ago
dbd6219
[APInt] Remove an APInt copy from the return of APInt::multiplicativeInverse.
by Craig Topper
· 8 years ago
3fbecad
[APInt] Fix typo in comment. NFC
by Craig Topper
· 8 years ago
c59ced3
[APInt] Remove an unneeded extra temporary APInt from toString.
by Craig Topper
· 8 years ago
b3c1f56
[APInt] Use negate() instead of copying an APInt to negate it and then writing back over the original value.
by Craig Topper
· 8 years ago
ef0114c
[APInt] Add negate helper method to implement twos complement. Use it to shorten code.
by Craig Topper
· 8 years ago
ecb97da
[APInt] Make toString use udivrem instead of calling the divide helper method directly. Do a better job of reusing allocations while looping. NFCI
by Craig Topper
· 8 years ago
6271bc7
[APInt] Use uint32_t instead of unsigned for the storage type throughout the divide code. Use Lo_32/Hi_32/Make_64 helpers instead of casts and shifts. NFCI
by Craig Topper
· 8 years ago
f86b9d5
[APInt] Use getRawData to slightly simplify some code.
by Craig Topper
· 8 years ago
93eabae
[APInt] Remove check for single word since single word was handled earlier in the function. NFC
by Craig Topper
· 8 years ago
a584af5
[APInt] Fix indentation of tcDivide. Combine variable declaration and initialization.
by Craig Topper
· 8 years ago
62de039
[APInt] Use getNumWords function in udiv/urem/udivrem instead of reimplementinging it.
by Craig Topper
· 8 years ago
0acb665
[APInt] Remove return value from tcFullMultiply.
by Craig Topper
· 8 years ago
3369f8c
[APInt] Use default constructor instead of explicitly creating a 1-bit APInt in udiv and urem. NFC
by Craig Topper
· 8 years ago
24ae695
[APInt] Remove 'else' after 'return' in udiv and urem. NFC
by Craig Topper
· 8 years ago
c96a84d
[APInt] Modify tcMultiplyPart's overflow detection to not depend on 'i' from the earlier loop. NFC
by Craig Topper
· 8 years ago
0cbab7c
[APInt] Use std::min instead of writing the same thing with the ternary operator. NFC
by Craig Topper
· 8 years ago
a6c142a
[APInt] Remove 'else' after 'return' in tcMultiply methods. NFC
by Craig Topper
· 8 years ago
f15bec5
[APInt] Take advantage of new operator*=(uint64_t) to remove a temporary APInt.
by Craig Topper
· 8 years ago
a51941f
[APInt] Add support for multiplying by a uint64_t.
by Craig Topper
· 8 years ago
93c68e1
[APInt] Reduce number of allocations involved in multiplying. Reduce worst case multiply size
by Craig Topper
· 9 years ago
b339c6d
[APInt] Give the value union a name so we can remove assumptions on VAL being the larger member
by Craig Topper
· 9 years ago
9881bd9
[APInt] Move APInt::getSplat out of line.
by Craig Topper
· 9 years ago
1e91919
[APInt] Move the setBit and clearBit methods inline.
by Craig Topper
· 9 years ago
24e7101
[APInt] Use inplace shift methods where possible. NFCI
by Craig Topper
· 9 years ago
1dec281
[APInt] Simplify the zext and sext methods
by Craig Topper
· 9 years ago
8b37326
[APInt] Add ashrInPlace method and rewrite ashr to make a copy and then call ashrInPlace.
by Craig Topper
· 9 years ago
c6b0568
[APInt] Fix repeated word in comments. NFC
by Craig Topper
· 9 years ago
fc03d2d
[APInt] Make behavior of ashr by BitWidth consistent between single and multi word.
by Craig Topper
· 9 years ago
652ca99
[APInt] In sext single word case, use SignExtend64 and let the APInt constructor mask off any excess bits.
by Craig Topper
· 9 years ago
4abfb3d
Revert "[APInt] Fix a few places that use APInt::getRawData to operate within the normal API."
by Renato Golin
· 9 years ago
cc4a912
Revert "[APInt] Add ashrInPlace method and implement ashr using it. Also fix a bug in the shift by BitWidth handling."
by Renato Golin
· 9 years ago
5f68af0
[APInt] Use operator<<= instead of shl where possible. NFC
by Craig Topper
· 9 years ago
26af2a9
[APInt] Add ashrInPlace method and implement ashr using it. Also fix a bug in the shift by BitWidth handling.
by Craig Topper
· 9 years ago
3a29e3b8
[APInt] Remove unnecessary min with BitWidth from countTrailingOnesSlowCase.
by Craig Topper
· 9 years ago
5e11374
[APInt] Add WORD_MAX constant and use it instead of UINT64_MAX. NFC
by Craig Topper
· 9 years ago
1dc8fc8
[APInt] Add compare/compareSigned methods that return -1, 0, 1. Reimplement slt/ult and friends using them
by Craig Topper
· 9 years ago
a8129a1
[APInt] Add isSubsetOf method that can check if one APInt is a subset of another without creating temporary APInts
by Craig Topper
· 9 years ago
baa392e
[APInt] Implement APInt::intersects without creating a temporary APInt in the multiword case
by Craig Topper
· 9 years ago
b3624e4
[APInt] Implement operator==(uint64_t) similar to ugt/ult(uint64_t) to remove one of the out of line EqualsSlowCase methods.
by Craig Topper
· 9 years ago
c67fe57
[APInt] Move the 'return *this' from the slow cases of assignment operators inline. We should let the compiler see that the fast/slow cases both return *this.
by Craig Topper
· 9 years ago
ae8bd67
[APInt] Inline the single word case of lshrInPlace similar to what we do for <<=.
by Craig Topper
· 9 years ago
fc947bc
[APInt] Use lshrInPlace to replace lshr where possible
by Craig Topper
· 9 years ago
9eaef07
[APInt] Cleanup the reverseBits slow case a little.
by Craig Topper
· 9 years ago
a8a4f0d
[APInt] Make operator<<= shift in place. Improve the implementation of tcShiftLeft and use it to implement operator<<=.
by Craig Topper
· 9 years ago
9575d8f
[APInt] Merge the multiword code from lshrInPlace and tcShiftRight into a single implementation
by Craig Topper
· 9 years ago
9edfb08
[APInt] Fix a bug in lshr by a value more than 64 bits above the bit width.
by Craig Topper
· 9 years ago
55bd375
Remove all allocation and divisions from GreatestCommonDivisor
by Richard Smith
· 9 years ago
90377de
[APInt] Reorder fields to avoid a hole in the middle of the class
by Craig Topper
· 9 years ago
92fc477
[APInt] Generalize the implementation of tcIncrement to support adding a full 'word' by introducing tcAddPart. Use this to support tcIncrement, operator++ and operator+=(uint64_t). Do the same for subtract. NFCI.
by Craig Topper
· 9 years ago
00b47ee
[APInt] Make use of whichWord and maskBit to simplify some code. NFC
by Craig Topper
· 9 years ago
55229b7
[APInt] Add a public typedef for the internal type of APInt use it instead of integerPart. Make APINT_BITS_PER_WORD and APINT_WORD_SIZE public.
by Craig Topper
· 9 years ago
15e484a
[X86] Use tcAdd/tcSubtract to implement the slow case of operator+=/operator-=.
by Craig Topper
· 9 years ago
b8f1068
[APInt] Combine declaration and initialization. NFC
by Craig Topper
· 9 years ago
b7d8faa
[APInt] Simplify some code by using operator+=(uint64_t) instead of doing a more complex assignment into a temporary APInt just to use the APInt operator+=.
by Craig Topper
· 9 years ago
d7ed50d
[APInt] Fix typo in comment. NFC
by Craig Topper
· 9 years ago
68a3ed2
[APInt] Use conditional operator to simplify some code. NFC
by Craig Topper
· 9 years ago
a742cb5
[APInt] Implement flipAllBitsSlowCase with tcComplement. NFCI
by Craig Topper
· 9 years ago
99cfe4f
[APInt] Fix indentation. NFC
by Craig Topper
· 9 years ago
b2aaa5d
[APInt] Implement AndAssignSlowCase using tcAnd. Do the same for Or and Xor. NFCI
by Craig Topper
· 9 years ago
278ebd2
[APInt] Allow GreatestCommonDivisor to take rvalue inputs efficiently. Use moves instead of copies in the loop.
by Craig Topper
· 9 years ago
9ab8d7f
[APInt] Remove the mul/urem/srem/udiv/sdiv functions from the APIntOps namespace. Replace the few usages with calls to the class methods. NFC
by Craig Topper
· 9 years ago
e7e3560
[APInt] Rewrite getLoBits in a way that will do one less memory allocation in the multiword case. Rewrite getHiBits to use the class method version of lshr instead of the one in APIntOps. NFCI
by Craig Topper
· 9 years ago
6a851808
[APInt] Reformat tc functions to put opening curly braces on the end of the previous line. NFC
by Craig Topper
· 9 years ago
76f4246
[APInt] Remove an anonymous namespace around static functions. NFC
by Craig Topper
· 9 years ago
b003816
[APInt] Combine variable declaration and initialization where possible in the tc functions. NFCI
by Craig Topper
· 9 years ago
592b134
[APInt] Use 'unsigned' instead of 'unsigned int' in the interface to the APInt tc functions. This is more consistent with the rest of the codebase. NFC
by Craig Topper
· 9 years ago
f496f9a
[APInt] Move the single word cases of the bitwise operators inline.
by Craig Topper
· 9 years ago
6ebeb70
[APInt] Move operator=(uint64_t) inline as its pretty simple and is often used with small constants that the compiler can optimize.
by Craig Topper
· 9 years ago
70d8ca9
[APInt] Move operator&=(uint64_t) inline and use memset to clear the upper words.
by Craig Topper
· 9 years ago
afc9e35
[APInt] Move the >64 bit case for flipAllBits out of line.
by Craig Topper
· 9 years ago
0085ffb
[APInt] Don't initialize VAL to 0 in APInt constructors. Push it down to the initSlowCase and other init methods.
by Craig Topper
· 9 years ago
b02667c
[APInt] Add APInt::insertBits() method to insert an APInt into a larger APInt
by Simon Pilgrim
· 9 years ago
0099beb
Fixed typos in comments. NFCI.
by Simon Pilgrim
· 9 years ago
b60a46f
[APInt] Add rvalue reference support to and, or, xor operations to allow their memory allocation to be reused when possible
by Craig Topper
· 9 years ago
bafdd03
[APInt] Add setLowBits/setHighBits methods to APInt.
by Craig Topper
· 9 years ago
f78a6f0
[APInt] Optimize APInt creation from uint64_t
by Craig Topper
· 9 years ago
0f5fb5f
[APInt] Add APInt::extractBits() method to extract APInt subrange (reapplied)
by Simon Pilgrim
· 9 years ago
cdf2bd6
Revert: r296141 [APInt] Add APInt::extractBits() method to extract APInt subrange
by Simon Pilgrim
· 9 years ago
bd9fb2a
[APInt] Add APInt::extractBits() method to extract APInt subrange
by Simon Pilgrim
· 9 years ago
aed3522
[APInt] Add APInt::setBits() method to set all bits in range
by Simon Pilgrim
· 9 years ago
4c0ea9d
Strip trailing whitespace.
by Simon Pilgrim
· 9 years ago
51c0ae5
[APInt] Fix rotl/rotr when the shift amount is greater than the total bit width.
by Joey Gouly
· 9 years ago
fb1756b
[APInt] Add integer API bor bitwise operations.
by Amaury Sechet
· 9 years ago
5a473d2
[Support] Add newline when dumping an APInt.
by Davide Italiano
· 9 years ago
8c209aa
Cleanup dump() functions.
by Matthias Braun
· 9 years ago
9028f05
[APInt] Remove calls to clearUnusedBits from XorSlowCase and operator^=
by Craig Topper
· 9 years ago
d7baada
Typo
by Joerg Sonnenberger
· 9 years ago
2ec8b15
Missing includes.
by Vassil Vassilev
· 9 years ago
Next »