Sync OS::GetCurrentThreadId with chromium's/blink's implementation
authorjochen@chromium.org <jochen@chromium.org>
Fri, 10 Oct 2014 07:22:57 +0000 (07:22 +0000)
committerjochen@chromium.org <jochen@chromium.org>
Fri, 10 Oct 2014 07:22:57 +0000 (07:22 +0000)
Compare third_party/WebKit/Source/wtf/ThreadingPthreads.cpp

BUG=v8:3620
R=svenpanne@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/649553002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/base/platform/platform-posix.cc

index 0fc04fc11088b28e4a0ff5c451e7bf45fcab77fd..cd7e09a39ee491a6c59411e8c69257ef5113b3ee 100644 (file)
@@ -253,14 +253,14 @@ int OS::GetCurrentProcessId() {
 
 
 int OS::GetCurrentThreadId() {
-#if defined(ANDROID)
+#if V8_OS_MACOSX
+  return static_cast<int>(pthread_mac_thread_np(pthread_self()));
+#elif V8_OS_LINUX
   return static_cast<int>(syscall(__NR_gettid));
-#elif defined(SYS_gettid)
-  return static_cast<int>(syscall(SYS_gettid));
+#elif V8_OS_ANDROID
+  return static_cast<int>(gettid());
 #else
-  // PNaCL doesn't have a way to get an integral thread ID, but it doesn't
-  // really matter, because we only need it in PerfJitLogger::LogRecordedBuffer.
-  return 0;
+  return reinterpret_cast<int>(pthread_self());
 #endif
 }