This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: Crash invoke()'ing Method with "double" as return type
Hi,
Martin> Just ran into a strange problem on my target: When calling
invoke() on
Martin> a java.lang.reflect.Method returning a double, my target
crashes with
Martin> an "Illegal instruction" attempting to return:
Martin> And it's not working on double in general that sucks - output
line 3
Martin> is the output after invoking the same method in a non-reflective
Martin> manner.
This I don't recall.
Martin> This is on my ancient (hacked) GCJ 3.4.x, running on my PPC405EP
Martin> target... I know it's old - but does it ring a bell?
The only problem I recall is that returning a double via libffi on
PPC64 could cause a buffer overflow.
Maybe it's a similar problem. I've tracked down the problem to occur
invoking "ffi_call_SYSV" in "sysv.S" (from ffi.c's "ffi_call"). And
that's where my trace stop.
So, next step is to try with SVN trunk - if possible...
And that did not change anything - it still fails invoking "ffi_call_SYSV".
Maybe there is a similar buffer overflow on PPC32?
Can anybody else verify/try this on PPC32?
Maybe I'm just not doing it right...
BR,
Martin Egholm - changing the return type to java.lang.Double for now...