RFR (XS) 8022283: Assertion failed: assert(is_loaded() && field->holder()->is_loaded() && klass()->is_subclass_of (field->holder())) failed: invalid access

Rickard Bäckman rickard.backman at oracle.com
Tue Aug 20 09:04:56 PDT 2013


http://cr.openjdk.java.net/~rbackman/8022283/
http://bugs.sun.com/view_bug.do?bug_id=8022283

Add a check that verifies that the constant is "is_loaded".

Comment from ciObject.hpp

  // Note: some ciObjects refer to oops which have yet to be created.
  // We refer to these as "unloaded".  Specifically, there are
  // unloaded instances of java.lang.Class,
  // java.lang.invoke.MethodHandle, and java.lang.invoke.MethodType.
  // By convention the ciNullObject is considered loaded, and
  // primitive types are considered loaded.

In this case we had a java.lang.invoke.MethodType.

<ciField name=java/lang/invoke/MethodHandle.type signature=Ljava/lang/invoke/MethodType; offset=12 type=java/lang/invoke/MethodType is_constant=true>$1 = void

Thanks
/R


More information about the hotspot-compiler-dev mailing list