[llvm] [ADT] Simplify PointerBitMask in PointerIntPair.h (NFC) (PR #158210)

Kazu Hirata via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 12 08:00:59 PDT 2025


https://github.com/kazutakahirata updated https://github.com/llvm/llvm-project/pull/158210

>From 4f4b2aa7ab143aab2dd84326436fd1b551db59c7 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Mon, 8 Sep 2025 10:28:52 -0700
Subject: [PATCH 1/2] [ADT] Simplify PointerBitMask in PointerIntPair.h (NFC)

A left shift of (uintptr_t)-1) is simpler.
---
 llvm/include/llvm/ADT/PointerIntPair.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/llvm/include/llvm/ADT/PointerIntPair.h b/llvm/include/llvm/ADT/PointerIntPair.h
index 9cfc65846d5bf..8acc2cf2d4f07 100644
--- a/llvm/include/llvm/ADT/PointerIntPair.h
+++ b/llvm/include/llvm/ADT/PointerIntPair.h
@@ -173,8 +173,7 @@ struct PointerIntPairInfo {
                 "PointerIntPair with integer size too large for pointer");
   enum MaskAndShiftConstants : uintptr_t {
     /// PointerBitMask - The bits that come from the pointer.
-    PointerBitMask =
-        ~(uintptr_t)(((intptr_t)1 << PtrTraits::NumLowBitsAvailable) - 1),
+    PointerBitMask = ((uintptr_t)-1) << PtrTraits::NumLowBitsAvailable,
 
     /// IntShift - The number of low bits that we reserve for other uses, and
     /// keep zero.

>From b4ef3a3c2b483ec539bc21ced33e080de5e532e9 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Fri, 12 Sep 2025 07:55:55 -0700
Subject: [PATCH 2/2] Address a comment.

---
 llvm/include/llvm/ADT/PointerIntPair.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/llvm/include/llvm/ADT/PointerIntPair.h b/llvm/include/llvm/ADT/PointerIntPair.h
index 8acc2cf2d4f07..e48e35d476c80 100644
--- a/llvm/include/llvm/ADT/PointerIntPair.h
+++ b/llvm/include/llvm/ADT/PointerIntPair.h
@@ -173,7 +173,7 @@ struct PointerIntPairInfo {
                 "PointerIntPair with integer size too large for pointer");
   enum MaskAndShiftConstants : uintptr_t {
     /// PointerBitMask - The bits that come from the pointer.
-    PointerBitMask = ((uintptr_t)-1) << PtrTraits::NumLowBitsAvailable,
+    PointerBitMask = (~(uintptr_t)0) << PtrTraits::NumLowBitsAvailable,
 
     /// IntShift - The number of low bits that we reserve for other uses, and
     /// keep zero.



More information about the llvm-commits mailing list