diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2013-06-11 00:02:34 +0400 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2013-06-11 00:02:34 +0400 |
commit | 6ccf07b218f59892265f1b313b85e0feafe04958 (patch) | |
tree | f0e97f5af653130fd24cb7d336c1ab4706068953 /include | |
parent | 7e378ce7d0c77402ecac6d5a3777bdcaf5956fd6 (diff) | |
download | bdwgc-6ccf07b218f59892265f1b313b85e0feafe04958.tar.gz |
Use compiler TLS for Android NDK gcc/arm
* include/private/thread_local_alloc.h (USE_COMPILER_TLS): Define for
Android NDK gcc/arm v4.6 or higher.
Diffstat (limited to 'include')
-rw-r--r-- | include/private/thread_local_alloc.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/include/private/thread_local_alloc.h b/include/private/thread_local_alloc.h index 686b638c..0798863e 100644 --- a/include/private/thread_local_alloc.h +++ b/include/private/thread_local_alloc.h @@ -43,9 +43,11 @@ # else # define USE_WIN32_COMPILER_TLS # endif /* !GNU */ -# elif defined(LINUX) && !defined(ARM32) && !defined(AVR32) \ - && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) \ - && !(defined(__clang__) && defined(PLATFORM_ANDROID)) +# elif (defined(LINUX) && !defined(ARM32) && !defined(AVR32) \ + && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) \ + && !(defined(__clang__) && defined(PLATFORM_ANDROID))) \ + || (defined(PLATFORM_ANDROID) && defined(ARM32) \ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))) /* As of Android NDK r8e, Clang cannot find __tls_get_addr. */ # define USE_COMPILER_TLS # elif defined(GC_DGUX386_THREADS) || defined(GC_OSF1_THREADS) \ |