< prev index next >

src/hotspot/share/jvmci/jvmciCompiler.hpp

Print this page




  38   volatile bool _bootstrap_compilation_request_handled;
  39 
  40   /**
  41    * Number of methods successfully compiled by a call to
  42    * JVMCICompiler::compile_method().
  43    */
  44   volatile int _methods_compiled;
  45 
  46   static JVMCICompiler* _instance;
  47 
  48   static elapsedTimer _codeInstallTimer;
  49 
  50   /**
  51    * Exits the VM due to an unexpected exception.
  52    */
  53   static void exit_on_pending_exception(oop exception, const char* message);
  54 
  55 public:
  56   JVMCICompiler();
  57 
  58   static JVMCICompiler* instance(TRAPS) {
  59     if (!EnableJVMCI) {
  60       THROW_MSG_NULL(vmSymbols::java_lang_InternalError(), "JVMCI is not enabled")
  61     }



  62     return _instance;
  63   }
  64 
  65   virtual const char* name() { return "JVMCI"; }
  66 
  67   virtual bool supports_native()                 { return true; }
  68   virtual bool supports_osr   ()                 { return true; }
  69 
  70   bool is_jvmci()                                { return true; }
  71   bool is_c1   ()                                { return false; }
  72   bool is_c2   ()                                { return false; }
  73 
  74   bool needs_stubs            () { return false; }
  75 
  76   // Initialization
  77   virtual void initialize();
  78 
  79   /**
  80    * Initialize the compile queue with the methods in java.lang.Object and
  81    * then wait until the queue is empty.




  38   volatile bool _bootstrap_compilation_request_handled;
  39 
  40   /**
  41    * Number of methods successfully compiled by a call to
  42    * JVMCICompiler::compile_method().
  43    */
  44   volatile int _methods_compiled;
  45 
  46   static JVMCICompiler* _instance;
  47 
  48   static elapsedTimer _codeInstallTimer;
  49 
  50   /**
  51    * Exits the VM due to an unexpected exception.
  52    */
  53   static void exit_on_pending_exception(oop exception, const char* message);
  54 
  55 public:
  56   JVMCICompiler();
  57 
  58   static JVMCICompiler* instance(bool require_non_null, TRAPS) {
  59     if (!EnableJVMCI) {
  60       THROW_MSG_NULL(vmSymbols::java_lang_InternalError(), "JVMCI is not enabled")
  61     }
  62     if (_instance == NULL && require_non_null) {
  63       THROW_MSG_NULL(vmSymbols::java_lang_InternalError(), "The JVMCI compiler instance has not been created");
  64     }
  65     return _instance;
  66   }
  67 
  68   virtual const char* name() { return "JVMCI"; }
  69 
  70   virtual bool supports_native()                 { return true; }
  71   virtual bool supports_osr   ()                 { return true; }
  72 
  73   bool is_jvmci()                                { return true; }
  74   bool is_c1   ()                                { return false; }
  75   bool is_c2   ()                                { return false; }
  76 
  77   bool needs_stubs            () { return false; }
  78 
  79   // Initialization
  80   virtual void initialize();
  81 
  82   /**
  83    * Initialize the compile queue with the methods in java.lang.Object and
  84    * then wait until the queue is empty.


< prev index next >