V3 PATCH: __cxa_guard_acquire

Richard Henderson rth@redhat.com
Mon Nov 25 20:27:00 GMT 2002


On Mon, Nov 25, 2002 at 03:10:26PM -0800, Mark Mitchell wrote:
> + /* The ABI requires a 64-bit type.  */
> + __extension__ typedef int __guard __attribute__((mode (__DI__)));

Careful.  The ABI is written in inordinately ia64 specific language.
*Why* does it want a 64-bit type?  Does it really want a pointer type,
but is trying to hack around ia64 ilp32 lossage?

I know this definition will fail on c4x, where this would be a
256-bit object.  It will also fail on the tiny ports that define
long long as a 32-bit quantity.

I'm absolutely certain that we should not incorporate such a thing
into our abi without thinking about this.


r~



More information about the Libstdc++ mailing list