1825 // JSR 292 support for patching constant pool oops after the class is linked and |
1825 // JSR 292 support for patching constant pool oops after the class is linked and |
1826 // the oop array for resolved references are created. |
1826 // the oop array for resolved references are created. |
1827 // We can't do this during classfile parsing, which is how the other indexes are |
1827 // We can't do this during classfile parsing, which is how the other indexes are |
1828 // patched. The other patches are applied early for some error checking |
1828 // patched. The other patches are applied early for some error checking |
1829 // so only defer the pseudo_strings. |
1829 // so only defer the pseudo_strings. |
1830 void ConstantPool::patch_resolved_references( |
1830 void ConstantPool::patch_resolved_references(GrowableArray<Handle>* cp_patches) { |
1831 GrowableArray<Handle>* cp_patches) { |
|
1832 assert(EnableInvokeDynamic, ""); |
|
1833 for (int index = 1; index < cp_patches->length(); index++) { // Index 0 is unused |
1831 for (int index = 1; index < cp_patches->length(); index++) { // Index 0 is unused |
1834 Handle patch = cp_patches->at(index); |
1832 Handle patch = cp_patches->at(index); |
1835 if (patch.not_null()) { |
1833 if (patch.not_null()) { |
1836 assert (tag_at(index).is_string(), "should only be string left"); |
1834 assert (tag_at(index).is_string(), "should only be string left"); |
1837 // Patching a string means pre-resolving it. |
1835 // Patching a string means pre-resolving it. |