< prev index next >

src/hotspot/share/gc/shared/gcArguments.hpp

Print this page
rev 47829 : 8189389: Move heap creation into GC interface

@@ -25,24 +25,32 @@
 #ifndef SHARE_GC_SHARED_GCARGUMENTS_HPP
 #define SHARE_GC_SHARED_GCARGUMENTS_HPP
 
 #include "memory/allocation.hpp"
 
+class CollectedHeap;
+
 class GCArguments : public CHeapObj<mtGC> {
 private:
   static GCArguments* _instance;
 
   static void select_gc();
   static void select_gc_ergonomically();
   static bool gc_selected();
 
+protected:
+  template <class Heap, class Policy>
+  CollectedHeap* create_heap_with_policy();
+
 public:
   static jint initialize();
   static bool is_initialized();
   static GCArguments* arguments();
 
   virtual void initialize_flags();
 
   virtual size_t conservative_max_heap_alignment() = 0;
+
+  virtual CollectedHeap* create_heap() = 0;
 };
 
 #endif // SHARE_GC_SHARED_GCARGUMENTS_HPP
< prev index next >