[llvm] Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFC. (PR #161496)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 1 02:27:29 PDT 2025


https://github.com/RKSimon created https://github.com/llvm/llvm-project/pull/161496

None

>From c52d11f8a8a3b0d3db54adbf976cd3cda26b0c34 Mon Sep 17 00:00:00 2001
From: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: Wed, 1 Oct 2025 10:26:48 +0100
Subject: [PATCH] Fix MSVC "result of 32-bit shift implicitly converted to 64
 bits" warning. NFC.

---
 llvm/lib/CAS/OnDiskTrieRawHashMap.cpp | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/llvm/lib/CAS/OnDiskTrieRawHashMap.cpp b/llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
index 9b382dd749ea5..940389336ce22 100644
--- a/llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
+++ b/llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
@@ -114,7 +114,7 @@ class SubtrieHandle {
   using SlotT = std::atomic<int64_t>;
 
   static int64_t getSlotsSize(uint32_t NumBits) {
-    return sizeof(int64_t) * (1u << NumBits);
+    return sizeof(int64_t) * (1ull << NumBits);
   }
 
   static int64_t getSize(uint32_t NumBits) {
@@ -191,7 +191,8 @@ class SubtrieHandle {
   MutableArrayRef<SlotT> Slots;
 
   static MutableArrayRef<SlotT> getSlots(Header &H) {
-    return MutableArrayRef(reinterpret_cast<SlotT *>(&H + 1), 1u << H.NumBits);
+    return MutableArrayRef(reinterpret_cast<SlotT *>(&H + 1),
+                           1ull << H.NumBits);
   }
 };
 



More information about the llvm-commits mailing list