Commit 552b56fc by Julian Brown Committed by Julian Brown

sourcebuild.texi (arm_hf_eabi): Document effective-target check.

    gcc/
    * doc/sourcebuild.texi (arm_hf_eabi): Document effective-target
    check.

    gcc/testsuite/
    * lib/target-supports.exp (check_effective_target_arm_hf_eabi): New.
    * gcc.dg/torture/stackalign/builtin-apply-2.c: Skip for
    hard-float ARM.

From-SVN: r189805
parent 0229aee9
2012-07-24 Julian Brown <julian@codesourcery.com>
* doc/sourcebuild.texi (arm_hf_eabi): Document effective-target
check.
2012-07-24 Steven Bosscher <steven@gcc.gnu.org> 2012-07-24 Steven Bosscher <steven@gcc.gnu.org>
* sbitmap.h (SBITMAP_ELT_BITS): Use "1u" trick as for BITMAP_WORD_BITS. * sbitmap.h (SBITMAP_ELT_BITS): Use "1u" trick as for BITMAP_WORD_BITS.
......
...@@ -1497,6 +1497,11 @@ ARM target generates 32-bit code. ...@@ -1497,6 +1497,11 @@ ARM target generates 32-bit code.
@item arm_eabi @item arm_eabi
ARM target adheres to the ABI for the ARM Architecture. ARM target adheres to the ABI for the ARM Architecture.
@item arm_hf_eabi
ARM target adheres to the VFP and Advanced SIMD Register Arguments
variant of the ABI for the ARM Architecture (as selected with
@code{-mfloat-abi=hard}).
@item arm_hard_vfp_ok @item arm_hard_vfp_ok
ARM target supports @code{-mfpu=vfp -mfloat-abi=hard}. ARM target supports @code{-mfpu=vfp -mfloat-abi=hard}.
Some multilibs may be incompatible with these options. Some multilibs may be incompatible with these options.
......
2012-07-24 Julian Brown <julian@codesourcery.com>
* lib/target-supports.exp (check_effective_target_arm_hf_eabi): New.
* gcc.dg/torture/stackalign/builtin-apply-2.c: Skip for
hard-float ARM.
2012-07-23 Paul Brook <paul@codesourcery.com> 2012-07-23 Paul Brook <paul@codesourcery.com>
* g++.dg/other/armv7m-1.c: New test. * g++.dg/other/armv7m-1.c: New test.
......
...@@ -5,6 +5,8 @@ ...@@ -5,6 +5,8 @@
with pre-pushed arguments (e.g. SPARC). */ with pre-pushed arguments (e.g. SPARC). */
/* { dg-do run } */ /* { dg-do run } */
/* { dg-skip-if "Variadic funcs use Base AAPCS. Normal funcs use VFP variant." { arm_hf_eabi } } */
#define INTEGER_ARG 5 #define INTEGER_ARG 5
......
...@@ -2341,6 +2341,19 @@ proc check_effective_target_arm_eabi { } { ...@@ -2341,6 +2341,19 @@ proc check_effective_target_arm_eabi { } {
}] }]
} }
# Return 1 if this is an ARM target that adheres to the hard-float variant of
# the ABI for the ARM Architecture (e.g. -mfloat-abi=hard).
proc check_effective_target_arm_hf_eabi { } {
return [check_no_compiler_messages arm_hf_eabi object {
#if !defined(__ARM_EABI__) || !defined(__ARM_PCS_VFP)
#error not hard-float EABI
#else
int dummy;
#endif
}]
}
# Return 1 if this is an ARM target supporting -mcpu=iwmmxt. # Return 1 if this is an ARM target supporting -mcpu=iwmmxt.
# Some multilibs may be incompatible with this option. # Some multilibs may be incompatible with this option.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment