Pulled code specific to all 2LS out of pthread.c
authorBarret Rhoden <brho@cs.berkeley.edu>
Thu, 3 Mar 2011 01:06:36 +0000 (17:06 -0800)
committerKevin Klues <klueska@cs.berkeley.edu>
Thu, 3 Nov 2011 00:35:59 +0000 (17:35 -0700)
commitb16299dc282b4619d691eb9175a629dacb5bd151
tree85c4392acf8db84197c5cb4deada360642daf081
parentd9e21f815f061bdfeab9137a84c9a61ff4f5da24
Pulled code specific to all 2LS out of pthread.c

In general, I tried to keep things the same as before.  Things got
moved, but there should be very little new behavior.  For instance,
uthread_yield is the old pthread_yield, but with a call out to the 2LS
to do its thing.  Its thing is the same pthread-specific thing as
before.

The test programs that had a vcore_entry() needed to be changed.  Don't
trust any of them, though mhello and syscall still work well.  The
others are so ancient it isn't worth keeping them up, esp since they do
stuff they shouldn't.

c3po doesn't build, mostly due to issues with current_thread.  That
specific __thread belongs to the vcore.  c3po can either use vcores,
like the pthread code does or have another that it uses.  I didn't want
to mess with this too much, so you'll get compile errors.
13 files changed:
tests/eth_audio.c
tests/manycore_test.c
tests/mhello.c
tests/mproctests.c
tests/msr_cycling_vcores.c
tests/msr_dumb_while.c
tests/msr_get_cores.c
tests/msr_get_singlecore.c
tests/syscall.c
user/parlib/include/vcore.h
user/parlib/vcore.c
user/pthread/pthread.c
user/pthread/pthread.h