diff options
author | Tom Tromey <tromey@cygnus.com> | 2000-04-20 22:24:33 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2000-04-20 22:24:33 +0000 |
commit | 18fcc4961b6dc27d676b02c1147feaf852d88dca (patch) | |
tree | bf01d84615ecaa704bfb1be6fcee5c450d365a49 /libjava/include | |
parent | dea4b2db61b4c3da88ca546997d1dff589c2ac5e (diff) | |
download | gcc-18fcc4961b6dc27d676b02c1147feaf852d88dca.zip gcc-18fcc4961b6dc27d676b02c1147feaf852d88dca.tar.gz gcc-18fcc4961b6dc27d676b02c1147feaf852d88dca.tar.bz2 |
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
Diffstat (limited to 'libjava/include')
-rw-r--r-- | libjava/include/jvm.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/libjava/include/jvm.h b/libjava/include/jvm.h index 625a11e..c9cae93 100644 --- a/libjava/include/jvm.h +++ b/libjava/include/jvm.h @@ -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. |