comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp @ 20494:7baf47cb97cb

8048268: G1 Code Root Migration performs poorly Summary: Replace G1CodeRootSet with a Hashtable based implementation, merge Code Root Migration phase into Code Root Scanning Reviewed-by: jmasa, brutisso, tschatzl
author mgerdin
date Fri, 29 Aug 2014 13:12:21 +0200
parents c10b463abc6e
children e7d0505c8a30
comparison
equal deleted inserted replaced
20493:152cf4afc11f 20494:7baf47cb97cb
1 /* 1 /*
2 * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
1631 virtual void register_nmethod(nmethod* nm); 1631 virtual void register_nmethod(nmethod* nm);
1632 1632
1633 // Unregister the given nmethod from the G1 heap 1633 // Unregister the given nmethod from the G1 heap
1634 virtual void unregister_nmethod(nmethod* nm); 1634 virtual void unregister_nmethod(nmethod* nm);
1635 1635
1636 // Migrate the nmethods in the code root lists of the regions
1637 // in the collection set to regions in to-space. In the event
1638 // of an evacuation failure, nmethods that reference objects
1639 // that were not successfullly evacuated are not migrated.
1640 void migrate_strong_code_roots();
1641
1642 // Free up superfluous code root memory. 1636 // Free up superfluous code root memory.
1643 void purge_code_root_memory(); 1637 void purge_code_root_memory();
1644 1638
1645 // Rebuild the stong code root lists for each region 1639 // Rebuild the stong code root lists for each region
1646 // after a full GC 1640 // after a full GC