Set constructor/destructor priority to 1000
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 16 Nov 2012 15:40:38 +0000 (07:40 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 16 Nov 2012 15:40:38 +0000 (07:40 -0800)
ChangeLog
elf/tst-array1.c
elf/tst-array2dep.c

index fb21238..8b980c1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-11-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf/tst-array1.c (init): Set constructor priority to 1000.
+       (fini): Set destructor priority to 1000.
+       * elf/tst-array2dep.c: Likewise.
+
 2012-11-16  Siddhesh Poyarekar  <siddhesh@redhat.com>
 
        [BZ #11741]
index ca9bdf4..e998932 100644 (file)
@@ -1,6 +1,7 @@
 #include <unistd.h>
 
-static void init (void) __attribute__ ((constructor));
+/* Give init non-default priority so that it runs before init_array.  */
+static void init (void) __attribute__ ((constructor (1000)));
 
 static void
 init (void)
@@ -8,7 +9,8 @@ init (void)
   write (STDOUT_FILENO, "init\n", 5);
 }
 
-static void fini (void) __attribute__ ((destructor));
+/* Give fini the same priority as init.  */
+static void fini (void) __attribute__ ((destructor (1000)));
 
 static void
 fini (void)
index 2812761..2f920cd 100644 (file)
@@ -1,6 +1,7 @@
 #include <unistd.h>
 
-static void init (void) __attribute__ ((constructor));
+/* Give init non-default priority so that it runs before init_array.  */
+static void init (void) __attribute__ ((constructor (1000)));
 
 static void
 init (void)
@@ -8,7 +9,8 @@ init (void)
   write (STDOUT_FILENO, "DSO init\n", 9);
 }
 
-static void fini (void) __attribute__ ((destructor));
+/* Give fini the same priority as init.  */
+static void fini (void) __attribute__ ((destructor (1000)));
 
 static void
 fini (void)