This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: EH on i960 (and nested functions)
- To: mrs at wrs dot com (Mike Stump)
- Subject: Re: EH on i960 (and nested functions)
- From: Jim Wilson <wilson at cygnus dot com>
- Date: Tue, 21 Apr 1998 13:23:28 -0700
- cc: egcs at cygnus dot com, kenner at vlsi1 dot ultra dot nyu dot edu
In addition to the changes you mentioned, you presumably also need to do
something about STATIC_CHAIN_REGNUM. This is currently a local register,
and hence gets lost when a nested function is called. This means any nested
function that references locals in the parent will fail. This is why Ada
doesn't work. I don't know what to do to solve this though. I suspect we
may need to make an ABI change that will affect non-nested functions too.
A open question, are the units on the lengths on the i960 in bytes, or
4 byte words? It wasn't readily obvious to me.
The lengths are 4 byte words, but this isn't strictly correct. The lengths
should be in bytes. This is a harmless bug for now, but if you want to fix
this problem also, that would be great.
Jim