RFR: 8035150 ShouldNotReachHere() in ConstantPool::copy_entry_to (original) (raw)
Markus Gronlund markus.gronlund at oracle.com
Mon Feb 24 01:42:42 PST 2014
- Previous message: RFR: 8035150 ShouldNotReachHere() in ConstantPool::copy_entry_to
- Next message: RFR: 8035150 ShouldNotReachHere() in ConstantPool::copy_entry_to
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi Staffan,
I would think this is the correct fix.
The other two constant pool "error" tags, besides UnresolvedClassInError, which signal constant pool resolution errors are MethodTypeInError and MethodHandleInError - these error tags are associated with their corresponding "success" tags in switch targets in ConstantPool::copy_entry_to(), as well as in additional routines in constantPool.cpp.
In addition, in other routines in ConstantPool.cpp, the error tag JVM_CONSTANT_UnresolvedClassInError is associated with JVM_CONSTANT_UnresolvedClass - ConstantPool::resolve_constant_at_impl() for example.
Thanks Markus
-----Original Message----- From: Staffan Larsen Sent: den 21 februari 2014 15:11 To: hotspot-runtime-dev; serviceability-dev at openjdk.java.net serviceability-dev at openjdk.java.net Subject: RFR: 8035150 ShouldNotReachHere() in ConstantPool::copy_entry_to
This is an attempt to solve a crash while redefining a class that has unresolved class references in its constant pool. I would appreciate some extra scrutiny here since I am unfamiliar with this code path.
I have also added a test that causes a JVM crash without the fix.
The updates to the test library is all code copied from the jdk version of the test library.
webrev: http://cr.openjdk.java.net/~sla/8035150/webrev.00/ bug: https://bugs.openjdk.java.net/browse/JDK-8035150
Thanks, /Staffan
- Previous message: RFR: 8035150 ShouldNotReachHere() in ConstantPool::copy_entry_to
- Next message: RFR: 8035150 ShouldNotReachHere() in ConstantPool::copy_entry_to
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]