Index: fusl/src/thread/tss_set.c |
diff --git a/fusl/src/thread/tss_set.c b/fusl/src/thread/tss_set.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..70c4fb723cf68b6e37e43477ae8f17d6f6e63b1c |
--- /dev/null |
+++ b/fusl/src/thread/tss_set.c |
@@ -0,0 +1,13 @@ |
+#include "pthread_impl.h" |
+#include <threads.h> |
+ |
+int tss_set(tss_t k, void *x) |
+{ |
+ struct pthread *self = __pthread_self(); |
+ /* Avoid unnecessary COW */ |
+ if (self->tsd[k] != x) { |
+ self->tsd[k] = x; |
+ self->tsd_used = 1; |
+ } |
+ return thrd_success; |
+} |