[scudo][standalone] Link tests against libatomic

Summary:
Some clang versions (< 6.0) do not inline the atomic builtin functions
leaving unresolved references to `__atomic_load_8` and so on (seems to
be mostly 64-bit atomics on 32-bit platforms).
I tried without success to use some cmake magic to detect when that
would be the case, and decided to fall back to unconditionally
linking libatomic.

Reviewers: morehouse, eugenis, vitalybuka, hctim, tejohnson

Reviewed By: tejohnson

Subscribers: mgorny, delcypher, jfb, #sanitizers, llvm-commits

Tags: #llvm, #sanitizers

Differential Revision: https://reviews.llvm.org/D64134

llvm-svn: 365052
This commit is contained in:
Kostya Kortchinsky 2019-07-03 16:32:01 +00:00
parent bddb8c3597
commit f50a953ea7
1 changed files with 2 additions and 0 deletions

View File

@ -23,6 +23,8 @@ foreach(lib ${SANITIZER_TEST_CXX_LIBRARIES})
list(APPEND LINK_FLAGS -l${lib})
endforeach()
list(APPEND LINK_FLAGS -pthread)
# Linking against libatomic is required with some compilers
list(APPEND LINK_FLAGS -latomic)
set(SCUDO_TEST_HEADERS)
foreach (header ${SCUDO_HEADERS})