This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
RE: gcc and arm interworking
- From: "Dave Murphy" <wintermute2k4 at ntlworld dot com>
- To: "Richard Earnshaw" <rearnsha at arm dot com>
- Cc: <gcc at gcc dot gnu dot org>
- Date: Tue, 9 Mar 2004 08:06:19 -0000
- Subject: RE: gcc and arm interworking
> -----Original Message-----
> From: gcc-owner@gcc.gnu.org [mailto:gcc-owner@gcc.gnu.org]On Behalf Of
> Richard Earnshaw
> Sent: 08 March 2004 10:40
> This is really the wrong list for this discussion (should really
> be on the
> binutils list), but here goes...
>
> Non-interworking objects are only compatible with interworking objects if
> one of the following criteria are met:
>
> 1) All code is using the same instruction set (all ARM-state, or all
> Thumb-state)
>
> Or:
>
> 2) Code compiled for interworking never calls a function that is not
> compiled for interworking. In addition, if using indirect calls
> (pointers
> to functions) both must be interworking capable.
>
> In general it's not possible to determine whether either of the above two
> criteria are met simply by looking at the object's attributes, so it's
> probably best to warn that things are incompatible.
>
> R.
cheers for the replies.
it's not the interworking itself I have issues with so nuch as ld just being
plain stupid when it comes to dealing with the two varieties of objects. I
was attempting to stop ld warning about the interwork flag on data objects
( i.e. no code contained) when I discovered the whole problem.
I guess I'll just have to hassle the binutils people.
Dave