[patch] FreeBSD/sparc64 support

View: New views
1 Messages — Rating Filter:   Alert me  

[patch] FreeBSD/sparc64 support

by Per Ola Ingvarsson :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,

The attached patch adds support for FreeBSD/sparc64 without stack
caching or inlining to jamvm-1.5.3. The patch includes the files
generated by autoconf.

libffi is required.

gcMemMalloc/gcMemReallc/gcMemFree now stores the size of the allocated
area in an uintptr_t to avoid unaligned access traps.

Floats are now stored in the lower 32 bits of a stack slot (same place
as ints are already stored on 64 bit big endian machines) so that
get/setfield operations work. I think this must have been a problem on
ppc64 as well, but I have no machine to test it on. The symptom was an
OutOfMemoryError on startup.

Due to the above change callNative64.S for ppc64 must be updated to
add an offset of 4 when calling a function with float arguments.

Configure chooses -lthr over -lpthread on FreeBSD. pthread didn't work
at all on sparc64.
Changed the test for __thread so that it fails for FreeBSD/sparc64,
which it should.

A loop in inlining.c used a deleted piece of memory.

fmodf is used instead of fmod in the FREM instruction. This is easily
changed back if not correct.

A question: Is it hard to bring back the possibility to use
classpath:s older than 0.98?
Classpath 0.93 is the last one that can be compiled with jikes, all
the later versions need java. I solved this by using a patched
jamvm-1.5.1 + ecj.jar, but it is not very practical.

BR, pi


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Jamvm-general mailing list
Jamvm-general@...
https://lists.sourceforge.net/lists/listinfo/jamvm-general

jamvm153_sparc64_diff.txt.gz (17K) Download Attachment