Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Mar 2001 20:12:18 -0500 (EST)
From:      "Alexander N. Kabaev" <kabaev@mail.ru>
To:        Titus von Boxberg <titus@pleach.de>
Cc:        hackers@FreeBSD.ORG, obrien@FreeBSD.ORG
Subject:   Re: GCC Upgrade?
Message-ID:  <XFMail.20010319201218.kabaev@mail.ru>
In-Reply-To: <3AB697F1.4BF23D6E@pleach-hamburg.de>

next in thread | previous in thread | raw e-mail | index | archive | help

On 19-Mar-2001 Titus von Boxberg wrote:
> David O'Brien wrote:
>> 
>> On Mon, Mar 19, 2001 at 02:54:52PM +0100, Titus von Boxberg wrote:
>> > Since at least aug. 2000 (according to the mailing list
>> > archives) the exception handling in base system g++ is broken
>> > (at least for multithreaded programs)

The problem you are talking about has nothing to do with threads. Rather, the
problem was with the way in which GCC handles inline function expansions.

> 
> Sorry, I don't have yet isolated the problem.
> But this link seems to describe exactly the same problem.
> "http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=298763+300854+
> /usr/local/www/db/text/2000/freebsd-hackers/20000716.freebsd-hackers"

I thought GCC 2.95.3 has this problem fixed, but it turns out I was wrong. I've
had patches to fix this particular breakage for ages now and I even offered
them to David O'Brien on more than one occasion. The fix has been posted on the
gcc-devel mailing list and Berndt Schmidt even included it into some of GCC
2.95.3-testXX release. And that time I decided that my job is done, but
apparently Berndt managed to revert (most likely, by mistake) before release.
I think my relative unrelated changes have been killed as part of the bigger
sjlj exceptions rewrite by Mike Henderson :(

> you can search for "DWARF AND exception"; then you'll find the links.
> 
> I'm using omniORB, and on their home page you can find a 
> hint in the docs describing the same thing (but with g++ on a AIX/RS6000).
>
Yet another problem I have patches for. GCC does not handle PIC register
correctly when handling exceptions thrown across shared library boundaries.
Additionally, the shared libraries in AIX make the challenge of sharing
exception context state among all shared libraries in the executable very
interesting. I was unable to get these fixes into official CVS source - FSF
guys apparently decided that the problem cannot be fixed. They even seriously
tried to convince me that my patch could not work except by coincidence
without even taking a sigle look at the patch itself - even though that
'coincidence' reliably works for me in multithreaded CORBA server written using
omniORB :) I basically gave up on them. Drop me a line if you need help getting
GCC 2.95.3 work properly on AIX 4.x.

> Before end of april I cannot investigate the problem any further.
> please let me know by then if I may help you with that problem.
> 
> regards
> titus
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message

----------------------------------
E-Mail: Alexander N. Kabaev <kabaev@mail.ru>
Date: 19-Mar-2001
Time: 19:05:53
----------------------------------

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20010319201218.kabaev>