comparison src/share/vm/memory/defNewGeneration.cpp @ 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 27a80744a83b
children e018e6884bd8
comparison
equal deleted inserted replaced
987:00977607da34 989:148e5441d916
553 553
554 assert(gch->no_allocs_since_save_marks(0), 554 assert(gch->no_allocs_since_save_marks(0),
555 "save marks have not been newly set."); 555 "save marks have not been newly set.");
556 556
557 gch->gen_process_strong_roots(_level, 557 gch->gen_process_strong_roots(_level,
558 true, // Process younger gens, if any, as 558 true, // Process younger gens, if any,
559 // strong roots. 559 // as strong roots.
560 false,// not collecting permanent generation. 560 true, // activate StrongRootsScope
561 false, // not collecting perm generation.
561 SharedHeap::SO_AllClasses, 562 SharedHeap::SO_AllClasses,
562 &fsc_with_gc_barrier, 563 &fsc_with_no_gc_barrier,
563 &fsc_with_no_gc_barrier); 564 true, // walk *all* scavengable nmethods
565 &fsc_with_gc_barrier);
564 566
565 // "evacuate followers". 567 // "evacuate followers".
566 evacuate_followers.do_void(); 568 evacuate_followers.do_void();
567 569
568 FastKeepAliveClosure keep_alive(this, &scan_weak_ref); 570 FastKeepAliveClosure keep_alive(this, &scan_weak_ref);