public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* Multiple inheritance thunks on ARM
@ 2002-01-24  5:48 Roland Franks
  0 siblings, 0 replies; only message in thread
From: Roland Franks @ 2002-01-24  5:48 UTC (permalink / raw)
  To: 'gcc-help@gcc.gnu.org'

When I try and compile a largish C++ application which contains examples of
multiple inheritance for an ARM processor running in thumb mode I end up
with code that cannot be linked (with many errors of the form "relocation
truncated to fit: R_ARM_THM_PC11 ....."). This appears to be because the
thunks generated for multiply inherited classes are in a different sections
to the destination function and jump to that function via a 'b' instruction
(which has an 11 bit target offset). In a largish application the thunk and
the destination function are too far apart for this relocation to be
resolved.

The problem can be fixed by modifying the compiler and substituting a "bl"
instruction for the "b" instruction in the macro ASM_OUTPUT_MI_THUNK. I
would however, prefer not to change the compiler - does anyone have any
suggestions ?

GCC is version 3.0.2.

Regards.


This message contains information which may be confidential and privileged.  Unless you are the addressee (or authorised to receive for the addressee),  you should not use, copy or disclose to anyone the details or information contained in this message.  The content of the message and or attachments may not reflect the view and opinions of the originating company. If you have received this message in error, you should reply to the sender and copy email@red-m.com and delete the message from your system.  Thank you for your co-operation.

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-01-24 13:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-01-24  5:48 Multiple inheritance thunks on ARM Roland Franks

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).