以下のコマンドラインオプションが指定されている場合, JIT コンパイラの開始契機が増加する.
Option | Description |
---|---|
-Xcomp (または -XX:-UseInterpreter) | 全てのメソッドを実行前にコンパイルする |
-XX:+AlwaysCompileLoopMethods | ループを持っているメソッドについては、全て実行前にコンパイルする |
内部的には, これらが指定されていると CompilationPolicy::must_be_compiled() が true を返すようになる. これにより, Constant Pool 中のメソッドの resolve 時やランタイムによるメソッドの呼び出し時に JIT コンパイルが開始される.
(See: here for details) -> CallInfo::set_common() -> CompileBroker::compile_method() -> (See: here for details)
(See: here for details) -> JavaCalls::call_helper() -> CompileBroker::compile_method() -> (See: here for details)
See: here for details
See: here for details
See: here for details
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.