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

[llvm] Define a separate symbol for the aot method info for every method. Pass this symbol to the init functions instead of the method index. #19298

Merged
merged 3 commits into from
Apr 6, 2020

Conversation

vargaz
Copy link
Contributor

@vargaz vargaz commented Mar 24, 2020

This removes a dependency the generated code has on the method index, hopefully allowing separate compilation etc. in the future.

@vargaz
Copy link
Contributor Author

vargaz commented Mar 24, 2020

This also reduces code size on wasm a bit, presumably because the method_info_offsets table becomes smaller, since it contains more 0s.

@vargaz
Copy link
Contributor Author

vargaz commented Mar 24, 2020

@monojenkins build failed

vargaz added 3 commits April 6, 2020 11:15
…hod. Pass this symbol to the init functions instead of the

method index.

This removes a dependency the generated code has on the method index, hopefully allowing separate compilation etc. in the future.
…d without decoding the method info structure, which is not available to the runtime for LLVM methods.
…he init flag to be changed to a per-method scalar later to remove

a dependency on the method index.

Also rename init_icall_wrapper to init_func, it does much more than just calling the icall.
@vargaz vargaz force-pushed the llvm-method-info branch from 5717ede to b72f547 Compare April 6, 2020 15:15
@vargaz
Copy link
Contributor Author

vargaz commented Apr 6, 2020

@monojenkins build failed

@vargaz vargaz merged commit 36c1034 into mono:master Apr 6, 2020
@vargaz vargaz deleted the llvm-method-info branch April 6, 2020 22:14
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