tsd.c 591 B

123456789101112131415161718
  1. /*
  2. * Copyright (C) 2006 by Steven J. Hill <sjhill@realitydiluted.com>
  3. *
  4. * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball.
  5. */
  6. /* libpthread sets _dl_error_catch_tsd to point to this function.
  7. We define it here instead of in libpthread so that it doesn't
  8. need to have a TLS segment of its own just for this one pointer. */
  9. #include <features.h>
  10. void **__libc_dl_error_tsd(void) __attribute__ ((const));
  11. void ** __attribute__ ((const))
  12. __libc_dl_error_tsd (void)
  13. {
  14. static __thread void *__tsd_data attribute_tls_model_ie;
  15. return &__tsd_data;
  16. }