summaryrefslogtreecommitdiff
path: root/ld/emultempl/beos.em
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2008-10-04 06:08:59 +0000
committerAlan Modra <amodra@bigpond.net.au>2008-10-04 06:08:59 +0000
commit30c4559475af0fd2dbacf345f75261d567a9a665 (patch)
tree0263a5d31d73bfa6881dd6e33c8533dc27442459 /ld/emultempl/beos.em
parente0973adb53ed73897df96d889e9f6aa0e9af9560 (diff)
downloadbinutils-redhat-30c4559475af0fd2dbacf345f75261d567a9a665.tar.gz
* ldemul.c (ldemul_place_orphan): Add "constraint" param.
* ldemul.h (ldemul_place_orphan): Update prototype. (struct ld_emulation_xfer_struct <place_orphan>): Likewise add param. * ldlang.c (unique_section_p): Make static. (lang_output_section_statement_lookup): Optimise creation of SPECIAL sections. (lang_insert_orphan): Add "constraint" param. Pass to lang_enter_output_section_statement. (init_os): Don't use an existing bfd section for SPECIAL sections. (lang_place_orphans): Don't rename unique output sections, instead mark their output section statements SPECIAL. * ldlang.h (lang_insert_orphan): Update prototype. (unique_section_p): Delete. * emultempl/beos.em (place_orphan): Add "constraint" param. * emultempl/elf32.em (place_orphan): Likewise. Don't match existing output sections if set. * emultempl/pe.em (place_orphan): Likewise. * emultempl/pep.em (place_orphan): Likewise. * emultempl/mmo.em (mmo_place_orphan): Update. * emultempl/spuelf.em (spu_place_special_section): Update.
Diffstat (limited to 'ld/emultempl/beos.em')
-rw-r--r--ld/emultempl/beos.em6
1 files changed, 4 insertions, 2 deletions
diff --git a/ld/emultempl/beos.em b/ld/emultempl/beos.em
index 997f3a63ce..2777be86ac 100644
--- a/ld/emultempl/beos.em
+++ b/ld/emultempl/beos.em
@@ -665,7 +665,9 @@ gld_${EMULATION_NAME}_before_allocation (void)
which are not mentioned in the linker script. */
static bfd_boolean
-gld${EMULATION_NAME}_place_orphan (asection *s, const char *secname)
+gld${EMULATION_NAME}_place_orphan (asection *s,
+ const char *secname,
+ int constraint)
{
char *output_secname, *ps;
lang_output_section_statement_type *os;
@@ -694,7 +696,7 @@ gld${EMULATION_NAME}_place_orphan (asection *s, const char *secname)
output_secname = xstrdup (secname);
ps = strchr (output_secname + 1, '\$');
*ps = 0;
- os = lang_output_section_statement_lookup (output_secname, 0, TRUE);
+ os = lang_output_section_statement_lookup (output_secname, constraint, TRUE);
/* Find the '\$' wild statement for this section. We currently require the
linker script to explicitly mention "*(.foo\$)".