This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug java/71917] [7 regression] libjava.jar/ReturnProxyTest.jar etc. FAIL
- From: "matthew.fortune at imgtec dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 30 Aug 2016 12:23:36 +0000
- Subject: [Bug java/71917] [7 regression] libjava.jar/ReturnProxyTest.jar etc. FAIL
- Auto-submitted: auto-generated
- References: <bug-71917-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71917
--- Comment #8 from Matthew Fortune <matthew.fortune at imgtec dot com> ---
(In reply to Eric Botcazou from comment #7)
> > 2016-07-13 Matthew Fortune <matthew.fortune@imgtec.com>
> >
> > * interpret-run.cc: Use ffi_arg for FFI integer return types.
>
> so we now have a double adjustment on 64-bit big-endian and this breaks.
> Maybe there is something missing for little-endian MIPS in java_raw_api.c.
I'll certainly check on this but I did run the fix on both big and little
endian MIPS which seems to suggest there isn't a double adjustment overall.
The layers involved in this have however exceeded what I can fit in my head so
I'll have to draw things out to try and understand what was/should-be/is
happening.
Is there any definition for the raw API? I've seen some reference to arguments
being passed 'in the way a java stack works' but am not sure how that relates
to FFI return values passed in registers.