Hide emutls* symbols in libc.so

Also make thread_local in test static to avoid ld.bfd
 warning for arm64.

Change-Id: I09a3f2aa9b73a4fafa3f3bbc64ddc2a128ad50ee
This commit is contained in:
Dmitriy Ivanov 2015-04-15 14:07:28 -07:00
parent cafc948069
commit 66aa0b61f7
3 changed files with 3 additions and 3 deletions

View File

@ -1007,7 +1007,7 @@ include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(libc_thread_atexit_impl_src_files)
LOCAL_CFLAGS := $(libc_common_cflags) -fno-data-sections -Wframe-larger-than=2048
LOCAL_CFLAGS := $(libc_common_cflags) -Wframe-larger-than=2048
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags) -Wold-style-cast

View File

@ -22,7 +22,7 @@ struct thread_local_dtor {
thread_local_dtor* next;
};
__thread thread_local_dtor* thread_local_dtors = nullptr;
static __thread thread_local_dtor* thread_local_dtors = nullptr;
extern "C" int __cxa_thread_atexit_impl(void (*func) (void *), void *arg, void *dso_handle) {
thread_local_dtor* dtor = new thread_local_dtor();

View File

@ -35,7 +35,7 @@ class ClassWithDtor {
std::string message;
};
thread_local ClassWithDtor class_with_dtor;
static thread_local ClassWithDtor class_with_dtor;
static void* thread_nop(void* arg) {
class_with_dtor.set_message(*static_cast<std::string*>(arg));