Re: [kaffe] PrimordialLoaderTest fails
Hi Kiyo, From: Kiyo Inaba [EMAIL PROTECTED] Subject: Re: [kaffe] PrimordialLoaderTest fails Date: Mon, 11 Feb 2008 17:31:03 +0900 (JST) Does this problem have something to do with zziplib? I don't think so. I just installed a new file server with FB-6.3, and the regression (against 08/02/07 snap) tells me All 149 tests behaved as expected (2 expected failures) You are right. I have rebuilt GNU Classpath and Kaffe, and have got the same good result. Something must be wrong with the environment before the rebuilding, which was built on FreeBSD 6.3-RELEASE on qemu on FreeBASD 6.2-RELEASE. ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: [kaffe] PrimordialLoaderTest fails
Ito Kazumitsu schrieb: You are right. I have rebuilt GNU Classpath and Kaffe, and have got the same good result. I'm glad to hear it all still works. cheers, dalibor topic ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
[kaffe] CVS kaffe (robilad): documented helper function soft_dcmp
PatchSet 7740 Date: 2008/02/11 21:49:57 Author: robilad Branch: HEAD Tag: (none) Log: documented helper function soft_dcmp 2008-02-11 Dalibor Topic [EMAIL PROTECTED] * kaffe/kaffevm/soft.c (soft_dcmp): Documented. Members: ChangeLog:1.5240-1.5241 kaffe/kaffevm/soft.c:1.84-1.85 Index: kaffe/ChangeLog diff -u kaffe/ChangeLog:1.5240 kaffe/ChangeLog:1.5241 --- kaffe/ChangeLog:1.5240 Mon Feb 11 21:44:41 2008 +++ kaffe/ChangeLog Mon Feb 11 21:49:57 2008 @@ -1,5 +1,9 @@ 2008-02-11 Dalibor Topic [EMAIL PROTECTED] + * kaffe/kaffevm/soft.c (soft_dcmp): Documented. + +2008-02-11 Dalibor Topic [EMAIL PROTECTED] + * kaffe/kaffevm/soft.c (soft_dcmp): New function. Implements dcmpl/dcmpg according to VM spec. (soft_dcmpl, soft_dcmpg) Call soft_dcmp. Index: kaffe/kaffe/kaffevm/soft.c diff -u kaffe/kaffe/kaffevm/soft.c:1.84 kaffe/kaffe/kaffevm/soft.c:1.85 --- kaffe/kaffe/kaffevm/soft.c:1.84 Mon Feb 11 21:44:43 2008 +++ kaffe/kaffe/kaffevm/soft.c Mon Feb 11 21:49:59 2008 @@ -627,6 +627,15 @@ } +/** + * dcmp helper function. + * + * @param v1 left side value + * @param v2 right side value + * @param nan return value in case v1 or v2 is NaN + * + * @return 1 if v1 v2, 0 if v1 == v2, -1 if v1 v2, otherwise nan. + */ static jint soft_dcmp(const jdouble v1, const jdouble v2, const jint nan) ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
[kaffe] CVS kaffe (robilad): make dcmpl and dcmpg comply with spec
PatchSet 7739 Date: 2008/02/11 21:44:41 Author: robilad Branch: HEAD Tag: (none) Log: make dcmpl and dcmpg comply with spec 2008-02-11 Dalibor Topic [EMAIL PROTECTED] * kaffe/kaffevm/soft.c (soft_dcmp): New function. Implements dcmpl/dcmpg according to VM spec. (soft_dcmpl, soft_dcmpg) Call soft_dcmp. Members: ChangeLog:1.5239-1.5240 kaffe/kaffevm/soft.c:1.83-1.84 Index: kaffe/ChangeLog diff -u kaffe/ChangeLog:1.5239 kaffe/ChangeLog:1.5240 --- kaffe/ChangeLog:1.5239 Sun Feb 3 15:08:29 2008 +++ kaffe/ChangeLog Mon Feb 11 21:44:41 2008 @@ -1,3 +1,9 @@ +2008-02-11 Dalibor Topic [EMAIL PROTECTED] + + * kaffe/kaffevm/soft.c (soft_dcmp): New function. + Implements dcmpl/dcmpg according to VM spec. + (soft_dcmpl, soft_dcmpg) Call soft_dcmp. + 2008-02-03 Dalibor Topic [EMAIL PROTECTED] * config/arm/jit-arm.def (cvtfi_RxR): Removed. Index: kaffe/kaffe/kaffevm/soft.c diff -u kaffe/kaffe/kaffevm/soft.c:1.83 kaffe/kaffe/kaffevm/soft.c:1.84 --- kaffe/kaffe/kaffevm/soft.c:1.83 Sat Jan 19 15:13:39 2008 +++ kaffe/kaffe/kaffevm/soft.c Mon Feb 11 21:44:43 2008 @@ -626,27 +626,28 @@ } } + +static +jint +soft_dcmp(const jdouble v1, const jdouble v2, const jint nan) +{ + if (v1 v2) +return 1; + else if (v1 == v2) +return 0; + else if (v1 v2) +return -1; + else +return nan; +} + /* * soft_dcmpg */ jint soft_dcmpg(jdouble v1, jdouble v2) { - jint ret; - if ((!isinf(v1) isnan(v1)) || (!isinf(v2) isnan(v2))) { - ret = 1; - } - else if (v1 v2) { - ret = 1; - } - else if (v1 == v2) { - ret = 0; - } - else { - ret = -1; - } - - return (ret); + return soft_dcmp(v1, v2, 1); } /* @@ -655,20 +656,7 @@ jint soft_dcmpl(jdouble v1, jdouble v2) { -jint ret; - if ((!isinf(v1) isnan(v1)) || (!isinf(v2) isnan(v2))) { - ret = -1; - } -else if (v1 v2) { -ret = 1; -} -else if (v1 == v2) { -ret = 0; -} -else { -ret = -1; -} - return (ret); + return soft_dcmp(v1, v2, -1); } /* ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: [kaffe] ARM Cross-Compile using GNU EABI
Leandro Galvez wrote: Hi, Sorry for being so ignorant here. I already have all the required libraries. I was already able to complete building and installing the native build of kaffe for a number of times. This things only happen when cross-compiling to arm. No worries, cross-compilation is always a bit harder than native builds. :) As I said in the previous post, you will need to cross-compile the libraries used by kaffe first, like libltdl (which is part of the GNU libtool project), to install them somewhere on the machine you cross compile kaffe on, and then to tell kaffe's configure script where you installed the header files, and the shared libraries for the libraries it needs, so that it can find and use them. i.e. for each kaffe dependency { cross compile the dependency and install it somewhere using --prefix=where-you-want-it-to-go } then tell kaffe's configure script where you installed them all using --with-includes and --with-libs. cheers, dalibor topic ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
[kaffe] Re: Get ready for Fosdem - Free Java Meeting
Il giorno ven, 08/02/2008 alle 21.20 +0100, Mark Wielaard ha scritto: You only have to pay the beer yourself *) But hey, this is also share alike what do you want more? :P Mario -- Lima Software - http://www.limasoftware.net/ GNU Classpath Developer - http://www.classpath.org/ Fedora Ambassador - http://fedoraproject.org/wiki/MarioTorre Jabber: [EMAIL PROTECTED] pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF Fingerprint: BA39 9666 94EC 8B73 27FA FC7C 4086 63E3 80F2 40CF Please, support open standards: http://opendocumentfellowship.org/petition/ http://www.nosoftwarepatents.com/ signature.asc Description: Questa รจ una parte del messaggio firmata digitalmente ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: [kaffe] Linker Errors on OS X 10.4.11 - Kaffe 1.1.8
Michael Franz schrieb: Good luck! I had tried with darwin 8 and an earlier version, no success. Strange things happen. Is it possible to create an image off of a real installation? I have darwin 8 installed on a drive, can that be turned into an image to be used by vmware or qemu? I've installed it from scratch using the OSx86 Darwin in VMWare guide, and it works. I'll try to get networking going with the Darwin VMWare guide from Fink. cheers, dalibor topic ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: [kaffe] Linker Errors on OS X 10.4.11 - Kaffe 1.1.8
Good luck! I had tried with darwin 8 and an earlier version, no success. Strange things happen. Is it possible to create an image off of a real installation? I have darwin 8 installed on a drive, can that be turned into an image to be used by vmware or qemu? On Feb 11, 2008 6:50 PM, Dalibor Topic [EMAIL PROTECTED] wrote: Michael Franz wrote: Hi, I tried to build Kaffe 1.1.8 on OS X 10.4.11. I used the same configuration script that works for kaffe 1.1.7. Here are the following linker errors: /usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: Undefined symbols: Thanks Michael, I'm still trying to get Darwin8 going in VMWare. cheers, dalibor topic ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: [kaffe] KAFFE_CFLAGS
Kiyo Inaba wrote: Since we eliminated all imported packages, (if I understand correctly) the macro 'KAFFE_CFLAGS' may not be needed. Am I right? I think so, yeah. It was introduced by guilhem to work around some configure caching problems in http://www.kaffe.org/pipermail/kaffe/2006-July/104447.html When you remove it, please check if the build using a configure cache still works. Thanks! cheers, dalibor topic ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: [kaffe] cross-compile error
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: [kaffe] Linker Errors on OS X 10.4.11 - Kaffe 1.1.8
Michael Franz wrote: Hi, I tried to build Kaffe 1.1.8 on OS X 10.4.11. I used the same configuration script that works for kaffe 1.1.7. Here are the following linker errors: /usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: Undefined symbols: Thanks Michael, I'm still trying to get Darwin8 going in VMWare. cheers, dalibor topic ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
[kaffe] Re: Classpath's doubleToLongBits
On Fri, 2008-02-08 at 12:25 +0100, Dalibor Topic wrote: Yeah, that's why I'd like to go step by step, and first slash the VM interface methods I can slash, and then implement it with ieee754.h as an option, (adding a #define BIG_ENDIAN __BIG_ENDIAN for the broken glibc versions). I'll make sure to post the native patches for comments first, as I don't have access to a VFP box. OK, I hope I still have access to this box, but I'll try to test them. - twisti ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: [kaffe] PrimordialLoaderTest fails
Hi Ito-san, Strangely enough, this test passed when I did it on FreeBSD 6.2-RELEASE. Does this problem have something to do with zziplib? I don't think so. I just installed a new file server with FB-6.3, and the regression (against 08/02/07 snap) tells me All 149 tests behaved as expected (2 expected failures) The system is %cat /etc/motd FreeBSD 6.3-RELEASE (SMP) #0: Wed Jan 16 04:45:45 UTC 2008 Welcome to FreeBSD! And I installed zziplib from source. I attached fullversion log at the end. Kiyo Engine: Just-in-time v3 Version: 1.1.9-pre Java Version: 1.4 Heap defaults: minimum size: 5 MB, maximum size: unlimited Stack default size: 256 KB Configuration/Compilation options: ) Compile date : Sat Feb 9 03:45:30 JST 2008 Compile host : surya.src.ricoh.co.jp Install prefix : /usr/local/kaffe Thread system: unix-pthreads Garbage Collector: kaffe-gc CC : gcc CFLAGS : -Wall -W -Wextra -fno-strict-aliasing -fno-omit-frame-point er -D_THREAD_SAFE -pthread-g -O2 LDFLAGS : ChangeLog head : 2008-02-03 Dalibor Topic [EMAIL PROTECTED] ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: [kaffe] ARM Cross-Compile using GNU EABI
Hello again, Is there a way to just download the binaries of the libraries kaffe is dependent on and just install it on the target machine? Thanks and best regards, Andy - Original Message - From: Dalibor Topic [EMAIL PROTECTED] To: Leandro Galvez [EMAIL PROTECTED] Cc: Kiyo Inaba [EMAIL PROTECTED]; kaffe@kaffe.org Sent: Monday, February 11, 2008 10:22 PM Subject: Re: [kaffe] ARM Cross-Compile using GNU EABI Leandro Galvez wrote: Hi, Sorry for being so ignorant here. I already have all the required libraries. I was already able to complete building and installing the native build of kaffe for a number of times. This things only happen when cross-compiling to arm. No worries, cross-compilation is always a bit harder than native builds. :) As I said in the previous post, you will need to cross-compile the libraries used by kaffe first, like libltdl (which is part of the GNU libtool project), to install them somewhere on the machine you cross compile kaffe on, and then to tell kaffe's configure script where you installed the header files, and the shared libraries for the libraries it needs, so that it can find and use them. i.e. for each kaffe dependency { cross compile the dependency and install it somewhere using --prefix=where-you-want-it-to-go } then tell kaffe's configure script where you installed them all using --with-includes and --with-libs. cheers, dalibor topic ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
[kaffe] CVS kaffe (robilad): simplified float comparisons in interpreter
PatchSet 7741 Date: 2008/02/11 23:26:08 Author: robilad Branch: HEAD Tag: (none) Log: simplified float comparisons in interpreter 2008-02-12 Dalibor Topic [EMAIL PROTECTED] * kaffe/kaffevm/intrp/icode.h (cmpg_float, cmpl_float): Use soft_dcmpg and soft_dcmpl internally, as they produce the same results, since the float parameters are automatically widened to equivalent doubles. Members: ChangeLog:1.5241-1.5242 kaffe/kaffevm/intrp/icode.h:1.27-1.28 Index: kaffe/ChangeLog diff -u kaffe/ChangeLog:1.5241 kaffe/ChangeLog:1.5242 --- kaffe/ChangeLog:1.5241 Mon Feb 11 21:49:57 2008 +++ kaffe/ChangeLog Mon Feb 11 23:26:08 2008 @@ -1,3 +1,10 @@ +2008-02-12 Dalibor Topic [EMAIL PROTECTED] + + * kaffe/kaffevm/intrp/icode.h (cmpg_float, cmpl_float): + Use soft_dcmpg and soft_dcmpl internally, as they + produce the same results, since the float parameters + are automatically widened to equivalent doubles. + 2008-02-11 Dalibor Topic [EMAIL PROTECTED] * kaffe/kaffevm/soft.c (soft_dcmp): Documented. Index: kaffe/kaffe/kaffevm/intrp/icode.h diff -u kaffe/kaffe/kaffevm/intrp/icode.h:1.27 kaffe/kaffe/kaffevm/intrp/icode.h:1.28 --- kaffe/kaffe/kaffevm/intrp/icode.h:1.27 Mon Sep 4 19:12:54 2006 +++ kaffe/kaffe/kaffevm/intrp/icode.h Mon Feb 11 23:26:09 2008 @@ -272,9 +272,9 @@ #defineneg_float(t, f) (t)[0].v.tfloat = -(f)[0].v.tfloat #defineneg_double(t, f)(t)[0].v.tdouble = -(f)[0].v.tdouble -#definecmpg_float(t, f1, f2) (t)[0].v.tint = soft_fcmpg((f1)[0].v.tfloat, (f2)[0].v.tfloat) +#definecmpg_float(t, f1, f2) (t)[0].v.tint = soft_dcmpg((f1)[0].v.tfloat, (f2)[0].v.tfloat) #definecmpg_double(t, f1, f2) (t)[0].v.tint = soft_dcmpg((f1)[0].v.tdouble, (f2)[0].v.tdouble) -#definecmpl_float(t, f1, f2) (t)[0].v.tint = soft_fcmpl((f1)[0].v.tfloat, (f2)[0].v.tfloat) +#definecmpl_float(t, f1, f2) (t)[0].v.tint = soft_dcmpl((f1)[0].v.tfloat, (f2)[0].v.tfloat) #definecmpl_double(t, f1, f2) (t)[0].v.tint = soft_dcmpl((f1)[0].v.tdouble, (f2)[0].v.tdouble) #definecvt_int_float(t, f) (t)[0].v.tfloat = (f)[0].v.tint ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe
Re: Classpath's doubleToLongBits (was: Re: [kaffe] cross-compile error)
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
[kaffe] CVS kaffe (robilad): slimmed down floating point compare functions
PatchSet 7742 Date: 2008/02/11 23:44:09 Author: robilad Branch: HEAD Tag: (none) Log: slimmed down floating point compare functions 2008-02-12 Dalibor Topic [EMAIL PROTECTED] * kaffe/kaffevm/soft.c (soft_fcmpg): Delegate to soft_dcmpg. (soft_fcmpl): Delegate to soft_dcmpl. Members: ChangeLog:1.5242-1.5243 kaffe/kaffevm/soft.c:1.85-1.86 Index: kaffe/ChangeLog diff -u kaffe/ChangeLog:1.5242 kaffe/ChangeLog:1.5243 --- kaffe/ChangeLog:1.5242 Mon Feb 11 23:26:08 2008 +++ kaffe/ChangeLog Mon Feb 11 23:44:09 2008 @@ -1,5 +1,10 @@ 2008-02-12 Dalibor Topic [EMAIL PROTECTED] + * kaffe/kaffevm/soft.c (soft_fcmpg): Delegate to soft_dcmpg. + (soft_fcmpl): Delegate to soft_dcmpl. + +2008-02-12 Dalibor Topic [EMAIL PROTECTED] + * kaffe/kaffevm/intrp/icode.h (cmpg_float, cmpl_float): Use soft_dcmpg and soft_dcmpl internally, as they produce the same results, since the float parameters Index: kaffe/kaffe/kaffevm/soft.c diff -u kaffe/kaffe/kaffevm/soft.c:1.85 kaffe/kaffe/kaffevm/soft.c:1.86 --- kaffe/kaffe/kaffevm/soft.c:1.85 Mon Feb 11 21:49:59 2008 +++ kaffe/kaffe/kaffevm/soft.c Mon Feb 11 23:44:12 2008 @@ -674,26 +674,7 @@ jint soft_fcmpg(jfloat v1, jfloat v2) { -jint ret; - jint v1bits; - jint v2bits; - - v1bits = floatToInt(v1); - v2bits = floatToInt(v2); - -if (FISNAN(v1bits) || FISNAN(v2bits)) { - ret = 1; - } -else if (v1 v2) { -ret = 1; -} -else if (v1 == v2) { -ret = 0; -} -else { -ret = -1; -} - return (ret); + return soft_dcmpg(v1, v2); } /* @@ -702,26 +683,7 @@ jint soft_fcmpl(jfloat v1, jfloat v2) { -jint ret; - jint v1bits; - jint v2bits; - - v1bits = floatToInt(v1); - v2bits = floatToInt(v2); - -if (FISNAN(v1bits) || FISNAN(v2bits)) { - ret = -1; - } -else if (v1 v2) { -ret = 1; -} -else if (v1 == v2) { -ret = 0; -} -else { -ret = -1; -} - return (ret); + return soft_dcmpl(v1, v2); } #if defined(TRANSLATOR) ___ kaffe mailing list kaffe@kaffe.org http://kaffe.org/cgi-bin/mailman/listinfo/kaffe