aboutsummaryrefslogtreecommitdiff
path: root/ld/relax.c
diff options
context:
space:
mode:
authorSteve Chamberlain <sac@cygnus>1992-08-27 00:32:05 +0000
committerSteve Chamberlain <sac@cygnus>1992-08-27 00:32:05 +0000
commitcd1d8c6d89ab6b17bf5b9b0a4659e1e1209e0d48 (patch)
treef46f94dfbd0655fd21839132d8e33b8e65c45eeb /ld/relax.c
parent38e9ed495cace6c983db81d029b51ade50e1e591 (diff)
downloadgdb-cd1d8c6d89ab6b17bf5b9b0a4659e1e1209e0d48.zip
gdb-cd1d8c6d89ab6b17bf5b9b0a4659e1e1209e0d48.tar.gz
gdb-cd1d8c6d89ab6b17bf5b9b0a4659e1e1209e0d48.tar.bz2
* ldlang.c (lang_process): don't pass null pointers when
abs_output_section is what is required. * ldwrite.c (ldwrite): use malloc to allocate the largest space used, and pass that down. * relax.c,relax.h (write_relaxnorel): use the passed malloc area rather than alloca.
Diffstat (limited to 'ld/relax.c')
-rw-r--r--ld/relax.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/ld/relax.c b/ld/relax.c
index 5335b23..5738b5b 100644
--- a/ld/relax.c
+++ b/ld/relax.c
@@ -27,8 +27,9 @@ DEFUN(build_it,(statement),
lang_statement_union_type *statement)
{
switch (statement->header.type) {
- {
#if 0
+ {
+
bfd_byte play_area[SHORT_SIZE];
unsigned int i;
bfd_putshort(output_bfd, statement->fill_statement.fill, play_area);
@@ -55,10 +56,11 @@ DEFUN(build_it,(statement),
1);
}
-#endif
+
abort();
}
break;
+#endif
case lang_data_statement_enum:
#if 0
{
@@ -147,8 +149,9 @@ DEFUN(build_it,(statement),
void
-DEFUN(write_relaxnorel,(output_bfd),
- bfd *output_bfd)
+DEFUN(write_relaxnorel,(output_bfd, data),
+ bfd *output_bfd AND
+ PTR data)
{
/* Tie up all the statements to generate an output bfd structure which
bfd can mull over */
@@ -156,7 +159,7 @@ DEFUN(write_relaxnorel,(output_bfd),
lang_for_each_statement(build_it);
- seclet_dump(output_bfd);
+ seclet_dump(output_bfd, data);
}