Crash invoke()'ing Method with "double" as return type
Martin Egholm Nielsen
martin@egholm-nielsen.dk
Wed Jun 28 20:29:00 GMT 2006
>>>> Tom> If that doesn't work then you've found a bug. You'd
>>>> probably need a Tom> MIPS expert to look at the assembly in this
>>>> case. Andreas points out on irc that a PPC expert may be better
>>>> suited :)
>>> (-: I just find it hard to believe that this is an existing bug -
>>> this would certainly have been found ages ago, or what... It seems
>>> to be so fundamental - but what do I know...
>
>
>> You said you use a 3.4.x tree, right? Is the patch from PR23404
>> included in your tree? Does the test case from this PR work for you?
>
> Yep... But I replaced the entire libffi directory from svn trunk.
> I do indeed have the patch in ffi.c given in
> http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libffi/src/powerpc/ffi.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.7.10.1&r2=1.7.10.2
> I by verifying that added printf'es to ffi.c does indeed end in the
> console, shouldn't that indicate that it's being compiled and linked in
> correctly?!
> (I'm lazy, I didn't remake the entire gcc - just libffi and libjava)
> Haven't tried the test case though, but I guess that would be the
> natural next-step...
I now I have...
And it works:
# ./x08
1.0
1.0
1.0
-1.5
1.5
-0.5
1.5
-5.093869927024149
6.636602508481567
60.0
30.0
But but but!! Now things get strange!
Because this is running on my target with my _old_ 3.4.3 libgcj without
the patch in libffi! However (and maybe the explanation) the ./x08 is
compiled with my new compiler with the new libffi source.
Can anybody confirm this is the reason why it seems to work, when I
actually assumed it should not?!
(Sorry this is getting super fuzzy and strange :-) )
// Martin
More information about the Java
mailing list