From 30dfd0308a8551174634494822e194fcf24a7ddb Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 15 Dec 2010 14:56:35 +0000 Subject: Add SORT_BY_INIT_PRIORITY. bfd/ 2010-12-15 H.J. Lu * elf.c (_bfd_elf_new_section_hook): Special handling for .init_array/.fini_array output sections. ld/ 2010-12-15 H.J. Lu * Makefile.am (GENSCRIPTS): Add @enable_initfini_array@. * NEWS: Mention SORT_BY_INIT_PRIORITY. * configure.in: Add AC_CANONICAL_BUILD. Add --enable-initfini-array. * genscripts.sh (ENABLE_INITFINI_ARRAY): New. * ld.h (sort_type): Add by_init_priority. * ld.texinfo: Document SORT_BY_INIT_PRIORITY. * ldgram.y (SORT_BY_INIT_PRIORITY): New. (wildcard_spec): Handle SORT_BY_INIT_PRIORITY. * ldlang.c (get_init_priority): New. (compare_section): Use get_init_priority for by_init_priority. * ldlex.l (SORT_BY_INIT_PRIORITY): New. * scripttempl/elf.sc: Support ENABLE_INITFINI_ARRAY. * Makefile.in: Regenerated. * aclocal.m4: Regenerated. * config.in: Likewise. * configure: Likewise. ld/testsuite/ 2010-12-15 H.J. Lu * ld-elf/elf.exp (array_tests): Add init-mixed. (array_tests_static): Likewise. Also delete tmpdir/init-mixed. * ld-elf/init-mixed.c: New. * ld-elf/init-mixed.out: Likewise. --- ld/ld.texinfo | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'ld/ld.texinfo') diff --git a/ld/ld.texinfo b/ld/ld.texinfo index 4c58e4855c..6d36dfb63d 100644 --- a/ld/ld.texinfo +++ b/ld/ld.texinfo @@ -3911,6 +3911,12 @@ into ascending order by name before placing them in the output file. difference is @code{SORT_BY_ALIGNMENT} will sort sections into ascending order by alignment before placing them in the output file. +@cindex SORT_BY_INIT_PRIORITY +@code{SORT_BY_INIT_PRIORITY} is very similar to @code{SORT_BY_NAME}. The +difference is @code{SORT_BY_INIT_PRIORITY} will sort sections into +ascending order by numerical value of the GCC init_priority attribute +encoded in the section name before placing them in the output file. + @cindex SORT @code{SORT} is an alias for @code{SORT_BY_NAME}. -- cgit v1.2.1