[all-commits] [llvm/llvm-project] b4257d: [tsan] Replace mem intrinsics with calls to interc...
Vitaly Buka via All-commits
all-commits at lists.llvm.org
Tue Sep 6 13:09:48 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: b4257d3bf58c51ff437c99c7b160023f5fffac78
https://github.com/llvm/llvm-project/commit/b4257d3bf58c51ff437c99c7b160023f5fffac78
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2022-09-06 (Tue, 06 Sep 2022)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan.syms.extra
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_interface.h
M compiler-rt/test/tsan/Linux/double_race.cpp
M compiler-rt/test/tsan/inlined_memcpy_race.cpp
M compiler-rt/test/tsan/inlined_memcpy_race2.cpp
M compiler-rt/test/tsan/memcmp_race.cpp
M compiler-rt/test/tsan/memcpy_race.cpp
M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
M llvm/test/Instrumentation/ThreadSanitizer/tsan_basic.ll
Log Message:
-----------
[tsan] Replace mem intrinsics with calls to interceptors
After https://reviews.llvm.org/rG463aa814182a23 tsan replaces llvm
intrinsics with calls to glibc functions. However this approach is
fragile, as slight changes in pipeline can return llvm intrinsics back.
In particular InstCombine can do that.
Msan/Asan already declare own version of these memory
functions for the similar purpose.
KCSAN, or anything that uses something else than compiler-rt, needs to
implement this callbacks.
Reviewed By: melver
Differential Revision: https://reviews.llvm.org/D133268
More information about the All-commits
mailing list