forked from rakudo/rakudo
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Compile optimized bodies of native subs at compile time
Previously the optimized bodies of native subs were compiled on the first call of the sub. NativeCall now exports a CHECK phaser to do this at the end of the compilation phase. This means that it happens e.g. during precompilation and can be done once per installation instead of once per run. Note that loading the native library is still done at runtime. Also since we only know if we can JIT compile the calling code after nativecallbuild, we compile both the JITed and non-JITed body candidates and select the appropriate one in !setup.
- Loading branch information
Showing
1 changed file
with
152 additions
and
82 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters