This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: V3 PATCH: __cxa_guard_acquire
- From: Richard Henderson <rth at redhat dot com>
- To: Mark Mitchell <mark at codesourcery dot com>
- Cc: gcc-patches at gcc dot gnu dot org, libstdc++ at gcc dot gnu dot org
- Date: Mon, 25 Nov 2002 17:20:06 -0800
- Subject: Re: V3 PATCH: __cxa_guard_acquire
- References: <200211252310.gAPNAQe08069@gandalf.codesourcery.com>
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~