This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: GNAT and NPTL (3.3?)
On Tue, Apr 29, 2003 at 01:19:50PM +0200, Laurent Guerby wrote:
> On Tue, 2003-04-29 at 12:58, Arnaud Charlet wrote:
> > > Hi, to formally add support for NPTL in CVS, I assume
> > > it is ok to use the existing GNAT thread package
> > > selection mechanism, say: THREAD_KIND=nptl
> > > when building gnatlib_and_tools. I chose
> > > the letter 'j' (after 'i' used for linux now),
> > > there's only one file to be added it is '5josinte.ads'.
> >
> > Actually 5j files are already used by jgnat, so another letter would be
> > more appropriate.
>
> Ok 5q then (if we need it).
>
> > I am not convinced we need a new letter. As far as I could see from your
> > patches, NPTL and linuxthreads are fully compatible (even though
> > linuxthreads headers have changed between redhat 8 and redhat 9, which is
> > a different issue), unless you've done your work on the linuxthreads
> > headers.
>
> Unless I misunderstood headers, pthread_cond_t changed its size
> so unless we use the max size there will be a need for two targets.
Yep, pthread_cond_t size increased (and compatibility stuff added) both in
linuxthreads and NPTL.
I think it shouldn't hurt to use the 48 bytes long pthread_cond_t on all
architectures, the only purpose of its definition in GNAT is I suppose to
reserve enough bytes for the type (as all fields are pthread implementation
private) and reserving a few extra bytes doesn't hurt.
FYI timer_t changed too (but only on 64-bit architectures and only in NPTL).
Jakub