-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Possible next steps #17
Comments
|
|
@eholk That's a long ways off, although to get things semi-working you could somehow ignore all of the intrinsics and MIR Rvalues/types and compile a broken libcore/libstd that tests can link to. |
Yeah, definitely. I think of it as passing the test suite is how we could know we are done, and it also gives a concrete set of test cases to start with. I imagine at least a few of them have no dependencies on libcore/libstd, so we might be able to start with those. Of course, maybe the WebAssembly platform is sufficiently different that we'll want to have a libwebstd instead, or maybe libwebcore at least. |
@eholk The platform-specific stuff would result in a different |
@eddyb Thanks! I knew there was some very small amount of stuff that Rust needs on each platform, I just didn't remember how it all breaks down. Anyway, it seems like it should be quite possible to run most Rust code on WebAssembly. |
When using emscripten as the runtime we can get pretty good POSIX fidelity, so I'm confident we can make std mostly work. |
Here's a recently-updated list of things/roadmap of sorts 😄
|
Thanks so much @lqd! I try to get easy issues into TWiR's call to participation each week, and I've added mir2wasm to my weekly triage list. I'll endeavor to break some of these out and try to stir up some more contributors. |
Some thoughts/braindump on possible next steps:
trans_operand
panics if a value is not a Rust 32 bits isize, the binaryops emit the hardcoded i32 versions of those instructions, etc)br_table
existed in the binaryen API ? -- since it looked interesting for this use case but I didn't investigate it very much)trans_lval
)update: typo
The text was updated successfully, but these errors were encountered: