Re: [kaffe] cross-compile error

2008-02-18 Thread Dalibor Topic

Dalibor Topic wrote:

Dalibor Topic wrote:

Robert Schuster wrote:

Hi,

Robert Schuster schrieb:

I now found a cacheflush implementation in libffi. I adjust this for
kaffe and report back.

I took what was said here[0] as a base for an OABI-  EABI-compliant
implementation of the cache flushing.

It compiles nicely (I can only test the EABI-variant here).
Unfortunately it does not work at runtime. That means I get the same
assertion failure as before:

kaffe-bin: exception.c:100: vmExcept_setJNIFrame: Assertion `fp !=
(JNIFrameAddress)0'

Now I dont know whether those two things are related. The only thing I
know for sure is that I use the same cacheflush implementation for cacao
and there it does its job (and fixes a real bug).

Help! :)


Thanks a lot for the patch, I can reproduce the build failure now, and 
I've fixed the build for the interpreter engine on arm linux (3 
regression tests fail, which I think has more to do with 
fdlibm/classpath, than Kaffe, as there is a patch or two for arm 
issues in the classpath bug tracker).


I'll look into fixing the build on arm-linux with the jit engines next 
using your patch. I've got aurelien's ARM Debian OABI image running,

and I hope I can get one with EABI running, too.



Ok, I've committed a fix for the build problem. Unfortunately, your 
patch still failed to compile on OABI, so I decided to use gcc's cache 
flushing code instead.


On to the next problem: currently the jit regression test fails at a 
floating point test.


Fixed per just committed patch. This lets the jit regression test pass, 
and lets Kaffe run the real regression tests. 26 fails on armel OABI 
linux with the jit engine. 0 with the interpreter engine.


The interpreter engine on EABI looks like it will also have 0 
regressions. I haven't tried the jit on EABI yet.


cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-17 Thread Dalibor Topic

Dalibor Topic schrieb:

Dalibor Topic wrote:

Dalibor Topic wrote:


My plan would be to look at making the interpreter pass on arm-oabi 
and arm-eabi without failures, and then
to move on to the jits. I'd also like to see if I can rip out all 
the atomic* code in Kaffe's config dirs by using glib's
atomic functions instead, as that would be less low level code from 
libc to keep around as copies in Kaffe.


Any volunteers for the arm-* interpreter failures?

3 failures on OABI, 5 on EABI, btw.


Up to 4 failures on OABI with the patch at
http://www.kaffe.org/~robilad/classpath-double-bits.diff .

As far as I can see, Kaffe's floating point implementation is pretty 
bogus regarding VM spec compliance, and duplicates code all over the 
place. I'll try to fix it up a bit over the next couple of days.
It's either a bug in ecj, or gcj, that caused the test cases to be 
miscompiled, and not a bug in Kaffe, which seems to be the only free VM 
that works as it should with

class files on arm-oabi.

cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-11 Thread Dalibor Topic

Dalibor Topic wrote:

Dalibor Topic wrote:


My plan would be to look at making the interpreter pass on arm-oabi 
and arm-eabi without failures, and then
to move on to the jits. I'd also like to see if I can rip out all the 
atomic* code in Kaffe's config dirs by using glib's
atomic functions instead, as that would be less low level code from 
libc to keep around as copies in Kaffe.


Any volunteers for the arm-* interpreter failures?

3 failures on OABI, 5 on EABI, btw.


Up to 4 failures on OABI with the patch at
http://www.kaffe.org/~robilad/classpath-double-bits.diff .

As far as I can see, Kaffe's floating point implementation is pretty 
bogus regarding VM spec compliance, and duplicates code all over the 
place. I'll try to fix it up a bit over the next couple of days.


cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: Classpath's doubleToLongBits (was: Re: [kaffe] cross-compile error)

2008-02-11 Thread Christian Thalinger
On Fri, 2008-02-08 at 00:26 +0100, Dalibor Topic wrote:
 I've looked a bit closer at the 3 ARM OABI errors, in particular at the
 errors in test/regression/DoubleConst.java . That test fails because we 
 get the bitstreams of the doubles being tested when we call 
 Double.doubleToLongbits with swapped words, i.e. instead of 
 0x7fef we get 0x7fef.
 
 The current GNU Classpath implementation of 
 Java_java_lang_VMDouble_doubleToLongBits ends up swapping the words, 
 whenever __ARMEL__ is defined. That makes the DoubleConst test fail for 
 Cacao, Kaffe, etc. Since twisti said on IRC that he had spent a lot of 
 time trying to get it right on his ARM systems, I didn't want to mess 
 with the corresponding file in fdlibm.
 
 So I wrote another implementation of the function, using ieee754.h (part 
 of glibc). Basically, it boils down to shifting the bits from the 
 bitfields to the right places inside the jlong. Easy.
 
 Unfortunately, that didn't work on arm OABI debian sid either. It turned 
 out that glibc has a bug in the iee754.h header file, that comes to bite 
 one on arm OABI. Filed as
 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=464594 with a patch 
 attached.
 
 Meanwhile, that still means that those 3 tests fail until glibc is 
 fixed. So ... I'll send in a couple of patches to the classpath patches 
 list to first rewrite the doubleToLongBits in Java (and the same for 
 Float), removing it from the VM interface, and then, I'll send in a 
 patch to add the ieee754.h way of dealing with fetching the bits to the 
 current way.
 
 Does that sound useful?

That sounds actually very good, if it works on all configurations.  I
can remember we had a lot of problems to get these functions right on an
Arm system with VFP.  For more problems see also:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22800

- twisti


___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Classpath's doubleToLongBits (was: Re: [kaffe] cross-compile error)

2008-02-07 Thread Dalibor Topic

Dalibor Topic wrote:

Dalibor Topic wrote:


My plan would be to look at making the interpreter pass on arm-oabi 
and arm-eabi without failures, and then
to move on to the jits. I'd also like to see if I can rip out all the 
atomic* code in Kaffe's config dirs by using glib's
atomic functions instead, as that would be less low level code from 
libc to keep around as copies in Kaffe.


Any volunteers for the arm-* interpreter failures?

3 failures on OABI, 5 on EABI, btw.


I've looked a bit closer at the 3 ARM OABI errors, in particular at the
errors in test/regression/DoubleConst.java . That test fails because we 
get the bitstreams of the doubles being tested when we call 
Double.doubleToLongbits with swapped words, i.e. instead of 
0x7fef we get 0x7fef.


The current GNU Classpath implementation of 
Java_java_lang_VMDouble_doubleToLongBits ends up swapping the words, 
whenever __ARMEL__ is defined. That makes the DoubleConst test fail for 
Cacao, Kaffe, etc. Since twisti said on IRC that he had spent a lot of 
time trying to get it right on his ARM systems, I didn't want to mess 
with the corresponding file in fdlibm.


So I wrote another implementation of the function, using ieee754.h (part 
of glibc). Basically, it boils down to shifting the bits from the 
bitfields to the right places inside the jlong. Easy.


Unfortunately, that didn't work on arm OABI debian sid either. It turned 
out that glibc has a bug in the iee754.h header file, that comes to bite 
one on arm OABI. Filed as
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=464594 with a patch 
attached.


Meanwhile, that still means that those 3 tests fail until glibc is 
fixed. So ... I'll send in a couple of patches to the classpath patches 
list to first rewrite the doubleToLongBits in Java (and the same for 
Float), removing it from the VM interface, and then, I'll send in a 
patch to add the ieee754.h way of dealing with fetching the bits to the 
current way.


Does that sound useful?

cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-07 Thread Kiyo Inaba
Wow, you did it by yourself...

Dalibor Topic wrote:
Dalibor Topic wrote:
 Dalibor Topic wrote:
 My plan would be to look at making the interpreter pass on arm-oabi
 and arm-eabi without failures, and then
 to move on to the jits.

Yes, in general tackling interpreter version first is a good practice.
And in case of arm, it is better next to tackle jit1 rather than jit3,
since I still did not fix register allocation bug in jit3.

I'd also like to see if I can rip out all the
 atomic* code in Kaffe's config dirs by using glib's
 atomic functions instead, as that would be less low level code from
 libc to keep around as copies in Kaffe.

 Any volunteers for the arm-* interpreter failures?
 3 failures on OABI, 5 on EABI, btw.

I've looked a bit closer at the 3 ARM OABI errors, in particular at the
errors in test/regression/DoubleConst.java . That test fails because we
get the bitstreams of the doubles being tested when we call
Double.doubleToLongbits with swapped words, i.e. instead of
0x7fef we get 0x7fef.

Yes, I noticed this is the place why it goes wrong. And then, I just
simply leave it. Thanks to investigate why this problem happens.
Similar problem happens for m68k implementations, and my feeling is
doulbe support are not thoroughly tested except for ia32 arch :-

Finally, I purchase ARM-9 based machines (mainly to debug NetBSD ports
of kaffe) and I will check again with real machine whether floating to
double conversion does not really work or not. If I noticed some differences
between real hardware and QEMU, we have to file bug for QEMU.

Does that sound useful?

Yes, of course.

Kiyo

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-06 Thread Dalibor Topic

Dalibor Topic wrote:


My plan would be to look at making the interpreter pass on arm-oabi 
and arm-eabi without failures, and then
to move on to the jits. I'd also like to see if I can rip out all the 
atomic* code in Kaffe's config dirs by using glib's
atomic functions instead, as that would be less low level code from 
libc to keep around as copies in Kaffe.


Any volunteers for the arm-* interpreter failures?

3 failures on OABI, 5 on EABI, btw.

cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-05 Thread Dalibor Topic

Dalibor Topic schrieb:

Dalibor Topic wrote:

Robert Schuster wrote:

Hi.

Dalibor Topic schrieb:

On to the next problem: currently the jit regression test fails at a
floating point test.


The FAQ.arm says:
From Kaffe's point of view, only 'FPA' is supported right now. Some
effort has been started to use 'VFP', and I hope we can rewrite this
section soon. For jit/jit3 engine, the support of 'FPA' is mandatory
(the internal code generation emits FPA instruction) and if you don't
have FPA (or FPA emulation by the operating system) only possibility
is to use interpreter engine.

I think that this may be the reason for the failing floating point 
test.


Debian arm on QEMU uses fpa (hard), so that's not causing the problem 
(and libffi does not help, either). It turned out that float to int 
conversion of NaNs was broken in some way, so I ripped that code out of
the arm jit engine. Using the soft float to int conversion, the 
regression test on the jit engine pass, up to a hang after generating
VMThrowable.fillInStackTrace and the soft_fixup_trampoline returning 
a value.


There is a warning related to soft_fixup_trampoline on arm (and it 
stretches all along the code use COMPARE_AND_EXCHANGE), so I'll try 
to see if using glib's atomic functions helps.


It helps fix the specific warning, but I'd like to take a closer look 
at locks.c, that uses COMPARE_AND_EXCHANGE, too, post 1.1.9. It wasn't 
the cause of the problem, anyway.


Looking a bit closer at this through gdb, it seems that we end up in an
infinite loop inside the buildStackTrace function when counting the 
stack traces. So the next step would be to try to figure out what's 
wrong with the exception frame code for arm-linux. My wild guess is 
that __builtin_frame_address(0) on gcc 4.1+ rears its ugly head again...
I've played a bit further with this, and now I've got a patch that 
changes the buildStackTrace function to
stop counting frames when we start looping frames (happens on 
arm-linux-oabi). That fixes the jit test, and
lets all but 27 regression tests pass in jit mode (gcc 4.2, libffi, 
etc.). I'll clean it up, and separate it from the

bits that replace COMPARE_AND_EXCHANGE with glib, and commit it.

The EABI jit test fails on returning float constant 0.0, as it gets 
0x0001 back. Any ideas from EABI folks

what may be causing that, and how to go about tracking it down?

My plan would be to look at making the interpreter pass on arm-oabi and 
arm-eabi without failures, and then
to move on to the jits. I'd also like to see if I can rip out all the 
atomic* code in Kaffe's config dirs by using glib's
atomic functions instead, as that would be less low level code from libc 
to keep around as copies in Kaffe.


Any volunteers for the arm-* interpreter failures?

cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-03 Thread Robert Schuster
Hi.

Dalibor Topic schrieb:
 On to the next problem: currently the jit regression test fails at a
 floating point test.

The FAQ.arm says:
From Kaffe's point of view, only 'FPA' is supported right now. Some
effort has been started to use 'VFP', and I hope we can rewrite this
section soon. For jit/jit3 engine, the support of 'FPA' is mandatory
(the internal code generation emits FPA instruction) and if you don't
have FPA (or FPA emulation by the operating system) only possibility
is to use interpreter engine.

I think that this may be the reason for the failing floating point test.

Regards
Robert



signature.asc
Description: OpenPGP digital signature
___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-03 Thread Dalibor Topic

Robert Schuster wrote:

Hi.

Dalibor Topic schrieb:

On to the next problem: currently the jit regression test fails at a
floating point test.


The FAQ.arm says:
From Kaffe's point of view, only 'FPA' is supported right now. Some
effort has been started to use 'VFP', and I hope we can rewrite this
section soon. For jit/jit3 engine, the support of 'FPA' is mandatory
(the internal code generation emits FPA instruction) and if you don't
have FPA (or FPA emulation by the operating system) only possibility
is to use interpreter engine.

I think that this may be the reason for the failing floating point test.


Debian arm on QEMU uses fpa (hard), so that's not causing the problem 
(and libffi does not help, either). It turned out that float to int 
conversion of NaNs was broken in some way, so I ripped that code out of
the arm jit engine. Using the soft float to int conversion, the 
regression test on the jit engine pass, up to a hang after generating
VMThrowable.fillInStackTrace and the soft_fixup_trampoline returning a 
value.


There is a warning related to soft_fixup_trampoline on arm (and it 
stretches all along the code use COMPARE_AND_EXCHANGE), so I'll try to 
see if using glib's atomic functions helps.


cheers.
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-03 Thread Dalibor Topic

Dalibor Topic wrote:

Robert Schuster wrote:

Hi.

Dalibor Topic schrieb:

On to the next problem: currently the jit regression test fails at a
floating point test.


The FAQ.arm says:
From Kaffe's point of view, only 'FPA' is supported right now. Some
effort has been started to use 'VFP', and I hope we can rewrite this
section soon. For jit/jit3 engine, the support of 'FPA' is mandatory
(the internal code generation emits FPA instruction) and if you don't
have FPA (or FPA emulation by the operating system) only possibility
is to use interpreter engine.

I think that this may be the reason for the failing floating point test.


Debian arm on QEMU uses fpa (hard), so that's not causing the problem 
(and libffi does not help, either). It turned out that float to int 
conversion of NaNs was broken in some way, so I ripped that code out of
the arm jit engine. Using the soft float to int conversion, the 
regression test on the jit engine pass, up to a hang after generating
VMThrowable.fillInStackTrace and the soft_fixup_trampoline returning a 
value.


There is a warning related to soft_fixup_trampoline on arm (and it 
stretches all along the code use COMPARE_AND_EXCHANGE), so I'll try to 
see if using glib's atomic functions helps.


It helps fix the specific warning, but I'd like to take a closer look at 
locks.c, that uses COMPARE_AND_EXCHANGE, too, post 1.1.9. It wasn't the 
cause of the problem, anyway.


Looking a bit closer at this through gdb, it seems that we end up in an
infinite loop inside the buildStackTrace function when counting the 
stack traces. So the next step would be to try to figure out what's 
wrong with the exception frame code for arm-linux. My wild guess is that 
__builtin_frame_address(0) on gcc 4.1+ rears its ugly head again...


cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-02-02 Thread Dalibor Topic

Dalibor Topic wrote:

Robert Schuster wrote:

Hi,

Robert Schuster schrieb:

I now found a cacheflush implementation in libffi. I adjust this for
kaffe and report back.

I took what was said here[0] as a base for an OABI-  EABI-compliant
implementation of the cache flushing.

It compiles nicely (I can only test the EABI-variant here).
Unfortunately it does not work at runtime. That means I get the same
assertion failure as before:

kaffe-bin: exception.c:100: vmExcept_setJNIFrame: Assertion `fp !=
(JNIFrameAddress)0'

Now I dont know whether those two things are related. The only thing I
know for sure is that I use the same cacheflush implementation for cacao
and there it does its job (and fixes a real bug).

Help! :)


Thanks a lot for the patch, I can reproduce the build failure now, and 
I've fixed the build for the interpreter engine on arm linux (3 
regression tests fail, which I think has more to do with 
fdlibm/classpath, than Kaffe, as there is a patch or two for arm issues 
in the classpath bug tracker).


I'll look into fixing the build on arm-linux with the jit engines next 
using your patch. I've got aurelien's ARM Debian OABI image running,

and I hope I can get one with EABI running, too.



Ok, I've committed a fix for the build problem. Unfortunately, your 
patch still failed to compile on OABI, so I decided to use gcc's cache 
flushing code instead.


On to the next problem: currently the jit regression test fails at a 
floating point test.


cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-01-27 Thread Dalibor Topic

Robert Schuster wrote:

Hi,

Robert Schuster schrieb:

I now found a cacheflush implementation in libffi. I adjust this for
kaffe and report back.

I took what was said here[0] as a base for an OABI-  EABI-compliant
implementation of the cache flushing.

It compiles nicely (I can only test the EABI-variant here).
Unfortunately it does not work at runtime. That means I get the same
assertion failure as before:

kaffe-bin: exception.c:100: vmExcept_setJNIFrame: Assertion `fp !=
(JNIFrameAddress)0'

Now I dont know whether those two things are related. The only thing I
know for sure is that I use the same cacheflush implementation for cacao
and there it does its job (and fixes a real bug).

Help! :)


Thanks a lot for the patch, I can reproduce the build failure now, and 
I've fixed the build for the interpreter engine on arm linux (3 
regression tests fail, which I think has more to do with 
fdlibm/classpath, than Kaffe, as there is a patch or two for arm issues 
in the classpath bug tracker).


I'll look into fixing the build on arm-linux with the jit engines next 
using your patch. I've got aurelien's ARM Debian OABI image running,

and I hope I can get one with EABI running, too.

cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-01-20 Thread Robert Schuster
Hi,

Robert Schuster schrieb:
 I now found a cacheflush implementation in libffi. I adjust this for
 kaffe and report back.
I took what was said here[0] as a base for an OABI-  EABI-compliant
implementation of the cache flushing.

It compiles nicely (I can only test the EABI-variant here).
Unfortunately it does not work at runtime. That means I get the same
assertion failure as before:

kaffe-bin: exception.c:100: vmExcept_setJNIFrame: Assertion `fp !=
(JNIFrameAddress)0'

Now I dont know whether those two things are related. The only thing I
know for sure is that I use the same cacheflush implementation for cacao
and there it does its job (and fixes a real bug).

Help! :)

Regards
Robert

[0] - http://gcc.gnu.org/ml/java-patches/2007-q3/msg00112.html


 Regards
 Robert
 
 
 
 
 
 ___
 kaffe mailing list
 kaffe@kaffe.org
 http://kaffe.org/cgi-bin/mailman/listinfo/kaffe

Index: kaffe-cvs/config/arm/linux/md.c
===
--- kaffe-cvs.orig/config/arm/linux/md.c	2008-01-21 00:04:12.0 +0100
+++ kaffe-cvs/config/arm/linux/md.c	2008-01-21 00:50:30.0 +0100
@@ -33,11 +33,25 @@
  * for 2.6) should be okay.
  */
 void flush_dcache(void *start, void *end) {
-  __asm __volatile (mov r0, %0\n
+#if defined(__ARM_EABI__)
+  __asm __volatile (
+mov r0, %0\n
 		mov r1, %1\n
 		mov r2, #0\n
-		swi  __sys1(__ARM_NR_cacheflush) \n
+mov r7, #0x0f\n
+add r7, r7, #0x02\n
+		swi 0x0\n
+		: /* no return value */
+		: r ((long)start), r ((long)end)
+		: r0,r1,r2,r7);
+#else /* OABI */
+  __asm __volatile (
+mov r0, %0\n
+		mov r1, %1\n
+		mov r2, #0\n
+		swi sys_cacheflush\n
 		: /* no return value */
 		: r ((long)start), r ((long)end)
 		: r0,r1,r2);
+#endif
 }


signature.asc
Description: OpenPGP digital signature
___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-01-20 Thread Robert Schuster
Hi,
talking to Dalibor on IRC he said there are some interesting compiler
warnings in my build and he is going to look at them.

Robert Schuster schrieb:
 kaffe-bin: exception.c:100: vmExcept_setJNIFrame: Assertion `fp !=
 (JNIFrameAddress)0'
Perhaps a backtrace for this is of interest:

#0  0x40042a38 in vmExcept_setJNIFrame ()
   from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
#1  0x4004f1bc in KaffeVM_safeCallMethodA ()
   from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
#2  0x4003a0ec in processClass ()
   from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
#3  0x400368dc in initBaseClasses ()
   from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
#4  0x40036e9c in initialiseKaffe ()
   from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
#5  0x40055fc8 in JNI_CreateJavaVM ()
   from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
#6  0x9c30 in main ()


Regards
Robert



signature.asc
Description: OpenPGP digital signature
___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-01-20 Thread Robert Schuster
Hi,
its me again.

Robert Schuster schrieb:

 #0  0x40042a38 in vmExcept_setJNIFrame ()
from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
 #1  0x4004f1bc in KaffeVM_safeCallMethodA ()
from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
 #2  0x4003a0ec in processClass ()
from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
 #3  0x400368dc in initBaseClasses ()
from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
 #4  0x40036e9c in initialiseKaffe ()
from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
 #5  0x40055fc8 in JNI_CreateJavaVM ()
from /usr/lib/kaffe/jre/lib/arm/libkaffe-1.1.9-pre.so
 #6  0x9c30 in main ()
Forget this. It is not the location where the assertion failed. :(

Regards
Robert



signature.asc
Description: OpenPGP digital signature
___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-01-19 Thread Kiyo Inaba
Hi Robert,

I just tried to cross-compile kaffe for ARM (I read the FAQ :) ). The

It's good to hear from someone that FAQ.cross-compiling is useful ;-)

target (and toolchain) is GNU EABI which is not officially supported in
kaffe. So perhaps my compile error is just because of that - I get this:

md.c: In function 'flush_dcache':
md.c:39: error: expected ':' or ')' before '__sys1'
md.c:35: warning: unused parameter 'start'
md.c:35: warning: unused parameter 'end'
make[2]: *** [libkaffe_la-md.lo] Error 1

It should not be related to EABI.
This is common for recent version of linux distribution for arm.
You simply add #define KERNEL just before the include for unistd.
Without having KERNEL defined, __sys1 is not defined, and you
get this error.

Kiyo

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross-compile error

2008-01-19 Thread Dalibor Topic

Kiyo Inaba wrote:

Hi Robert,


I just tried to cross-compile kaffe for ARM (I read the FAQ :) ). The


It's good to hear from someone that FAQ.cross-compiling is useful ;-)


target (and toolchain) is GNU EABI which is not officially supported in
kaffe. So perhaps my compile error is just because of that - I get this:

md.c: In function 'flush_dcache':
md.c:39: error: expected ':' or ')' before '__sys1'
md.c:35: warning: unused parameter 'start'
md.c:35: warning: unused parameter 'end'
make[2]: *** [libkaffe_la-md.lo] Error 1


It should not be related to EABI.
This is common for recent version of linux distribution for arm.
You simply add #define KERNEL just before the include for unistd.
Without having KERNEL defined, __sys1 is not defined, and you
get this error.


I'm curious, does cross compiling cacao work and result in a working 
binary? If it does, could you try using the flush dcache arm assembler 
implementation from cacao in Kaffe?


cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe


Re: [kaffe] cross compile error

2005-07-06 Thread Dalibor Topic
[EMAIL PROTECTED] wrote:
 Hi...all.
 I want to cross compile for arm architecture.
 But, When configuring, saw the error messages.
  
 [EMAIL PROTECTED] kaffe-1.1.4]# CC=arm-linux-gcc NM=arm-linux-nm 
 AR=arm-linux-ar
 ./configure --host=arm-linux --build=i686-linux
 checking for a BSD-compatible install... /usr/bin/install -c
 checking whether build environment is sane... yes
 checking for gawk... gawk
 checking whether make sets $(MAKE)... yes
 checking for arm-linux-strip... arm-linux-strip
 checking whether to enable maintainer-specific portions of Makefiles...
 no
 checking for arm-linux-gcc... arm-linux-gcc
 checking for C compiler default output file name... configure: error: C
 compiler cannot create executables
 See 'config.log' for more details.

Hi,

that looks odd. What does config.log say about arm-linux-gcc?

cheers,
dalibor topic

___
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe