mirror of git://gcc.gnu.org/git/gcc.git
re GNATS libgcj/212 (build is broken on Linux/Alpha)
Fix for PR libgcj/212: * gcj/javaprims.h (_Jv_word, _Jv_word2): Removed definitions. * include/jvm.h (_Jv_word, _Jv_word2): Define. * java/lang/Class.h (_Jv_word): Declare. From-SVN: r33292
This commit is contained in:
parent
dea4b2db61
commit
18fcc4961b
|
@ -1,5 +1,10 @@
|
||||||
2000-04-20 Tom Tromey <tromey@cygnus.com>
|
2000-04-20 Tom Tromey <tromey@cygnus.com>
|
||||||
|
|
||||||
|
Fix for PR libgcj/212:
|
||||||
|
* gcj/javaprims.h (_Jv_word, _Jv_word2): Removed definitions.
|
||||||
|
* include/jvm.h (_Jv_word, _Jv_word2): Define.
|
||||||
|
* java/lang/Class.h (_Jv_word): Declare.
|
||||||
|
|
||||||
* jni.cc (_Jv_JNI_PopSystemFrame): Clear `env->ex'.
|
* jni.cc (_Jv_JNI_PopSystemFrame): Clear `env->ex'.
|
||||||
|
|
||||||
2000-04-19 Tom Tromey <tromey@cygnus.com>
|
2000-04-19 Tom Tromey <tromey@cygnus.com>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
// javaprims.h - Main external header file for libgcj. -*- c++ -*-
|
// javaprims.h - Main external header file for libgcj. -*- c++ -*-
|
||||||
|
|
||||||
/* Copyright (C) 1998, 1999 Free Software Foundation
|
/* Copyright (C) 1998, 1999, 2000 Free Software Foundation
|
||||||
|
|
||||||
This file is part of libgcj.
|
This file is part of libgcj.
|
||||||
|
|
||||||
|
@ -278,36 +278,6 @@ extern "C" void _Jv_Free (void*);
|
||||||
typedef unsigned short _Jv_ushort __attribute__((__mode__(__HI__)));
|
typedef unsigned short _Jv_ushort __attribute__((__mode__(__HI__)));
|
||||||
typedef unsigned int _Jv_uint __attribute__((__mode__(__SI__)));
|
typedef unsigned int _Jv_uint __attribute__((__mode__(__SI__)));
|
||||||
|
|
||||||
typedef union {
|
|
||||||
jobject o;
|
|
||||||
jint i; // Also stores smaller integral types.
|
|
||||||
jfloat f;
|
|
||||||
jint ia[1]; // Half of _Jv_word2.
|
|
||||||
void* p;
|
|
||||||
|
|
||||||
// We use __LP64__ and not SIZEOF_VOID_P here because we want
|
|
||||||
// something that will be predefined by the compiler. FIXME -- this
|
|
||||||
// definition probably shouldn't appear here anyway.
|
|
||||||
#ifdef __LP64__
|
|
||||||
// We can safely put a long or a double in here without increasing
|
|
||||||
// the size of _Jv_Word; we take advantage of this in the interpreter.
|
|
||||||
jlong l;
|
|
||||||
jdouble d;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
jclass clazz;
|
|
||||||
jstring string;
|
|
||||||
struct _Jv_Field *field;
|
|
||||||
struct _Jv_Utf8Const *utf8;
|
|
||||||
struct _Jv_ResolvedMethod *rmethod;
|
|
||||||
} _Jv_word;
|
|
||||||
|
|
||||||
typedef union {
|
|
||||||
jint ia[2];
|
|
||||||
jlong l;
|
|
||||||
jdouble d;
|
|
||||||
} _Jv_word2;
|
|
||||||
|
|
||||||
struct _Jv_Utf8Const
|
struct _Jv_Utf8Const
|
||||||
{
|
{
|
||||||
_Jv_ushort hash;
|
_Jv_ushort hash;
|
||||||
|
|
|
@ -31,6 +31,35 @@ struct _Jv_VTable
|
||||||
void *method[1];
|
void *method[1];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
union _Jv_word
|
||||||
|
{
|
||||||
|
jobject o;
|
||||||
|
jint i; // Also stores smaller integral types.
|
||||||
|
jfloat f;
|
||||||
|
jint ia[1]; // Half of _Jv_word2.
|
||||||
|
void* p;
|
||||||
|
|
||||||
|
#if SIZEOF_VOID_P == 8
|
||||||
|
// We can safely put a long or a double in here without increasing
|
||||||
|
// the size of _Jv_Word; we take advantage of this in the interpreter.
|
||||||
|
jlong l;
|
||||||
|
jdouble d;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
jclass clazz;
|
||||||
|
jstring string;
|
||||||
|
struct _Jv_Field *field;
|
||||||
|
struct _Jv_Utf8Const *utf8;
|
||||||
|
struct _Jv_ResolvedMethod *rmethod;
|
||||||
|
};
|
||||||
|
|
||||||
|
union _Jv_word2
|
||||||
|
{
|
||||||
|
jint ia[2];
|
||||||
|
jlong l;
|
||||||
|
jdouble d;
|
||||||
|
};
|
||||||
|
|
||||||
/* Extract a character from a Java-style Utf8 string.
|
/* Extract a character from a Java-style Utf8 string.
|
||||||
* PTR points to the current character.
|
* PTR points to the current character.
|
||||||
* LIMIT points to the end of the Utf8 string.
|
* LIMIT points to the end of the Utf8 string.
|
||||||
|
|
|
@ -50,6 +50,7 @@ enum
|
||||||
|
|
||||||
struct _Jv_Field;
|
struct _Jv_Field;
|
||||||
struct _Jv_VTable;
|
struct _Jv_VTable;
|
||||||
|
union _Jv_word;
|
||||||
|
|
||||||
struct _Jv_Constants
|
struct _Jv_Constants
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue