244 name_buffer_length = 100 |
244 name_buffer_length = 100 |
245 }; |
245 }; |
246 |
246 |
247 // Compile type Information for print_last_compile() and CompilerCounters |
247 // Compile type Information for print_last_compile() and CompilerCounters |
248 enum { no_compile, normal_compile, osr_compile, native_compile }; |
248 enum { no_compile, normal_compile, osr_compile, native_compile }; |
|
249 static int assign_compile_id (methodHandle method, int osr_bci); |
|
250 |
249 |
251 |
250 private: |
252 private: |
251 static bool _initialized; |
253 static bool _initialized; |
252 static volatile bool _should_block; |
254 static volatile bool _should_block; |
253 |
255 |
256 |
258 |
257 // The installed compiler(s) |
259 // The installed compiler(s) |
258 static AbstractCompiler* _compilers[2]; |
260 static AbstractCompiler* _compilers[2]; |
259 |
261 |
260 // These counters are used for assigning id's to each compilation |
262 // These counters are used for assigning id's to each compilation |
261 static uint _compilation_id; |
263 static volatile jint _compilation_id; |
262 static uint _osr_compilation_id; |
264 static volatile jint _osr_compilation_id; |
263 static uint _native_compilation_id; |
|
264 |
265 |
265 static int _last_compile_type; |
266 static int _last_compile_type; |
266 static int _last_compile_level; |
267 static int _last_compile_level; |
267 static char _last_method_compiled[name_buffer_length]; |
268 static char _last_method_compiled[name_buffer_length]; |
268 |
269 |
319 |
320 |
320 static CompilerThread* make_compiler_thread(const char* name, CompileQueue* queue, CompilerCounters* counters, AbstractCompiler* comp, TRAPS); |
321 static CompilerThread* make_compiler_thread(const char* name, CompileQueue* queue, CompilerCounters* counters, AbstractCompiler* comp, TRAPS); |
321 static void init_compiler_threads(int c1_compiler_count, int c2_compiler_count); |
322 static void init_compiler_threads(int c1_compiler_count, int c2_compiler_count); |
322 static bool compilation_is_complete (methodHandle method, int osr_bci, int comp_level); |
323 static bool compilation_is_complete (methodHandle method, int osr_bci, int comp_level); |
323 static bool compilation_is_prohibited(methodHandle method, int osr_bci, int comp_level); |
324 static bool compilation_is_prohibited(methodHandle method, int osr_bci, int comp_level); |
324 static uint assign_compile_id (methodHandle method, int osr_bci); |
|
325 static bool is_compile_blocking (methodHandle method, int osr_bci); |
325 static bool is_compile_blocking (methodHandle method, int osr_bci); |
326 static void preload_classes (methodHandle method, TRAPS); |
326 static void preload_classes (methodHandle method, TRAPS); |
327 |
327 |
328 static CompileTask* create_compile_task(CompileQueue* queue, |
328 static CompileTask* create_compile_task(CompileQueue* queue, |
329 int compile_id, |
329 int compile_id, |