< prev index next >

src/hotspot/share/code/codeCache.hpp

Print this page

        

@@ -74,10 +74,11 @@
 
 class ExceptionCache;
 class KlassDepChange;
 class OopClosure;
 class ShenandoahParallelCodeHeapIterator;
+class NativePostCallNop;
 
 class CodeCache : AllStatic {
   friend class VMStructs;
   friend class JVMCIVMStructs;
   template <class T, class Filter> friend class CodeBlobIterator;

@@ -120,10 +121,11 @@
   static int    allocated_segments();
   static size_t freelists_length();
 
   // Make private to prevent unsafe calls.  Not all CodeBlob*'s are embedded in a CodeHeap.
   static bool contains(CodeBlob *p) { fatal("don't call me!"); return false; }
+  static CodeBlob* patch_nop(NativePostCallNop* nop, void* pc, int& slot);
 
  public:
   // Initialization
   static void initialize();
   static size_t page_size(bool aligned = true, size_t min_pages = 1); // Returns the page size used by the CodeCache

@@ -150,10 +152,12 @@
   static void metadata_do(MetadataClosure* f);             // iterates over metadata in alive nmethods
 
   // Lookup
   static CodeBlob* find_blob(void* start);              // Returns the CodeBlob containing the given address
   static CodeBlob* find_blob_unsafe(void* start);       // Same as find_blob but does not fail if looking up a zombie method
+  static CodeBlob* find_blob_fast(void* start);         // Returns the CodeBlob containing the given address
+  static CodeBlob* find_blob_and_oopmap(void* start, int& slot);         // Returns the CodeBlob containing the given address
   static nmethod*  find_nmethod(void* start);           // Returns the nmethod containing the given address
   static CompiledMethod* find_compiled(void* start);
 
   static int       blob_count();                        // Returns the total number of CodeBlobs in the cache
   static int       blob_count(int code_blob_type);
< prev index next >