Hi Jini,
On 25/01/2018 3:43 AM, Jini George wrote:
Hello,
Requesting reviews for the issue:
SA: clhsdb 'printall' throws ClassCastException while printing out the
bytecodes
ID: https://bugs.openjdk.java.net/browse/JDK-8175384
Webrev: http://cr.openjdk.java.net/~jgeorge/8175384/webrev.01/
The issue was seen while printing out the details of the invokevirtual
bytecode of the java.lang.Enum.values() method. The fix is to avoid a
ClassCastException by returning the bottom klass in the case of an
object array klass, while printing out the details.
I'm a bit confused as to what getFieldOrMethodKlassRefAt is supposed to
be returning - should it really be instanceKlass? It's not at all clear
to me that returning the array component type is the right thing to do.
That aside a couple of minor nits:
src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/oops/ConstantPool.java
! k = (k.isObjArrayKlass())?((ObjArrayKlass)k).getBottomKlass():k;
No () needed around k.isObjArrayKlass()
Spaces needed around the ? and : operators
test/hotspot/jtreg/serviceability/sa/ClhsdbLauncher.java
Copyright year should now be "2017, 2018,"
Thanks,
David
Tests run: The SA tests pass with Mach5 and jprt.
Thanks,
Jini.