Mercurial > hg > truffle
diff src/share/vm/memory/sharedHeap.cpp @ 2379:b099aaf51bf8
6962931: move interned strings out of the perm gen
Reviewed-by: never, coleenp, ysr, jwilhelm
author | jcoomes |
---|---|
date | Tue, 22 Mar 2011 13:36:33 -0700 |
parents | 3582bf76420e |
children | 1d1603768966 |
line wrap: on
line diff
--- a/src/share/vm/memory/sharedHeap.cpp Mon Mar 21 18:38:00 2011 -0700 +++ b/src/share/vm/memory/sharedHeap.cpp Tue Mar 22 13:36:33 2011 -0700 @@ -171,11 +171,13 @@ } if (!_process_strong_tasks->is_task_claimed(SH_PS_StringTable_oops_do)) { - if (so & SO_Strings) { - StringTable::oops_do(roots); - } - // Verify if the string table contents are in the perm gen - NOT_PRODUCT(StringTable::oops_do(&assert_is_perm_closure)); + if (so & SO_Strings || (!collecting_perm_gen && !JavaObjectsInPerm)) { + StringTable::oops_do(roots); + } + if (JavaObjectsInPerm) { + // Verify the string table contents are in the perm gen + NOT_PRODUCT(StringTable::oops_do(&assert_is_perm_closure)); + } } if (!_process_strong_tasks->is_task_claimed(SH_PS_CodeCache_oops_do)) {