aboutsummaryrefslogtreecommitdiff
path: root/ld/relax.c
diff options
context:
space:
mode:
authorSteve Chamberlain <sac@cygnus>1992-04-17 15:59:37 +0000
committerSteve Chamberlain <sac@cygnus>1992-04-17 15:59:37 +0000
commit0d3e45eab084b2bca8b6e3dc94952264868b033b (patch)
tree9081e1bf004a738bffdebfbd8759e5095419db04 /ld/relax.c
parentb0c8c726888d90783a178afe4df237083ac70c8f (diff)
downloadgdb-0d3e45eab084b2bca8b6e3dc94952264868b033b.zip
gdb-0d3e45eab084b2bca8b6e3dc94952264868b033b.tar.gz
gdb-0d3e45eab084b2bca8b6e3dc94952264868b033b.tar.bz2
* relax.c: added handling for new "padding" seclet type, used to
fill out gaps between section. * ldgram.y, ldlex.l: now -defsym on the command line is done properly.
Diffstat (limited to 'ld/relax.c')
-rw-r--r--ld/relax.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/ld/relax.c b/ld/relax.c
index d3956ef..948dd8a 100644
--- a/ld/relax.c
+++ b/ld/relax.c
@@ -27,7 +27,6 @@ DEFUN(build_it,(statement),
lang_statement_union_type *statement)
{
switch (statement->header.type) {
- case lang_fill_statement_enum:
{
#if 0
bfd_byte play_area[SHORT_SIZE];
@@ -113,7 +112,27 @@ DEFUN(build_it,(statement),
}
break;
+ case lang_padding_statement_enum:
+ /* Make a new seclet with the right filler */
+ {
+ /* Create a new seclet in the output section with this
+ attached */
+ bfd_seclet_type *seclet =
+ bfd_new_seclet(statement->padding_statement.output_section->owner,
+ statement->padding_statement.output_section);
+
+ seclet->type = bfd_fill_seclet;
+ seclet->size = statement->padding_statement.size;
+ seclet->offset = statement->padding_statement.output_offset;
+ seclet->u.fill.value = statement->padding_statement.fill;
+ seclet->next = 0;
+ }
+ break;
+
+
+
+ break;
default:
/* All the other ones fall through */
;