Commit 87b24aaf by Paul Brook Committed by Paul Brook

arm.c (arm_override_options): Error on iWMMXt and hardware floating point.

2006-04-21  Paul Brook  <paul@codesourcery.com>

gcc/
	* config/arm/arm.c (arm_override_options): Error on iWMMXt and
	hardware floating point.
gcc/testsuite/
	* gcc.dg/arm-vfp1.c: Skip on iWMMXt cpus.

From-SVN: r113138
parent e3604432
2006-04-21 Paul Brook <paul@codesourcery.com>
* config/arm/arm.c (arm_override_options): Error on iWMMXt and
hardware floating point.
2006-04-21 David Edelsohn <edelsohn@gnu.org> 2006-04-21 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Add sfp to * config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Add sfp to
......
...@@ -1230,6 +1230,12 @@ arm_override_options (void) ...@@ -1230,6 +1230,12 @@ arm_override_options (void)
if (arm_float_abi == ARM_FLOAT_ABI_HARD && TARGET_VFP) if (arm_float_abi == ARM_FLOAT_ABI_HARD && TARGET_VFP)
sorry ("-mfloat-abi=hard and VFP"); sorry ("-mfloat-abi=hard and VFP");
/* FPA and iWMMXt are incompatible because the insn encodings overlap.
VFP and iWMMXt can theoretically coexist, but it's unlikely such silicon
will ever exist. GCC makes no attempt to support this combination. */
if (TARGET_IWMMXT && !TARGET_SOFT_FLOAT)
sorry ("iWMMXt and hardware floating point");
/* If soft-float is specified then don't use FPU. */ /* If soft-float is specified then don't use FPU. */
if (TARGET_SOFT_FLOAT) if (TARGET_SOFT_FLOAT)
arm_fpu_arch = FPUTYPE_NONE; arm_fpu_arch = FPUTYPE_NONE;
......
2006-04-21 Paul Brook <paul@codesourcery.com>
* gcc.dg/arm-vfp1.c: Skip on iWMMXt cpus.
2006-04-21 Paul Thomas <pault@gcc.gnu.org> 2006-04-21 Paul Thomas <pault@gcc.gnu.org>
PR fortran/27122 PR fortran/27122
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O2 -mfpu=vfp -mfloat-abi=softfp" } */ /* { dg-options "-O2 -mfpu=vfp -mfloat-abi=softfp" } */
/* { dg-require-effective-target arm32 } */ /* { dg-require-effective-target arm32 } */
/* { dg-skip-if "" { *-*-* } { "-mcpu=iwmmxt" "-march=iwmmxt" } { "" } } */
extern float fabsf (float); extern float fabsf (float);
extern float sqrtf (float); extern float sqrtf (float);
......
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