Mercurial > hg > graal-jvmci-8
comparison src/share/vm/classfile/systemDictionary.cpp @ 20619:b12a2a9b05ca
8056240: Investigate increased GC remark time after class unloading changes in CRM Fuse
Reviewed-by: mgerdin, coleenp, bdelsart
author | stefank |
---|---|
date | Thu, 02 Oct 2014 10:55:36 +0200 |
parents | 13dbe89e447c |
children | 82d3e7b5277a 02c7eebe5f52 |
comparison
equal
deleted
inserted
replaced
20618:7024b693c8f9 | 20619:b12a2a9b05ca |
---|---|
1689 }; | 1689 }; |
1690 #endif | 1690 #endif |
1691 | 1691 |
1692 // Assumes classes in the SystemDictionary are only unloaded at a safepoint | 1692 // Assumes classes in the SystemDictionary are only unloaded at a safepoint |
1693 // Note: anonymous classes are not in the SD. | 1693 // Note: anonymous classes are not in the SD. |
1694 bool SystemDictionary::do_unloading(BoolObjectClosure* is_alive) { | 1694 bool SystemDictionary::do_unloading(BoolObjectClosure* is_alive, bool clean_alive) { |
1695 // First, mark for unload all ClassLoaderData referencing a dead class loader. | 1695 // First, mark for unload all ClassLoaderData referencing a dead class loader. |
1696 bool unloading_occurred = ClassLoaderDataGraph::do_unloading(is_alive); | 1696 bool unloading_occurred = ClassLoaderDataGraph::do_unloading(is_alive, clean_alive); |
1697 if (unloading_occurred) { | 1697 if (unloading_occurred) { |
1698 dictionary()->do_unloading(); | 1698 dictionary()->do_unloading(); |
1699 constraints()->purge_loader_constraints(); | 1699 constraints()->purge_loader_constraints(); |
1700 resolution_errors()->purge_resolution_errors(); | 1700 resolution_errors()->purge_resolution_errors(); |
1701 } | 1701 } |