diff options
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-m68hc11.c | 36 | ||||
-rw-r--r-- | gas/config/tc-xgate.c | 35 |
3 files changed, 31 insertions, 45 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 395af64..f8d84d5 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2012-11-05 Sean Keys <skeys@ipdatasys.com> + + * config/tc-xgate.c: Remove bogus use of <fx_pcrel_adjust>. + * config/tc-m68hc11.c: Likewise. + 2012-11-05 Alan Modra <amodra@gmail.com> * configure.in: Apply 2012-09-10 change to config.in here. diff --git a/gas/config/tc-m68hc11.c b/gas/config/tc-m68hc11.c index d2aee86..46e6a94 100644 --- a/gas/config/tc-m68hc11.c +++ b/gas/config/tc-m68hc11.c @@ -1603,11 +1603,8 @@ fixup8 (expressionS *oper, int mode, int opmode) if (mode == M6811_OP_JUMP_REL) { - fixS *fixp; - - fixp = fix_new_exp (frag_now, f - frag_now->fr_literal, 1, - oper, TRUE, BFD_RELOC_8_PCREL); - fixp->fx_pcrel_adjust = 1; + fix_new_exp (frag_now, f - frag_now->fr_literal, 1, + oper, TRUE, BFD_RELOC_8_PCREL); } else { @@ -1676,8 +1673,7 @@ fixup16 (expressionS *oper, int mode, int opmode ATTRIBUTE_UNUSED) reloc == BFD_RELOC_16_PCREL, reloc); number_to_chars_bigendian (f, 0, 2); - if (reloc == BFD_RELOC_16_PCREL) - fixp->fx_pcrel_adjust = 2; + if (reloc == BFD_RELOC_M68HC11_LO16) fixp->fx_no_overflow = 1; } @@ -1756,23 +1752,17 @@ fixup8_xg (expressionS *oper, int mode, int opmode) { if (mode == M68XG_OP_REL9) { - fixS *fixp; - /* Future improvement: This fixup/reloc isn't adding on constants to symbols. */ - fixp = fix_new_exp (frag_now, f - frag_now->fr_literal -1, 2, - oper, TRUE, BFD_RELOC_M68HC12_9_PCREL); - fixp->fx_pcrel_adjust = 1; + fix_new_exp (frag_now, f - frag_now->fr_literal -1, 2, + oper, TRUE, BFD_RELOC_M68HC12_9_PCREL); } else if (mode == M68XG_OP_REL10) { - fixS *fixp; - /* Future improvement: This fixup/reloc isn't adding on constants to symbols. */ - fixp = fix_new_exp (frag_now, f - frag_now->fr_literal -1, 2, - oper, TRUE, BFD_RELOC_M68HC12_10_PCREL); - fixp->fx_pcrel_adjust = 1; + fix_new_exp (frag_now, f - frag_now->fr_literal -1, 2, + oper, TRUE, BFD_RELOC_M68HC12_10_PCREL); } else { @@ -3965,7 +3955,6 @@ void md_convert_frag (bfd *abfd ATTRIBUTE_UNUSED, asection *sec ATTRIBUTE_UNUSED, fragS *fragP) { - fixS *fixp; long value; long disp; char *buffer_address = fragP->fr_literal; @@ -4018,10 +4007,9 @@ md_convert_frag (bfd *abfd ATTRIBUTE_UNUSED, asection *sec ATTRIBUTE_UNUSED, fragP->fr_opcode[1] = fragP->fr_opcode[0]; fragP->fr_opcode[0] = M6811_OPCODE_PAGE2; - fixp = fix_new (fragP, fragP->fr_fix, 2, - fragP->fr_symbol, fragP->fr_offset, 1, + fix_new (fragP, fragP->fr_fix, 2, + fragP->fr_symbol, fragP->fr_offset, 1, BFD_RELOC_16_PCREL); - fixp->fx_pcrel_adjust = 2; fragP->fr_fix += 2; break; @@ -4060,9 +4048,9 @@ md_convert_frag (bfd *abfd ATTRIBUTE_UNUSED, asection *sec ATTRIBUTE_UNUSED, && fragP->fr_symbol != 0 && S_GET_SEGMENT (fragP->fr_symbol) != absolute_section) { - fixp = fix_new (fragP, fragP->fr_fix, 2, - fragP->fr_symbol, fragP->fr_offset, - 1, BFD_RELOC_16_PCREL); + fix_new (fragP, fragP->fr_fix, 2, + fragP->fr_symbol, fragP->fr_offset, + 1, BFD_RELOC_16_PCREL); } else { diff --git a/gas/config/tc-xgate.c b/gas/config/tc-xgate.c index 19983e1..cbd65f2 100644 --- a/gas/config/tc-xgate.c +++ b/gas/config/tc-xgate.c @@ -1190,7 +1190,6 @@ xgate_parse_operand (struct xgate_opcode *opcode, char **op_con, s_operand operand) { - fixS *fixp = 0; char *op_constraint = *op_con; unsigned int op_mask = 0; unsigned int pp_fix = 0; @@ -1277,14 +1276,14 @@ xgate_parse_operand (struct xgate_opcode *opcode, if (((opcode->name[strlen (opcode->name) - 1] == 'l') && autoHiLo) || operand.mod == MOD_LOAD_LOW) { - fixp = fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, - BFD_RELOC_XGATE_24); + fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, + BFD_RELOC_XGATE_24); } else if (((opcode->name[strlen (opcode->name) - 1]) == 'h' && autoHiLo) || operand.mod == MOD_LOAD_HIGH ) { - fixp = fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, - BFD_RELOC_XGATE_IMM8_HI); + fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, + BFD_RELOC_XGATE_IMM8_HI); } else { @@ -1292,25 +1291,21 @@ xgate_parse_operand (struct xgate_opcode *opcode, "to load a 16-bit value.")); break; } - fixp->fx_pcrel_adjust = 0; } else if (*op_constraint == '5') { - fixp = fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, - BFD_RELOC_XGATE_IMM5); - fixp->fx_pcrel_adjust = 0; + fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, + BFD_RELOC_XGATE_IMM5); } else if (*op_constraint == '4') { - fixp = fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, - BFD_RELOC_XGATE_IMM4); - fixp->fx_pcrel_adjust = 0; + fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, + BFD_RELOC_XGATE_IMM4); } else if (*op_constraint == '3') { - fixp = fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, - BFD_RELOC_XGATE_IMM3); - fixp->fx_pcrel_adjust = 0; + fix_new_exp (frag_now, where, 2, &operand.exp, FALSE, + BFD_RELOC_XGATE_IMM3); } else { @@ -1339,15 +1334,13 @@ xgate_parse_operand (struct xgate_opcode *opcode, { if (*op_constraint == '9') { - fixp = fix_new_exp (frag_now, where, 2, &operand.exp, TRUE, - R_XGATE_PCREL_9); - fixp->fx_pcrel_adjust = 1; + fix_new_exp (frag_now, where, 2, &operand.exp, TRUE, + R_XGATE_PCREL_9); } else if (*op_constraint == 'a') { - fixp = fix_new_exp (frag_now, where, 2, &operand.exp, TRUE, - R_XGATE_PCREL_10); - fixp->fx_pcrel_adjust = 1; + fix_new_exp (frag_now, where, 2, &operand.exp, TRUE, + R_XGATE_PCREL_10); } } else |