hotspot/src/share/vm/interpreter/interpreterRuntime.hpp
changeset 7397 5b173b4ca846
parent 5882 6b2aecc4f7d8
child 7913 dd096a83bdbb
child 7889 02144432d0e1
equal deleted inserted replaced
7396:518b01b064ff 7397:5b173b4ca846
    19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    20  * or visit www.oracle.com if you need additional information or have any
    20  * or visit www.oracle.com if you need additional information or have any
    21  * questions.
    21  * questions.
    22  *
    22  *
    23  */
    23  */
       
    24 
       
    25 #ifndef SHARE_VM_INTERPRETER_INTERPRETERRUNTIME_HPP
       
    26 #define SHARE_VM_INTERPRETER_INTERPRETERRUNTIME_HPP
       
    27 
       
    28 #include "interpreter/bytecode.hpp"
       
    29 #include "interpreter/linkResolver.hpp"
       
    30 #include "memory/universe.hpp"
       
    31 #include "oops/methodOop.hpp"
       
    32 #include "runtime/frame.inline.hpp"
       
    33 #include "runtime/signature.hpp"
       
    34 #include "utilities/top.hpp"
       
    35 #ifdef TARGET_OS_FAMILY_linux
       
    36 # include "thread_linux.inline.hpp"
       
    37 #endif
       
    38 #ifdef TARGET_OS_FAMILY_solaris
       
    39 # include "thread_solaris.inline.hpp"
       
    40 #endif
       
    41 #ifdef TARGET_OS_FAMILY_windows
       
    42 # include "thread_windows.inline.hpp"
       
    43 #endif
    24 
    44 
    25 // The InterpreterRuntime is called by the interpreter for everything
    45 // The InterpreterRuntime is called by the interpreter for everything
    26 // that cannot/should not be dealt with in assembly and needs C support.
    46 // that cannot/should not be dealt with in assembly and needs C support.
    27 
    47 
    28 class InterpreterRuntime: AllStatic {
    48 class InterpreterRuntime: AllStatic {
   126   // Popframe support (only needed on x86 and AMD64)
   146   // Popframe support (only needed on x86 and AMD64)
   127   static void popframe_move_outgoing_args(JavaThread* thread, void* src_address, void* dest_address);
   147   static void popframe_move_outgoing_args(JavaThread* thread, void* src_address, void* dest_address);
   128 #endif
   148 #endif
   129 
   149 
   130   // Platform dependent stuff
   150   // Platform dependent stuff
   131   #include "incls/_interpreterRT_pd.hpp.incl"
   151 #ifdef TARGET_ARCH_x86
       
   152 # include "interpreterRT_x86.hpp"
       
   153 #endif
       
   154 #ifdef TARGET_ARCH_sparc
       
   155 # include "interpreterRT_sparc.hpp"
       
   156 #endif
       
   157 #ifdef TARGET_ARCH_zero
       
   158 # include "interpreterRT_zero.hpp"
       
   159 #endif
       
   160 
   132 
   161 
   133   // Interpreter's frequency counter overflow
   162   // Interpreter's frequency counter overflow
   134   static nmethod* frequency_counter_overflow(JavaThread* thread, address branch_bcp);
   163   static nmethod* frequency_counter_overflow(JavaThread* thread, address branch_bcp);
   135 
   164 
   136   // Interpreter profiling support
   165   // Interpreter profiling support
   161   static void pd_set_handler(address handler);
   190   static void pd_set_handler(address handler);
   162 
   191 
   163  public:
   192  public:
   164   static void add(methodHandle method);
   193   static void add(methodHandle method);
   165 };
   194 };
       
   195 
       
   196 #endif // SHARE_VM_INTERPRETER_INTERPRETERRUNTIME_HPP