summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/APInt.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2017-03-27 17:10:21 +0000
committerCraig Topper <craig.topper@gmail.com>2017-03-27 17:10:21 +0000
commitafc9e3534371e07010752db09063669842763705 (patch)
tree8dfed373473f35d9126368bf195e635c44f88985 /llvm/lib/Support/APInt.cpp
parentf70f6836709208c4ab726abccd84a3eca0ecd0e9 (diff)
downloadbcm5719-llvm-afc9e3534371e07010752db09063669842763705.tar.gz
bcm5719-llvm-afc9e3534371e07010752db09063669842763705.zip
[APInt] Move the >64 bit case for flipAllBits out of line.
This is more consistent with what we do for other operations. This shrinks the opt binary on my build by ~72k. llvm-svn: 298858
Diffstat (limited to 'llvm/lib/Support/APInt.cpp')
-rw-r--r--llvm/lib/Support/APInt.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Support/APInt.cpp b/llvm/lib/Support/APInt.cpp
index 58fa2f53690..aacb7440313 100644
--- a/llvm/lib/Support/APInt.cpp
+++ b/llvm/lib/Support/APInt.cpp
@@ -581,6 +581,11 @@ void APInt::clearBit(unsigned bitPosition) {
}
/// @brief Toggle every bit to its opposite value.
+void APInt::flipAllBitsSlowCase() {
+ for (unsigned i = 0; i < getNumWords(); ++i)
+ pVal[i] ^= UINT64_MAX;
+ clearUnusedBits();
+}
/// Toggle a given bit to its opposite value whose position is given
/// as "bitPosition".
OpenPOWER on IntegriCloud