* config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak

checks only for ELF.
(hppa_force_relocation): Likewise.
This commit is contained in:
Alan Modra 2000-09-23 10:06:15 +00:00
parent d48ad4f3b6
commit 959ee54136
2 changed files with 11 additions and 5 deletions

View File

@ -1,3 +1,9 @@
2000-09-23 Alan Modra <alan@linuxcare.com.au>
* config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak
checks only for ELF.
(hppa_force_relocation): Likewise.
2000-09-22 Jim Wilson <wilson@cygnus.com>
* config/tc-ia64.c (dv_sem): Add "stop".

View File

@ -8310,6 +8310,10 @@ hppa_fix_adjustable (fixp)
if (fixp->fx_r_type == (int) R_PARISC_GNU_VTINHERIT
|| fixp->fx_r_type == (int) R_PARISC_GNU_VTENTRY)
return 0;
if (fixp->fx_addsy && (S_IS_EXTERNAL (fixp->fx_addsy)
|| S_IS_WEAK (fixp->fx_addsy)))
return 0;
#endif
/* Reject reductions of symbols in sym1-sym2 expressions when
@ -8372,10 +8376,6 @@ hppa_fix_adjustable (fixp)
|| hppa_fix->fx_r_field == e_lpsel)
return 0;
if (fixp->fx_addsy && (S_IS_EXTERNAL (fixp->fx_addsy)
|| S_IS_WEAK (fixp->fx_addsy)))
return 0;
/* Reject absolute calls (jumps). */
if (hppa_fix->fx_r_type == R_HPPA_ABS_CALL)
return 0;
@ -8414,13 +8414,13 @@ hppa_force_relocation (fixp)
if (fixp->fx_r_type == (int) R_PARISC_GNU_VTINHERIT
|| fixp->fx_r_type == (int) R_PARISC_GNU_VTENTRY)
return 1;
#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;
#endif
/* 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