1 /* |
1 /* |
2 * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1997, 2011, Oracle and/or its affiliates. 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. |
436 // convention (handlizes oops, etc), transitions to native, makes the call, |
436 // convention (handlizes oops, etc), transitions to native, makes the call, |
437 // returns to java state (possibly blocking), unhandlizes any result and |
437 // returns to java state (possibly blocking), unhandlizes any result and |
438 // returns. |
438 // returns. |
439 static nmethod *generate_native_wrapper(MacroAssembler* masm, |
439 static nmethod *generate_native_wrapper(MacroAssembler* masm, |
440 methodHandle method, |
440 methodHandle method, |
|
441 int compile_id, |
441 int total_args_passed, |
442 int total_args_passed, |
442 int max_arg, |
443 int max_arg, |
443 BasicType *sig_bt, |
444 BasicType *sig_bt, |
444 VMRegPair *regs, |
445 VMRegPair *regs, |
445 BasicType ret_type ); |
446 BasicType ret_type ); |
657 |
658 |
658 public: |
659 public: |
659 |
660 |
660 static AdapterHandlerEntry* new_entry(AdapterFingerPrint* fingerprint, |
661 static AdapterHandlerEntry* new_entry(AdapterFingerPrint* fingerprint, |
661 address i2c_entry, address c2i_entry, address c2i_unverified_entry); |
662 address i2c_entry, address c2i_entry, address c2i_unverified_entry); |
662 static nmethod* create_native_wrapper(methodHandle method); |
663 static nmethod* create_native_wrapper(methodHandle method, int compile_id); |
663 static AdapterHandlerEntry* get_adapter(methodHandle method); |
664 static AdapterHandlerEntry* get_adapter(methodHandle method); |
664 |
665 |
665 #ifdef HAVE_DTRACE_H |
666 #ifdef HAVE_DTRACE_H |
666 static nmethod* create_dtrace_nmethod (methodHandle method); |
667 static nmethod* create_dtrace_nmethod (methodHandle method); |
667 #endif // HAVE_DTRACE_H |
668 #endif // HAVE_DTRACE_H |