This is the mail archive of the
cygwin-apps
mailing list for the Cygwin project.
Re: 64bit: cygstdc++-6.dll
- From: "Yaakov (Cygwin/X)" <yselkowitz at users dot sourceforge dot net>
- To: cygwin-apps at cygwin dot com
- Date: Mon, 15 Apr 2013 05:14:12 -0500
- Subject: Re: 64bit: cygstdc++-6.dll
- References: <20130411133759 dot GC18333 at calimero dot vinschen dot de> <20130412155750 dot GG11358 at calimero dot vinschen dot de> <51686F09 dot 4050009 at gmail dot com> <20130413100751 dot GI11358 at calimero dot vinschen dot de> <5169BB2E dot 80807 at gmail dot com> <20130414082512 dot GL11358 at calimero dot vinschen dot de> <CAEwic4aGerGAdmN2xupYFNuvLVfab2MofJg=m5gp-JsFgh0NGg at mail dot gmail dot com> <20130414101859 dot GM11358 at calimero dot vinschen dot de> <CAEwic4b3OKXpb+yQzomLFAp55QhGEfSb+ibhs7eoEN3kqKHTtw at mail dot gmail dot com> <20130414112830 dot GN11358 at calimero dot vinschen dot de> <20130415094836 dot GA9503 at calimero dot vinschen dot de>
On 2013-04-15 04:48, Corinna Vinschen wrote:
On 32 bit, the .xa script is used, but has no influence, apparently.
On 64 bit, the .x script is used, even with --enable-auto-import.
The reason being, on x86_64, .xa is used only if pseudo-reloc v1 is
specified (the default is v2), where on ix86 it is used for all
non-mingw* targets OR on mingw* with v1.
To me this means, we should not use the .xa file on 32 bit either.
It moves all .rdata data to the .data section for no good reason,
thus adding unnecessary pressure to the pagefile.
Patch attached.
Yaakov
Use the .x ldscript for pseudo-reloc v2; .xa is only for v1.
--- binutils-2.23.51-1/origsrc/binutils-/ld/emultempl/pe.em 2013-01-10 14:08:03.000000000 -0600
+++ binutils-2.23.51-1/src/binutils-/ld/emultempl/pe.em 2013-04-15 04:58:44.458607800 -0500
@@ -174,7 +174,7 @@ EOF
case ${target} in
*-*-cygwin*)
default_auto_import=1
- default_merge_rdata=1
+ default_merge_rdata=0
;;
i[3-7]86-*-mingw* | x86_64-*-mingw*)
default_auto_import=1