parent
ee8c53bbe2
commit
fcacad263a
|
|
@ -329,7 +329,7 @@ template <class ELFT> void Writer<ELFT>::createSections() {
|
||||||
DynamicSec.FiniArraySec =
|
DynamicSec.FiniArraySec =
|
||||||
Map.lookup({".fini_array", SHT_FINI_ARRAY, SHF_WRITE | SHF_ALLOC});
|
Map.lookup({".fini_array", SHT_FINI_ARRAY, SHF_WRITE | SHF_ALLOC});
|
||||||
|
|
||||||
auto addStartEnd = [&Symtab](StringRef Start, StringRef End,
|
auto AddStartEnd = [&Symtab](StringRef Start, StringRef End,
|
||||||
OutputSection<ELFT> *OS) {
|
OutputSection<ELFT> *OS) {
|
||||||
if (OS) {
|
if (OS) {
|
||||||
Symtab.addSyntheticSym<ELFT>(Start, *OS, 0);
|
Symtab.addSyntheticSym<ELFT>(Start, *OS, 0);
|
||||||
|
|
@ -340,11 +340,11 @@ template <class ELFT> void Writer<ELFT>::createSections() {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
addStartEnd("__preinit_array_start", "__preinit_array_end",
|
AddStartEnd("__preinit_array_start", "__preinit_array_end",
|
||||||
DynamicSec.PreInitArraySec);
|
DynamicSec.PreInitArraySec);
|
||||||
addStartEnd("__init_array_start", "__init_array_end",
|
AddStartEnd("__init_array_start", "__init_array_end",
|
||||||
DynamicSec.InitArraySec);
|
DynamicSec.InitArraySec);
|
||||||
addStartEnd("__fini_array_start", "__fini_array_end",
|
AddStartEnd("__fini_array_start", "__fini_array_end",
|
||||||
DynamicSec.FiniArraySec);
|
DynamicSec.FiniArraySec);
|
||||||
|
|
||||||
// FIXME: Try to avoid the extra walk over all global symbols.
|
// FIXME: Try to avoid the extra walk over all global symbols.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue