-
Bug
-
Resolution: Fixed
-
P2
-
1.4.2
-
b16
-
generic
-
generic
4364955 describes a case where an invokeinterface is being performed on an
interface class but for a method which is declared on java.lang.Object. These
methods are not in the itables and using invokeinterface behavior on them is
not correct. Apple Computer has provided a test case which causes a compiled
inline cache for such a method (toString) to become megamorphic; in debug mode
an assertion failure fires during the inline cache update. The calling code in
C1 and C2 needs to be able to detect this case and tell
CompiledIC::set_to_megamorphic that the current call site is for an
invokevirtual instead of an invokeinterface.
A test case is attached. To reproduce the failure, unpack the tar file, cd to
the jl1 directory, and run "lint inf/src src/main". Many exceptions are thrown
before the crash occurs; these appear to be normal. At least with C1 the
following CompileOnly flag may be used:
-XX:CompileOnly=com/jutils/javalint/checks/CheckDebuggingOutput.visitStaticFieldAccess
interface class but for a method which is declared on java.lang.Object. These
methods are not in the itables and using invokeinterface behavior on them is
not correct. Apple Computer has provided a test case which causes a compiled
inline cache for such a method (toString) to become megamorphic; in debug mode
an assertion failure fires during the inline cache update. The calling code in
C1 and C2 needs to be able to detect this case and tell
CompiledIC::set_to_megamorphic that the current call site is for an
invokevirtual instead of an invokeinterface.
A test case is attached. To reproduce the failure, unpack the tar file, cd to
the jl1 directory, and run "lint inf/src src/main". Many exceptions are thrown
before the crash occurs; these appear to be normal. At least with C1 the
following CompileOnly flag may be used:
-XX:CompileOnly=com/jutils/javalint/checks/CheckDebuggingOutput.visitStaticFieldAccess
- relates to
-
JDK-4364955 Hotspot crash when running orionserver snoop jsp program
-
- Closed
-