aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/sparc/sol2-gld.h3
-rw-r--r--gcc/config/sparc/sol2.h4
3 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c69d1c8..4a135d2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2003-12-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2.h: Set SUPPORTS_INIT_PRIORITY to 0.
+ * config/sparc/sol2-gld.h: Set SUPPORTS_INIT_PRIORITY to 1.
+
2003-12-17 Richard Earnshaw <rearnsha@arm.com>
* arm.c (thumb_base_register_rtx_p): Don't allow virtual registers
diff --git a/gcc/config/sparc/sol2-gld.h b/gcc/config/sparc/sol2-gld.h
index aed94e5..eb422cb 100644
--- a/gcc/config/sparc/sol2-gld.h
+++ b/gcc/config/sparc/sol2-gld.h
@@ -4,3 +4,6 @@
/* Undefine this so that attribute((init_priority)) works. */
#undef CTORS_SECTION_ASM_OP
#undef DTORS_SECTION_ASM_OP
+
+#undef SUPPORTS_INIT_PRIORITY
+#define SUPPORTS_INIT_PRIORITY 1
diff --git a/gcc/config/sparc/sol2.h b/gcc/config/sparc/sol2.h
index 47204f4..53c364d 100644
--- a/gcc/config/sparc/sol2.h
+++ b/gcc/config/sparc/sol2.h
@@ -98,6 +98,10 @@ Boston, MA 02111-1307, USA. */
#define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL) \
((flag_pic || GLOBAL) ? DW_EH_PE_aligned : DW_EH_PE_absptr)
#endif
+
+/* The Solaris linker doesn't understand constructor priorities. */
+#undef SUPPORTS_INIT_PRIORITY
+#define SUPPORTS_INIT_PRIORITY 0
/* ??? This does not work in SunOS 4.x, so it is not enabled in sparc.h.
Instead, it is enabled here, because it does work under Solaris. */