Changes
Summary
- tsan: allow fast large MemoryRangeSet on non-Windows Go The fast reset for large memory regions is not working only on windows. So enable it for Go/linux/darwin/freebsd. See https://github.com/golang/go/issues/20139 for background and motivation. Based on idea by Josh Bleecher Snyder.
- [compiler-rt] move tsan's Android __get_tls() to sanitizer_common Summary: TSan's Android `__get_tls()` and `TLS_SLOT_TSAN` can be used by other sanitizers as well (see D32649), this change moves them to sanitizer_common. I picked sanitizer_linux.h as their new home. In the process, add the 32-bit versions for ARM, i386 & MIPS. Can the address of `__get_tls()[TLS_SLOT_TSAN]` change in between the calls? I am not sure if there is a need to repeat the construct as opposed to using a variable. So I left things as they were. Testing on my side was restricted to a successful cross-compilation. Reviewers: dvyukov, kubamracek Reviewed By: dvyukov Subscribers: aemerson, rengolin, srhines, dberris, arichardson, llvm-commits Differential Revision: https://reviews.llvm.org/D32705
- [NFC] [IslAST] fix typo: "int the" -> "in the"
- revert r301923 : [InstCombine] don't use DeMorgan's Law on integer constants There's a clang test that is wrongly using -O1 and failing after this commit.
Change Type | Path in Repository | Path in Workspace |
---|---|---|
![]() | /compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc (diff) | llvm-revision.src/compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc |
Change Type | Path in Repository | Path in Workspace |
![]() | /compiler-rt/trunk/lib/sanitizer_common/sanitizer_linux.h (diff) | llvm-revision.src/compiler-rt/trunk/lib/sanitizer_common/sanitizer_linux.h |
![]() | /compiler-rt/trunk/lib/tsan/rtl/tsan_platform_linux.cc (diff) | llvm-revision.src/compiler-rt/trunk/lib/tsan/rtl/tsan_platform_linux.cc |
Change Type | Path in Repository | Path in Workspace |
![]() | /polly/trunk/lib/CodeGen/IslAst.cpp (diff) | llvm-revision.src/polly/trunk/lib/CodeGen/IslAst.cpp |
Change Type | Path in Repository | Path in Workspace |
![]() | /llvm/trunk/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp (diff) | llvm-revision.src/llvm/trunk/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp |
![]() | /llvm/trunk/test/Transforms/InstCombine/assume2.ll (diff) | llvm-revision.src/llvm/trunk/test/Transforms/InstCombine/assume2.ll |
![]() | /llvm/trunk/test/Transforms/InstCombine/demorgan.ll (diff) | llvm-revision.src/llvm/trunk/test/Transforms/InstCombine/demorgan.ll |