hotspot/src/share/vm/ci/ciEnv.hpp
changeset 33626 3c94db05e903
parent 33593 60764a78fa5c
parent 33451 0712796e4039
child 34229 892795cc82fe
equal deleted inserted replaced
33625:18e7896ca9fe 33626:3c94db05e903
    30 #include "classfile/systemDictionary.hpp"
    30 #include "classfile/systemDictionary.hpp"
    31 #include "code/debugInfoRec.hpp"
    31 #include "code/debugInfoRec.hpp"
    32 #include "code/dependencies.hpp"
    32 #include "code/dependencies.hpp"
    33 #include "code/exceptionHandlerTable.hpp"
    33 #include "code/exceptionHandlerTable.hpp"
    34 #include "compiler/oopMap.hpp"
    34 #include "compiler/oopMap.hpp"
       
    35 #include "compiler/compilerDirectives.hpp"
    35 #include "runtime/thread.hpp"
    36 #include "runtime/thread.hpp"
    36 
    37 
    37 class CompileTask;
    38 class CompileTask;
       
    39 class DirectiveSet;
    38 
    40 
    39 // ciEnv
    41 // ciEnv
    40 //
    42 //
    41 // This class is the top level broker for requests from the compiler
    43 // This class is the top level broker for requests from the compiler
    42 // to the VM.
    44 // to the VM.
   350   bool  dtrace_alloc_probes()    const { return _dtrace_alloc_probes; }
   352   bool  dtrace_alloc_probes()    const { return _dtrace_alloc_probes; }
   351 
   353 
   352   // The compiler task which has created this env.
   354   // The compiler task which has created this env.
   353   // May be useful to find out compile_id, comp_level, etc.
   355   // May be useful to find out compile_id, comp_level, etc.
   354   CompileTask* task() { return _task; }
   356   CompileTask* task() { return _task; }
       
   357 
   355   // Handy forwards to the task:
   358   // Handy forwards to the task:
   356   int comp_level();   // task()->comp_level()
   359   int comp_level();   // task()->comp_level()
   357   uint compile_id();  // task()->compile_id()
   360   uint compile_id();  // task()->compile_id()
   358 
   361 
   359   // Register the result of a compilation.
   362   // Register the result of a compilation.
   365                        int                       frame_words,
   368                        int                       frame_words,
   366                        OopMapSet*                oop_map_set,
   369                        OopMapSet*                oop_map_set,
   367                        ExceptionHandlerTable*    handler_table,
   370                        ExceptionHandlerTable*    handler_table,
   368                        ImplicitExceptionTable*   inc_table,
   371                        ImplicitExceptionTable*   inc_table,
   369                        AbstractCompiler*         compiler,
   372                        AbstractCompiler*         compiler,
   370                        int                       comp_level,
       
   371                        bool                      has_unsafe_access,
   373                        bool                      has_unsafe_access,
   372                        bool                      has_wide_vectors,
   374                        bool                      has_wide_vectors,
       
   375                        DirectiveSet*             directives,
   373                        RTMState                  rtm_state = NoRTM);
   376                        RTMState                  rtm_state = NoRTM);
   374 
   377 
   375 
   378 
   376   // Access to certain well known ciObjects.
   379   // Access to certain well known ciObjects.
   377 #define WK_KLASS_FUNC(name, ignore_s, ignore_o) \
   380 #define WK_KLASS_FUNC(name, ignore_s, ignore_o) \