src/share/vm/ci/ciEnv.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/share/vm/ci/ciEnv.hpp	Tue Sep 22 16:26:51 2015
--- new/src/share/vm/ci/ciEnv.hpp	Tue Sep 22 16:26:51 2015

*** 29,42 **** --- 29,44 ---- #include "ci/ciObjectFactory.hpp" #include "classfile/systemDictionary.hpp" #include "code/debugInfoRec.hpp" #include "code/dependencies.hpp" #include "code/exceptionHandlerTable.hpp" + #include "compiler/compilerDirectives.hpp" #include "compiler/oopMap.hpp" #include "runtime/thread.hpp" class CompileTask; + class DirectiveSet; // ciEnv // // This class is the top level broker for requests from the compiler // to the VM.
*** 54,66 **** --- 56,68 ---- OopRecorder* _oop_recorder; DebugInformationRecorder* _debug_info; Dependencies* _dependencies; const char* _failure_reason; int _compilable; bool _break_at_compile; int _num_inlined_bytecodes; CompileTask* _task; // faster access to CompilerThread::task + DirectiveSet* _directive_set; // directives that apply to compilations with this ciEnv CompileLog* _log; // faster access to CompilerThread::log void* _compiler_data; // compiler-specific stuff, if any char* _name_buffer; int _name_buffer_len;
*** 292,302 **** --- 294,304 ---- MethodCompilable, MethodCompilable_not_at_tier, MethodCompilable_never }; ! ciEnv(CompileTask* task, DirectiveSet* dir, int system_dictionary_modification_counter); // Used only during initialization of the ci ciEnv(Arena* arena); ~ciEnv(); OopRecorder* oop_recorder() { return _oop_recorder; }
*** 330,342 **** --- 332,341 ---- ShouldNotReachHere(); return NULL; } } bool break_at_compile() { return _break_at_compile; } void set_break_at_compile(bool z) { _break_at_compile = z; } // Cache Jvmti state void cache_jvmti_state(); bool jvmti_state_changed() const; bool should_retain_local_variables() const; bool jvmti_can_hotswap_or_post_breakpoint() const { return _jvmti_can_hotswap_or_post_breakpoint; }
*** 350,359 **** --- 349,360 ---- bool dtrace_alloc_probes() const { return _dtrace_alloc_probes; } // The compiler task which has created this env. // May be useful to find out compile_id, comp_level, etc. CompileTask* task() { return _task; } + DirectiveSet* dirset() { return _directive_set; } + // Handy forwards to the task: int comp_level(); // task()->comp_level() uint compile_id(); // task()->compile_id() // Register the result of a compilation.
*** 462,469 **** --- 463,475 ---- void dump_replay_data(int compile_id); void dump_inline_data(int compile_id); void dump_replay_data(outputStream* out); void dump_replay_data_unsafe(outputStream* out); void dump_compile_data(outputStream* out); + + // Compilation directives + bool should_inline(ciMethod* inlinee); + bool should_not_inline(ciMethod* inlinee); + }; #endif // SHARE_VM_CI_CIENV_HPP

src/share/vm/ci/ciEnv.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File