summaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorTom Rix <trix@redhat.com>2001-08-30 12:48:35 +0000
committerTom Rix <trix@redhat.com>2001-08-30 12:48:35 +0000
commit8df8c6197ab22e0b3558d013efb32000b6e31f81 (patch)
tree3cabd9dc82ecad11195d6f5f8ea5cf09e088a4da /bfd
parent063cb91d19b67acb7c7fe39396e5f396a1f1b6a9 (diff)
downloadbinutils-8df8c6197ab22e0b3558d013efb32000b6e31f81.tar.gz
binutils-8df8c6197ab22e0b3558d013efb32000b6e31f81.tar.bz2
binutils-8df8c6197ab22e0b3558d013efb32000b6e31f81.zip
Fix for xty_ld symbols
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/xcofflink.c8
2 files changed, 9 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index c8203ff4be2..dac33c962fd 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -26,6 +26,11 @@
(elf32_h8_mach, elf32_h8_final_write_processing): New functions.
(elf32_h8_object_p): Similarly.
+2001-08-29 Tom Rix <trix@redhat.com>
+
+ * xcofflink.c (xcoff_link_add_symbols): Fix XTY_LD symbol that
+ does not follow a XTY_SD.
+
2001-08-29 Alan Modra <amodra@bigpond.net.au>
* targmatch.sed: Delete case statements.
diff --git a/bfd/xcofflink.c b/bfd/xcofflink.c
index 4e25c595d45..ec4257c91b5 100644
--- a/bfd/xcofflink.c
+++ b/bfd/xcofflink.c
@@ -1574,9 +1574,9 @@ xcoff_link_add_symbols (abfd, info)
case XTY_LD:
/* This is a label definition. The x_scnlen field is the
- symbol index of the csect. I believe that this must
- always follow the appropriate XTY_SD symbol, so I will
- insist on it. */
+ symbol index of the csect. Usually the XTY_LD symbol will
+ follow its appropriate XTY_SD symbol. The .set pseudo op can
+ cause the XTY_LD to not follow the XTY_SD symbol. */
{
boolean bad;
@@ -1600,7 +1600,7 @@ xcoff_link_add_symbols (abfd, info)
bfd_set_error (bfd_error_bad_value);
goto error_return;
}
-
+ csect = section;
value = sym.n_value - csect->vma;
}
break;