aboutsummaryrefslogtreecommitdiff
path: root/ld/relax.c
diff options
context:
space:
mode:
authorSteve Chamberlain <sac@cygnus>1992-05-06 00:49:18 +0000
committerSteve Chamberlain <sac@cygnus>1992-05-06 00:49:18 +0000
commit9c99a57eca53128c30eb2677953273b51ef6fb57 (patch)
tree1b2da06706c81799ed73254dd08d30ee44becf21 /ld/relax.c
parent2dbd15d2fba73bc6e8c122053a7c01bec253ea19 (diff)
downloadgdb-9c99a57eca53128c30eb2677953273b51ef6fb57.zip
gdb-9c99a57eca53128c30eb2677953273b51ef6fb57.tar.gz
gdb-9c99a57eca53128c30eb2677953273b51ef6fb57.tar.bz2
* relax.c (build_it): don't allocate space in the output file for
stuff if -R flag applys to it.
Diffstat (limited to 'ld/relax.c')
-rw-r--r--ld/relax.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/ld/relax.c b/ld/relax.c
index 948dd8a..0791fae 100644
--- a/ld/relax.c
+++ b/ld/relax.c
@@ -96,19 +96,21 @@ DEFUN(build_it,(statement),
{
/* Create a new seclet in the output section with this
attached */
+ if (statement->input_section.ifile->just_syms_flag == false)
+ {
+ asection *i = statement->input_section.section;
- asection *i = statement->input_section.section;
-
- asection *output_section = i->output_section;
+ asection *output_section = i->output_section;
- bfd_seclet_type *seclet = bfd_new_seclet(output_section->owner,output_section);
+ bfd_seclet_type *seclet = bfd_new_seclet(output_section->owner,output_section);
- 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->offset = i->output_offset;
- seclet->next = 0;
+ 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->offset = i->output_offset;
+ seclet->next = 0;
+ }
}
break;