threads and gc on SPARC/Solaris 2.8

Boehm, Hans hans_boehm@hp.com
Wed Jun 27 12:33:00 GMT 2001


My reading is that in 3.0, GC_clear_stack_inner is not used in the
multithreaded configuration, and it should thus be OK.
The trunk has a bug, as does my version. GC_clear_stack_inner is called,
but not defined for SPARC + threads. It looks to me like removing the /* &&
!defined(THREADS) */ condition in mach_dep.c should fix the problem. I
think that was only a space optimization, which is now no longer correct.
I'll apply that fix to my version, but I'd appreciate it if someone with a
less modified tree could test it and check it in sooner than I will.
This does seem to imply that nobody has built the trunk on SPARC/Solaris for
a few months.
Hans
> -----Original Message-----
> From: Andrew Haley [ mailto:aph@cambridge.redhat.com ]
> Sent: Wednesday, June 27, 2001 11:55 AM
> To: java@gcc.gnu.org
> Cc: Hans-J. Boehm
> Subject: threads and gc on SPARC/Solaris 2.8
>>> In mach_dep.c we have:
>> #if defined(ASM_CLEAR_CODE) && !defined(THREADS)
> GC_clear_stack_inner: 
> ... code to clear the stack.
>> GC_clear_stack_inner is defined nowhere else, and we depend on it.
> Yet it isn't compiled when THREADS is defined, which it always needs
> to be for Java. However, comments say it is essential. If I compile
> GC_clear_stack_inner and use it with threads, it faults with an
> illegal instruction.
>> What is going on here? I don't get it. Has anybody made gcj work on
> Sparc/Solaris?
>> Andrew.
>


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /