diff -r 02a1fc064144 -r 54713555867e hotspot/src/share/vm/classfile/bytecodeAssembler.cpp --- a/hotspot/src/share/vm/classfile/bytecodeAssembler.cpp Wed May 03 02:32:02 2017 +0000 +++ b/hotspot/src/share/vm/classfile/bytecodeAssembler.cpp Fri Mar 03 23:08:35 2017 -0800 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -64,8 +64,8 @@ cp->symbol_at_put(idx, entry._u.utf8); break; case BytecodeCPEntry::KLASS: - cp->unresolved_klass_at_put( - idx, cp->symbol_at(entry._u.klass)); + cp->klass_index_at_put( + idx, entry._u.klass); break; case BytecodeCPEntry::STRING: cp->unresolved_string_at_put( @@ -85,6 +85,9 @@ ShouldNotReachHere(); } } + + cp->initialize_unresolved_klasses(_orig->pool_holder()->class_loader_data(), + CHECK_NULL); return cp; }