Hi, On Thu, 25 Oct 2018, Florian Klaempfl wrote:
> >> That is good news. The contours of a TODO list are becoming visible :) > >> > >> But we may need also need a solution for other platforms, which means the > >> current system should remain in place for those platforms where such a > >> system is not present ? > > > > FPC already has some code to support section threadvars via the GS segment > > on i386 at least, but it doesn't seem to be enabled by default? (Couldn't > > test it, but the tf_section_threadvars target flag, which enable this is > > actually behind a define in i_linux.pas, which I couldn't find enabled > > anywhere?). Also tf_section_threadvars flag has some code to support it > > all over the compiler, including the x86 cg. I have some really vague > > memories I actually enabled it in some experimental local version I had, > > and it worked on first sight at least, but I could be completely off here. > > > > I wonder why it was never enabled by default. > > The %gs based approach works only for object files linked statically to > the executable. In general there are four TLS access models on linux and > at least three of them need to be supported, if one wants to support > dyn. libraries in a usefull manner. Of course, this comes with the > requirement to over means to control the used model. The tls.pdf by U. > Drepper decribes it very well. Ah, right. It's been a while. Ironically, it would have been enough for the actual use case at hand, when I fiddled with it. Charlie _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel