Mon, 07 Mar 2011 16:03:28 -0500
7024584: Symbol printouts shouldnt be under PrintGCDetails
Summary: Put symbol printing under Verbose and WizardMode so you can get this information if you really want it.
Reviewed-by: phh, stefank, never, dholmes, jcoomes
src/share/vm/classfile/symbolTable.cpp | file | annotate | diff | comparison | revisions |
1.1 --- a/src/share/vm/classfile/symbolTable.cpp Mon Mar 07 09:16:08 2011 -0800 1.2 +++ b/src/share/vm/classfile/symbolTable.cpp Mon Mar 07 16:03:28 2011 -0500 1.3 @@ -88,7 +88,7 @@ 1.4 void SymbolTable::unlink() { 1.5 int removed = 0; 1.6 int total = 0; 1.7 - int memory_total = 0; 1.8 + size_t memory_total = 0; 1.9 for (int i = 0; i < the_table()->table_size(); ++i) { 1.10 for (HashtableEntry<Symbol*>** p = the_table()->bucket_addr(i); *p != NULL; ) { 1.11 HashtableEntry<Symbol*>* entry = *p; 1.12 @@ -112,8 +112,10 @@ 1.13 } 1.14 symbols_removed += removed; 1.15 symbols_counted += total; 1.16 - if (PrintGCDetails) { 1.17 - gclog_or_tty->print(" [Symbols=%d size=%dK] ", total, 1.18 + // Exclude printing for normal PrintGCDetails because people parse 1.19 + // this output. 1.20 + if (PrintGCDetails && Verbose && WizardMode) { 1.21 + gclog_or_tty->print(" [Symbols=%d size=" SIZE_FORMAT "K] ", total, 1.22 (memory_total*HeapWordSize)/1024); 1.23 } 1.24 }