src/share/vm/runtime/sharedRuntime.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff src/share/vm/runtime

src/share/vm/runtime/sharedRuntime.hpp

Print this page




 325 
 326   // Resets a call-site in compiled code so it will get resolved again.
 327   static methodHandle reresolve_call_site(JavaThread *thread, TRAPS);
 328 
 329   // In the code prolog, if the klass comparison fails, the inline cache
 330   // misses and the call site is patched to megamorphic
 331   static methodHandle handle_ic_miss_helper(JavaThread* thread, TRAPS);
 332 
 333   // Find the method that called us.
 334   static methodHandle find_callee_method(JavaThread* thread, TRAPS);
 335 
 336 
 337  private:
 338   static Handle find_callee_info(JavaThread* thread,
 339                                  Bytecodes::Code& bc,
 340                                  CallInfo& callinfo, TRAPS);
 341   static Handle find_callee_info_helper(JavaThread* thread,
 342                                         vframeStream& vfst,
 343                                         Bytecodes::Code& bc,
 344                                         CallInfo& callinfo, TRAPS);






 345 
 346   static address clean_virtual_call_entry();
 347   static address clean_opt_virtual_call_entry();
 348   static address clean_static_call_entry();
 349 
 350  public:
 351 
 352   // Read the array of BasicTypes from a Java signature, and compute where
 353   // compiled Java code would like to put the results.  Values in reg_lo and
 354   // reg_hi refer to 4-byte quantities.  Values less than SharedInfo::stack0 are
 355   // registers, those above refer to 4-byte stack slots.  All stack slots are
 356   // based off of the window top.  SharedInfo::stack0 refers to the first usable
 357   // slot in the bottom of the frame. SharedInfo::stack0+1 refers to the memory word
 358   // 4-bytes higher. So for sparc because the register window save area is at
 359   // the bottom of the frame the first 16 words will be skipped and SharedInfo::stack0
 360   // will be just above it. (
 361   // return value is the maximum number of VMReg stack slots the convention will use.
 362   static int java_calling_convention(const BasicType* sig_bt, VMRegPair* regs, int total_args_passed, int is_outgoing);
 363 
 364   static void check_member_name_argument_is_last_argument(methodHandle method,




 325 
 326   // Resets a call-site in compiled code so it will get resolved again.
 327   static methodHandle reresolve_call_site(JavaThread *thread, TRAPS);
 328 
 329   // In the code prolog, if the klass comparison fails, the inline cache
 330   // misses and the call site is patched to megamorphic
 331   static methodHandle handle_ic_miss_helper(JavaThread* thread, TRAPS);
 332 
 333   // Find the method that called us.
 334   static methodHandle find_callee_method(JavaThread* thread, TRAPS);
 335 
 336 
 337  private:
 338   static Handle find_callee_info(JavaThread* thread,
 339                                  Bytecodes::Code& bc,
 340                                  CallInfo& callinfo, TRAPS);
 341   static Handle find_callee_info_helper(JavaThread* thread,
 342                                         vframeStream& vfst,
 343                                         Bytecodes::Code& bc,
 344                                         CallInfo& callinfo, TRAPS);
 345   static methodHandle extract_attached_call_info(JavaThread* thread);
 346   static void         resolve_attached_call_info(JavaThread* thread,
 347                                                  methodHandle info,
 348                                                  Bytecodes::Code bc,
 349                                                  Handle& receiver,
 350                                                  CallInfo& callinfo, TRAPS);
 351 
 352   static address clean_virtual_call_entry();
 353   static address clean_opt_virtual_call_entry();
 354   static address clean_static_call_entry();
 355 
 356  public:
 357 
 358   // Read the array of BasicTypes from a Java signature, and compute where
 359   // compiled Java code would like to put the results.  Values in reg_lo and
 360   // reg_hi refer to 4-byte quantities.  Values less than SharedInfo::stack0 are
 361   // registers, those above refer to 4-byte stack slots.  All stack slots are
 362   // based off of the window top.  SharedInfo::stack0 refers to the first usable
 363   // slot in the bottom of the frame. SharedInfo::stack0+1 refers to the memory word
 364   // 4-bytes higher. So for sparc because the register window save area is at
 365   // the bottom of the frame the first 16 words will be skipped and SharedInfo::stack0
 366   // will be just above it. (
 367   // return value is the maximum number of VMReg stack slots the convention will use.
 368   static int java_calling_convention(const BasicType* sig_bt, VMRegPair* regs, int total_args_passed, int is_outgoing);
 369 
 370   static void check_member_name_argument_is_last_argument(methodHandle method,


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