src/share/vm/gc_implementation/g1/heapRegion.cpp

changeset 7208
7baf47cb97cb
parent 7195
c02ec279b062
child 7256
0fcaab91d485
equal deleted inserted replaced
7207:152cf4afc11f 7208:7baf47cb97cb
547 void HeapRegion::add_strong_code_root(nmethod* nm) { 547 void HeapRegion::add_strong_code_root(nmethod* nm) {
548 HeapRegionRemSet* hrrs = rem_set(); 548 HeapRegionRemSet* hrrs = rem_set();
549 hrrs->add_strong_code_root(nm); 549 hrrs->add_strong_code_root(nm);
550 } 550 }
551 551
552 void HeapRegion::add_strong_code_root_locked(nmethod* nm) {
553 assert_locked_or_safepoint(CodeCache_lock);
554 HeapRegionRemSet* hrrs = rem_set();
555 hrrs->add_strong_code_root_locked(nm);
556 }
557
552 void HeapRegion::remove_strong_code_root(nmethod* nm) { 558 void HeapRegion::remove_strong_code_root(nmethod* nm) {
553 HeapRegionRemSet* hrrs = rem_set(); 559 HeapRegionRemSet* hrrs = rem_set();
554 hrrs->remove_strong_code_root(nm); 560 hrrs->remove_strong_code_root(nm);
555 }
556
557 void HeapRegion::migrate_strong_code_roots() {
558 assert(in_collection_set(), "only collection set regions");
559 assert(!isHumongous(),
560 err_msg("humongous region "HR_FORMAT" should not have been added to collection set",
561 HR_FORMAT_PARAMS(this)));
562
563 HeapRegionRemSet* hrrs = rem_set();
564 hrrs->migrate_strong_code_roots();
565 } 561 }
566 562
567 void HeapRegion::strong_code_roots_do(CodeBlobClosure* blk) const { 563 void HeapRegion::strong_code_roots_do(CodeBlobClosure* blk) const {
568 HeapRegionRemSet* hrrs = rem_set(); 564 HeapRegionRemSet* hrrs = rem_set();
569 hrrs->strong_code_roots_do(blk); 565 hrrs->strong_code_roots_do(blk);

mercurial