aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@cygnus>1994-03-19 02:02:23 +0000
committerKen Raeburn <raeburn@cygnus>1994-03-19 02:02:23 +0000
commitec3c65e19bcd7f9cfb354a6f920cb50ec7b2d0c9 (patch)
tree533ee941ba7b8def3f1e4b548a976bb881522a33 /gas
parent20657f710639800c4b0728490281d2cb0abc23c5 (diff)
downloadgdb-ec3c65e19bcd7f9cfb354a6f920cb50ec7b2d0c9.zip
gdb-ec3c65e19bcd7f9cfb354a6f920cb50ec7b2d0c9.tar.gz
gdb-ec3c65e19bcd7f9cfb354a6f920cb50ec7b2d0c9.tar.bz2
sparc *13 relocs, obj_sec_sym_ok_for_reloc stuff
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog22
1 files changed, 22 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index e1d2310..de60934 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,27 @@
Fri Mar 18 20:09:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+ * subsegs.c (section_symbol): Use symbol_new instead of
+ symbol_make, since we may want it to go into the symbol table.
+ Make the new symbol have internal linkage. If
+ obj_sec_sym_ok_for_reloc says it's okay, use the BFD section
+ symbol with the newly created GAS symbol.
+ (obj_sec_sym_ok_for_reloc): Default to always returning 0.
+ * config/obj-aout.h (obj_sec_sym_ok_for_reloc) [BFD_ASSEMBLER]:
+ New macro.
+ * config/obj-elf.h (obj_sec_sym_ok_for_reloc): New macro.
+
+ * config/tc-sparc.c: Include subsegs.h.
+ (in_signed_range): New function.
+ (sparc_ip): Use it.
+ (sparc_ip, case 'i'): Use BFD_RELOC_SPARC13, not _BASE13.
+ (sparc_ip, label "immediate"): Reject constants for pcrel
+ instructions only if the relocation type indicates a "call"
+ instruction and the offset is within range of a "jmpl %g0". If
+ it's not in range, use the absolute section symbol plus an offset.
+ (md_apply_fix): Use in_signed_range. Combined _SPARC13 and
+ _BASE13 cases.
+ (tc_gen_reloc): Permit BFD_RELOC_SPARC13.
+
* config/ic960coff.mt (TDEFINES): Fixed typo (MANY_SECTIONS, not
MANY_SEGMENTS).