summaryrefslogtreecommitdiff
path: root/gcc/config/i386/sol2.h
diff options
context:
space:
mode:
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2011-07-11 16:35:53 +0000
committerRainer Orth <ro@gcc.gnu.org>2011-07-11 16:35:53 +0000
commitfeffaec40fa025d6f55e4a12081772711706de87 (patch)
treed6f5b82d4d5d67c83f6a8af9c61143f5249255f8 /gcc/config/i386/sol2.h
parent699010bab1c44cef9aaa8d40f1efd2f4607a356b (diff)
downloadgcc-feffaec40fa025d6f55e4a12081772711706de87.tar.gz
sol2.h [!USE_GLD] (CTORS_SECTION_ASM_OP): Define.
* config/i386/sol2.h [!USE_GLD] (CTORS_SECTION_ASM_OP): Define. (DTORS_SECTION_ASM_OP): Define. From-SVN: r176162
Diffstat (limited to 'gcc/config/i386/sol2.h')
-rw-r--r--gcc/config/i386/sol2.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/config/i386/sol2.h b/gcc/config/i386/sol2.h
index 5b4e3d78f58..f620de5fa44 100644
--- a/gcc/config/i386/sol2.h
+++ b/gcc/config/i386/sol2.h
@@ -152,6 +152,13 @@ along with GCC; see the file COPYING3. If not see
#undef TARGET_ASM_NAMED_SECTION
#define TARGET_ASM_NAMED_SECTION i386_solaris_elf_named_section
+/* Unlike GNU ld, Sun ld doesn't coalesce .ctors.N/.dtors.N sections, so
+ inhibit their creation. Also cf. sparc/sysv4.h. */
+#ifndef USE_GLD
+#define CTORS_SECTION_ASM_OP "\t.section\t.ctors, \"aw\""
+#define DTORS_SECTION_ASM_OP "\t.section\t.dtors, \"aw\""
+#endif
+
/* We do not need NT_VERSION notes. */
#undef X86_FILE_START_VERSION_DIRECTIVE
#define X86_FILE_START_VERSION_DIRECTIVE false