< prev index next >

src/hotspot/share/memory/heapShared.hpp

Print this page

@@ -121,14 +121,24 @@
   static KlassSubGraphInfo* find_subgraph_info(Klass *k);
   static KlassSubGraphInfo* get_subgraph_info(Klass *k);
   static int num_of_subgraph_infos();
 
   static size_t build_archived_subgraph_info_records(int num_records);
+
+  // Used by decode_not_null
+  static address _narrow_oop_base;
+  static int     _narrow_oop_shift;
+
 #endif // INCLUDE_CDS_JAVA_HEAP
  public:
   static char* read_archived_subgraph_infos(char* buffer) NOT_CDS_JAVA_HEAP_RETURN_(buffer);
   static void write_archived_subgraph_infos() NOT_CDS_JAVA_HEAP_RETURN;
   static void initialize_from_archived_subgraph(Klass* k) NOT_CDS_JAVA_HEAP_RETURN;
 
+  // When reading an (unrelocated) narrowOop from the archive, use this function
+  // instead of CompressedOops::decode_not_null
+  inline static oop decode_not_null(narrowOop v) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
+  static void init_narrow_oop_decoding(address base, int shift) NOT_CDS_JAVA_HEAP_RETURN;
+
   static void archive_module_graph_objects(Thread* THREAD) NOT_CDS_JAVA_HEAP_RETURN;
 };
 #endif // SHARE_VM_MEMORY_HEAPSHARED_HPP
< prev index next >