diff options
| author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-03-26 20:33:04 +0000 |
|---|---|---|
| committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-03-26 20:33:04 +0000 |
| commit | 02ddd4c0408d678a216bde8231e93a5b6f8e0d47 (patch) | |
| tree | 316c5bb1d7d3464e8a5a904b6040f521f3b9a97f /libjava/include | |
| parent | 246d629b7c6b4563bfb5948573defcd8f8daefbb (diff) | |
| download | ppe42-gcc-02ddd4c0408d678a216bde8231e93a5b6f8e0d47.tar.gz ppe42-gcc-02ddd4c0408d678a216bde8231e93a5b6f8e0d47.zip | |
2000-03-26 Tom Tromey <tromey@cygnus.com>
* java/lang/mprec.h: Use SIZEOF_VOID_P.
* interpret.cc: Use SIZEOF_VOID_P.
* include/java-cpool.h (_Jv_storeLong): Use SIZEOF_VOID_P.
(_Jv_loadLong): Likewise.
(_Jv_storeDouble): Likewise.
* configure: Rebuilt.
* configure.in: Check size of void*.
* resolve.cc (ncode): Use FFI_PREP_RAW_CLOSURE and FFI_RAW_SIZE.
2000-03-26 Hans Boehm <boehm@acm.org>
* include/java-cpool.h (_Jv_storeLong, _Jv_loadLong,
_Jv_storeDouble, _Jv_loadDouble): Define differently on 64 bit
machine.
* java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN or
__IEEE_LITTLE_ENDIAN appropriately on IA64.
* java/lang/mprec.h: Don't define Pack_32 on 64 bit machine.
* javaprims.h (_Jv_word): Added `l' and `d' entries in 64 bit
case.
* resolve.cc (FFI_PREP_RAW_CLOSURE): New define.
(FFI_RAW_SIZE): Likewise.
(_Jv_InterpMethod::ncode): Use them.
* interpret.cc (PUSHL, PUSHD, POPL, POPD, LOADL, LOADD, STOREL,
STORED): Define differently on a 64 bit machine.
(continue1): Use ffi_java_raw_call when appropriate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32754 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/include')
| -rw-r--r-- | libjava/include/default-signal.h | 4 | ||||
| -rw-r--r-- | libjava/include/java-cpool.h | 18 |
2 files changed, 19 insertions, 3 deletions
diff --git a/libjava/include/default-signal.h b/libjava/include/default-signal.h index 56d1cc22db1..0fb3d7d0cb1 100644 --- a/libjava/include/default-signal.h +++ b/libjava/include/default-signal.h @@ -13,8 +13,8 @@ details. */ #ifdef SJLJ_EXCEPTIONS -#define HANDLE_SEGV -#define HANDLE_FPE +#define HANDLE_SEGV 1 +#define HANDLE_FPE 1 #include <signal.h> diff --git a/libjava/include/java-cpool.h b/libjava/include/java-cpool.h index 602de2843cb..c636e4c6bca 100644 --- a/libjava/include/java-cpool.h +++ b/libjava/include/java-cpool.h @@ -1,6 +1,6 @@ // java-cpool.h - Constant pool parsing header. -*- c++ -*- -/* Copyright (C) 1999 Free Software Foundation +/* Copyright (C) 1999, 2000 Free Software Foundation This file is part of libgcj. @@ -80,37 +80,53 @@ _Jv_loadInt (_Jv_word *data) extern inline void _Jv_storeLong (_Jv_word *data, jlong l) { +#if SIZEOF_VOID_P == 8 + data[0].l = l; +#else _Jv_word2 tmp; tmp.l = l; data[0].ia[0] = tmp.ia[0]; data[1].ia[0] = tmp.ia[1]; +#endif } extern inline jlong _Jv_loadLong (_Jv_word *data) { +#if SIZEOF_VOID_P == 8 + return data -> l; +#else _Jv_word2 tmp; tmp.ia[0] = data[0].ia[0]; tmp.ia[1] = data[1].ia[0]; return tmp.l; +#endif } extern inline void _Jv_storeDouble (_Jv_word *data, jdouble d) { +#if SIZEOF_VOID_P == 8 + data[0].d = d; +#else _Jv_word2 tmp; tmp.d = d; data[0].ia[0] = tmp.ia[0]; data[1].ia[0] = tmp.ia[1]; +#endif } extern inline jdouble _Jv_loadDouble (_Jv_word *data) { +#if SIZEOF_VOID_P == 8 + return data -> d; +#else _Jv_word2 tmp; tmp.ia[0] = data[0].ia[0]; tmp.ia[1] = data[1].ia[0]; return tmp.d; +#endif } |

