libgcc2.c (__CTOR_LIST__, [...]): Initialize on all platforms.
authorJim Blandy <jimb@zwingli.cygnus.com>
Wed, 24 Mar 1999 00:51:16 +0000 (00:51 +0000)
committerJeff Law <law@gcc.gnu.org>
Wed, 24 Mar 1999 00:51:16 +0000 (17:51 -0700)
        * libgcc2.c (__CTOR_LIST__, __DTOR_LIST__): Initialize on all
        platforms.

From-SVN: r25939

gcc/ChangeLog
gcc/libgcc2.c

index d05eba8ec2f35b8683adfab61e1630eacd92e63f..65325b982d7aec3a8c83fd861c08bd4b0e6cefd1 100644 (file)
@@ -1,3 +1,8 @@
+1999-03-24  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * libgcc2.c (__CTOR_LIST__, __DTOR_LIST__): Initialize on all
+       platforms.
+
 Wed Mar 24 01:35:01 1999  Geoff Keating  <geoffk@ozemail.com.au>
 
        * fold-const.c (fold): Recognise a rotate by an unsigned amount.
index a59fd2fffab88455290940599d6dcb2d616f1e23..53dfdbf4f386b3d5cbc6f035c6da0f7c657d7fcb 100644 (file)
@@ -2903,21 +2903,17 @@ SYMBOL__MAIN ()
 #include "gbl-ctors.h"
 
 /* Provide default definitions for the lists of constructors and
-   destructors, so that we don't get linker errors.  These symbols are
-   intentionally bss symbols, so that gld and/or collect will provide
-   the right values.  */
+   destructors, so that we don't get linker errors.  
+
+   The old code sometimes put these into the data segment and sometimes
+   into the bss segment.  Putting these into the data segment should always
+   work and avoids a little bit of complexity.  */
 
 /* We declare the lists here with two elements each,
    so that they are valid empty lists if no other definition is loaded.  */
 #if !defined(INIT_SECTION_ASM_OP) && !defined(CTOR_LISTS_DEFINED_EXTERNALLY)
-#if defined(__NeXT__) || defined(_AIX)
-/* After 2.3, try this definition on all systems.  */
 func_ptr __CTOR_LIST__[2] = {0, 0};
 func_ptr __DTOR_LIST__[2] = {0, 0};
-#else
-func_ptr __CTOR_LIST__[2];
-func_ptr __DTOR_LIST__[2];
-#endif
 #endif /* no INIT_SECTION_ASM_OP and not CTOR_LISTS_DEFINED_EXTERNALLY */
 #endif /* L_ctors */
 \f