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>
|
||||
|
||||
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'.
|
||||
|
||||
2000-04-19 Tom Tromey <tromey@cygnus.com>
|
||||
|
@ -1,6 +1,6 @@
|
||||
// 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.
|
||||
|
||||
@ -278,36 +278,6 @@ extern "C" void _Jv_Free (void*);
|
||||
typedef unsigned short _Jv_ushort __attribute__((__mode__(__HI__)));
|
||||
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
|
||||
{
|
||||
_Jv_ushort hash;
|
||||
|
@ -31,6 +31,35 @@ struct _Jv_VTable
|
||||
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.
|
||||
* PTR points to the current character.
|
||||
* LIMIT points to the end of the Utf8 string.
|
||||
|
@ -50,6 +50,7 @@ enum
|
||||
|
||||
struct _Jv_Field;
|
||||
struct _Jv_VTable;
|
||||
union _Jv_word;
|
||||
|
||||
struct _Jv_Constants
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user