[llvm-branch-commits] [NFCI][asan] Slightly reorder shadow_val calculation (PR #195668)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon May 4 08:22:12 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-compiler-rt-sanitizer
Author: Vitaly Buka (vitalybuka)
<details>
<summary>Changes</summary>
Don't use next value of it's not a poison kind.
---
Full diff: https://github.com/llvm/llvm-project/pull/195668.diff
1 Files Affected:
- (modified) compiler-rt/lib/asan/asan_errors.cpp (+7-4)
``````````diff
diff --git a/compiler-rt/lib/asan/asan_errors.cpp b/compiler-rt/lib/asan/asan_errors.cpp
index 364dd6d494c2d..0b84ea6f6967a 100644
--- a/compiler-rt/lib/asan/asan_errors.cpp
+++ b/compiler-rt/lib/asan/asan_errors.cpp
@@ -651,11 +651,14 @@ static void CheckPoisonRecords(uptr addr) {
if (!AddrIsInMem(addr))
return;
- u8 *shadow_addr = (u8 *)MemToShadow(addr);
+ const u8* shadow_addr = (const u8*)MemToShadow(addr);
+ u8 shadow_val = shadow_addr[0];
// If we are in the partial right redzone, look at the next shadow byte.
- if (*shadow_addr > 0 && *shadow_addr < 128)
- shadow_addr++;
- u8 shadow_val = *shadow_addr;
+ if (shadow_val > 0 && shadow_val < ASAN_SHADOW_GRANULARITY) {
+ u8 shadow_next = shadow_addr[1];
+ if (shadow_next >= ASAN_SHADOW_GRANULARITY)
+ shadow_val = shadow_next;
+ }
if (shadow_val != kAsanUserPoisonedMemoryMagic)
return;
``````````
</details>
https://github.com/llvm/llvm-project/pull/195668
More information about the llvm-branch-commits
mailing list