diff options
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 5 | ||||
-rw-r--r-- | ld/ldlang.c | 7 | ||||
-rw-r--r-- | ld/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-gc/start.d | 2 |
4 files changed, 11 insertions, 7 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index e157d73..f6e78f2 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2012-06-21 Alan Modra <amodra@gmail.com> + + * ldlang.c (lang_insert_orphan): Don't make __start_<sec> symbol + absolute, and remove unnecessary alignment. + 2012-06-16 Alan Modra <amodra@gmail.com> * ldlang.h (lang_output_section_statement_type): Add after_end field. diff --git a/ld/ldlang.c b/ld/ldlang.c index 2ecf62f..ddf3be2 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -1790,17 +1790,12 @@ lang_insert_orphan (asection *s, if (*ps == '\0') { char *symname; - etree_type *e_align; symname = (char *) xmalloc (ps - secname + sizeof "__start_" + 1); symname[0] = bfd_get_symbol_leading_char (link_info.output_bfd); sprintf (symname + (symname[0] != 0), "__start_%s", secname); - e_align = exp_unop (ALIGN_K, - exp_intop ((bfd_vma) 1 << s->alignment_power)); - lang_add_assignment (exp_assign (".", e_align)); lang_add_assignment (exp_provide (symname, - exp_unop (ABSOLUTE, - exp_nameop (NAME, ".")), + exp_nameop (NAME, "."), FALSE)); } } diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 4f463b5..57996a7 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2012-06-21 Alan Modra <amodra@gmail.com> + + * ld-gc/start.d: Update. + 2012-06-18 Hans-Peter Nilsson <hp@axis.com> * ld-cris/dso-pltdis1.d, ld-cris/dso-pltdis2.d, dsofng.s diff --git a/ld/testsuite/ld-gc/start.d b/ld/testsuite/ld-gc/start.d index a655bea..d7e47b2 100644 --- a/ld/testsuite/ld-gc/start.d +++ b/ld/testsuite/ld-gc/start.d @@ -5,5 +5,5 @@ #notarget: *-*-*aout *-*-*oldld frv-*-linux* #... -[0-9a-f]+ A +__start__foo +[0-9a-f]+ D +__start__foo #... |