aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2023-01-30 09:37:38 +0100
committerNikita Popov <npopov@redhat.com>2023-01-30 09:55:45 +0100
commitbfe63ed1fe922f0b7366eeda44649954c9631e24 (patch)
tree20a587a1c6a1086c6e6cbc375e20e3cec0d35935 /llvm/lib/Transforms/Utils/SimplifyCFG.cpp
parent1840d18a10cb831e3379438bcdd9eef48ed6a39e (diff)
downloadllvm-bfe63ed1fe922f0b7366eeda44649954c9631e24.zip
llvm-bfe63ed1fe922f0b7366eeda44649954c9631e24.tar.gz
llvm-bfe63ed1fe922f0b7366eeda44649954c9631e24.tar.bz2
Revert "[llvm] Use llvm::bit_ceil (NFC)"
This reverts commit 54971c8a39e8b682e7a042eee33f94a8283d8305. This causes a compile-time regression. bit_ceil should probably not be used in performance-critical code.
Diffstat (limited to 'llvm/lib/Transforms/Utils/SimplifyCFG.cpp')
-rw-r--r--llvm/lib/Transforms/Utils/SimplifyCFG.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Utils/SimplifyCFG.cpp b/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
index e6d9b26..372a669 100644
--- a/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+++ b/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
@@ -6552,7 +6552,7 @@ static bool SwitchToLookupTable(SwitchInst *SI, IRBuilder<> &Builder,
// Make the mask's bitwidth at least 8-bit and a power-of-2 to avoid
// unnecessary illegal types.
- uint64_t TableSizePowOf2 = llvm::bit_ceil(std::max<uint64_t>(8, TableSize));
+ uint64_t TableSizePowOf2 = NextPowerOf2(std::max(7ULL, TableSize - 1ULL));
APInt MaskInt(TableSizePowOf2, 0);
APInt One(TableSizePowOf2, 1);
// Build bitmask; fill in a 1 bit for every case.