1278 {
1279 int class_index = from_cp->uncached_klass_ref_index_at(from_i);
1280 int name_and_type_index = from_cp->uncached_name_and_type_ref_index_at(from_i);
1281 to_cp->method_at_put(to_i, class_index, name_and_type_index);
1282 } break;
1283
1284 case JVM_CONSTANT_NameAndType:
1285 {
1286 int name_ref_index = from_cp->name_ref_index_at(from_i);
1287 int signature_ref_index = from_cp->signature_ref_index_at(from_i);
1288 to_cp->name_and_type_at_put(to_i, name_ref_index, signature_ref_index);
1289 } break;
1290
1291 case JVM_CONSTANT_StringIndex:
1292 {
1293 jint si = from_cp->string_index_at(from_i);
1294 to_cp->string_index_at_put(to_i, si);
1295 } break;
1296
1297 case JVM_CONSTANT_UnresolvedClass:
1298 {
1299 // Can be resolved after checking tag, so check the slot first.
1300 CPSlot entry = from_cp->slot_at(from_i);
1301 if (entry.is_resolved()) {
1302 assert(entry.get_klass()->is_klass(), "must be");
1303 // Already resolved
1304 to_cp->klass_at_put(to_i, entry.get_klass());
1305 } else {
1306 to_cp->unresolved_klass_at_put(to_i, entry.get_symbol());
1307 }
1308 } break;
1309
1310 case JVM_CONSTANT_String:
1311 {
1312 Symbol* s = from_cp->unresolved_string_at(from_i);
1313 to_cp->unresolved_string_at_put(to_i, s);
1314 } break;
1315
1316 case JVM_CONSTANT_Utf8:
1317 {
|
1278 {
1279 int class_index = from_cp->uncached_klass_ref_index_at(from_i);
1280 int name_and_type_index = from_cp->uncached_name_and_type_ref_index_at(from_i);
1281 to_cp->method_at_put(to_i, class_index, name_and_type_index);
1282 } break;
1283
1284 case JVM_CONSTANT_NameAndType:
1285 {
1286 int name_ref_index = from_cp->name_ref_index_at(from_i);
1287 int signature_ref_index = from_cp->signature_ref_index_at(from_i);
1288 to_cp->name_and_type_at_put(to_i, name_ref_index, signature_ref_index);
1289 } break;
1290
1291 case JVM_CONSTANT_StringIndex:
1292 {
1293 jint si = from_cp->string_index_at(from_i);
1294 to_cp->string_index_at_put(to_i, si);
1295 } break;
1296
1297 case JVM_CONSTANT_UnresolvedClass:
1298 case JVM_CONSTANT_UnresolvedClassInError:
1299 {
1300 // Can be resolved after checking tag, so check the slot first.
1301 CPSlot entry = from_cp->slot_at(from_i);
1302 if (entry.is_resolved()) {
1303 assert(entry.get_klass()->is_klass(), "must be");
1304 // Already resolved
1305 to_cp->klass_at_put(to_i, entry.get_klass());
1306 } else {
1307 to_cp->unresolved_klass_at_put(to_i, entry.get_symbol());
1308 }
1309 } break;
1310
1311 case JVM_CONSTANT_String:
1312 {
1313 Symbol* s = from_cp->unresolved_string_at(from_i);
1314 to_cp->unresolved_string_at_put(to_i, s);
1315 } break;
1316
1317 case JVM_CONSTANT_Utf8:
1318 {
|