Open mrhota opened 7 years ago
Is there a reason that the tests can't pass without work on pthreads? I'm very hesitant to merge anything that would leave the master tests non-green.
@dikaiosune definitely do not merge this. I'm still working on this, and I will push up additional commits when ready. I just created this PR more-or-less to indicate what I'm working on
@dikaiosune btw, I'm pseudo-blocked here until I get global_asm!()
implemented in rustc
. See rust-lang/rust#35119
That macro would make adding platform-specific assembly trivial: no build script hacks, no #[naked]
hacks, just global_asm!(include_str!("path/to/syscall_cp.s"))
or whatever.
We depend on rust-lang/libc now because it has a larger set of types and constants than we do right now, and it includes a nice bit of infrastructure to support a wider array of architectures.
We retained a small number of constants not currently included in libc.
Requires a rather substantial amount of pthreads work (cancelation, for example) before tests will pass.