libthread: fix 64-bit bug in threadstart (Nathaniel Filardo)
diff --git a/src/libthread/thread.c b/src/libthread/thread.c
index 9b47e76..4e3e473 100644
--- a/src/libthread/thread.c
+++ b/src/libthread/thread.c
@@ -86,7 +86,7 @@
 	_Thread *t;
 	ulong z;
 
-	z = x<<16;	/* hide undefined 32-bit shift from 32-bit compilers */
+	z = (ulong)x << 16;	/* hide undefined 32-bit shift from 32-bit compilers */
 	z <<= 16;
 	z |= y;
 	t = (_Thread*)z;