aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-m68hc11.c7
2 files changed, 11 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index c36a816..11fef9a 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,10 @@
2003-01-17 Stephane Carrez <stcarrez@nerim.fr>
+ * config/tc-m68hc11.c (tc_m68hc11_fix_adjustable): Prevent adjustment
+ of relocs for memory bank addressing.
+
+2003-01-17 Stephane Carrez <stcarrez@nerim.fr>
+
* config/tc-m68hc11.c (md_show_usage): Update usage.
(md_parse_option): Recognize -m68hcs12.
(m68hc11_elf_final_processing): Set EF_M68HCS12_MACH flag to identify
diff --git a/gas/config/tc-m68hc11.c b/gas/config/tc-m68hc11.c
index 2aa39d1..a56ff04 100644
--- a/gas/config/tc-m68hc11.c
+++ b/gas/config/tc-m68hc11.c
@@ -3216,11 +3216,16 @@ tc_m68hc11_fix_adjustable (fixP)
/* For the linker relaxation to work correctly, these relocs
need to be on the symbol itself. */
case BFD_RELOC_16:
- case BFD_RELOC_LO16:
case BFD_RELOC_M68HC11_RL_JUMP:
case BFD_RELOC_M68HC11_RL_GROUP:
case BFD_RELOC_VTABLE_INHERIT:
case BFD_RELOC_VTABLE_ENTRY:
+
+ /* The memory bank addressing translation also needs the original
+ symbol. */
+ case BFD_RELOC_LO16:
+ case BFD_RELOC_M68HC11_PAGE:
+ case BFD_RELOC_M68HC11_24:
return 0;
case BFD_RELOC_32: