[kaffe] [Bug Report] Problem compiling 1.1.0 with GCC 3.3 on GNU/Linux PowerPC, and 1 test failed

Dalibor Topic robilad@yahoo.com
Fri Jun 27 09:59:01 2003


Hi Luca,

--- Luca Saiu <positrone@freemail.it> wrote:
>    Hi.
>    I have had some problems when compiling the latest Kaffe (1.1.0) with 
> GCC 3.3 on GNU/Linux PowerPC.
> 
>    The first one is a misuse of the preprocessor concatenation operator 
> ## at line 146 of kaffe/kaffevm/systems/unix-jthreads/jthread.c. 
> Removing it fixes the problem, and I think it is the right thing 
> altogether. I include a patch.

thanks for the patch, I've checked it in.

>    The second problem is due to the representation of va_list, which I 
> believe to be system-dependent. This leads to a problem in 
> kaffe/kaffevm/stringParsing.c, which appears to be fixed by my (very 
> hackish) second patch. Maybe it should be conditionalized (only for PPC).

I've checked in a fix into the CVS. thanks for reporting it.

>    I ran make check.
>    divtest.java is the only test that failed (I compiled it with GCJ and 
> it worked nice, both compiled to native code and compiled to bytecode 
> and then interpreted with gij). I include the output from Kaffe.

it seems that divjava fails because long remainder is broken on powerpc-linux.
Could you try out the following C program, and report back what it prints out:

#include <stdio.h>
#include <limits.h>
#define T long
#ifndef LONG_MIN
# define LONG_MIN ((((unsigned T)(~(T)0))>>1)+1)
#endif
T foo(T i, T j);
int main() { int tmp = foo(LONG_MIN, -1l) == 0; printf ("%d\n", tmp); return
0;}
T foo(T i, T j) { return i % j; }

cheers,
dalibor topic

__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com