src/hotspot/share/gc/shared/scavengableNMethods.cpp
changeset 54177 b4779a44476b
parent 54122 4b1426ed1c44
child 54178 98e21d4da074
--- a/src/hotspot/share/gc/shared/scavengableNMethods.cpp	Wed Mar 13 20:07:54 2019 +0100
+++ b/src/hotspot/share/gc/shared/scavengableNMethods.cpp	Mon Mar 18 15:19:39 2019 +0100
@@ -65,7 +65,19 @@
 }
 
 void ScavengableNMethods::unregister_nmethod(nmethod* nm) {
-  // Do nothing. Unlinking is currently delayed until the purge phase.
+  assert_locked_or_safepoint(CodeCache_lock);
+
+  if (gc_data(nm).on_list()) {
+    nmethod* prev = NULL;
+    for (nmethod* cur = _head; cur != NULL; cur = gc_data(cur).next()) {
+      if (cur == nm) {
+        CodeCache::print_trace("unregister_nmethod", nm);
+        unlist_nmethod(cur, prev);
+        return;
+      }
+      prev = cur;
+    }
+  }
 }
 
 #ifndef PRODUCT
@@ -112,23 +124,6 @@
 #endif // PRODUCT
 }
 
-void ScavengableNMethods::flush_nmethod(nmethod* nm) {
-  assert_locked_or_safepoint(CodeCache_lock);
-
-  // TODO: Should be done in unregister_nmethod, during the "unlink" phase.
-  if (gc_data(nm).on_list()) {
-    CodeCache::print_trace("flush_nmethod", nm);
-    nmethod* prev = NULL;
-    for (nmethod* cur = _head; cur != NULL; cur = gc_data(cur).next()) {
-      if (cur == nm) {
-        unlist_nmethod(cur, prev);
-        return;
-      }
-      prev = cur;
-    }
-  }
-}
-
 class HasScavengableOops: public OopClosure {
   BoolObjectClosure* _is_scavengable;
   bool               _found;