[compiler-rt] 84dc97e - [MSan] Fix check overflow in a test case (#150429)

via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 24 23:05:56 PDT 2025


Author: Kunqiu Chen
Date: 2025-07-25T14:05:53+08:00
New Revision: 84dc97e51eb4cd85de27805476d2f438ed9e6224

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

LOG: [MSan] Fix check overflow in a test case (#150429)

Supplement to PR #144073

Previously, _msan_check_mem_is_initialized.cpp_ initialized a 32-byte
stack array, but checked the shadow for the offset range [12, 42),
exceeding the stack array size.

MSan does not guarantee that the shadow corresponding to the overflow
part is 0, so it is undefined to require the overflow part to be
unpoisoned.

Added: 
    

Modified: 
    compiler-rt/test/msan/msan_check_mem_is_initialized.cpp

Removed: 
    


################################################################################
diff  --git a/compiler-rt/test/msan/msan_check_mem_is_initialized.cpp b/compiler-rt/test/msan/msan_check_mem_is_initialized.cpp
index aaf5737ebe236..aab31893e01bc 100644
--- a/compiler-rt/test/msan/msan_check_mem_is_initialized.cpp
+++ b/compiler-rt/test/msan/msan_check_mem_is_initialized.cpp
@@ -12,7 +12,7 @@ int main(void) {
   __msan_poison(p + 10, 2);
 
   __msan_check_mem_is_initialized(p, 10);
-  __msan_check_mem_is_initialized(p + 12, 30);
+  __msan_check_mem_is_initialized(p + 12, 20);
 #ifdef POSITIVE
   __msan_check_mem_is_initialized(p + 5, 20);
   // CHECK: Uninitialized bytes in __msan_check_mem_is_initialized at offset 5 inside [0x{{.*}}, 20)


        


More information about the llvm-commits mailing list