don't call null pointer if DT_INIT/DT_FINI are null
authorRich Felker <dalias@aerifal.cx>
Wed, 31 Jul 2013 04:04:10 +0000 (00:04 -0400)
committerRich Felker <dalias@aerifal.cx>
Wed, 31 Jul 2013 04:04:10 +0000 (00:04 -0400)
commitd0c6cb05e71e624338571cda28f5c17d3ab0004c
treeeb03e76982a300df4b85541c5cc1670a1c7a9a93
parent9a8d7bee80063118439fd6b368b9bb43d930ea19
don't call null pointer if DT_INIT/DT_FINI are null

it's not clear to me why the linker even outputs these headers if they
are null, but apparently it does so. with the default startfiles, they
will never be null anyway, but this patch allows eliminating crti,
crtn, crtbegin, and crtend (leaving only crt1) if the toolchain is
using init_array/fini_array (or for a C-only, no-ctor environment).
src/ldso/dynlink.c