--- old/src/share/vm/classfile/classFileParser.cpp Wed Nov 26 00:35:41 2014 +++ new/src/share/vm/classfile/classFileParser.cpp Wed Nov 26 00:35:40 2014 @@ -406,6 +406,11 @@ "Invalid constant pool index %u in class file %s", string_index, CHECK_(nullHandle)); Symbol* sym = cp->symbol_at(string_index); + const char* CPH = "CONSTANT_PLACEHOLDER_"; + if (sym != NULL && strncmp(sym->as_utf8(), CPH, strlen(CPH)) == 0) { + // Save the Utf8 index of pseudo-string for JvmtiConstantPoolReconstituter + cp->map_pseudo_string_indices((u2)index, (u2)string_index); + } cp->unresolved_string_at_put(index, sym); } break;