Skip to content
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

Move function call trampolines to Artifact instead of EngineInner. #1710

Merged
merged 32 commits into from
Oct 20, 2020

Conversation

nlewycky
Copy link
Contributor

@nlewycky nlewycky commented Oct 12, 2020

Description

Move function call trampolines to Artifact instead of EngineInner.

Review

  • Add a short description of the the change to the CHANGELOG.md file

@nlewycky nlewycky marked this pull request as ready for review October 12, 2020 18:19
lib/vm/src/export.rs Outdated Show resolved Hide resolved
Copy link
Member

@syrusakbary syrusakbary left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can also delete the engine register_signature.

And with a bit more effort, we could do the lookup_signature as well

Thoughts @nlewycky ?

@nlewycky
Copy link
Contributor Author

We can also delete the engine register_signature.

And with a bit more effort, we could do the lookup_signature as well

Thoughts @nlewycky ?

I tried removing them while making this PR, then had to put them back. We still need a single signature index across all Instances in the same Store. I can investigate trying again once this PR has landed.

@syrusakbary
Copy link
Member

We can also delete the engine register_signature.

I believe register_signature is no longer used anywhere?

@nlewycky
Copy link
Contributor Author

We can also delete the engine register_signature.

I believe register_signature is no longer used anywhere?

.register_signature(&self.exported.signature);

    pub(crate) fn checked_anyfunc(&self) -> VMCallerCheckedAnyfunc {
        let vmsignature = self
            .store
            .engine()
            .register_signature(&self.exported.signature);
        VMCallerCheckedAnyfunc {
            func_ptr: self.exported.address,
            type_index: vmsignature,
            vmctx: self.exported.vmctx,
        }
    }

@syrusakbary
Copy link
Member

bors try

bors bot added a commit that referenced this pull request Oct 19, 2020
@bors
Copy link
Contributor

bors bot commented Oct 19, 2020

lib/vm/src/export.rs Outdated Show resolved Hide resolved
@nlewycky
Copy link
Contributor Author

bors r+

@bors
Copy link
Contributor

bors bot commented Oct 20, 2020

@bors bors bot merged commit a3ffc9e into master Oct 20, 2020
@bors bors bot deleted the feature/trampoline-in-artifact branch October 20, 2020 19:03
@nlewycky nlewycky restored the feature/trampoline-in-artifact branch October 20, 2020 19:55
@nlewycky nlewycky deleted the feature/trampoline-in-artifact branch October 20, 2020 19:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants