summaryrefslogtreecommitdiff
path: root/gas
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
commitd3466b5867ad853a8915e5b7a443728a3680e9a0 (patch)
treea14e5e9638f0eeea3610595fe0a896e41a0e0fc7 /gas
parent82c5f0afa1564c67711aa2d9195a8b9acd7dc1f2 (diff)
downloadbinutils-redhat-d3466b5867ad853a8915e5b7a443728a3680e9a0.tar.gz
* 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')
-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 833e3e062a..346696b29c 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 6046a294be..5dc4279b2d 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 },