Browse Source

* config/tc-ia64.c (ia64_cons_fix_new): Handle 8 byte iplt reloc

in 32-bit mode.
binutils-2_13-branch
Richard Henderson 25 years ago
parent
commit
5f44c186d7
  1. 5
      gas/ChangeLog
  2. 25
      gas/config/tc-ia64.c

5
gas/ChangeLog

@ -1,3 +1,8 @@
2002-04-01 Jessica Han <jessica@cup.hp.com>
* config/tc-ia64.c (ia64_cons_fix_new): Handle 8 byte iplt reloc
in 32-bit mode.
2002-03-27 Andreas Schwab <schwab@suse.de>
* config/tc-i386.c (output_jump): Set fx_pcrel_adjust to size of

25
gas/config/tc-ia64.c

@ -9986,11 +9986,26 @@ ia64_cons_fix_new (f, where, nbytes, exp)
break;
case 8:
if (target_big_endian)
code = BFD_RELOC_IA64_DIR64MSB;
else
code = BFD_RELOC_IA64_DIR64LSB;
break;
/* In 32-bit mode, data8 could mean function descriptors too. */
if (exp->X_op == O_pseudo_fixup
&& exp->X_op_symbol
&& S_GET_VALUE (exp->X_op_symbol) == FUNC_IPLT_RELOC
&& !(md.flags & EF_IA_64_ABI64))
{
if (target_big_endian)
code = BFD_RELOC_IA64_IPLTMSB;
else
code = BFD_RELOC_IA64_IPLTLSB;
exp->X_op = O_symbol;
break;
}
else {
if (target_big_endian)
code = BFD_RELOC_IA64_DIR64MSB;
else
code = BFD_RELOC_IA64_DIR64LSB;
break;
}
case 16:
if (exp->X_op == O_pseudo_fixup

Loading…
Cancel
Save