jni.cc (add_char): Conditional on INTERPRETER.
* jni.cc (add_char): Conditional on INTERPRETER. (mangled_name): Likewise. (call): Likewise. * include/java-interp.h (class _Jv_MethodBase): Conditional on INTERPRETER. (class _Jv_JNIMethod): Likewise. From-SVN: r31839
This commit is contained in:
parent
f766bd4696
commit
f39b788a15
3 changed files with 28 additions and 20 deletions
|
@ -1,3 +1,12 @@
|
||||||
|
2000-02-07 Tom Tromey <tromey@cygnus.com>
|
||||||
|
|
||||||
|
* jni.cc (add_char): Conditional on INTERPRETER.
|
||||||
|
(mangled_name): Likewise.
|
||||||
|
(call): Likewise.
|
||||||
|
* include/java-interp.h (class _Jv_MethodBase): Conditional on
|
||||||
|
INTERPRETER.
|
||||||
|
(class _Jv_JNIMethod): Likewise.
|
||||||
|
|
||||||
2000-02-04 Warren Levy <warrenl@cygnus.com>
|
2000-02-04 Warren Levy <warrenl@cygnus.com>
|
||||||
|
|
||||||
* Makefile.am: Added MPN.java and BigInteger.java.
|
* Makefile.am: Added MPN.java and BigInteger.java.
|
||||||
|
|
|
@ -14,18 +14,6 @@ details. */
|
||||||
#include <jvm.h>
|
#include <jvm.h>
|
||||||
#include <java-cpool.h>
|
#include <java-cpool.h>
|
||||||
|
|
||||||
// Base class for method representations. Subclasses are interpreted
|
|
||||||
// and JNI methods.
|
|
||||||
class _Jv_MethodBase
|
|
||||||
{
|
|
||||||
protected:
|
|
||||||
// The class which defined this method.
|
|
||||||
_Jv_InterpClass *defining_class;
|
|
||||||
|
|
||||||
// The method description.
|
|
||||||
_Jv_Method *self;
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef INTERPRETER
|
#ifdef INTERPRETER
|
||||||
|
|
||||||
#pragma interface
|
#pragma interface
|
||||||
|
@ -78,6 +66,18 @@ class _Jv_InterpException {
|
||||||
friend class _Jv_InterpMethod;
|
friend class _Jv_InterpMethod;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Base class for method representations. Subclasses are interpreted
|
||||||
|
// and JNI methods.
|
||||||
|
class _Jv_MethodBase
|
||||||
|
{
|
||||||
|
protected:
|
||||||
|
// The class which defined this method.
|
||||||
|
_Jv_InterpClass *defining_class;
|
||||||
|
|
||||||
|
// The method description.
|
||||||
|
_Jv_Method *self;
|
||||||
|
};
|
||||||
|
|
||||||
class _Jv_InterpMethod : public _Jv_MethodBase
|
class _Jv_InterpMethod : public _Jv_MethodBase
|
||||||
{
|
{
|
||||||
_Jv_ushort max_stack;
|
_Jv_ushort max_stack;
|
||||||
|
@ -169,8 +169,6 @@ struct _Jv_ResolvedMethod {
|
||||||
ffi_type * arg_types[0];
|
ffi_type * arg_types[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* INTERPRETER */
|
|
||||||
|
|
||||||
class _Jv_JNIMethod : public _Jv_MethodBase
|
class _Jv_JNIMethod : public _Jv_MethodBase
|
||||||
{
|
{
|
||||||
// The underlying function. If NULL we have to look for the
|
// The underlying function. If NULL we have to look for the
|
||||||
|
@ -186,4 +184,6 @@ class _Jv_JNIMethod : public _Jv_MethodBase
|
||||||
friend void _Jv_PrepareClass(jclass);
|
friend void _Jv_PrepareClass(jclass);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#endif /* INTERPRETER */
|
||||||
|
|
||||||
#endif /* __JAVA_INTERP_H__ */
|
#endif /* __JAVA_INTERP_H__ */
|
||||||
|
|
|
@ -8,12 +8,6 @@ This software is copyrighted work licensed under the terms of the
|
||||||
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
|
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
|
||||||
details. */
|
details. */
|
||||||
|
|
||||||
// Note: currently we take the approach of not checking most
|
|
||||||
// arguments. Instead we could do more checking conditionally (e.g.,
|
|
||||||
// if DEBUG is defined). That might be beneficial in some cases,
|
|
||||||
// though to me it seems that one could just as easily use the
|
|
||||||
// debugger.
|
|
||||||
|
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
|
@ -1205,6 +1199,8 @@ _Jv_JNI_FromReflectedMethod (JNIEnv *, jobject method)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef INTERPRETER
|
||||||
|
|
||||||
// Add a character to the buffer, encoding properly.
|
// Add a character to the buffer, encoding properly.
|
||||||
static void
|
static void
|
||||||
add_char (char *buf, jchar c, int *here)
|
add_char (char *buf, jchar c, int *here)
|
||||||
|
@ -1347,6 +1343,7 @@ _Jv_JNIMethod::call (ffi_cif *cif, void *ret, ffi_raw *args, void *__this)
|
||||||
}
|
}
|
||||||
|
|
||||||
// The actual call to the JNI function.
|
// The actual call to the JNI function.
|
||||||
|
// FIXME: if this is a static function we must include the class!
|
||||||
ffi_raw_call (cif, (void (*) (...)) _this->function, ret, args);
|
ffi_raw_call (cif, (void (*) (...)) _this->function, ret, args);
|
||||||
|
|
||||||
do
|
do
|
||||||
|
@ -1359,6 +1356,8 @@ _Jv_JNIMethod::call (ffi_cif *cif, void *ret, ffi_raw *args, void *__this)
|
||||||
JvThrow (env.ex);
|
JvThrow (env.ex);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif /* INTERPRETER */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define NOT_IMPL NULL
|
#define NOT_IMPL NULL
|
||||||
|
|
Loading…
Add table
Reference in a new issue