javaCalls.hpp revision 2073
0N/A * or visit www.oracle.com if you need additional information or have any
0N/A#include "memory/allocation.hpp"
0N/A#include "oops/methodOop.hpp"
0N/A#include "runtime/handles.hpp"
0N/A#include "runtime/javaFrameAnchor.hpp"
0N/A#include "runtime/vmThread.hpp"
0N/A#ifdef TARGET_ARCH_x86
0N/A# include "jniTypes_x86.hpp"
0N/A#ifdef TARGET_ARCH_sparc
0N/A# include "jniTypes_sparc.hpp"
0N/A#ifdef TARGET_ARCH_zero
0N/A# include "jniTypes_zero.hpp"
0N/A#ifdef TARGET_ARCH_arm
0N/A# include "jniTypes_arm.hpp"
0N/A#ifdef TARGET_ARCH_ppc
0N/A# include "jniTypes_ppc.hpp"
0N/A#ifdef TARGET_OS_FAMILY_linux
0N/A# include "thread_linux.inline.hpp"
0N/A#ifdef TARGET_OS_FAMILY_solaris
0N/A# include "thread_solaris.inline.hpp"
0N/A#ifdef TARGET_OS_FAMILY_windows
0N/A# include "thread_windows.inline.hpp"
0N/A ~JavaCallWrapper();
0N/A// Encapsulates arguments to a JavaCall (faster, safer, and more convenient than using var-args)
0N/A void initialize() {
0N/A _start_at_zero = false;
0N/A initialize();
0N/A _start_at_zero = false;
0N/A initialize();
0N/A _start_at_zero = true;
0N/A static void call_helper(JavaValue* result, methodHandle* method, JavaCallArguments* args, TRAPS);
0N/A static void call_default_constructor(JavaThread* thread, methodHandle method, Handle receiver, TRAPS);
0N/A static void call_special(JavaValue* result, KlassHandle klass, Symbol* name, Symbol* signature, JavaCallArguments* args, TRAPS);
0N/A static void call_special(JavaValue* result, Handle receiver, KlassHandle klass, Symbol* name, Symbol* signature, TRAPS); // No args
0N/A static void call_special(JavaValue* result, Handle receiver, KlassHandle klass, Symbol* name, Symbol* signature, Handle arg1, TRAPS);
0N/A static void call_special(JavaValue* result, Handle receiver, KlassHandle klass, Symbol* name, Symbol* signature, Handle arg1, Handle arg2, TRAPS);
0N/A static void call_virtual(JavaValue* result, KlassHandle spec_klass, Symbol* name, Symbol* signature, JavaCallArguments* args, TRAPS);
0N/A static void call_virtual(JavaValue* result, Handle receiver, KlassHandle spec_klass, Symbol* name, Symbol* signature, TRAPS); // No args
0N/A static void call_virtual(JavaValue* result, Handle receiver, KlassHandle spec_klass, Symbol* name, Symbol* signature, Handle arg1, TRAPS);
0N/A static void call_virtual(JavaValue* result, Handle receiver, KlassHandle spec_klass, Symbol* name, Symbol* signature, Handle arg1, Handle arg2, TRAPS);
0N/A static void call_static(JavaValue* result, KlassHandle klass, Symbol* name, Symbol* signature, JavaCallArguments* args, TRAPS);
0N/A static void call_static(JavaValue* result, KlassHandle klass, Symbol* name, Symbol* signature, TRAPS);
0N/A static void call_static(JavaValue* result, KlassHandle klass, Symbol* name, Symbol* signature, Handle arg1, TRAPS);