delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2014/07/16/03:02:55

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:date:from:to:subject:message-id:reply-to
:references:mime-version:content-type:in-reply-to; q=dns; s=
default; b=M8ixVhrwRmw5ccbpQ95dXrfFGc7R+zy+LbtiPA97IBzqwrwnnk3OC
R1Nv1haf6LlY4S12Ue2eBAHhv69dCOLZXa9M0kDzwEq1es9bEOoqGDKiaHeppCF6
zW2WgO/7qAeQ3D7ad/215FieB5CT+RIuVonQl8OdF3NR8Vs6aNbXTg=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:date:from:to:subject:message-id:reply-to
:references:mime-version:content-type:in-reply-to; s=default;
bh=R4v+cuSDo8f2zZLpH17zDs/+umg=; b=oFdFYG5VreadVEynxJgZPAXS6nxt
ILfUOLGqbqhkvZ5Qhmp5SGDq2ZGQxaGregmyvoxtxWTyFCMMjBdP+S8m6M0S4sq8
We2TMW7D3Cgi6W4u2HkTY191fuoG+HGCNyg8CB4ogx6WdpPaazwjQYetm1GUcHx2
krI252U9BA4ULLQ=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-5.9 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2
X-HELO: calimero.vinschen.de
Date: Wed, 16 Jul 2014 09:02:31 +0200
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: Core dump on 32-bit Cygwin if program calls dlopen
Message-ID: <20140716070231.GA25020@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <53C46ACD DOT 5060601 AT cornell DOT edu> <20140715090259 DOT GB20640 AT calimero DOT vinschen DOT de> <53C51460 DOT 5080805 AT cornell DOT edu> <20140715130829 DOT GK10401 AT calimero DOT vinschen DOT de> <53C532D9 DOT 7050506 AT gmail DOT com> <20140715143915 DOT GA8330 AT calimero DOT vinschen DOT de>
MIME-Version: 1.0
In-Reply-To: <20140715143915.GA8330@calimero.vinschen.de>
User-Agent: Mutt/1.5.23 (2014-03-12)

--a8Wt8u1KmwUX3Y2C
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hi JonY,

On Jul 15 16:39, Corinna Vinschen wrote:
> On Jul 15 21:55, JonY wrote:
> > On 7/15/2014 21:08, Corinna Vinschen wrote:
> > >>
> > >> FWIW, the problem disappears if I revert gcc-core and libgcc1 to 4.8=
.2-2.
> > >=20
> > > JonY, do you have a chance to have a look into this issue?
> > >=20
> >=20
> > Sorry, I have been busy these few weeks, but I am well aware that there
> > is a problem with one of the libgcc changes, but has yet to investigate=
 it.
> >=20
> > I believe Jon Turney has looked into it somewhat.
>=20
> Sounds good.  Thanks in advance.

Yesterday I asked my collegues to take a stab at the issue and one of
them, DJ Delorie, came up with a libgcc patch already.  It hasn't been
sent upstream yet.  Can we give it a try, perhaps by creating a new
libgcc DLL, please?

Thanks,
Corinna


Index: libgcc/config/i386/cygming-crtbegin.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- libgcc/config/i386/cygming-crtbegin.c	(revision 212546)
+++ libgcc/config/i386/cygming-crtbegin.c	(working copy)
@@ -99,12 +99,13 @@ static EH_FRAME_SECTION_CONST char __EH_
   =3D { };
=20
 static struct object obj;
=20
 /* Handle of libgcc's DLL reference.  */
 HANDLE hmod_libgcc;
+static void *  (*deregister_frame_fn) (const void *) =3D NULL;
 #endif
=20
 #if TARGET_USE_JCR_SECTION
 static void *__JCR_LIST__[]
   __attribute__ ((used, section(JCR_SECTION_NAME), aligned(4)))
   =3D { };
@@ -130,15 +131,20 @@ __gcc_register_frame (void)
   if (h)
     {
       /* Increasing the load-count of LIBGCC_SONAME DLL.  */
       hmod_libgcc =3D LoadLibrary (LIBGCC_SONAME);
       register_frame_fn =3D (void (*) (const void *, struct object *))
 			  GetProcAddress (h, "__register_frame_info");
+      deregister_frame_fn =3D (void* (*) (const void *))
+	                    GetProcAddress (h, "__deregister_frame_info");
+    }
+  else
+    {
+      register_frame_fn =3D __register_frame_info;
+      deregister_frame_fn =3D __deregister_frame_info;
     }
-  else=20
-    register_frame_fn =3D __register_frame_info;
   if (register_frame_fn)
      register_frame_fn (__EH_FRAME_BEGIN__, &obj);
 #endif
=20
 #if TARGET_USE_JCR_SECTION=20
   if (__JCR_LIST__[0])
@@ -158,19 +164,12 @@ __gcc_register_frame (void)
 }
=20
 void
 __gcc_deregister_frame (void)
 {
 #if DWARF2_UNWIND_INFO
-  void *  (*deregister_frame_fn) (const void *);
-  HANDLE h =3D GetModuleHandle (LIBGCC_SONAME);
-  if (h)
-    deregister_frame_fn =3D (void* (*) (const void *))
-			  GetProcAddress (h, "__deregister_frame_info");
-  else=20
-    deregister_frame_fn =3D __deregister_frame_info;
   if (deregister_frame_fn)
      deregister_frame_fn (__EH_FRAME_BEGIN__);
   if (hmod_libgcc)
     FreeLibrary (hmod_libgcc);
 #endif
 }

--=20
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

--a8Wt8u1KmwUX3Y2C
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJTxiOHAAoJEPU2Bp2uRE+gHlkP/3lw+LrMlDgEGEIaEYnDjuEh
TlXfhIGQeR+V7hFT9GR70VfhH9MrtoSg3vjc52+z0CgYw53SjTge4d6ymYoraVQP
6boKmZ31zSUVJNsaK7un8jyaS5ZeWFFOBc1dKNBY+idzfwWsLSVcHvq6QurWAFbb
JB4V2NfbvSg/wMnKxeryaBELjubtt+EBgK2zq3Nf7+MozzwaSdCZQSFmPUbghfWS
zMnw02oq6myOa3NCDRBXtluLYDfYOJmdV73+0zRcjubYaSsZqs2AvhP7FxzFdTou
/i4ESsrpMDFedtRM5TYuUniNNrg7DSGoxLw/tFC8HZuIYr4C8nlaQ90MXZoAV8HQ
Bh3h8maw4k6oDyKenCZXqv39KL8myA+ibO2ClNIdkmM93rUxHm1dzdtEV309dw6d
fyzYRpJNmRj77qOebRlxrsefB2f7bZkpQbWlVhIcgvYRGqXSybknI8DXPBwTNssM
hhbJCOl6Wk4BS8vn/cSBB9SacHMJcqlk/yE+MLzeNS75WfF47o02lh7xavwLZQna
nDuw+/08t0MFUDumeAEYgAuf1x848xaFjgL6eVveWaXZDBySdYG4yqDrMWcSLN62
+TzUCCKQrsAAnPB0q6IxkhoSvbGK2SYSp6RuqZgfy/7hmtKS20qoTiqyw7hXj7vq
AaES/dRW62fku+siKjW9
=NdrK
-----END PGP SIGNATURE-----

--a8Wt8u1KmwUX3Y2C--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019