src/share/vm/memory/metaspaceShared.hpp

changeset 7089
6e0cb14ce59b
parent 4165
fb19af007ffc
child 7103
622c6e0ad4d6
     1.1 --- a/src/share/vm/memory/metaspaceShared.hpp	Fri Aug 22 12:03:49 2014 -0700
     1.2 +++ b/src/share/vm/memory/metaspaceShared.hpp	Thu Aug 21 13:57:51 2014 -0700
     1.3 @@ -38,7 +38,10 @@
     1.4    // CDS support
     1.5    static ReservedSpace* _shared_rs;
     1.6    static int _max_alignment;
     1.7 -
     1.8 +  static bool _link_classes_made_progress;
     1.9 +  static bool _check_classes_made_progress;
    1.10 +  static bool _has_error_classes;
    1.11 +  static bool _archive_loading_failed;
    1.12   public:
    1.13    enum {
    1.14      vtbl_list_size = 17, // number of entries in the shared space vtable list.
    1.15 @@ -67,7 +70,11 @@
    1.16      NOT_CDS(return 0);
    1.17    }
    1.18  
    1.19 +  static void prepare_for_dumping() NOT_CDS_RETURN;
    1.20    static void preload_and_dump(TRAPS) NOT_CDS_RETURN;
    1.21 +  static int preload_and_dump(const char * class_list_path,
    1.22 +                              GrowableArray<Klass*>* class_promote_order,
    1.23 +                              TRAPS) NOT_CDS_RETURN;
    1.24  
    1.25    static ReservedSpace* shared_rs() {
    1.26      CDS_ONLY(return _shared_rs);
    1.27 @@ -78,6 +85,9 @@
    1.28      CDS_ONLY(_shared_rs = rs;)
    1.29    }
    1.30  
    1.31 +  static void set_archive_loading_failed() {
    1.32 +    _archive_loading_failed = true;
    1.33 +  }
    1.34    static bool map_shared_spaces(FileMapInfo* mapinfo) NOT_CDS_RETURN_(false);
    1.35    static void initialize_shared_spaces() NOT_CDS_RETURN;
    1.36  
    1.37 @@ -97,5 +107,10 @@
    1.38    static bool remap_shared_readonly_as_readwrite() NOT_CDS_RETURN_(true);
    1.39  
    1.40    static void print_shared_spaces();
    1.41 +
    1.42 +  static bool try_link_class(InstanceKlass* ik, TRAPS);
    1.43 +  static void link_one_shared_class(Klass* obj, TRAPS);
    1.44 +  static void check_one_shared_class(Klass* obj);
    1.45 +  static void link_and_cleanup_shared_classes(TRAPS);
    1.46  };
    1.47  #endif // SHARE_VM_MEMORY_METASPACE_SHARED_HPP

mercurial