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

Research use of LLVM's StackMaps for online code patching #55

Open
0x7CFE opened this issue Apr 22, 2014 · 0 comments
Open

Research use of LLVM's StackMaps for online code patching #55

0x7CFE opened this issue Apr 22, 2014 · 0 comments

Comments

@0x7CFE
Copy link
Owner

0x7CFE commented Apr 22, 2014

LLVM provides special API for preallocating patch points in the JIT code which then may be altered without full function recompilation. This is especially useful in polymorphic method caches and dynamic type inferernce. This API is still experimental but already used in Webkit's Javascript engine.

More information may be found here: http://llvm.org/docs/StackMaps.html

P.S.: Known pitfall is that current implementation of StackMaps supports only x64, albeit developers note that it is possible to extend it to x32. Still, it has to be done.

@0x7CFE 0x7CFE changed the title Research possibility of LLVM's StackMaps for online code patching Research use of LLVM's StackMaps for online code patching Apr 22, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant