* config/tc-sh.h (TC_FIX_ADJUSTABLE): Disable adjusting if

symbol_used_in_reloc_p is true.
This commit is contained in:
Joern Rennecke 2002-04-09 16:48:03 +00:00
parent 05793179d7
commit 5bcd00a60a
2 changed files with 10 additions and 2 deletions

View File

@ -1,4 +1,7 @@
Tue Apr 9 15:17:53 2002 J"orn Rennecke <joern.rennecke@superh.com>
Tue Apr 9 16:45:48 2002 J"orn Rennecke <joern.rennecke@superh.com>
* config/tc-sh.h (TC_FIX_ADJUSTABLE): Disable adjusting if
symbol_used_in_reloc_p is true.
* config/tc-sh.c (md_apply_fix3): Don't zero relocations on big
endian hosts.

View File

@ -68,7 +68,12 @@ extern boolean sh_fix_adjustable PARAMS ((struct fix *));
/* This arranges for gas/write.c to not apply a relocation if
obj_fix_adjustable() says it is not adjustable. */
#define TC_FIX_ADJUSTABLE(fixP) obj_fix_adjustable (fixP)
/* ??? fixups with symbols in SEC_MERGE sections are marked with
obj_fix_adjustable and have a non-section symbol, as in
"vwxyz"+1 in execute/string-opt-6.c . Maybe the test of
(symbol_used_in_reloc_p should be done in the machine-independent code. */
#define TC_FIX_ADJUSTABLE(fixP) \
(! symbol_used_in_reloc_p (fixP->fx_addsy) && obj_fix_adjustable (fixP))
#endif
#define MD_PCREL_FROM_SECTION(FIXP, SEC) md_pcrel_from_section (FIXP, SEC)