Mercurial > hg > graal-jvmci-8
comparison src/share/vm/memory/genCollectedHeap.hpp @ 989:148e5441d916
6863023: need non-perm oops in code cache for JSR 292
Summary: Make a special root-list for those few nmethods which might contain non-perm oops.
Reviewed-by: twisti, kvn, never, jmasa, ysr
author | jrose |
---|---|
date | Tue, 15 Sep 2009 21:53:47 -0700 |
parents | df6caf649ff7 |
children | 39b01ab7035a |
comparison
equal
deleted
inserted
replaced
987:00977607da34 | 989:148e5441d916 |
---|---|
406 // "SO_None" does none; | 406 // "SO_None" does none; |
407 // "SO_AllClasses" applies the closure to all entries in the SystemDictionary; | 407 // "SO_AllClasses" applies the closure to all entries in the SystemDictionary; |
408 // "SO_SystemClasses" to all the "system" classes and loaders; | 408 // "SO_SystemClasses" to all the "system" classes and loaders; |
409 // "SO_Symbols_and_Strings" applies the closure to all entries in | 409 // "SO_Symbols_and_Strings" applies the closure to all entries in |
410 // SymbolsTable and StringTable. | 410 // SymbolsTable and StringTable. |
411 void gen_process_strong_roots(int level, bool younger_gens_as_roots, | 411 void gen_process_strong_roots(int level, |
412 bool younger_gens_as_roots, | |
413 // The remaining arguments are in an order | |
414 // consistent with SharedHeap::process_strong_roots: | |
415 bool activate_scope, | |
412 bool collecting_perm_gen, | 416 bool collecting_perm_gen, |
413 SharedHeap::ScanningOption so, | 417 SharedHeap::ScanningOption so, |
414 OopsInGenClosure* older_gens, | 418 OopsInGenClosure* not_older_gens, |
415 OopsInGenClosure* not_older_gens); | 419 bool do_code_roots, |
420 OopsInGenClosure* older_gens); | |
416 | 421 |
417 // Apply "blk" to all the weak roots of the system. These include | 422 // Apply "blk" to all the weak roots of the system. These include |
418 // JNI weak roots, the code cache, system dictionary, symbol table, | 423 // JNI weak roots, the code cache, system dictionary, symbol table, |
419 // string table, and referents of reachable weak refs. | 424 // string table, and referents of reachable weak refs. |
420 void gen_process_weak_roots(OopClosure* root_closure, | 425 void gen_process_weak_roots(OopClosure* root_closure, |
426 CodeBlobClosure* code_roots, | |
421 OopClosure* non_root_closure); | 427 OopClosure* non_root_closure); |
422 | 428 |
423 // Set the saved marks of generations, if that makes sense. | 429 // Set the saved marks of generations, if that makes sense. |
424 // In particular, if any generation might iterate over the oops | 430 // In particular, if any generation might iterate over the oops |
425 // in other generations, it should call this method. | 431 // in other generations, it should call this method. |