Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix TfMallocTag.Tls.Find static method on Darwin. #3292

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions pxr/base/arch/defines.h
Original file line number Diff line number Diff line change
Expand Up @@ -79,12 +79,6 @@
#define ARCH_HAS_GNU_STL_EXTENSIONS
#endif

// The current version of Apple clang does not support the thread_local
// keyword.
#if !(defined(ARCH_OS_DARWIN) && defined(ARCH_COMPILER_CLANG))
#define ARCH_HAS_THREAD_LOCAL
#endif

// The MAP_POPULATE flag for mmap calls only exists on Linux platforms.
#if defined(ARCH_OS_LINUX)
#define ARCH_HAS_MMAP_MAP_POPULATE
Expand Down
5 changes: 0 additions & 5 deletions pxr/base/tf/mallocTag.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -556,7 +556,6 @@ class TfMallocTag::Tls {
public:
static
TfMallocTag::_ThreadData &Find() {
#if defined(ARCH_HAS_THREAD_LOCAL)
// This thread_local must be placed in static TLS to prevent re-entry.
// Starting in glibc 2.25, dynamic TLS allocation uses malloc. Making
// this allocation after malloc tags have been initialized results in
Expand All @@ -576,10 +575,6 @@ class TfMallocTag::Tls {
: ArchAlignedAlloc(alignof(_ThreadData), sizeof(_ThreadData));
data = new (dataBuffer) _ThreadData();
return *data;
#else
TF_FATAL_ERROR("TfMallocTag not supported on platforms "
"without thread_local");
#endif
}
};

Expand Down
Loading