2002-03-04 H.J. Lu <hjl@gnu.org>
* config/obj-elf.c (special_section): Add .init_array, .fini_array and .preinit_array. * config/tc-ia64.h (ELF_TC_SPECIAL_SECTIONS): Remove .init_array and .fini_array.
This commit is contained in:
parent
b5090659de
commit
e9682144c1
3 changed files with 29 additions and 2 deletions
|
@ -1,3 +1,11 @@
|
||||||
|
2002-03-04 H.J. Lu <hjl@gnu.org>
|
||||||
|
|
||||||
|
* config/obj-elf.c (special_section): Add .init_array,
|
||||||
|
.fini_array and .preinit_array.
|
||||||
|
|
||||||
|
* config/tc-ia64.h (ELF_TC_SPECIAL_SECTIONS): Remove
|
||||||
|
.init_array and .fini_array.
|
||||||
|
|
||||||
2002-03-01 Jakub Jelinek <jakub@redhat.com>
|
2002-03-01 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
* config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
|
* config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
|
||||||
|
|
|
@ -595,6 +595,27 @@ static struct special_section const special_sections[] =
|
||||||
{ ".rodata", SHT_PROGBITS, SHF_ALLOC },
|
{ ".rodata", SHT_PROGBITS, SHF_ALLOC },
|
||||||
{ ".rodata1", SHT_PROGBITS, SHF_ALLOC },
|
{ ".rodata1", SHT_PROGBITS, SHF_ALLOC },
|
||||||
{ ".text", SHT_PROGBITS, SHF_ALLOC + SHF_EXECINSTR },
|
{ ".text", SHT_PROGBITS, SHF_ALLOC + SHF_EXECINSTR },
|
||||||
|
#if 0
|
||||||
|
/* FIXME: The current gcc, as of 2002-03-03, will emit
|
||||||
|
|
||||||
|
.section .init_array,"aw",@progbits
|
||||||
|
|
||||||
|
for __attribute__ ((section (".init_array"))). "@progbits" marks
|
||||||
|
the incorrect section type. For now, we make them with
|
||||||
|
SHT_PROGBITS. BFD will fix the section type. Gcc should be changed
|
||||||
|
to emit
|
||||||
|
|
||||||
|
.section .init_array
|
||||||
|
|
||||||
|
*/
|
||||||
|
{ ".init_array",SHT_INIT_ARRAY, SHF_ALLOC + SHF_WRITE },
|
||||||
|
{ ".fini_array",SHT_FINI_ARRAY, SHF_ALLOC + SHF_WRITE },
|
||||||
|
{ ".preinit_array",SHT_PREINIT_ARRAY, SHF_ALLOC + SHF_WRITE },
|
||||||
|
#else
|
||||||
|
{ ".init_array",SHT_PROGBITS, SHF_ALLOC + SHF_WRITE },
|
||||||
|
{ ".fini_array",SHT_PROGBITS, SHF_ALLOC + SHF_WRITE },
|
||||||
|
{ ".preinit_array",SHT_PROGBITS, SHF_ALLOC + SHF_WRITE },
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef ELF_TC_SPECIAL_SECTIONS
|
#ifdef ELF_TC_SPECIAL_SECTIONS
|
||||||
ELF_TC_SPECIAL_SECTIONS
|
ELF_TC_SPECIAL_SECTIONS
|
||||||
|
|
|
@ -124,8 +124,6 @@ extern void ia64_after_parse_args PARAMS ((void));
|
||||||
#define WORKING_DOT_WORD /* don't do broken word processing for now */
|
#define WORKING_DOT_WORD /* don't do broken word processing for now */
|
||||||
|
|
||||||
#define ELF_TC_SPECIAL_SECTIONS \
|
#define ELF_TC_SPECIAL_SECTIONS \
|
||||||
{ ".init_array",SHT_INIT_ARRAY, SHF_ALLOC + SHF_WRITE }, \
|
|
||||||
{ ".fini_array",SHT_FINI_ARRAY, SHF_ALLOC + SHF_WRITE }, \
|
|
||||||
{ ".sbss", SHT_NOBITS, SHF_ALLOC + SHF_WRITE + SHF_IA_64_SHORT }, \
|
{ ".sbss", SHT_NOBITS, SHF_ALLOC + SHF_WRITE + SHF_IA_64_SHORT }, \
|
||||||
{ ".sdata", SHT_PROGBITS, SHF_ALLOC + SHF_WRITE + SHF_IA_64_SHORT },
|
{ ".sdata", SHT_PROGBITS, SHF_ALLOC + SHF_WRITE + SHF_IA_64_SHORT },
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue