diff options
author | Nikita Popov <npopov@redhat.com> | 2023-01-30 09:37:38 +0100 |
---|---|---|
committer | Nikita Popov <npopov@redhat.com> | 2023-01-30 09:55:45 +0100 |
commit | bfe63ed1fe922f0b7366eeda44649954c9631e24 (patch) | |
tree | 20a587a1c6a1086c6e6cbc375e20e3cec0d35935 /llvm/lib/Transforms/Utils/SimplifyCFG.cpp | |
parent | 1840d18a10cb831e3379438bcdd9eef48ed6a39e (diff) | |
download | llvm-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.cpp | 2 |
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. |