summaryrefslogtreecommitdiff
path: root/libjava/include
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2001-11-05 23:39:54 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2001-11-05 23:39:54 +0000
commit795b12569754a9fc48d7b405f1bb083232bf483c (patch)
tree00e8580aca78cea0cc0c6157e06cdab7d56a0790 /libjava/include
parent6937820b66063617f77cc5c28532a8b73997f6d1 (diff)
downloadgcc-795b12569754a9fc48d7b405f1bb083232bf483c.tar.gz
* java/lang/Class.h (Class): Made _Jv_BytecodeVerifier a friend.
* Makefile.in: Rebuilt. * Makefile.am (libgcj_la_SOURCES): Added verify.cc. * verify.cc: New file. * include/java-interp.h (_Jv_count_arguments): Declare. (_Jv_VerifyMethod): Likewise. (class _Jv_InterpMethod): Made _Jv_BytecodeVerifier a friend. (class _Jv_InterpException): Likewise. * resolve.cc (_Jv_count_arguments): Renamed from count_arguments. No longer static. Updated callers. * defineclass.cc (int_bits_to_float): Removed. (long_bits_to_double): Likewise. (prepare_pool_entry): Updated. (handleCodeAttribute): Verify method (commented out for now). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46796 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/include')
-rw-r--r--libjava/include/java-interp.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/libjava/include/java-interp.h b/libjava/include/java-interp.h
index 233e7389534..8eeb0949378 100644
--- a/libjava/include/java-interp.h
+++ b/libjava/include/java-interp.h
@@ -43,6 +43,9 @@ void _Jv_DefineClass (jclass, jbyteArray, jint, jint);
void _Jv_InitField (jobject, jclass, int);
void * _Jv_AllocMethodInvocation (jsize size);
+int _Jv_count_arguments (_Jv_Utf8Const *signature,
+ jboolean staticp = true);
+void _Jv_VerifyMethod (_Jv_InterpMethod *method);
/* FIXME: this should really be defined in some more generic place */
#define ROUND(V, A) (((((unsigned) (V))-1) | ((A)-1))+1)
@@ -54,7 +57,8 @@ class _Jv_InterpClass;
class _Jv_InterpMethod;
class _Jv_InterpMethodInvocation;
-class _Jv_InterpException {
+class _Jv_InterpException
+{
int start_pc;
int end_pc;
int handler_pc;
@@ -62,6 +66,7 @@ class _Jv_InterpException {
friend class _Jv_ClassReader;
friend class _Jv_InterpMethod;
+ friend class _Jv_BytecodeVerifier;
};
// Base class for method representations. Subclasses are interpreted
@@ -133,6 +138,7 @@ class _Jv_InterpMethod : public _Jv_MethodBase
friend class _Jv_ClassReader;
friend class _Jv_InterpMethodInvocation;
+ friend class _Jv_BytecodeVerifier;
friend void _Jv_PrepareClass(jclass);
};