aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Chamberlain <sac@cygnus>1992-02-04 23:29:33 +0000
committerSteve Chamberlain <sac@cygnus>1992-02-04 23:29:33 +0000
commitaa34a7c3c1ace898a37733c7eac0923f6e3e8759 (patch)
treec94f6d0d2d73fe1848e654a57e86a615e315d5ca
parent58216160ef6573acb817676795cadab967afea2d (diff)
downloadgdb-aa34a7c3c1ace898a37733c7eac0923f6e3e8759.zip
gdb-aa34a7c3c1ace898a37733c7eac0923f6e3e8759.tar.gz
gdb-aa34a7c3c1ace898a37733c7eac0923f6e3e8759.tar.bz2
* ldlex.l: Put pack -noinhibit-exec and -sort-common
* ldlang.c (print_data_statement): print the right address.
-rw-r--r--ld/ChangeLog15
-rw-r--r--ld/ldlang.c5
2 files changed, 18 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index e1d7a2d..6b3bd54 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,18 @@
+Tue Feb 4 15:28:01 1992 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * ldlex.l: Put pack -noinhibit-exec and -sort-common
+ * ldlang.c (print_data_statement): print the right address.
+
+Thu Jan 30 17:51:53 1992 Per Bothner (bothner at cygnus.com)
+
+ * Makefile.in: The rule for testing ld by re-linking itself
+ via an intermediate -r link was moved to the ld1 rule
+ instead of the ld2 rule. This allows ld2 and ld3 to be identical,
+ which allows the bootstrap rule to work.
+ * ldctor.c (find_constructors): Don't create a constructor
+ list if it is already defined (as would happen if ld is
+ invoked by collect).
+
Wed Jan 29 08:35:39 1992 Steve Chamberlain (sac at rtl.cygnus.com)
* config/mh-sparc.h: now uses libgcc.a
diff --git a/ld/ldlang.c b/ld/ldlang.c
index b99f129..ef4fdf7 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -1018,7 +1018,7 @@ DEFUN(print_input_section,(in),
lang_input_section_type *in)
{
asection *i = in->section;
- int size = i->flags & SEC_HAS_CONTENTS ?
+ int size = i->reloc_done ?
bfd_get_section_size_after_reloc(i) :
bfd_get_section_size_before_reloc(i);
@@ -1097,7 +1097,7 @@ DEFUN(print_data_statement,(data),
print_space();
/* ASSERT(print_dot == data->output_vma);*/
- print_address(data->output_vma);
+ print_address(data->output_vma + data->output_section->vma);
print_space();
print_address(data->value);
print_space();
@@ -1136,6 +1136,7 @@ DEFUN(print_padding_statement,(s),
print_space();
print_fill(s->fill);
print_nl();
+ print_dot = s->output_offset + s->output_section->vma + s->size;
}
static void