This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: (lack of) Thread-safe exceptions on AIX (gcc-2.95.1)


> 
> >>>>> 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]