equal
deleted
inserted
replaced
2940 _log = NULL; |
2940 _log = NULL; |
2941 _task = NULL; |
2941 _task = NULL; |
2942 _queue = queue; |
2942 _queue = queue; |
2943 _counters = counters; |
2943 _counters = counters; |
2944 _buffer_blob = NULL; |
2944 _buffer_blob = NULL; |
|
2945 _scanned_nmethod = NULL; |
2945 |
2946 |
2946 #ifndef PRODUCT |
2947 #ifndef PRODUCT |
2947 _ideal_graph_printer = NULL; |
2948 _ideal_graph_printer = NULL; |
2948 #endif |
2949 #endif |
2949 } |
2950 } |
2950 |
2951 |
|
2952 void CompilerThread::oops_do(OopClosure* f, CodeBlobClosure* cf) { |
|
2953 JavaThread::oops_do(f, cf); |
|
2954 if (_scanned_nmethod != NULL && cf != NULL) { |
|
2955 // Safepoints can occur when the sweeper is scanning an nmethod so |
|
2956 // process it here to make sure it isn't unloaded in the middle of |
|
2957 // a scan. |
|
2958 cf->do_code_blob(_scanned_nmethod); |
|
2959 } |
|
2960 } |
2951 |
2961 |
2952 // ======= Threads ======== |
2962 // ======= Threads ======== |
2953 |
2963 |
2954 // The Threads class links together all active threads, and provides |
2964 // The Threads class links together all active threads, and provides |
2955 // operations over all threads. It is protected by its own Mutex |
2965 // operations over all threads. It is protected by its own Mutex |