This is the mail archive of the java-patches@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: PATCH: libffi: add MIPS O32 DWARF-2 unwind info


Casey Marshall wrote:

The attached patch adds DWARF-2 unwinding info for MIPS ffi_call_O32.
I'm kind of new to both DWARF-2 and MIPS assembly, so this may not be
completely correct. I have tried this on a modified 3.3.3 -- the
changes since then appear to have been only to the SIZEOF_ARG macro --
but have not tried it on a newer version. It seems to work, since
things like `invokethrow.java' work properly for me now.

Note that this is only for the O32 ABI. I think that N32 would be
similar (identical?) to this, but I can't test it.

Also: GCJ emits references to __gcj_personality_v0 in the assembler it
generates, as a "personality" in the CIE. I didn't know if this was
appropriate for the ffi code, so I merely omitted it. Is this ok?



I am not a DWARF-2 expert either, but it is my understanding that the personality is only involved in catching exceptions. If they are only "passing through" there is no need for a personality.


BTW, How did you generate the .eh_frame data? You can see what you have to emulate by compiling simple 'C' functions with -fexcptions.

David Daney.


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