This patch adds runtime support, adjusts tests and enables MSan.
Like for ASan and UBSan, compile the tests with -mbackchain.
Paths
| Differential D76358
[MSan] Enable for SystemZ ClosedPublic Authored by iii on Mar 18 2020, 6:30 AM.
Details
Summary This patch adds runtime support, adjusts tests and enables MSan. Like for ASan and UBSan, compile the tests with -mbackchain.
Diff Detail
Event TimelineComment Actions LGTM with 2 comments. VarArgHelper implementation looks reasonable, but I did not review it in-depth.
iii added inline comments.
iii added inline comments.
vitalybuka added inline comments.
iii added inline comments.
Comment Actions Split out mmap (already landed), uname and instrumentation Therefore, following changes need to land first:
iii retitled this revision from [MSan] Enable MSAN for SystemZ to [MSan] Enable for SystemZ.Mar 23 2020, 9:46 AM This revision is now accepted and ready to land.Mar 23 2020, 11:41 AM iii added a child revision: D77400: [compiler-rt] Don't use __libc_stack_end on ARM.Apr 3 2020, 8:02 AM iii removed a child revision: D77400: [compiler-rt] Don't use __libc_stack_end on ARM.Apr 4 2020, 2:07 PM Comment Actions Instead of checking only top frame, compile tests with Closed by commit rG921009e66798: [MSan] Enable for SystemZ (authored by iii). · Explain WhyApr 16 2020, 3:23 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 251060 compiler-rt/cmake/config-ix.cmake
compiler-rt/lib/msan/msan.h
compiler-rt/lib/msan/msan_allocator.cpp
compiler-rt/lib/msan/msan_interceptors.cpp
compiler-rt/lib/sanitizer_common/sanitizer_linux_s390.cpp
compiler-rt/test/msan/backtrace.cpp
compiler-rt/test/msan/dso-origin.cpp
compiler-rt/test/msan/lit.cfg.py
compiler-rt/test/msan/mmap.cpp
compiler-rt/test/msan/mmap_below_shadow.cpp
compiler-rt/test/msan/param_tls_limit.cpp
compiler-rt/test/msan/strlen_of_shadow.cpp
llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
|
Please upload this as a separate change.
I think there should be () around rounded_length - 1, otherwise this will trigger UB when the mapping ends at max(uintptr_t).