This is the mail archive of the
libc-ports@sources.redhat.com
mailing list for the libc-ports project.
Re: [PATCH roland/arm-vfp] Test [__VFP_FP__] in place of [!__SOFTFP__].
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Roland McGrath <roland at hack dot frob dot com>
- Cc: <libc-ports at sourceware dot org>
- Date: Wed, 22 Aug 2012 20:54:17 +0000
- Subject: Re: [PATCH roland/arm-vfp] Test [__VFP_FP__] in place of [!__SOFTFP__].
- References: <20120822202409.71DDB2C0F8@topped-with-meat.com>
On Wed, 22 Aug 2012, Roland McGrath wrote:
> The compiler predefines __SOFTFP__ to indicate that the calling convention
> is the one using only integer registers.
No, this indicates that it is not generating floating-point instructions.
It defines __SOFTFP__ only for -mfloat-abi=soft, not -mfloat-abi=softfp (=
hardware floating point but using integer registers in the calling
convention) or -mfloat-abi=hard.
> It predefines __VFP_FP__ to
> indicate that it is configured to generate VFP instructions.
No, this indicates that floating-point types have VFP layout as opposed to
FPA layout. For an EABI compiler, all three of -mfloat-abi=soft,
-mfloat-abi=softp and -mfloat-abi=hard predefine __VFP_FP__.
The predefine that relates to the calling convention is __ARM_PCS_VFP.
--
Joseph S. Myers
joseph@codesourcery.com