[Xtensa] fix overly conservative handling symbol differences
Mon Jan 21 04:58:00 GMT 2008
Sterling Augustine's change to GAS from 2007-11-01 disabled linker relaxation of
Xtensa code referenced in difference of symbol expressions. This was really
only needed for expressions used in sleb128 and uleb128 values, but at the time
it seemed to be OK to handle all expression symbols. My subsequent DWARF change
from 2008-01-09 causes more difference of symbol expressions for Xtensa, and we
end up with very conservative linker relaxation whenever DWARF line info is
I'm committing this patch to fix the problem. It limits the previous change to
only apply in the context of uleb128 and sleb128 values. I ran the testsuite
for an xtensa-elf target to verify it.
2008-01-18 Bob Wilson <firstname.lastname@example.org>
* config/tc-xtensa.c (xtensa_leb128): New function.
(md_pseudo_table): Use it for sleb128 and uleb128.
(is_leb128_expr): New internal flag.
(xtensa_symbol_new_hook): Check new flag.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 2410 bytes
Desc: not available
More information about the Binutils