On Feb 11 23:52, Dimitry Andric via Cygwin wrote: > Yes, that is the RISCV or SH specific method. On x86_64, you access it via > the fs register, i.e. gcc (on Linux at least :) compiles: > > void *p = __builtin_thread_pointer(); > > to something like: > > movq %fs:0, %rax > movq %rax, -8(%rbp) > > If somebody knows how to build the Cygwin gcc package from scratch, > they could inspect the config.log file, to see what that says about > TLS detection.
https://cygwin.com/pipermail/cygwin/2025-February/257300.html As I wrote it's different on Windows and there's no good equivalent. On Windows, %fs points to the TEB on 32 bit x86, while it's %gs on x86_64. The TEB is not the same thing as the TCB in NPTL, which is what __builtin_thread_pointer() returns. I don't think we can implement this in a way which is even marginally similar... Corinna -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple