aboutsummaryrefslogtreecommitdiff
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
parent3cf6d008cdebe9ffdb9bee9bd3e95b7a61bab13f (diff)
downloadgdb-db66b2925e95f52c845761a70db8b588fe5358f3.zip
gdb-db66b2925e95f52c845761a70db8b588fe5358f3.tar.gz
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.
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/obj-elf.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 833e3e0..346696b 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2003-01-01 John David Anglin <dave.anglin@nrc.ca>
+
+ * config/obj-elf.c (special_sections): Work around HP's incorrect usage
+ of .init and .fini sections for array initializers and finalizers.
+
2002-12-31 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (validate_mips_insn, mips_ip): Recognize
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 },