diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2015-10-22 02:01:33 +0300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2015-10-22 02:01:33 +0300 |
commit | 3224ce8584eb49203d4e58dcc5ebc73d63efee25 (patch) | |
tree | 8fb20b2fa2db83084dd4b69c33a22cde6a7ca6d6 | |
parent | b7b1004a2aedaee00bc7baefd191268dbe9574a8 (diff) | |
download | bdwgc-3224ce8584eb49203d4e58dcc5ebc73d63efee25.tar.gz |
Workaround 'unresolved __tls_get_addr' error for Android NDK Clang
* include/private/thread_local_alloc.h (USE_COMPILER_TLS): Do not
define for Android Clang (any CPU arch); update comment.
-rw-r--r-- | include/private/thread_local_alloc.h | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/include/private/thread_local_alloc.h b/include/private/thread_local_alloc.h index 2b445bac..d5c5d580 100644 --- a/include/private/thread_local_alloc.h +++ b/include/private/thread_local_alloc.h @@ -53,16 +53,8 @@ && !(defined(__clang__) && defined(PLATFORM_ANDROID))) \ || (defined(PLATFORM_ANDROID) && !defined(__clang__) \ && defined(ARM32) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))) \ - || (defined(PLATFORM_ANDROID) && !defined(ARM32) && !defined(MIPS) \ - && (__clang_major__ > 3 \ - || (__clang_major__ == 3 && __clang_minor__ >= 6))) - /* As of Android NDK r10e, Clang/arm with bfd linker and */ - /* Clang/mips cannot find __tls_get_addr. Older NDK releases */ - /* have same issue for arm (regardless of linker) and x86 if */ - /* gcc 4.6 toolchain is used for linking (checked condition */ - /* is based on the fact that Android NDK r10e added clang 3.6 */ - /* dropping gcc 4.6). */ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))) + /* As of Android NDK r10e, Clang cannot find __tls_get_addr. */ # define USE_COMPILER_TLS # elif defined(GC_DGUX386_THREADS) || defined(GC_OSF1_THREADS) \ || defined(GC_AIX_THREADS) || defined(GC_DARWIN_THREADS) \ |