mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-21 18:39:34 +08:00
* config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): For ELF, allow
subtraction of two syms without emitting a relocation. * config/tc-hppa.c (hppa_force_relocation): Force relocations for global or weak symbols.
This commit is contained in:
@ -1,3 +1,12 @@
|
|||||||
|
2000-09-18 Alan Modra <alan@linuxcare.com.au>
|
||||||
|
|
||||||
|
* config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): Allow
|
||||||
|
subtraction of two syms without emitting a relocation.
|
||||||
|
|
||||||
|
From David Huggins-Daines <dhd@linuxcare.com>
|
||||||
|
* config/tc-hppa.c (hppa_force_relocation): Force relocations for
|
||||||
|
global or weak symbols.
|
||||||
|
|
||||||
2000-09-15 Kazu Hirata <kazu@hxi.com>
|
2000-09-15 Kazu Hirata <kazu@hxi.com>
|
||||||
|
|
||||||
* config/tc-h8300.h: Fix formatting.
|
* config/tc-h8300.h: Fix formatting.
|
||||||
|
@ -8416,9 +8416,15 @@ hppa_force_relocation (fixp)
|
|||||||
return 1;
|
return 1;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Ensure we emit a relocation for global symbols so that dynamic
|
||||||
|
linking works. */
|
||||||
|
if (fixp->fx_addsy && (S_IS_EXTERNAL (fixp->fx_addsy)
|
||||||
|
|| S_IS_WEAK (fixp->fx_addsy)))
|
||||||
|
return 1;
|
||||||
|
|
||||||
/* It is necessary to force PC-relative calls/jumps to have a relocation
|
/* It is necessary to force PC-relative calls/jumps to have a relocation
|
||||||
entry if they're going to need either a argument relocation or long
|
entry if they're going to need either a argument relocation or long
|
||||||
call stub. FIXME. Can't we need the same for absolute calls? */
|
call stub. */
|
||||||
if (fixp->fx_pcrel && fixp->fx_addsy
|
if (fixp->fx_pcrel && fixp->fx_addsy
|
||||||
&& (arg_reloc_stub_needed (symbol_arg_reloc_info (fixp->fx_addsy),
|
&& (arg_reloc_stub_needed (symbol_arg_reloc_info (fixp->fx_addsy),
|
||||||
hppa_fixp->fx_arg_reloc)))
|
hppa_fixp->fx_arg_reloc)))
|
||||||
|
@ -145,6 +145,10 @@ int hppa_fix_adjustable PARAMS((struct fix *));
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef OBJ_ELF
|
#ifdef OBJ_ELF
|
||||||
|
/* It's OK to subtract two symbols in the same section without
|
||||||
|
emitting a relocation. */
|
||||||
|
#define TC_FORCE_RELOCATION_SECTION(FIXP, SEC) 0
|
||||||
|
|
||||||
/* Handle .type psuedo. Given a type string of `millicode', set the
|
/* Handle .type psuedo. Given a type string of `millicode', set the
|
||||||
internal elf symbol type to STT_PARISC_MILLI, and return
|
internal elf symbol type to STT_PARISC_MILLI, and return
|
||||||
BSF_FUNCTION for the BFD symbol type. */
|
BSF_FUNCTION for the BFD symbol type. */
|
||||||
|
Reference in New Issue
Block a user