--- old/agent/src/share/classes/sun/jvm/hotspot/oops/Symbol.java 2015-06-24 13:04:03.868646732 -0700 +++ new/agent/src/share/classes/sun/jvm/hotspot/oops/Symbol.java 2015-06-24 13:04:03.732639950 -0700 @@ -47,7 +47,7 @@ Type type = db.lookupType("Symbol"); length = type.getCIntegerField("_length"); baseOffset = type.getField("_body").getOffset(); - idHash = type.getCIntegerField("_identity_hash"); + idHash = type.getJShortField("_identity_hash"); } // Format: @@ -81,9 +81,9 @@ return addr.getJByteAt(baseOffset + index); } - private static CIntegerField idHash; + private static JShortField idHash; - public int identityHash() { return (int)idHash.getValue(this.addr); } + public short identityHash() { return (short)idHash.getValue(this.addr); } public boolean equals(byte[] modUTF8Chars) { int l = (int) getLength();