This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcc-3.1 2002-04-03 libjava failures on sparc-linux?


On Mon, Apr 15, 2002 at 07:58:54PM -0700, Boehm, Hans wrote:
> That stack pointer value doesn't look a lot like GC_stackbottom.  Just for
> grins, could you try the attached (completely untested) patch?  This makes
> linux/SPARC determine GC_stackbottom in the same way as on other Linux
> platforms, i.e. it first cheats and looks for a private glibc symbol, and
> reads the stack base from /proc if that fails.

I applied it to Hans et als. gc6.1alpha4 sources, it seems to work there.

Here's the output of make test (which used to yield a seg. viol.)

./setjmp_test
This appears to be a SPARC running LINUX
Stack appears to grow down, which is the default.
A good guess for STACKBOTTOM on this machine is 0xe8fff000.
Note that this may vary between machines of ostensibly
the same architecture (e.g. Sun 3/50s and 3/80s).
On many machines the value is not fixed.
A good guess for ALIGNMENT on this machine is 4.
Generic mark_regs code probably wont work
Assembly code supplied
./gctest
Completed 1 tests
Allocated 648421 collectable objects
Allocated 101 uncollectable objects
Allocated 1250000 atomic objects
Allocated 10880 stubborn objects
Finalized 2204/2206 objects - finalization is probably ok
Total number of bytes allocated is 60648304
Final heap size is 4157440 bytes
Collector appears to work
gcc  -g -I./include -DATOMIC_UNCOLLECTABLE -DNO_SIGNALS -DNO_EXECUTE_PERMISSION -DSILENT -DALL_INTERIOR_POINTERS -c -I. ./cord/cordbscs.c
mv cordbscs.o cord/cordbscs.o
gcc  -g -I./include -DATOMIC_UNCOLLECTABLE -DNO_SIGNALS -DNO_EXECUTE_PERMISSION -DSILENT -DALL_INTERIOR_POINTERS -c -I. ./cord/cordxtra.c
mv cordxtra.o cord/cordxtra.o
gcc  -g -I./include -DATOMIC_UNCOLLECTABLE -DNO_SIGNALS -DNO_EXECUTE_PERMISSION -DSILENT -DALL_INTERIOR_POINTERS -c -I. ./cord/cordprnt.c
mv cordprnt.o cord/cordprnt.o
rm -f cord/cordtest
./if_mach SPARC DRSNX gcc  -g -I./include -DATOMIC_UNCOLLECTABLE -DNO_SIGNALS -DNO_EXECUTE_PERMISSION -DSILENT -DALL_INTERIOR_POINTERS -o cord/cordtest ./cord/cordtest.c cord/cordbscs.o cord/cordxtra.o cord/cordprnt.o gc.a -lucb
./if_mach HP_PA HPUX gcc  -g -I./include -DATOMIC_UNCOLLECTABLE -DNO_SIGNALS -DNO_EXECUTE_PERMISSION -DSILENT -DALL_INTERIOR_POINTERS -o cord/cordtest ./cord/cordtest.c cord/cordbscs.o cord/cordxtra.o cord/cordprnt.o gc.a -ldld `./threadlibs`
./if_mach M68K AMIGA gcc  -g -I./include -DATOMIC_UNCOLLECTABLE -DNO_SIGNALS -DNO_EXECUTE_PERMISSION -DSILENT -DALL_INTERIOR_POINTERS -UGC_AMIGA_MAKINGLIB -o cord/cordtest ./cord/cordtest.c cord/cordbscs.o cord/cordxtra.o cord/cordprnt.o gc.a `./threadlibs`
./if_not_there cord/cordtest gcc  -g -I./include -DATOMIC_UNCOLLECTABLE -DNO_SIGNALS -DNO_EXECUTE_PERMISSION -DSILENT -DALL_INTERIOR_POINTERS -o cord/cordtest ./cord/cordtest.c cord/cordbscs.o cord/cordxtra.o cord/cordprnt.o gc.a `./threadlibs`
^^^^Starting command^^^^
cord/cordtest
SUCCEEDED


So Hans, what do we do now? Incorporate your patch into the gcc 3.1 branch
and trunk? Test it first in gc6.1alpha5?

Cheers,

/ChJ


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]