hotspot/src/share/vm/ci/ciEnv.hpp
changeset 2867 69187054225f
parent 1 489c9b5090e2
child 3261 c7d5aae8d3f7
equal deleted inserted replaced
2866:6beb2b47717a 2867:69187054225f
    50   CompileLog*      _log;            // faster access to CompilerThread::log
    50   CompileLog*      _log;            // faster access to CompilerThread::log
    51   void*            _compiler_data;  // compiler-specific stuff, if any
    51   void*            _compiler_data;  // compiler-specific stuff, if any
    52 
    52 
    53   char* _name_buffer;
    53   char* _name_buffer;
    54   int   _name_buffer_len;
    54   int   _name_buffer_len;
       
    55 
       
    56   // Cache Jvmti state
       
    57   bool  _jvmti_can_hotswap_or_post_breakpoint;
       
    58   bool  _jvmti_can_examine_or_deopt_anywhere;
       
    59   bool  _jvmti_can_access_local_variables;
       
    60   bool  _jvmti_can_post_exceptions;
       
    61 
       
    62   // Cache DTrace flags
       
    63   bool  _dtrace_extended_probes;
       
    64   bool  _dtrace_monitor_probes;
       
    65   bool  _dtrace_method_probes;
       
    66   bool  _dtrace_alloc_probes;
    55 
    67 
    56   // Distinguished instances of certain ciObjects..
    68   // Distinguished instances of certain ciObjects..
    57   static ciObject*              _null_object_instance;
    69   static ciObject*              _null_object_instance;
    58   static ciMethodKlass*         _method_klass_instance;
    70   static ciMethodKlass*         _method_klass_instance;
    59   static ciSymbolKlass*         _symbol_klass_instance;
    71   static ciSymbolKlass*         _symbol_klass_instance;
   234   int compilable() { return _compilable; }
   246   int compilable() { return _compilable; }
   235 
   247 
   236   bool break_at_compile() { return _break_at_compile; }
   248   bool break_at_compile() { return _break_at_compile; }
   237   void set_break_at_compile(bool z) { _break_at_compile = z; }
   249   void set_break_at_compile(bool z) { _break_at_compile = z; }
   238 
   250 
       
   251   // Cache Jvmti state
       
   252   void  cache_jvmti_state();
       
   253   bool  jvmti_can_hotswap_or_post_breakpoint() const { return _jvmti_can_hotswap_or_post_breakpoint; }
       
   254   bool  jvmti_can_examine_or_deopt_anywhere()  const { return _jvmti_can_examine_or_deopt_anywhere; }
       
   255   bool  jvmti_can_access_local_variables()     const { return _jvmti_can_access_local_variables; }
       
   256   bool  jvmti_can_post_exceptions()            const { return _jvmti_can_post_exceptions; }
       
   257 
       
   258   // Cache DTrace flags
       
   259   void  cache_dtrace_flags();
       
   260   bool  dtrace_extended_probes() const { return _dtrace_extended_probes; }
       
   261   bool  dtrace_monitor_probes()  const { return _dtrace_monitor_probes; }
       
   262   bool  dtrace_method_probes()   const { return _dtrace_method_probes; }
       
   263   bool  dtrace_alloc_probes()    const { return _dtrace_alloc_probes; }
       
   264 
   239   // The compiler task which has created this env.
   265   // The compiler task which has created this env.
   240   // May be useful to find out compile_id, comp_level, etc.
   266   // May be useful to find out compile_id, comp_level, etc.
   241   CompileTask* task() { return _task; }
   267   CompileTask* task() { return _task; }
   242   // Handy forwards to the task:
   268   // Handy forwards to the task:
   243   int comp_level();   // task()->comp_level()
   269   int comp_level();   // task()->comp_level()