On Tue, Oct 26, 2021 at 08:10:16AM -0700, Richard Henderson wrote: > On 10/26/21 6:22 AM, Stefan Hajnoczi wrote: > > If "safe" TLS variables are opt-in then we'll likely have obscure bugs > > when code changes to access a TLS variable that was previously never > > accessed from a coroutine. There is no compiler error and no way to > > detect this. When it happens debugging it is painful. > > Co-routines are never used in user-only builds. If developers have the choice of using __thread then bugs can slip through. Your assembly get_addr() approach reduces the performance overhead of TLS getters/setters. Are you concerned about performance, the awkwardness of calling getters/setters, or something else for qemu-user? Stefan