1. 8885f93 [APInt] Add support for dividing or remainder by a uint64_t or int64_t. by Craig Topper · 8 years ago
  2. 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
  3. 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
  4. 4b83b4d [APInt] Fix typo in comment. NFC by Craig Topper · 8 years ago
  5. b1a71ca [APInt] Add early outs for a division by 1 to udiv/urem/udivrem by Craig Topper · 8 years ago
  6. 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
  7. 4bdd621 [APInt] Add an assert to check for divide by zero in udivrem. NFC by Craig Topper · 8 years ago
  8. 06da081 [APInt] Remove unnecessary checks of rhsWords==1 with lhsWords==1 from udiv and udivrem. NFC by Craig Topper · 8 years ago
  9. 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
  10. a92fd0b [APInt] Add a utility method to change the bit width and storage size of an APInt. by Craig Topper · 8 years ago
  11. dbd6219 [APInt] Remove an APInt copy from the return of APInt::multiplicativeInverse. by Craig Topper · 8 years ago
  12. 3fbecad [APInt] Fix typo in comment. NFC by Craig Topper · 8 years ago
  13. c59ced3 [APInt] Remove an unneeded extra temporary APInt from toString. by Craig Topper · 8 years ago
  14. 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
  15. ef0114c [APInt] Add negate helper method to implement twos complement. Use it to shorten code. by Craig Topper · 8 years ago
  16. 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
  17. 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
  18. f86b9d5 [APInt] Use getRawData to slightly simplify some code. by Craig Topper · 8 years ago
  19. 93eabae [APInt] Remove check for single word since single word was handled earlier in the function. NFC by Craig Topper · 8 years ago
  20. a584af5 [APInt] Fix indentation of tcDivide. Combine variable declaration and initialization. by Craig Topper · 8 years ago
  21. 62de039 [APInt] Use getNumWords function in udiv/urem/udivrem instead of reimplementinging it. by Craig Topper · 8 years ago
  22. 0acb665 [APInt] Remove return value from tcFullMultiply. by Craig Topper · 8 years ago
  23. 3369f8c [APInt] Use default constructor instead of explicitly creating a 1-bit APInt in udiv and urem. NFC by Craig Topper · 8 years ago
  24. 24ae695 [APInt] Remove 'else' after 'return' in udiv and urem. NFC by Craig Topper · 8 years ago
  25. c96a84d [APInt] Modify tcMultiplyPart's overflow detection to not depend on 'i' from the earlier loop. NFC by Craig Topper · 8 years ago
  26. 0cbab7c [APInt] Use std::min instead of writing the same thing with the ternary operator. NFC by Craig Topper · 8 years ago
  27. a6c142a [APInt] Remove 'else' after 'return' in tcMultiply methods. NFC by Craig Topper · 8 years ago
  28. f15bec5 [APInt] Take advantage of new operator*=(uint64_t) to remove a temporary APInt. by Craig Topper · 8 years ago
  29. a51941f [APInt] Add support for multiplying by a uint64_t. by Craig Topper · 8 years ago
  30. 93c68e1 [APInt] Reduce number of allocations involved in multiplying. Reduce worst case multiply size by Craig Topper · 9 years ago
  31. 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
  32. 9881bd9 [APInt] Move APInt::getSplat out of line. by Craig Topper · 9 years ago
  33. 1e91919 [APInt] Move the setBit and clearBit methods inline. by Craig Topper · 9 years ago
  34. 24e7101 [APInt] Use inplace shift methods where possible. NFCI by Craig Topper · 9 years ago
  35. 1dec281 [APInt] Simplify the zext and sext methods by Craig Topper · 9 years ago
  36. 8b37326 [APInt] Add ashrInPlace method and rewrite ashr to make a copy and then call ashrInPlace. by Craig Topper · 9 years ago
  37. c6b0568 [APInt] Fix repeated word in comments. NFC by Craig Topper · 9 years ago
  38. fc03d2d [APInt] Make behavior of ashr by BitWidth consistent between single and multi word. by Craig Topper · 9 years ago
  39. 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
  40. 4abfb3d Revert "[APInt] Fix a few places that use APInt::getRawData to operate within the normal API." by Renato Golin · 9 years ago
  41. 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
  42. 5f68af0 [APInt] Use operator<<= instead of shl where possible. NFC by Craig Topper · 9 years ago
  43. 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
  44. 3a29e3b8 [APInt] Remove unnecessary min with BitWidth from countTrailingOnesSlowCase. by Craig Topper · 9 years ago
  45. 5e11374 [APInt] Add WORD_MAX constant and use it instead of UINT64_MAX. NFC by Craig Topper · 9 years ago
  46. 1dc8fc8 [APInt] Add compare/compareSigned methods that return -1, 0, 1. Reimplement slt/ult and friends using them by Craig Topper · 9 years ago
  47. 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
  48. baa392e [APInt] Implement APInt::intersects without creating a temporary APInt in the multiword case by Craig Topper · 9 years ago
  49. 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
  50. 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
  51. ae8bd67 [APInt] Inline the single word case of lshrInPlace similar to what we do for <<=. by Craig Topper · 9 years ago
  52. fc947bc [APInt] Use lshrInPlace to replace lshr where possible by Craig Topper · 9 years ago
  53. 9eaef07 [APInt] Cleanup the reverseBits slow case a little. by Craig Topper · 9 years ago
  54. a8a4f0d [APInt] Make operator<<= shift in place. Improve the implementation of tcShiftLeft and use it to implement operator<<=. by Craig Topper · 9 years ago
  55. 9575d8f [APInt] Merge the multiword code from lshrInPlace and tcShiftRight into a single implementation by Craig Topper · 9 years ago
  56. 9edfb08 [APInt] Fix a bug in lshr by a value more than 64 bits above the bit width. by Craig Topper · 9 years ago
  57. 55bd375 Remove all allocation and divisions from GreatestCommonDivisor by Richard Smith · 9 years ago
  58. 90377de [APInt] Reorder fields to avoid a hole in the middle of the class by Craig Topper · 9 years ago
  59. 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
  60. 00b47ee [APInt] Make use of whichWord and maskBit to simplify some code. NFC by Craig Topper · 9 years ago
  61. 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
  62. 15e484a [X86] Use tcAdd/tcSubtract to implement the slow case of operator+=/operator-=. by Craig Topper · 9 years ago
  63. b8f1068 [APInt] Combine declaration and initialization. NFC by Craig Topper · 9 years ago
  64. 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
  65. d7ed50d [APInt] Fix typo in comment. NFC by Craig Topper · 9 years ago
  66. 68a3ed2 [APInt] Use conditional operator to simplify some code. NFC by Craig Topper · 9 years ago
  67. a742cb5 [APInt] Implement flipAllBitsSlowCase with tcComplement. NFCI by Craig Topper · 9 years ago
  68. 99cfe4f [APInt] Fix indentation. NFC by Craig Topper · 9 years ago
  69. b2aaa5d [APInt] Implement AndAssignSlowCase using tcAnd. Do the same for Or and Xor. NFCI by Craig Topper · 9 years ago
  70. 278ebd2 [APInt] Allow GreatestCommonDivisor to take rvalue inputs efficiently. Use moves instead of copies in the loop. by Craig Topper · 9 years ago
  71. 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
  72. 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
  73. 6a851808 [APInt] Reformat tc functions to put opening curly braces on the end of the previous line. NFC by Craig Topper · 9 years ago
  74. 76f4246 [APInt] Remove an anonymous namespace around static functions. NFC by Craig Topper · 9 years ago
  75. b003816 [APInt] Combine variable declaration and initialization where possible in the tc functions. NFCI by Craig Topper · 9 years ago
  76. 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
  77. f496f9a [APInt] Move the single word cases of the bitwise operators inline. by Craig Topper · 9 years ago
  78. 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
  79. 70d8ca9 [APInt] Move operator&=(uint64_t) inline and use memset to clear the upper words. by Craig Topper · 9 years ago
  80. afc9e35 [APInt] Move the >64 bit case for flipAllBits out of line. by Craig Topper · 9 years ago
  81. 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
  82. b02667c [APInt] Add APInt::insertBits() method to insert an APInt into a larger APInt by Simon Pilgrim · 9 years ago
  83. 0099beb Fixed typos in comments. NFCI. by Simon Pilgrim · 9 years ago
  84. 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
  85. bafdd03 [APInt] Add setLowBits/setHighBits methods to APInt. by Craig Topper · 9 years ago
  86. f78a6f0 [APInt] Optimize APInt creation from uint64_t by Craig Topper · 9 years ago
  87. 0f5fb5f [APInt] Add APInt::extractBits() method to extract APInt subrange (reapplied) by Simon Pilgrim · 9 years ago
  88. cdf2bd6 Revert: r296141 [APInt] Add APInt::extractBits() method to extract APInt subrange by Simon Pilgrim · 9 years ago
  89. bd9fb2a [APInt] Add APInt::extractBits() method to extract APInt subrange by Simon Pilgrim · 9 years ago
  90. aed3522 [APInt] Add APInt::setBits() method to set all bits in range by Simon Pilgrim · 9 years ago
  91. 4c0ea9d Strip trailing whitespace. by Simon Pilgrim · 9 years ago
  92. 51c0ae5 [APInt] Fix rotl/rotr when the shift amount is greater than the total bit width. by Joey Gouly · 9 years ago
  93. fb1756b [APInt] Add integer API bor bitwise operations. by Amaury Sechet · 9 years ago
  94. 5a473d2 [Support] Add newline when dumping an APInt. by Davide Italiano · 9 years ago
  95. 8c209aa Cleanup dump() functions. by Matthias Braun · 9 years ago
  96. 9028f05 [APInt] Remove calls to clearUnusedBits from XorSlowCase and operator^= by Craig Topper · 9 years ago
  97. d7baada Typo by Joerg Sonnenberger · 9 years ago
  98. 2ec8b15 Missing includes. by Vassil Vassilev · 9 years ago
  99. 381fc0e Make some LLVM_CONSTEXPR variables const. NFC. by George Burgess IV · 9 years ago
  100. 851b79d Fix UB in APInt::ashr by Jonathan Roelofs · 9 years ago