equal
deleted
inserted
replaced
21 * questions. |
21 * questions. |
22 * |
22 * |
23 */ |
23 */ |
24 |
24 |
25 #include "precompiled.hpp" |
25 #include "precompiled.hpp" |
|
26 #include "aot/aotLoader.hpp" |
26 #include "classfile/stringTable.hpp" |
27 #include "classfile/stringTable.hpp" |
27 #include "classfile/symbolTable.hpp" |
28 #include "classfile/symbolTable.hpp" |
28 #include "classfile/systemDictionary.hpp" |
29 #include "classfile/systemDictionary.hpp" |
29 #include "code/codeCache.hpp" |
30 #include "code/codeCache.hpp" |
30 #include "gc/parallel/parallelScavengeHeap.hpp" |
31 #include "gc/parallel/parallelScavengeHeap.hpp" |
513 JvmtiExport::oops_do(mark_and_push_closure()); |
514 JvmtiExport::oops_do(mark_and_push_closure()); |
514 SystemDictionary::always_strong_oops_do(mark_and_push_closure()); |
515 SystemDictionary::always_strong_oops_do(mark_and_push_closure()); |
515 ClassLoaderDataGraph::always_strong_cld_do(follow_cld_closure()); |
516 ClassLoaderDataGraph::always_strong_cld_do(follow_cld_closure()); |
516 // Do not treat nmethods as strong roots for mark/sweep, since we can unload them. |
517 // Do not treat nmethods as strong roots for mark/sweep, since we can unload them. |
517 //CodeCache::scavenge_root_nmethods_do(CodeBlobToOopClosure(mark_and_push_closure())); |
518 //CodeCache::scavenge_root_nmethods_do(CodeBlobToOopClosure(mark_and_push_closure())); |
|
519 AOTLoader::oops_do(mark_and_push_closure()); |
518 } |
520 } |
519 |
521 |
520 // Flush marking stack. |
522 // Flush marking stack. |
521 follow_stack(); |
523 follow_stack(); |
522 |
524 |
609 // Global (weak) JNI handles |
611 // Global (weak) JNI handles |
610 JNIHandles::weak_oops_do(adjust_pointer_closure()); |
612 JNIHandles::weak_oops_do(adjust_pointer_closure()); |
611 |
613 |
612 CodeBlobToOopClosure adjust_from_blobs(adjust_pointer_closure(), CodeBlobToOopClosure::FixRelocations); |
614 CodeBlobToOopClosure adjust_from_blobs(adjust_pointer_closure(), CodeBlobToOopClosure::FixRelocations); |
613 CodeCache::blobs_do(&adjust_from_blobs); |
615 CodeCache::blobs_do(&adjust_from_blobs); |
|
616 AOTLoader::oops_do(adjust_pointer_closure()); |
614 StringTable::oops_do(adjust_pointer_closure()); |
617 StringTable::oops_do(adjust_pointer_closure()); |
615 ref_processor()->weak_oops_do(adjust_pointer_closure()); |
618 ref_processor()->weak_oops_do(adjust_pointer_closure()); |
616 PSScavenge::reference_processor()->weak_oops_do(adjust_pointer_closure()); |
619 PSScavenge::reference_processor()->weak_oops_do(adjust_pointer_closure()); |
617 |
620 |
618 adjust_marks(); |
621 adjust_marks(); |