Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(140)

Unified Diff: third_party/tcmalloc/chromium/src/thread_cache.cc

Issue 10035012: Added compile-time define to add "initial-exec" attribute. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Made the comments better. Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/tcmalloc/chromium/src/thread_cache.cc
diff --git a/third_party/tcmalloc/chromium/src/thread_cache.cc b/third_party/tcmalloc/chromium/src/thread_cache.cc
index 765786ff40302004b1b128bc38ebcafdf8309d58..cc03b65c00723fcf8d141440544336c05481e5f1 100644
--- a/third_party/tcmalloc/chromium/src/thread_cache.cc
+++ b/third_party/tcmalloc/chromium/src/thread_cache.cc
@@ -64,7 +64,15 @@ int ThreadCache::thread_heap_count_ = 0;
ThreadCache* ThreadCache::next_memory_steal_ = NULL;
#ifdef HAVE_TLS
__thread ThreadCache* ThreadCache::threadlocal_heap_
-# ifdef HAVE___ATTRIBUTE__
+// This code links against pyautolib.so, which causes dlopen() on that shared
+// object to fail when -fprofile-generate is used with it. Ideally pyautolib.so
+// should not link against this code. There is a bug filed for that:
+// http://code.google.com/p/chromium/issues/detail?id=124489
+// For now the workaround is to pass in -DPGO_GENERATE when building Chrome for
+// instrumentation (-fprofile-generate).
+// For all non-instrumentation builds, this define will not be set and the
+// performance benefit of "intial-exec" will be achieved.
+#if defined(HAVE___ATTRIBUTE__) && !defined(PGO_GENERATE)
__attribute__ ((tls_model ("initial-exec")))
# endif
;

Powered by Google App Engine
This is Rietveld 408576698