Please sign in to comment.
Don't inline calls for not often called methods
This changes the JIT so we don't inline methods that aren't often called, allowing for more room in JIT'ted code for methods that are often called. It also changes to keep track of compiling explicitly instead of (ab)using the call_count for that. Resetting the call count had other effects such as disabling that method for future jitting that has adverse effects. On my system this shaves off around 1 - 2 seconds of a CI run.
- Loading branch information...
Showing with 65 additions and 32 deletions.
- +1 −5 vm/builtin/compiledcode.cpp
- +3 −2 vm/inline_cache.hpp
- +9 −3 vm/llvm/background_compile_request.hpp
- +15 −7 vm/llvm/inline.cpp
- +2 −2 vm/llvm/inline.hpp
- +2 −1 vm/llvm/inline_policy.hpp
- +8 −2 vm/llvm/jit_compiler.cpp
- +1 −1 vm/llvm/jit_compiler.hpp
- +1 −0 vm/llvm/method_info.hpp
- +9 −8 vm/llvm/state.cpp
- +14 −1 vm/machine_code.hpp