-
Notifications
You must be signed in to change notification settings - Fork 7
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
Make the JIT module stand alone. #982
Conversation
@@ -630,14 +700,36 @@ impl Module { | |||
ExtraArgsIdx::new(idx) | |||
} | |||
|
|||
/// Push a new type into the type table and return its index. | |||
fn push_type(&mut self, ty: Type) -> Result<TypeIdx, CompilationError> { |
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 now realise that you've effectively implemented https://crates.io/crates/indexmap. No need to fix it in this PR but might be worth considering for an upcoming PR?
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.
Ah yes. I vaguely remember this from our rustc days.
And it looks like it does the key parameterisation too, so perhaps all TiVec
s should in fact be IndexMap
s?
One for a future PR, yes.
Any further comments on this, or ready to go? |
Please squash. |
Before, the JIT module would share types, globals and functions with the AOT module. While efficient, it makes testing conceptually more complex. This change makes the JIT IR stand alone.
splat. |
Before, the JIT module would share types, globals and functions with the AOT module. While efficient, it makes testing conceptually more complex.
This change makes the JIT IR stand alone.