8226822: GC interface for C1 runtime calls
authorrkennke
Thu, 04 Jul 2019 17:02:17 +0200
changeset 55590 05dac93510c0
parent 55589 852dcb52bace
child 55591 9523b841b470
8226822: GC interface for C1 runtime calls Reviewed-by: neliasso, roland
src/hotspot/share/c1/c1_Runtime1.cpp
src/hotspot/share/gc/shared/c1/barrierSetC1.hpp
--- a/src/hotspot/share/c1/c1_Runtime1.cpp	Thu Jul 04 16:51:24 2019 +0200
+++ b/src/hotspot/share/c1/c1_Runtime1.cpp	Thu Jul 04 17:02:17 2019 +0200
@@ -294,6 +294,12 @@
     if (entry == entry_for((StubID)id)) return name_for((StubID)id);
   }
 
+  BarrierSetC1* bsc1 = BarrierSet::barrier_set()->barrier_set_c1();
+  const char* name = bsc1->rtcall_name_for_address(entry);
+  if (name != NULL) {
+    return name;
+  }
+
 #define FUNCTION_CASE(a, f) \
   if ((intptr_t)a == CAST_FROM_FN_PTR(intptr_t, f))  return #f
 
--- a/src/hotspot/share/gc/shared/c1/barrierSetC1.hpp	Thu Jul 04 16:51:24 2019 +0200
+++ b/src/hotspot/share/gc/shared/c1/barrierSetC1.hpp	Thu Jul 04 17:02:17 2019 +0200
@@ -137,6 +137,8 @@
 
   virtual LIR_Opr resolve(LIRGenerator* gen, DecoratorSet decorators, LIR_Opr obj);
 
+  virtual const char* rtcall_name_for_address(address entry) { return NULL; }
+
   virtual void generate_c1_runtime_stubs(BufferBlob* buffer_blob) {}
 };