-
Notifications
You must be signed in to change notification settings - Fork 840
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
VM Refactor, new runtime, and the ability to have multiple compilers. #80
Conversation
src/runtime/backing.rs
Outdated
GlobalInit::Val(Val::I64(x)) => x as u64, | ||
GlobalInit::Val(Val::F32(x)) => x as u64, | ||
GlobalInit::Val(Val::F64(x)) => x, | ||
GlobalInit::GetGlobal(index) => (imports.globals[index.index()].global).data, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I like having a verb (Get
) into the struct name.
What you think about using GlobalInit::ImportedGlobal
instead ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay, sounds fine.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That struct is just exposing instantiation-time initialization, which can either be a const.*
or a get_global
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe *FromGlobal or sth. But that's the name Cranelift used as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm just copying the name in the webassembly reference.
This reverts commit fbe480c.
Implement extern types in Wasm C API
This pr rewrites the wasm runtime used by wasmer. It also provides the necessary abstractions to provide multiple compiler backends that feed into the runtime frontend.
I'd like to merge this in the next few days. It can continue to progress while upstream.
Progress:
Emtests(they will be handled in a separate PR)