* config/tc-mips.c (md_apply_fix): Accept BFD_RELOC_16, for

DWARF.  From gary@Intrepid.COM (Gary Funck).
This commit is contained in:
Ian Lance Taylor
1995-02-15 21:08:05 +00:00
parent 470feacfab
commit 49ad0c4cf3
2 changed files with 13 additions and 1 deletions

View File

@ -21,6 +21,9 @@ Wed Feb 15 15:07:00 1995 Michael Meissner <meissner@tiktok.cygnus.com>
Wed Feb 15 11:46:02 1995 Ian Lance Taylor <ian@cygnus.com>
* config/tc-mips.c (md_apply_fix): Accept BFD_RELOC_16, for
DWARF. From gary@Intrepid.COM (Gary Funck).
* config/tc-mips.c (macro): Handle M_U{L,S}D[_A] (unaligned double
loads and stores).

View File

@ -5441,7 +5441,7 @@ md_apply_fix (fixP, valueP)
unsigned char *buf;
long insn, value;
assert (fixP->fx_size == 4);
assert (fixP->fx_size == 4 || fixP->fx_r_type == BFD_RELOC_16);
value = *valueP;
fixP->fx_addnumber = value; /* Remember value for tc_gen_reloc */
@ -5508,6 +5508,15 @@ md_apply_fix (fixP, valueP)
value, 4);
break;
case BFD_RELOC_16:
/* If we are deleting this reloc entry, we must fill in the
value now. */
assert (fixP->fx_size == 2);
if (fixP->fx_done)
md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
value, 2);
break;
case BFD_RELOC_LO16:
/* When handling an embedded PIC switch statement, we can wind
up deleting a LO16 reloc. See the 'o' case in mips_ip. */