This is the mail archive of the
libstdc++@sources.redhat.com
mailing list for the libstdc++ project.
Re: v3 won't build on AIX 4.1
- To: Benjamin Kosnik <bkoz at redhat dot com>
- Subject: Re: v3 won't build on AIX 4.1
- From: David Edelsohn <dje at watson dot ibm dot com>
- Date: Wed, 20 Dec 2000 11:02:47 -0500
- cc: Alexandre Oliva <aoliva at redhat dot com>, libstdc++ at gcc dot gnu dot org
>>>>> Benjamin Kosnik writes:
Ben> Yeah. We care. I haven't built on AIX.
>> The problem is that <sys/atomic_op.h> typedefs atomic_p and atomic_h,
>> but not atomic_l, that config/aix/bits/atomicity.h relies upon. Do we
>> care?
AIX 4.3 defines atomic_l in sys/atomic_op.h.
As I mentioned when I first submitted the implementation, I do not
understand why atomicity.h uses both int and long types. Does the
argument really need to be "long" for __compare_and_swap() while "int" for
__exchange_and_add() and __atomic_add()?
We could avoid the atomic_l dependency altogether, if we were not
assuming "long" types. If we need long types, we either need a different
implementation of those functions for AIX 4.1 or need to add casts to
"int" on AIX 4.1 where we know that the target only supports 32-bits.
David