[all-commits] [llvm/llvm-project] 0f2f1c: [sanitizers] Invalidate GlobalsAA
Vitaly Buka via All-commits
all-commits at lists.llvm.org
Thu Sep 8 14:00:59 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0f2f1c2be164810da96f2bc7229ef56f54c7d137
https://github.com/llvm/llvm-project/commit/0f2f1c2be164810da96f2bc7229ef56f54c7d137
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2022-09-08 (Thu, 08 Sep 2022)
Changed paths:
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
A llvm/test/Instrumentation/MemorySanitizer/invalidate_global_aa.ll
A llvm/test/Instrumentation/MemorySanitizer/msan_invalidate.ll
Log Message:
-----------
[sanitizers] Invalidate GlobalsAA
GlobalsAA is considered stateless as usually transformations do not introduce
new global accesses, and removed global access is not a problem for GlobalsAA
users.
Sanitizers introduce new global accesses:
- Msan and Dfsan tracks origins and parameters with TLS, and to store stack origins.
- Sancov uses global counters. HWAsan store tag state in TLS.
- Asan modifies globals, but I am not sure if invalidation is required.
I see no evidence that TSan needs invalidation.
Reviewed By: aeubanks
Differential Revision: https://reviews.llvm.org/D133394
More information about the All-commits
mailing list