[PATCH] D53102: Support for the mno-tls-direct-seg-refs flag

Ruslan Nikolaev via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 18 07:07:16 PDT 2018


nruslan added a comment.

In https://reviews.llvm.org/D53102#1268364, @kristina wrote:

> By the way, out of curiosity is this for anything specific (alternative libc or some user-mode-scheduling implementation)? Not nitpicking, just curious since it's an interesting topic in general and it's frustrating that the architecture is so limited in terms of registers that can be used for TLS/related data unlike newer ARM/ARM64 architectures.
>
> Also FWIW `%gs` is generally free to use under x86_64 Linux which is where I usually place my thread control blocks which doesn't interfere with libc which uses `%fs`. (Just started build/test job, waiting on that for now)


@kristina : Yes, there are some recent use cases mentioned in the bug report (see the link above). Also, I know that it was used for x86 (32-bit only) Xen guests where it would be recommended to compile an OS with this flag. I also used it in my fork of the NPTL pthread library in VirtuOS to support M:N threading model: http://sigops.org/sosp/sosp13/papers/p116-nikolaev.pdf


https://reviews.llvm.org/D53102





More information about the cfe-commits mailing list