* [parisc-linux] Re: NPTL pthread_cancel and libgcc_s.so.2 vs. libgcc_s.so.1 (Why the DSO version bump?)
2005-08-02 13:59 [parisc-linux] " Carlos O'Donell
@ 2005-08-02 14:13 ` John David Anglin
2005-08-02 15:42 ` Carlos O'Donell
0 siblings, 1 reply; 4+ messages in thread
From: John David Anglin @ 2005-08-02 14:13 UTC (permalink / raw)
To: Carlos O'Donell; +Cc: parisc-linux
> What was the reason for DSO version bump in libgcc_s.so.1?
It was done to distinguish between libgcc_s's built with sjlj and dwarf2
eh support, respectively. They use incompatible unwind routines and it's
not possible to support both exception handling techniques with one library.
Dave
--
J. David Anglin dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
_______________________________________________
parisc-linux mailing list
parisc-linux@lists.parisc-linux.org
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux
^ permalink raw reply [flat|nested] 4+ messages in thread
* [parisc-linux] Re: NPTL pthread_cancel and libgcc_s.so.2 vs. libgcc_s.so.1 (Why the DSO version bump?)
2005-08-02 14:13 ` [parisc-linux] " John David Anglin
@ 2005-08-02 15:42 ` Carlos O'Donell
0 siblings, 0 replies; 4+ messages in thread
From: Carlos O'Donell @ 2005-08-02 15:42 UTC (permalink / raw)
To: John David Anglin; +Cc: parisc-linux
On Tue, Aug 02, 2005 at 10:13:42AM -0400, John David Anglin wrote:
> > What was the reason for DSO version bump in libgcc_s.so.1?
>
> It was done to distinguish between libgcc_s's built with sjlj and dwarf2
> eh support, respectively. They use incompatible unwind routines and it's
> not possible to support both exception handling techniques with one library.
So libgcc_s.so.1 is for dwarf2?
While libgcc_s.so.2 is for sjlj?
Thus NPTL thread cancellation seems to requires dwarf2 eh support.
How do I enable sjlj versus dwarf2 (--enable-dwarf2-exceptions?)
Our build script is here if you want to have a look:
http://cvs.parisc-linux.org/build-tools/build-tls-tools?rev=1.5&view=markup
c.
_______________________________________________
parisc-linux mailing list
parisc-linux@lists.parisc-linux.org
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux
^ permalink raw reply [flat|nested] 4+ messages in thread
* [parisc-linux] Re: NPTL pthread_cancel and libgcc_s.so.2 vs. libgcc_s.so.1 (Why the DSO version bump?)
[not found] <20050803044244.GN9703@systemhalted.org>
@ 2005-08-03 5:02 ` John David Anglin
2005-08-03 14:53 ` Carlos O'Donell
0 siblings, 1 reply; 4+ messages in thread
From: John David Anglin @ 2005-08-03 5:02 UTC (permalink / raw)
To: Carlos O'Donell; +Cc: parisc-linux
> i386 only has libgcc_s.so.1 and I'm pretty sure that it is compiled with
> dwarf2 support. hppa only has libgcc_s.so.1 and it is sjlj for sure.
>
> So we have an inconsistent numbering problem?
Yup, but it was unavoidable. Look on the positive side, i386 doesn't
support sjlj ;)
> The code on hppa should try to load "libgcc_s.so.2" then?
Yes.
> > > Thus NPTL thread cancellation seems to requires dwarf2 eh support.
> > > How do I enable sjlj versus dwarf2 (--enable-dwarf2-exceptions?)
> >
> > dwarf2 is the default. --enable-sjlj-exceptions=yes enables sjlj.
> > Debian gcc-3.3 uses sjlj. Debian gcc-3.4 and later use dwarf2.
>
> Okay, perfect.
Basic TLS support in GCC is currently in the CVS head and will be
part of gcc-4.1 when it is released. As long as you don't configure
it with --enable-sjlj-exceptions=yes you will get "libgcc_s.so.2".
Dave
--
J. David Anglin dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
_______________________________________________
parisc-linux mailing list
parisc-linux@lists.parisc-linux.org
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux
^ permalink raw reply [flat|nested] 4+ messages in thread
* [parisc-linux] Re: NPTL pthread_cancel and libgcc_s.so.2 vs. libgcc_s.so.1 (Why the DSO version bump?)
2005-08-03 5:02 ` [parisc-linux] Re: NPTL pthread_cancel and libgcc_s.so.2 vs. libgcc_s.so.1 (Why the DSO version bump?) John David Anglin
@ 2005-08-03 14:53 ` Carlos O'Donell
0 siblings, 0 replies; 4+ messages in thread
From: Carlos O'Donell @ 2005-08-03 14:53 UTC (permalink / raw)
To: John David Anglin; +Cc: parisc-linux
On Wed, Aug 03, 2005 at 01:02:40AM -0400, John David Anglin wrote:
> > i386 only has libgcc_s.so.1 and I'm pretty sure that it is compiled with
> > dwarf2 support. hppa only has libgcc_s.so.1 and it is sjlj for sure.
> >
> > So we have an inconsistent numbering problem?
>
> Yup, but it was unavoidable. Look on the positive side, i386 doesn't
> support sjlj ;)
Haha! :)
> > The code on hppa should try to load "libgcc_s.so.2" then?
>
> Yes.
Perfect. I added some macros to glibc and this worked. It loaded
libgcc_s.so.2 perfectly and the cancellation seems to work. If only I
could fix the other segfault bugs.
> > > > Thus NPTL thread cancellation seems to requires dwarf2 eh support.
> > > > How do I enable sjlj versus dwarf2 (--enable-dwarf2-exceptions?)
> > >
> > > dwarf2 is the default. --enable-sjlj-exceptions=yes enables sjlj.
> > > Debian gcc-3.3 uses sjlj. Debian gcc-3.4 and later use dwarf2.
> >
> > Okay, perfect.
>
> Basic TLS support in GCC is currently in the CVS head and will be
> part of gcc-4.1 when it is released. As long as you don't configure
> it with --enable-sjlj-exceptions=yes you will get "libgcc_s.so.2".
Yes, this is what I was seeing. For the TLS toolchain we are using
dwarf2.
Thanks for the help.
c.
_______________________________________________
parisc-linux mailing list
parisc-linux@lists.parisc-linux.org
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2005-08-03 14:53 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20050803044244.GN9703@systemhalted.org>
2005-08-03 5:02 ` [parisc-linux] Re: NPTL pthread_cancel and libgcc_s.so.2 vs. libgcc_s.so.1 (Why the DSO version bump?) John David Anglin
2005-08-03 14:53 ` Carlos O'Donell
2005-08-02 13:59 [parisc-linux] " Carlos O'Donell
2005-08-02 14:13 ` [parisc-linux] " John David Anglin
2005-08-02 15:42 ` Carlos O'Donell
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.