This patch enabled tsan for loongarch64 with 47-bit VMA layout. All
tests are passing.
Also adds assembly routines to enable setjmp/longjmp for loongarch64
on linux.
Paths
| Differential D138489
[tsan] Add tsan support for loongarch64 ClosedPublic Authored by tangyouling on Nov 22 2022, 4:00 AM.
Details
Summary This patch enabled tsan for loongarch64 with 47-bit VMA layout. All Also adds assembly routines to enable setjmp/longjmp for loongarch64
Diff Detail
Event TimelineHerald added projects: Restricted Project, Restricted Project. · View Herald TranscriptNov 22 2022, 4:00 AM Comment Actions $ make check-tsan -j4 Testing Time: 78.34s Unsupported : 91 Passed : 345 Expectedly Failed: 2 Comment Actions I haven't check the correctness of tsan_rtl_loongarch64.S. Perhaps @XiaodongLoong has some inputs as I know he has implemented this previously.
Comment Actions
Comment Actions
Comment Actions LGTM from the LoongArch side but it's better to wait for others.
This revision is now accepted and ready to land.Dec 4 2022, 7:57 PM This revision was landed with ongoing or failed builds.Dec 7 2022, 6:12 PM Closed by commit rGb89b42b31c45: [tsan] Add tsan support for loongarch64 (authored by tangyouling, committed by SixWeining). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 480044 clang/lib/Driver/ToolChains/Linux.cpp
compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
compiler-rt/lib/sanitizer_common/sanitizer_linux.h
compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
compiler-rt/lib/tsan/rtl/CMakeLists.txt
compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
compiler-rt/lib/tsan/rtl/tsan_platform.h
compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
compiler-rt/lib/tsan/rtl/tsan_rtl.h
compiler-rt/lib/tsan/rtl/tsan_rtl_loongarch64.S
compiler-rt/test/sanitizer_common/print_address.h
compiler-rt/test/tsan/map32bit.cpp
compiler-rt/test/tsan/mmap_large.cpp
|
May be it's better to keep original indention. Otherwise the paired #endif doesn't look good.