Mercurial > hg > truffle
diff src/share/vm/oops/method.cpp @ 17891:b6a2ba7d3ea7 hs25.20-b11
Merge
author | amurillo |
---|---|
date | Thu, 17 Apr 2014 16:09:07 -0700 |
parents | 9428a0b94204 |
children | 7384f6a12fc1 |
line wrap: on
line diff
--- a/src/share/vm/oops/method.cpp Wed Apr 16 12:32:23 2014 -0700 +++ b/src/share/vm/oops/method.cpp Thu Apr 17 16:09:07 2014 -0700 @@ -905,6 +905,19 @@ return adapter->get_c2i_entry(); } +void Method::restore_unshareable_info(TRAPS) { + // Since restore_unshareable_info can be called more than once for a method, don't + // redo any work. If this field is restored, there is nothing to do. + if (_from_compiled_entry == NULL) { + // restore method's vtable by calling a virtual function + restore_vtable(); + + methodHandle mh(THREAD, this); + link_method(mh, CHECK); + } +} + + // The verified_code_entry() must be called when a invoke is resolved // on this method.