src/share/vm/memory/metaspaceShared.hpp

Print this page
rev 6841 : mq
rev 6842 : mq

*** 36,46 **** class MetaspaceShared : AllStatic { // CDS support static ReservedSpace* _shared_rs; static int _max_alignment; ! public: enum { vtbl_list_size = 17, // number of entries in the shared space vtable list. num_virtuals = 200 // maximum number of virtual functions // If virtual functions are added to Metadata, --- 36,49 ---- class MetaspaceShared : AllStatic { // CDS support static ReservedSpace* _shared_rs; static int _max_alignment; ! static bool _link_classes_made_progress; ! static bool _check_classes_made_progress; ! static bool _has_error_classes; ! static bool _archive_loading_failed; public: enum { vtbl_list_size = 17, // number of entries in the shared space vtable list. num_virtuals = 200 // maximum number of virtual functions // If virtual functions are added to Metadata,
*** 65,85 **** --- 68,95 ---- static int max_alignment() { CDS_ONLY(return _max_alignment); NOT_CDS(return 0); } + static void prepare_for_dumping() NOT_CDS_RETURN; static void preload_and_dump(TRAPS) NOT_CDS_RETURN; + static int preload_and_dump(const char * class_list_path, + GrowableArray<Klass*>* class_promote_order, + TRAPS) NOT_CDS_RETURN; static ReservedSpace* shared_rs() { CDS_ONLY(return _shared_rs); NOT_CDS(return NULL); } static void set_shared_rs(ReservedSpace* rs) { CDS_ONLY(_shared_rs = rs;) } + static void set_archive_loading_failed() { + _archive_loading_failed = true; + } static bool map_shared_spaces(FileMapInfo* mapinfo) NOT_CDS_RETURN_(false); static void initialize_shared_spaces() NOT_CDS_RETURN; // Return true if given address is in the mapped shared space. static bool is_in_shared_space(const void* p) NOT_CDS_RETURN_(false);
*** 95,101 **** --- 105,116 ---- // sharing is enabled. Simply returns true if sharing is not enabled // or if the remapping has already been done by a prior call. static bool remap_shared_readonly_as_readwrite() NOT_CDS_RETURN_(true); static void print_shared_spaces(); + + static bool try_link_class(InstanceKlass* ik, TRAPS); + static void link_one_shared_class(Klass* obj, TRAPS); + static void check_one_shared_class(Klass* obj); + static void link_and_cleanup_shared_classes(TRAPS); }; #endif // SHARE_VM_MEMORY_METASPACE_SHARED_HPP