58 Reason_Count
59 };
60
61 static const char* reason_name(CompileTask::CompileReason compile_reason) {
62 static const char* reason_names[] = {
63 "no_reason",
64 "count",
65 "backedge_count",
66 "tiered",
67 "CTW",
68 "replay",
69 "whitebox",
70 "must_be_compiled",
71 "bootstrap"
72 };
73 return reason_names[compile_reason];
74 }
75
76 private:
77 static CompileTask* _task_free_list;
78 #ifdef ASSERT
79 static int _num_allocated_tasks;
80 #endif
81
82 Monitor* _lock;
83 uint _compile_id;
84 Method* _method;
85 jobject _method_holder;
86 int _osr_bci;
87 bool _is_complete;
88 bool _is_success;
89 bool _is_blocking;
90 #if INCLUDE_JVMCI
91 bool _has_waiter;
92 // Compiler thread for a blocking JVMCI compilation
93 CompilerThread* _jvmci_compiler_thread;
94 #endif
95 int _comp_level;
96 int _num_inlined_bytecodes;
97 nmethodLocker* _code_handle; // holder of eventual result
98 CompileTask* _next, *_prev;
99 bool _is_free;
100 // Fields used for logging why the compilation was initiated:
101 jlong _time_queued; // time when task was enqueued
|
58 Reason_Count
59 };
60
61 static const char* reason_name(CompileTask::CompileReason compile_reason) {
62 static const char* reason_names[] = {
63 "no_reason",
64 "count",
65 "backedge_count",
66 "tiered",
67 "CTW",
68 "replay",
69 "whitebox",
70 "must_be_compiled",
71 "bootstrap"
72 };
73 return reason_names[compile_reason];
74 }
75
76 private:
77 static CompileTask* _task_free_list;
78 Monitor* _lock;
79 uint _compile_id;
80 Method* _method;
81 jobject _method_holder;
82 int _osr_bci;
83 bool _is_complete;
84 bool _is_success;
85 bool _is_blocking;
86 #if INCLUDE_JVMCI
87 bool _has_waiter;
88 // Compiler thread for a blocking JVMCI compilation
89 CompilerThread* _jvmci_compiler_thread;
90 #endif
91 int _comp_level;
92 int _num_inlined_bytecodes;
93 nmethodLocker* _code_handle; // holder of eventual result
94 CompileTask* _next, *_prev;
95 bool _is_free;
96 // Fields used for logging why the compilation was initiated:
97 jlong _time_queued; // time when task was enqueued
|