Relaxation and Dwarf CIE/FDE

Ian Lance Taylor iant@google.com
Wed May 30 18:02:00 GMT 2007


Michael Eager <eager@eagercon.com> writes:

> I'm working with a target which has a linker relaxation
> pass.  The compiler is generating Dwarf.  When the linker
> shrinks a branch, the CIE/FDEs are not modified, so they
> end up pointing to the wrong instructions.
> 
> I looked through the code (binutils-2.16) but didn't
> see any code which addressed this.  Can anyone suggest
> a pointer to where this is handled?

You have to arrange for the assembler to keep all relocations,
including PC-relative relocations which would otherwise be resolved by
the assembler.  Then the linker has to adjust those PC-relative
relocations correctly during relaxation.  The SH relaxation code does
this.

Ian



More information about the Binutils mailing list