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: MIPS support for libjava (version 2).


Anthony Green wrote:

On Wed, 2003-09-10 at 14:46, David Daney wrote:


+ mips*el*-linux*)
+ can_unwind_signal=yes
+ if test "x${with_libgcj_mips_xgot}" = "xyes"; then
+ libgcj_flags="${libgcj_flags} -Wa,-xgot"
+ fi
+ ;;



Maybe you should use mipsel*-linux* | mipsisa32el*-linux*)


Probably a good Idea. Should I revise the patch to reflect this change?


You can build a mips64el-linux-gnu toolchain that supports each of the
o32, n32 and n64 ABIs simulateously, and I believe all of your changes
are only for the o32 ABI. Is this true?


As posted I suspect that it will only work for o32 ABI systems.

There are really two parts to the patch. The signal unwinding things, and the backtrace code.

I think the unwinding should work under all ABIs as it is agnostic to register size and usage.

The main problem I can think of for n32 and n64 is the backtrace code. There are assumptions that pointers and ints are the same width in the code. Also there are assumptions about function prologs that may not hold under n32 and n64. On the plus side I don't think it cares about register usage.

Didn't someone once suggest that the exception unwinder code should be hijacked and used to generate stack traces?

David.




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