WebAssembly prototype implementation #63

Closed
wants to merge 5 commits into
from

Projects

None yet

3 participants

@MikeHolman
Member

To better facilitate collaboration on our WebAssembly implementation, and have more iterative development, I'd like to merge our prototype into the Microsoft fork. Note that this is still not stable or complete, and it will change, frequently. Use is currently only available through WScript.LoadWasmFile in ch.exe (which uses the JsRunWasmScript JSRT API).

Review on Reviewable

MikeHolman and others added some commits Jan 6, 2016
@MikeHolman MikeHolman initial webassembly prototype implementation 87bbc43
George Kuan (Intel Americas Inc) Getting function calls and loops working in the decoder and misc fixes
- fixed module SectEnd (DeclEnd), added function call decoding, and block control flow
- fixed INT32 constant decoding bug where only the first byte was being decoded
- enable If_Else ASTNode
- Nop handling
- fixed a bug in WasmBytecodeGenerator: when emitting Calls, should first test whether we've looked at all params before we try to read (and test for wnLIMIT)
- fixed missing handling of non-void return implicit blocks. now the binary decoder is at parity with sexpr at least in terms of the basic.wast example.
- This is one place where binary decoder and sexpr parser diverges. Sexpr parser needs to ReadFromCall() to consume the final RPAREN and discard it whereas a follow-up invocation of ReadFromCall() in the binary decoder will cause it to drop the subsequent byte.
- fix for function call argument register allocation management
- starting to implement loop and block labels and br
2128e80
George Kuan Merge pull request 10640 from users/b-gekua/wasm into users/michhol/wasm
Getting function calls and loops working in the decoder and misc fixes
8dd87da
@MikeHolman MikeHolman Merge remote-tracking branch 'origin/master' into wasm 9a66a32
@msftclas

Hi @MikeHolman, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!


It looks like you're a Microsoft contributor (Michael Holman). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

@dilijev
Member
dilijev commented Jan 13, 2016

If you have a chance could you incorporate my feedback from here: #62 ?

@MikeHolman
Member

@LouisLaf, @abchatra, @nmostafa, @naturaltransformation: can you review when you get a chance?

@MikeHolman
Member

@dilijev Done. And looks like copyright/EOL tests are passing now.

@MikeHolman MikeHolman fix build related issues
c7295af
@dilijev
Member
dilijev commented Jan 13, 2016

@MikeHolman Yep, looks good.

@dilijev
Member
dilijev commented Jan 13, 2016

@dotnet-bot test this please

@dilijev
Member
dilijev commented Jan 13, 2016

@MikeHolman
In .gitattributes, I think you should mark .webm as binary instead of -crlf
See: http://git-scm.com/book/en/v2/Customizing-Git-Git-Attributes

@LifeIsStrange LifeIsStrange referenced this pull request in servo/servo Jan 13, 2016
Open

Support WebAssembly (wasm) #9232

@MikeHolman
Member

To keep things moving along, I'm going to merge this in (to the WebAssembly branch) so we can start putting in more changes on top. If you have any comments at this point, please open an issue.

@MikeHolman
Member

Squashed and merged in: e44a8b2

@MikeHolman MikeHolman closed this Jan 16, 2016
@dilijev dilijev added the Merged label Jan 16, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment