aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/config/tc-mn10200.c9
2 files changed, 12 insertions, 4 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 3a13213..1805fd2 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,6 +1,11 @@
+Mon Jan 6 15:19:32 1997 Jeffrey A Law (law@cygnus.com)
+
+ * config/tc-mn10200.c (md_assemble): Tweak fx_offset for pc-relative
+ relocs.
+
Fri Jan 3 16:47:08 1997 Jeffrey A Law (law@cygnus.com)
- * config/tc-hppa.c (struct hppa_fix_struct): Steak fx_r_field's type
+ * config/tc-hppa.c (struct hppa_fix_struct): Tweak fx_r_field's type
to avoid warnings with the native HP compiler.
(fix_new_hppa): Similarly for the r_type argument.
(pa_build_unwind_subspace, hppa_elf_mark_end_of_function): Enclose
diff --git a/gas/config/tc-mn10200.c b/gas/config/tc-mn10200.c
index 36894ca..e57a6c1 100644
--- a/gas/config/tc-mn10200.c
+++ b/gas/config/tc-mn10200.c
@@ -741,6 +741,7 @@ keep_going:
else
{
int reloc, pcrel, reloc_size, offset;
+ fixS *fixP;
reloc = BFD_RELOC_NONE;
/* How big is the reloc? Remember SPLIT relocs are
@@ -786,9 +787,11 @@ keep_going:
else if (reloc_size == 32 || reloc_size == 24)
reloc_size = 2;
- fix_new_exp (frag_now, f - frag_now->fr_literal + offset, reloc_size,
- &fixups[i].exp, pcrel,
- ((bfd_reloc_code_real_type) reloc));
+ fixP = fix_new_exp (frag_now, f - frag_now->fr_literal + offset,
+ reloc_size, &fixups[i].exp, pcrel,
+ ((bfd_reloc_code_real_type) reloc));
+ if (pcrel)
+ fixP->fx_offset += offset;
}
}
}