This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: (lack of) Thread-safe exceptions on AIX (gcc-2.95.1)
- To: dje at watson dot ibm dot com (David Edelsohn)
- Subject: Re: (lack of) Thread-safe exceptions on AIX (gcc-2.95.1)
- From: Godmar Back <gback at cs dot utah dot edu>
- Date: Fri, 28 Jan 2000 13:59:05 -0700 (MST)
- Cc: gcc at gcc dot gnu dot org
>
> >>>>> Geoffrey Keating writes:
>
> Geoff> I don't remember what the problem with threads and sj/lj
> Geoff> exceptions is, but that isn't it.
>
> It is more likely that libgcc2.a or some other library were not
> compiled thread-safe. We have not wanted to create yet another set of
> multilib version of the libraries for thread-safe use.
>
I too am bothered that the choice of a threading system with which libgcc2.a
interacts is a configuration parameter to gcc.
I acknowledge that it allows the inlining of frequently used thread
operations, such as retrieving thread-specific data, but I think it
comes with a lot of drawbacks.
Here's how I would like to see threading in libgcc handled:
- add support for a generic threading system that is indirected
through a function pointer table. The gthr interface could be a good
basis for defining this interface. This will allow the use of other
than the handful of supported threading systems without changes
to the gcc source.
- change the configuration system to not only build one version, but
to build multiple versions. For instance, you could build a
libgcc_singlethread, libgcc_posix, and libgcc_generic, etc.. (*)
This will allow to have a single gcc installation to provide support
for multiple thread systems. Currently, one requires two completely
separate gcc installation just to support say threaded and non-threaded
Java.
- change the gcc driver to pick the threading system you'd like to use
when linking an executable.
- Godmar