Index: libc/generic/libc.c
===================================================================
--- libc/generic/libc.c	(revision c05290e81f6086d8e04804e4279b9b263b794033)
+++ libc/generic/libc.c	(revision 86d05faebd6bfaa54033b77b89c83c9e349ac8bd)
@@ -30,4 +30,6 @@
 #include <unistd.h>
 #include <thread.h>
+#include <malloc.h>
+#include <psthread.h>
 
 void _exit(int status) {
@@ -36,7 +38,10 @@
 
 void __main(void) {
+	__tls_set(__make_tls());
 }
 
 void __exit(void) {
+	free(__tls_get());
+	
 	_exit(0);
 }
