* config/tc-m68hc11.c (build_jump_insn): Allocate worst case storage

for bra/bsr and use frag_variant(), this ensure that the possible
	16-bit BFD_RELOC_16 will be in the same frag.
This commit is contained in:
Stephane Carrez 2001-11-01 09:56:17 +00:00
parent 5d45665a8f
commit 4fe7ef9639
2 changed files with 12 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2001-11-01 Stephane Carrez <Stephane.Carrez@worldnet.fr>
* config/tc-m68hc11.c (build_jump_insn): Allocate worst case storage
for bra/bsr and use frag_variant(), this ensure that the possible
16-bit BFD_RELOC_16 will be in the same frag.
2001-10-31 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (HAVE_32BIT_ADDRESSES): If compiling embedded

View File

@ -1519,12 +1519,14 @@ build_jump_insn (opcode, operands, nb_operands, jmp_mode)
/* bra/bsr made be changed into jmp/jsr. */
else if (code == M6811_BSR || code == M6811_BRA || code == M6812_BSR)
{
opcode = m68hc11_new_insn (2);
/* Allocate worst case storage. */
opcode = m68hc11_new_insn (3);
number_to_chars_bigendian (opcode, code, 1);
number_to_chars_bigendian (opcode + 1, 0, 1);
frag_var (rs_machine_dependent, 2, 1,
ENCODE_RELAX (STATE_PC_RELATIVE, STATE_UNDF),
operands[0].exp.X_add_symbol, (offsetT) n, opcode);
frag_variant (rs_machine_dependent, 1, 1,
ENCODE_RELAX (STATE_PC_RELATIVE, STATE_UNDF),
operands[0].exp.X_add_symbol, (offsetT) n,
opcode);
}
else if (current_architecture & cpu6812)
{