On 10/30/15 12:44 PM, Coleen Phillimore wrote:
Hi Ioi,
This is a manageable code change.
http://cr.openjdk.java.net/~iklam/8140802-cds-refactoring.v01/hotspot/src/share/vm/classfile/classListParser.hpp.html
You forward declare Klass* but don't use it in this header file.
Also can you add a comment to #endif to say what it's endifing. ie.
// SHARE_VM_MEMORY_CLASSLISTPARSER_HPP
Fixed.
I also changed ClassListParser to a StackObj as you suggested in another
e-mail to me.
http://cr.openjdk.java.net/~iklam/8140802-cds-refactoring.v01/hotspot/src/share/vm/classfile/classLoaderExt.cpp.html
33 TempNewSymbol class_name_symbol =
SymbolTable::new_permanent_symbol(parser->current_class_name(), THREAD);
This doesn't make sense. If you want a permanent symbol, it doesn't
need to get un-reference counted with the TempNewSymbol destructor.
I changed it to
TempNewSymbol class_name_symbol =
SymbolTable::new_symbol(parser->current_class_name(), THREAD);
http://cr.openjdk.java.net/~iklam/8140802-cds-refactoring.v01/hotspot/src/share/vm/classfile/systemDictionary.cpp.udiff.html
+ // Make sure we have an entry in the SystemDictionary on success
I will actually remove this block of code in the next update to make
things simpler.
This assert code is a copy of some code elsewhere. Can you make it a
function that they boh can call?
Can you also comment the raw #endif's to what they're endifing?
Will do.
Thanks
Otherwise, this looks okay.
Coleen
On 10/30/15 1:00 PM, Ioi Lam wrote:
Please review the following fix:
http://cr.openjdk.java.net/~iklam/8140802-cds-refactoring.v01/
Bug: Clean up and refactor of class loading code for CDS
https://bugs.openjdk.java.net/browse/JDK-8140802
Summary of fix:
We need to clean up and refactor the class loading code in order
to support CDS in JDK9
[1] Remove code that has been made obsolete by the module changes
(such as supporting code used for meta-index file)
[2] Add new whitebox API to be used by CDS-related tests.
[3] Refactor the parsing of classlist files for future enhancements.
[4] Add new APIs in the class loading code to support Oracle CDS
enhancements.
Tests:
JPRT
RBT - with same set of tests as hs-rt nightly
Thanks
- Ioi