hotspot/src/cpu/x86/vm/sharedRuntime_x86_64.cpp
changeset 4735 3d4e4ec0df67
parent 4564 55dfb20908d0
child 5252 58f23871a5b6
equal deleted inserted replaced
4650:ac73c07a6bf6 4735:3d4e4ec0df67
     1 /*
     1 /*
     2  * Copyright 2003-2009 Sun Microsystems, Inc.  All Rights Reserved.
     2  * Copyright 2003-2010 Sun Microsystems, Inc.  All Rights Reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   776 // ---------------------------------------------------------------
   776 // ---------------------------------------------------------------
   777 AdapterHandlerEntry* SharedRuntime::generate_i2c2i_adapters(MacroAssembler *masm,
   777 AdapterHandlerEntry* SharedRuntime::generate_i2c2i_adapters(MacroAssembler *masm,
   778                                                             int total_args_passed,
   778                                                             int total_args_passed,
   779                                                             int comp_args_on_stack,
   779                                                             int comp_args_on_stack,
   780                                                             const BasicType *sig_bt,
   780                                                             const BasicType *sig_bt,
   781                                                             const VMRegPair *regs) {
   781                                                             const VMRegPair *regs,
       
   782                                                             AdapterFingerPrint* fingerprint) {
   782   address i2c_entry = __ pc();
   783   address i2c_entry = __ pc();
   783 
   784 
   784   gen_i2c_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs);
   785   gen_i2c_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs);
   785 
   786 
   786   // -------------------------------------------------------------------------
   787   // -------------------------------------------------------------------------
   822   address c2i_entry = __ pc();
   823   address c2i_entry = __ pc();
   823 
   824 
   824   gen_c2i_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs, skip_fixup);
   825   gen_c2i_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs, skip_fixup);
   825 
   826 
   826   __ flush();
   827   __ flush();
   827   return new AdapterHandlerEntry(i2c_entry, c2i_entry, c2i_unverified_entry);
   828   return AdapterHandlerLibrary::new_entry(fingerprint, i2c_entry, c2i_entry, c2i_unverified_entry);
   828 }
   829 }
   829 
   830 
   830 int SharedRuntime::c_calling_convention(const BasicType *sig_bt,
   831 int SharedRuntime::c_calling_convention(const BasicType *sig_bt,
   831                                          VMRegPair *regs,
   832                                          VMRegPair *regs,
   832                                          int total_args_passed) {
   833                                          int total_args_passed) {