216 217 static volatile jint _print_compilation_warning; 218 219 static JavaThread* make_thread(const char* name, CompileQueue* queue, CompilerCounters* counters, AbstractCompiler* comp, bool compiler_thread, TRAPS); 220 static void init_compiler_sweeper_threads(int c1_compiler_count, int c2_compiler_count); 221 static bool compilation_is_complete (const methodHandle& method, int osr_bci, int comp_level); 222 static bool compilation_is_prohibited(const methodHandle& method, int osr_bci, int comp_level); 223 static bool is_compile_blocking(); 224 static void preload_classes (const methodHandle& method, TRAPS); 225 226 static CompileTask* create_compile_task(CompileQueue* queue, 227 int compile_id, 228 const methodHandle& method, 229 int osr_bci, 230 int comp_level, 231 const methodHandle& hot_method, 232 int hot_count, 233 const char* comment, 234 bool blocking); 235 static void wait_for_completion(CompileTask* task); 236 237 static void invoke_compiler_on_method(CompileTask* task); 238 static void post_compile(CompilerThread* thread, CompileTask* task, EventCompilation& event, bool success, ciEnv* ci_env); 239 static void set_last_compile(CompilerThread *thread, const methodHandle& method, bool is_osr, int comp_level); 240 static void push_jni_handle_block(); 241 static void pop_jni_handle_block(); 242 static void collect_statistics(CompilerThread* thread, elapsedTimer time, CompileTask* task); 243 244 static void compile_method_base(const methodHandle& method, 245 int osr_bci, 246 int comp_level, 247 const methodHandle& hot_method, 248 int hot_count, 249 const char* comment, 250 Thread* thread); 251 252 static CompileQueue* compile_queue(int comp_level); 253 static bool init_compiler_runtime(); 254 static void shutdown_compiler_runtime(AbstractCompiler* comp, CompilerThread* thread); 255 | 216 217 static volatile jint _print_compilation_warning; 218 219 static JavaThread* make_thread(const char* name, CompileQueue* queue, CompilerCounters* counters, AbstractCompiler* comp, bool compiler_thread, TRAPS); 220 static void init_compiler_sweeper_threads(int c1_compiler_count, int c2_compiler_count); 221 static bool compilation_is_complete (const methodHandle& method, int osr_bci, int comp_level); 222 static bool compilation_is_prohibited(const methodHandle& method, int osr_bci, int comp_level); 223 static bool is_compile_blocking(); 224 static void preload_classes (const methodHandle& method, TRAPS); 225 226 static CompileTask* create_compile_task(CompileQueue* queue, 227 int compile_id, 228 const methodHandle& method, 229 int osr_bci, 230 int comp_level, 231 const methodHandle& hot_method, 232 int hot_count, 233 const char* comment, 234 bool blocking); 235 static void wait_for_completion(CompileTask* task); 236 #if INCLUDE_JVMCI 237 static bool wait_for_jvmci_completion(CompileTask* task, JavaThread* thread); 238 #endif 239 240 static void invoke_compiler_on_method(CompileTask* task); 241 static void post_compile(CompilerThread* thread, CompileTask* task, EventCompilation& event, bool success, ciEnv* ci_env); 242 static void set_last_compile(CompilerThread *thread, const methodHandle& method, bool is_osr, int comp_level); 243 static void push_jni_handle_block(); 244 static void pop_jni_handle_block(); 245 static void collect_statistics(CompilerThread* thread, elapsedTimer time, CompileTask* task); 246 247 static void compile_method_base(const methodHandle& method, 248 int osr_bci, 249 int comp_level, 250 const methodHandle& hot_method, 251 int hot_count, 252 const char* comment, 253 Thread* thread); 254 255 static CompileQueue* compile_queue(int comp_level); 256 static bool init_compiler_runtime(); 257 static void shutdown_compiler_runtime(AbstractCompiler* comp, CompilerThread* thread); 258 |