Mercurial > hg > graal-compiler
comparison src/share/vm/oops/constantPool.hpp @ 6733:fa6e618671d7
7195867: NPG: SAJDI tests fail with sun.jvm.hotspot.types.WrongTypeException: No suitable match for type
Summary: Need to restore the vtable in metadata when we restore the type from the shared archive.
Reviewed-by: acorn, jcoomes, jmasa, jrose
author | coleenp |
---|---|
date | Wed, 05 Sep 2012 20:08:08 -0400 |
parents | da91efe96a93 |
children | f6b0eb4e44cf d8ce2825b193 |
comparison
equal
deleted
inserted
replaced
6732:78b56e53050e | 6733:fa6e618671d7 |
---|---|
641 | 641 |
642 // CDS support | 642 // CDS support |
643 void remove_unshareable_info(); | 643 void remove_unshareable_info(); |
644 void restore_unshareable_info(TRAPS); | 644 void restore_unshareable_info(TRAPS); |
645 bool resolve_class_constants(TRAPS); | 645 bool resolve_class_constants(TRAPS); |
646 // The ConstantPool vtable is restored by this call when the ConstantPool is | |
647 // in the shared archive. See patch_klass_vtables() in metaspaceShared.cpp for | |
648 // all the gory details. SA, dtrace and pstack helpers distinguish metadata | |
649 // by their vtable. | |
650 void restore_vtable() { guarantee(is_constantPool(), "vtable restored by this call"); } | |
646 | 651 |
647 private: | 652 private: |
648 enum { _no_index_sentinel = -1, _possible_index_sentinel = -2 }; | 653 enum { _no_index_sentinel = -1, _possible_index_sentinel = -2 }; |
649 public: | 654 public: |
650 | 655 |