src/share/vm/code/codeBlob.hpp

Print this page

        

@@ -28,10 +28,18 @@
 #include "asm/codeBuffer.hpp"
 #include "compiler/oopMap.hpp"
 #include "runtime/frame.hpp"
 #include "runtime/handles.hpp"
 
+// CodeBlob Types
+// Used in the CodeCache to assign CodeBlobs to different CodeHeaps
+enum CodeBlobType {
+  btMethodNoProfile   = 0,    // T1 and T4 methods (including native methods)
+  btMethodProfile     = 1,    // T2 and T3 methods with profile information
+  btNonMethod         = 2     // Non-methods like Buffers, Adapters and Runtime Stubs
+};
+
 // CodeBlob - superclass for all entries in the CodeCache.
 //
 // Suptypes are:
 //   nmethod            : Compiled Java methods (include method that calls to native code)
 //   RuntimeStub        : Call to VM runtime methods

@@ -384,13 +392,10 @@
   bool exception_address_is_unpack_entry(address pc) const {
     address unpack_pc = unpack();
     return (pc == unpack_pc || (pc + frame::pc_return_offset) == unpack_pc);
   }
 
-
-
-
   // GC for args
   void preserve_callee_argument_oops(frame fr, const RegisterMap *reg_map, OopClosure* f) { /* Nothing to do */ }
 
   // Printing
   void print_value_on(outputStream* st) const;