[PATCH] [TSan][MIPS] Adding support for MIPS64
Sagar Thakur
Sagar.Thakur at imgtec.com
Thu Nov 20 01:17:26 PST 2014
================
Comment at: lib/tsan/rtl/tsan_interceptors.cc:661
@@ +660,3 @@
+#ifdef __mips__
+ // For mips memset gets called before a call to __cxa_guard_aquire
+ // which causes a crash in REAL(pthread_create) during initialization
----------------
samsonov wrote:
> I don't understand this comment. Why does REAL(pthread_create) crash?
As per my observation, in x86_64 first __cxa_guard_aquired() is called and its interceptor calls Initialize().
Initialize() creates background thread.
But in mips64 __interceptor_memset gets called before __cxa_guard_aquire() interceptor. So Initialize() is called from within __intercerptor_memset and REAL(pthread_create) emits a SIGIOT.
@dvyukov I don't know why such behaviour in mips, can you help us with this?
http://reviews.llvm.org/D6291
More information about the llvm-commits
mailing list