mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 06:45:07 +02:00
7032407: Crash in LinkResolver::runtime_resolve_virtual_method()
Make CDS reorder vtables so that dump time vtables match run time order, so when redefine classes reinitializes them, they aren't in the wrong order. Reviewed-by: dcubed, acorn
This commit is contained in:
parent
2a5436b3d3
commit
8acea1848a
7 changed files with 75 additions and 13 deletions
|
@ -690,7 +690,8 @@ void instanceKlassKlass::oop_verify_on(oop obj, outputStream* st) {
|
|||
guarantee(method_ordering->is_perm(), "should be in permspace");
|
||||
guarantee(method_ordering->is_typeArray(), "should be type array");
|
||||
int length = method_ordering->length();
|
||||
if (JvmtiExport::can_maintain_original_method_order()) {
|
||||
if (JvmtiExport::can_maintain_original_method_order() ||
|
||||
(UseSharedSpaces && length != 0)) {
|
||||
guarantee(length == methods->length(), "invalid method ordering length");
|
||||
jlong sum = 0;
|
||||
for (j = 0; j < length; j++) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue