On Mon, Nov 23, 2015 at 02:48:25PM -0600, Nico Williams wrote:
>
> I use this in an autoconf project (I know, OpenSSL doesn't use autoconf):
>
> dnl Thread local storage
> have___thread=no
> AC_MSG_CHECKING(for thread-local storage)
> AC_LINK_IFELSE([AC_LANG_SOURCE([
> static __thread int x ;
> int main () { x = 123; return x; }
> ])], have___thread=yes)
> if test $have___thread = yes; then
> AC_DEFINE([HAVE___THREAD],1,[Define to 1 if the system supports
> __thread])
> fi
> AC_MSG_RESULT($have___thread)
>
> Is there something wrong with that that I should know? I suppose the
> test could use threads to make real sure that it's getting thread-
> locals, in case the compiler is simply ignoring __thread. Are there
> compilers that ignore __thread??
I think that we currently don't do any compile / link test to
detect features but that we instead explicitly say so for each
platform.
Anyway, the gcc the documentation is here:
https://gcc.gnu.org/onlinedocs/gcc/Thread-Local.html
TLS support clearly isn't supported everywhere.
Kurt
_______________________________________________
openssl-dev mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev