aboutsummaryrefslogtreecommitdiff
path: root/gas/config/obj-elf.c
diff options
context:
space:
mode:
authorDave Anglin <dave.anglin@nrc.ca>2003-01-01 16:56:34 +0000
committerDave Anglin <dave.anglin@nrc.ca>2003-01-01 16:56:34 +0000
commitdb66b2925e95f52c845761a70db8b588fe5358f3 (patch)
tree1ea7bc12b8bc9cf5276ed561a77a98a647343d64 /gas/config/obj-elf.c
parent3cf6d008cdebe9ffdb9bee9bd3e95b7a61bab13f (diff)
downloadfsf-binutils-gdb-db66b2925e95f52c845761a70db8b588fe5358f3.zip
fsf-binutils-gdb-db66b2925e95f52c845761a70db8b588fe5358f3.tar.gz
fsf-binutils-gdb-db66b2925e95f52c845761a70db8b588fe5358f3.tar.bz2
* config/obj-elf.c (special_sections): Work around HP's incorrect usage
of .init and .fini sections for array initializers and finalizers.
Diffstat (limited to 'gas/config/obj-elf.c')
-rw-r--r--gas/config/obj-elf.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c
index 6046a29..5dc4279 100644
--- a/gas/config/obj-elf.c
+++ b/gas/config/obj-elf.c
@@ -609,8 +609,13 @@ static struct special_section const special_sections[] =
{ ".data", SHT_PROGBITS, SHF_ALLOC + SHF_WRITE },
{ ".data1", SHT_PROGBITS, SHF_ALLOC + SHF_WRITE },
{ ".debug", SHT_PROGBITS, 0 },
+#if defined (TC_HPPA) && !defined (TE_LINUX) && TARGET_ARCH_SIZE == 64
+ { ".fini", SHT_PROGBITS, SHF_ALLOC + SHF_WRITE },
+ { ".init", SHT_PROGBITS, SHF_ALLOC + SHF_WRITE },
+#else
{ ".fini", SHT_PROGBITS, SHF_ALLOC + SHF_EXECINSTR },
{ ".init", SHT_PROGBITS, SHF_ALLOC + SHF_EXECINSTR },
+#endif
{ ".line", SHT_PROGBITS, 0 },
{ ".note", SHT_NOTE, 0 },
{ ".rodata", SHT_PROGBITS, SHF_ALLOC },