gold linker v2.22: Return to constructors in DT_INIT_ARRAY
authorJohn Marino <draco@marino.st>
Sat, 11 Feb 2012 21:17:12 +0000 (22:17 +0100)
committerJohn Marino <draco@marino.st>
Sat, 11 Feb 2012 22:26:21 +0000 (23:26 +0100)
This commit effectively reverses 17078250df568635285cd6be4515d29ee8c1b72a.
At the time, DragonFly did not recognize .init_array sections in an elf
file, and the gold linker was lumping the contructors from gcc into this
array which was subsequently filtered out.

DT_INIT_ARRAY and friends are now fully supported since commit
b28bf640312db2b299faff75052fbb01d67fd821 so the local modification is
being removed in favor of a default build.

contrib/binutils-2.22/README.DRAGONFLY
contrib/binutils-2.22/gold/options.h

index fc5cf71..d077726 100644 (file)
@@ -14,6 +14,5 @@ Local modifications applied to following files:
        bfd/bfdver.h (new)
        gold/i386.cc
        gold/options.cc
-       gold/options.h
        gold/x86_64.cc
        ld/ldlex.l
index 0cdb274..768df9c 100644 (file)
@@ -680,9 +680,9 @@ class General_options
              N_("Output cross reference table"),
              N_("Do not output cross reference table"));
 
-  DEFINE_bool(ctors_in_init_array, options::TWO_DASHES, '\0', false,
-             N_("Use DT_INIT_ARRAY for all constructors"),
-             N_("Handle constructors as directed by compiler (default)"));
+  DEFINE_bool(ctors_in_init_array, options::TWO_DASHES, '\0', true,
+             N_("Use DT_INIT_ARRAY for all constructors (default)"),
+             N_("Handle constructors as directed by compiler"));
 
   DEFINE_bool(define_common, options::TWO_DASHES, 'd', false,
               N_("Define common symbols"),