hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp
changeset 4735 3d4e4ec0df67
parent 3681 8565da02ec7a
child 5419 f2e8cc8c12ea
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.
   905 // ---------------------------------------------------------------
   905 // ---------------------------------------------------------------
   906 AdapterHandlerEntry* SharedRuntime::generate_i2c2i_adapters(MacroAssembler *masm,
   906 AdapterHandlerEntry* SharedRuntime::generate_i2c2i_adapters(MacroAssembler *masm,
   907                                                             int total_args_passed,
   907                                                             int total_args_passed,
   908                                                             int comp_args_on_stack,
   908                                                             int comp_args_on_stack,
   909                                                             const BasicType *sig_bt,
   909                                                             const BasicType *sig_bt,
   910                                                             const VMRegPair *regs) {
   910                                                             const VMRegPair *regs,
       
   911                                                             AdapterFingerPrint* fingerprint) {
   911   address i2c_entry = __ pc();
   912   address i2c_entry = __ pc();
   912 
   913 
   913   gen_i2c_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs);
   914   gen_i2c_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs);
   914 
   915 
   915   // -------------------------------------------------------------------------
   916   // -------------------------------------------------------------------------
   952   address c2i_entry = __ pc();
   953   address c2i_entry = __ pc();
   953 
   954 
   954   gen_c2i_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs, skip_fixup);
   955   gen_c2i_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs, skip_fixup);
   955 
   956 
   956   __ flush();
   957   __ flush();
   957   return new AdapterHandlerEntry(i2c_entry, c2i_entry, c2i_unverified_entry);
   958   return AdapterHandlerLibrary::new_entry(fingerprint, i2c_entry, c2i_entry, c2i_unverified_entry);
   958 }
   959 }
   959 
   960 
   960 int SharedRuntime::c_calling_convention(const BasicType *sig_bt,
   961 int SharedRuntime::c_calling_convention(const BasicType *sig_bt,
   961                                          VMRegPair *regs,
   962                                          VMRegPair *regs,
   962                                          int total_args_passed) {
   963                                          int total_args_passed) {