[compiler-rt] b186142 - [sanitizer] Make CHECKs in bitvector more precise (NFC) (#94630)

via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 6 14:48:27 PDT 2024


Author: Nikita Popov
Date: 2024-06-06T14:48:23-07:00
New Revision: b1861429cb1843c3a3da56b1411fdb131fc33519

URL: https://github.com/llvm/llvm-project/commit/b1861429cb1843c3a3da56b1411fdb131fc33519
DIFF: https://github.com/llvm/llvm-project/commit/b1861429cb1843c3a3da56b1411fdb131fc33519.diff

LOG: [sanitizer] Make CHECKs in bitvector more precise (NFC) (#94630)

These CHECKs are all checking indices, which must be strictly smaller
than the size (otherwise they would go out of bounds).

Added: 
    

Modified: 
    compiler-rt/lib/sanitizer_common/sanitizer_bitvector.h

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/sanitizer_common/sanitizer_bitvector.h b/compiler-rt/lib/sanitizer_common/sanitizer_bitvector.h
index 07a59ab11c429..eef1e7e9d9570 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_bitvector.h
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_bitvector.h
@@ -321,23 +321,23 @@ class TwoLevelBitVector {
   };
 
  private:
-  void check(uptr idx) const { CHECK_LE(idx, size()); }
+  void check(uptr idx) const { CHECK_LT(idx, size()); }
 
   uptr idx0(uptr idx) const {
     uptr res = idx / (BV::kSize * BV::kSize);
-    CHECK_LE(res, kLevel1Size);
+    CHECK_LT(res, kLevel1Size);
     return res;
   }
 
   uptr idx1(uptr idx) const {
     uptr res = (idx / BV::kSize) % BV::kSize;
-    CHECK_LE(res, BV::kSize);
+    CHECK_LT(res, BV::kSize);
     return res;
   }
 
   uptr idx2(uptr idx) const {
     uptr res = idx % BV::kSize;
-    CHECK_LE(res, BV::kSize);
+    CHECK_LT(res, BV::kSize);
     return res;
   }
 


        


More information about the llvm-commits mailing list