aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog9
-rw-r--r--ld/relax.c6
2 files changed, 14 insertions, 1 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 8a574aa..36be007 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,12 @@
+Tue Jul 14 08:34:34 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * ldlang.c (lang_map): print changes in sizes due to relaxing
+ (size_input_section): maintain the delta information.
+ * ldlang.h: add new field to struct to contain delta info.
+ * relax.c (relax_section): complain if input not relaxable.
+ * ldlex.l : add '_', ',' and '$' to chars which can appear at the
+ start of a filename
+
Mon Jul 13 17:33:00 1992 Steve Chamberlain (sac@thepub.cygnus.com)
* ldmain.c(main): prevent -r and -relax from being on at the same
diff --git a/ld/relax.c b/ld/relax.c
index 0791fae..5335b23 100644
--- a/ld/relax.c
+++ b/ld/relax.c
@@ -107,7 +107,7 @@ DEFUN(build_it,(statement),
seclet->type = bfd_indirect_seclet;
seclet->u.indirect.section = i;
seclet->u.indirect.symbols = statement->input_section.ifile->asymbols;
- seclet->size = bfd_get_section_size_before_reloc(i);
+ seclet->size = i->_cooked_size;
seclet->offset = i->output_offset;
seclet->next = 0;
}
@@ -175,6 +175,10 @@ DEFUN(relax_section,(this_ptr),
lang_input_section_type *is = &((*this_ptr)->input_section);
asection *i = is->section;
+ if (!(i->owner->flags & BFD_IS_RELAXABLE))
+ {
+ einfo("%B: not assembled with -linkrelax\n", i->owner);
+ }
return bfd_relax_section(i->owner, i, is->ifile->asymbols);