aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <bonzini@gnu.org>2003-10-14 17:53:42 +0000
committerTom Tromey <tromey@gcc.gnu.org>2003-10-14 17:53:42 +0000
commit415c96ca6aba0c768f212dce3cffb85ff34dc1d1 (patch)
treea938b437da289bf036591ace817369ab6e8e2264
parent4f22de033740ed44d20a6ab18f034745311aff13 (diff)
interpret.cc (_Jv_InterpMethod::run): Don't use libffi types, they were meant to be internal.
2003-10-14 Paolo Bonzini <bonzini@gnu.org> * interpret.cc (_Jv_InterpMethod::run): Don't use libffi types, they were meant to be internal. * gcj/javaprims.h (_Jv_ulong): New typedef. From-SVN: r72482
-rw-r--r--libjava/ChangeLog6
-rw-r--r--libjava/gcj/javaprims.h1
-rw-r--r--libjava/interpret.cc6
3 files changed, 10 insertions, 3 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index c3ceb5c13ec..2e33fe98954 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,9 @@
+2003-10-14 Paolo Bonzini <bonzini@gnu.org>
+
+ * interpret.cc (_Jv_InterpMethod::run): Don't
+ use libffi types, they were meant to be internal.
+ * gcj/javaprims.h (_Jv_ulong): New typedef.
+
2003-10-13 Tom Tromey <tromey@redhat.com>
* java/lang/natClassLoader.cc (_Jv_InitNewClassFields): Removed.
diff --git a/libjava/gcj/javaprims.h b/libjava/gcj/javaprims.h
index b88b3fe3e71..4420f64ff72 100644
--- a/libjava/gcj/javaprims.h
+++ b/libjava/gcj/javaprims.h
@@ -496,6 +496,7 @@ extern "C" void _Jv_RegisterClassHookDefault (jclass);
typedef unsigned short _Jv_ushort __attribute__((__mode__(__HI__)));
typedef unsigned int _Jv_uint __attribute__((__mode__(__SI__)));
+typedef unsigned int _Jv_ulong __attribute__((__mode__(__DI__)));
struct _Jv_Utf8Const
{
diff --git a/libjava/interpret.cc b/libjava/interpret.cc
index 43d627921fb..5fd2c2b5869 100644
--- a/libjava/interpret.cc
+++ b/libjava/interpret.cc
@@ -1898,7 +1898,7 @@ _Jv_InterpMethod::run (void *retp, ffi_raw *args)
insn_iushr:
{
jint shift = (POPI() & 0x1f);
- UINT32 value = (UINT32) POPI();
+ _Jv_uint value = (_Jv_uint) POPI();
PUSHI ((jint) (value >> shift));
}
NEXT_INSN;
@@ -1906,8 +1906,8 @@ _Jv_InterpMethod::run (void *retp, ffi_raw *args)
insn_lushr:
{
jint shift = (POPI() & 0x3f);
- UINT64 value = (UINT64) POPL();
- PUSHL ((value >> shift));
+ _Jv_ulong value = (_Jv_ulong) POPL();
+ PUSHL ((jlong) (value >> shift));
}
NEXT_INSN;