* config/tc-mips.c (append_insn): Make sure that if we have a

fixup for an unmatched %hi reloc, it does not associated with a
	variant frag.
This commit is contained in:
Ian Lance Taylor 1998-02-06 03:08:45 +00:00
parent 0b0caaf11b
commit b073d4281c
2 changed files with 19 additions and 1 deletions

View File

@ -1,5 +1,9 @@
Thu Feb 5 12:39:08 1998 Ian Lance Taylor <ian@cygnus.com>
* config/tc-mips.c (append_insn): Make sure that if we have a
fixup for an unmatched %hi reloc, it does not associated with a
variant frag.
* configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
* doc/Makefile.in: Likewise.

View File

@ -880,7 +880,11 @@ md_begin ()
else if (strcmp (cpu, "mips64vr4300") == 0)
mips_cpu = 4300;
else if (strcmp (cpu, "mips64vr4100") == 0)
else if (strcmp (cpu, "mips64vr4100") == 0
/* start-sanitize-vr4111 */
|| strcmp (cpu, "mips64vr4111") == 0
/* end-sanitize-vr4111 */
)
mips_cpu = 4100;
else if (strcmp (cpu, "r4010") == 0)
@ -2213,6 +2217,16 @@ append_insn (place, ip, address_expr, reloc_type, unmatched_hi)
/* We just output an insn, so the next one doesn't have a label. */
mips_clear_insn_labels ();
/* We must ensure that a fixup associated with an unmatched %hi
reloc does not become a variant frag. Otherwise, the
rearrangement of %hi relocs in frob_file may confuse
tc_gen_reloc. */
if (unmatched_hi)
{
frag_wane (frag_now);
frag_new (0);
}
}
/* This function forgets that there was any previous instruction or