Kaffe tests (was: Compiling kaffe-1.0.b3)
Parmelan, Edouard
EP510777 at exchange.FRANCE.NCR.com
Fri Jan 15 10:00:24 PST 1999
Bharat,
> > What is your CPU for Solaris ?
> > sparc or i386
> Its a sparc.
Extract from ChangeLog after kaffe-1.0b3 (release on 8 Dec 1998)
Wed Jan 13 03:48:28 1999 Alexandre Oliva <oliva at dcc.unicamp.br>
* config/sparc/common.h (sysdepCallMethod): don't try to use the
delay slot with a conditional expression, it's not worth it
Fri Dec 11 18:36:52 1998 Jason Baker <jbaker at cs.utah.edu>
* config/i386/common.h, config/sparc/common.h,
kaffe/kaffevm/support.[ch]: simplified sysdepCallMacro.
Improved timing system.
> gendevfs1> kaffe WidgetsDemo
> illegal Graphics target: 1282797040
> illegal Graphics target: -4
> illegal Graphics target: 3904016
> illegal Graphics target: 8747928
> illegal Graphics target: 3904016
> illegal Graphics target: -268442824
> illegal Graphics target: -281650988
> illegal Graphics target: 2080
As "illegal Graphics target" is in a native method, and
the target type is one of his parameter this could explain
your problems [I'm note sure]
> > What is the thread system ?
> s%@THREAD_SYSTEM@%unix-jthreads%g
>
> Sorry for being a bit slow but how do I specify the thread system ? More
> importantly do they both work on Solaris ? I did initially have build
> problems using the "make" provided by Solaris. I then used "gmake" to
clean
> the system and rebuild it without errors.
Rerun configure with option --with-thread=unix-internal
Unfortunary, unix-internal is deprecated, Godmar remove it
from CVS tree yesterday.
I think you should try to make unix-jthread work for you.
Some revelants options are in config/sparc/*/*.
There are (for me) some stranges diffs for OSs and sparc:
*bsd* define FLUSH_DCACHE() not the other OSs :(
Oops, *bsd* redefine it, it is defined in config/sparc/jit.h
for all sparc :)
Check if SP_OFFSET is correct for Solaris (the default value in
set to 1 in config/sparc/threads.h). If it's not correct, redefine
it in config/sparc/solaris2/md.h (sunos4 use 2)
Howto check it ?
write a small prog that use setjmp and inspect values with gdb
#include <setbuf.h>
#include <string.h>
int main()
{
jmp_buf jmp;
memset(&jmp, 0x00, sizeof(jmp));
setjmp(jmp);
}
(gdb) break [line of setjmp]
(gdb) print /x jmp
(gdb) info registers
(gdb) next
(gdb) info registers
(gdb) print /x jmp
May be you also need save FP for sparc.
Hope this help.
Edouard.
---
More information about the kaffe
mailing list