summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephane Carrez <stcarrez@nerim.fr>2003-01-17 22:51:28 +0000
committerStephane Carrez <stcarrez@nerim.fr>2003-01-17 22:51:28 +0000
commit926eddd19d0e9feb996678e93b4389b64e6bee34 (patch)
treeae97415f0cde7052593383de06e025b413ecd97f
parent27d2f4d388a1fc6288a5522bb2e7d2117b1fa767 (diff)
downloadbinutils-redhat-926eddd19d0e9feb996678e93b4389b64e6bee34.tar.gz
* config/tc-m68hc11.c (tc_m68hc11_fix_adjustable): Prevent adjustment
of relocs for memory bank addressing.
-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 c36a81683f..11fef9a582 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 2aa39d1989..a56ff04794 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: