src/share/vm/compiler/compileBroker.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hs-comp Sdiff src/share/vm/compiler

src/share/vm/compiler/compileBroker.hpp

Print this page
rev 7050 : 8058461: serviceability/dcmd/CodelistTest.java and serviceability/dcmd/CompilerQueueTest.java SIGSEGV
Summary: Print only alive nmethods and add lock to print compile queue
Reviewed-by:


 218   const char*  name() const                      { return _name; }
 219   Monitor*     lock() const                      { return _lock; }
 220 
 221   void         add(CompileTask* task);
 222   void         remove(CompileTask* task);
 223   void         remove_and_mark_stale(CompileTask* task);
 224   CompileTask* first()                           { return _first; }
 225   CompileTask* last()                            { return _last;  }
 226 
 227   CompileTask* get();
 228 
 229   bool         is_empty() const                  { return _first == NULL; }
 230   int          size()     const                  { return _size;          }
 231 
 232 
 233   // Redefine Classes support
 234   void mark_on_stack();
 235   void free_all();
 236   void print_tty();
 237   void print(outputStream* st = tty);

 238 
 239   ~CompileQueue() {
 240     assert (is_empty(), " Compile Queue must be empty");
 241   }
 242 };
 243 
 244 // CompileTaskWrapper
 245 //
 246 // Assign this task to the current thread.  Deallocate the task
 247 // when the compilation is complete.
 248 class CompileTaskWrapper : StackObj {
 249 public:
 250   CompileTaskWrapper(CompileTask* task);
 251   ~CompileTaskWrapper();
 252 };
 253 
 254 
 255 // Compilation
 256 //
 257 // The broker for all compilation requests.




 218   const char*  name() const                      { return _name; }
 219   Monitor*     lock() const                      { return _lock; }
 220 
 221   void         add(CompileTask* task);
 222   void         remove(CompileTask* task);
 223   void         remove_and_mark_stale(CompileTask* task);
 224   CompileTask* first()                           { return _first; }
 225   CompileTask* last()                            { return _last;  }
 226 
 227   CompileTask* get();
 228 
 229   bool         is_empty() const                  { return _first == NULL; }
 230   int          size()     const                  { return _size;          }
 231 
 232 
 233   // Redefine Classes support
 234   void mark_on_stack();
 235   void free_all();
 236   void print_tty();
 237   void print(outputStream* st = tty);
 238   void print_with_lock(outputStream* st = tty);
 239 
 240   ~CompileQueue() {
 241     assert (is_empty(), " Compile Queue must be empty");
 242   }
 243 };
 244 
 245 // CompileTaskWrapper
 246 //
 247 // Assign this task to the current thread.  Deallocate the task
 248 // when the compilation is complete.
 249 class CompileTaskWrapper : StackObj {
 250 public:
 251   CompileTaskWrapper(CompileTask* task);
 252   ~CompileTaskWrapper();
 253 };
 254 
 255 
 256 // Compilation
 257 //
 258 // The broker for all compilation requests.


src/share/vm/compiler/compileBroker.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File