aboutsummaryrefslogtreecommitdiff
path: root/ld/ldlang.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2007-05-31 15:04:52 +0000
committerAlan Modra <amodra@gmail.com>2007-05-31 15:04:52 +0000
commita9a4c53eccf5a5e8ed2d6edb75054ad7ff7990fc (patch)
treebfdf255e2390aab1cfecbda9d7beb4f2ea053af9 /ld/ldlang.c
parent91568d083aac1900ec23ac9432376ab5b704e8ac (diff)
downloadgdb-a9a4c53eccf5a5e8ed2d6edb75054ad7ff7990fc.zip
gdb-a9a4c53eccf5a5e8ed2d6edb75054ad7ff7990fc.tar.gz
gdb-a9a4c53eccf5a5e8ed2d6edb75054ad7ff7990fc.tar.bz2
include/
* bfdlink.h (struct bfd_link_info): Add input_bfds_tail. bfd/ * simple.c (bfd_simple_get_relocated_section_content): Init input_bfds_tail. ld/ * ldlang.c (ldlang_add_file): Use input_bfds_tail. * ldmain.c (main): Init input_bfds_tail. Sort link_info initialization.
Diffstat (limited to 'ld/ldlang.c')
-rw-r--r--ld/ldlang.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/ld/ldlang.c b/ld/ldlang.c
index dfaf19b..a732525 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -5435,8 +5435,6 @@ lang_for_each_file (void (*func) (lang_input_statement_type *))
void
ldlang_add_file (lang_input_statement_type *entry)
{
- bfd **pp;
-
lang_statement_append (&file_chain,
(lang_statement_union_type *) entry,
&entry->next);
@@ -5445,9 +5443,9 @@ ldlang_add_file (lang_input_statement_type *entry)
a link. */
ASSERT (entry->the_bfd->link_next == NULL);
ASSERT (entry->the_bfd != output_bfd);
- for (pp = &link_info.input_bfds; *pp != NULL; pp = &(*pp)->link_next)
- ;
- *pp = entry->the_bfd;
+
+ *link_info.input_bfds_tail = entry->the_bfd;
+ link_info.input_bfds_tail = &entry->the_bfd->link_next;
entry->the_bfd->usrdata = entry;
bfd_set_gp_size (entry->the_bfd, g_switch_value);