[linker] relaxation question

Nick Clifton nickc@redhat.com
Thu Jul 30 08:44:00 GMT 2009


Hi Swami,

> For a simple c++ test case, .gcc_except_table section created. But this 
> section has references (ie label refs) from main (ie code section).
> 
> During the linker relax, CODE section will be relaxed, due to this 
> references in the .gcc_except_table affected with wrong address after relax.
> 
> Is this known issue in linker?

Not an issue as such, but it may be a known problem when implementing 
linker relaxation.

What should happen is that in the assembler the references from the 
.gcc_except_table section to symbols in the .text section are converted 
into relocations against those symbols.  Then in the linker when 
relaxation is performed, (which must be before the relocations are 
resolved), any symbols which point into the .text section must be 
adjusted as the section is relaxed.  That way when the relocations are 
eventually resolved in the .gcc_except_table section they will get the 
correct values.

Cheers
   Nick




More information about the Binutils mailing list