< prev index next >

src/hotspot/share/runtime/sharedRuntime.cpp

Print this page
*** 93,10 ***
--- 93,13 ---
  #include "opto/runtime.hpp"
  #endif
  #if INCLUDE_JFR
  #include "jfr/jfr.inline.hpp"
  #endif
+ #if INCLUDE_SHENANDOAHGC
+ #include "gc/shenandoah/shenandoahRuntime.hpp"
+ #endif
  
  // Shared runtime stub routines reside in their own unique blob with a
  // single entry point
  
  

*** 174,10 ***
--- 177,21 ---
    _polling_page_return_handler_blob =
      generate_handler_blob(StubId::shared_polling_page_return_handler_id,
                            CAST_FROM_FN_PTR(address, SafepointSynchronize::handle_polling_page_exception));
  
    generate_deopt_blob();
+ 
+   if (UseShenandoahGC) {
+     ResourceMark rm;
+     _shenandoah_keepalive_blob          = generate_shenandoah_stub(StubId::shared_shenandoah_keepalive_id);
+     _shenandoah_lrb_strong_blob         = generate_shenandoah_stub(StubId::shared_shenandoah_lrb_strong_id);
+     _shenandoah_lrb_weak_blob           = generate_shenandoah_stub(StubId::shared_shenandoah_lrb_weak_id);
+     _shenandoah_lrb_phantom_blob        = generate_shenandoah_stub(StubId::shared_shenandoah_lrb_phantom_id);
+     _shenandoah_lrb_strong_narrow_blob  = generate_shenandoah_stub(StubId::shared_shenandoah_lrb_strong_narrow_id);
+     _shenandoah_lrb_weak_narrow_blob    = generate_shenandoah_stub(StubId::shared_shenandoah_lrb_weak_narrow_id);
+     _shenandoah_lrb_phantom_narrow_blob = generate_shenandoah_stub(StubId::shared_shenandoah_lrb_phantom_narrow_id);
+   }
  }
  
  void SharedRuntime::init_adapter_library() {
    AdapterHandlerLibrary::initialize();
  }
< prev index next >