diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 18413b35a2ef..fc6f774ea2d6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2007-11-20 Richard Sandiford + + * lib/target-supports.exp (check_effective_target_mips_soft_float): + New procedure. + * gcc.dg/var-expand1.c: Skip for mips_soft_float. + * gcc.dg/pr30957-1.c: Likewise. + 2007-11-20 Jakub Jelinek PR c++/34089 diff --git a/gcc/testsuite/gcc.dg/pr30957-1.c b/gcc/testsuite/gcc.dg/pr30957-1.c index 26d5de7f6f76..d4e0c763e398 100644 --- a/gcc/testsuite/gcc.dg/pr30957-1.c +++ b/gcc/testsuite/gcc.dg/pr30957-1.c @@ -1,4 +1,7 @@ /* { dg-do run { xfail vax-*-* powerpc-*-*spe } } */ +/* We don't (and don't want to) perform this optimisation on soft-float + MIPS targets, where each addition is a library call. */ +/* { dg-skip-if "" { mips_soft_float } { "*" } { "" } } */ /* { dg-options "-O2 -funroll-loops -funsafe-math-optimizations -fvariable-expansion-in-unroller -dL" } */ extern void abort (void); diff --git a/gcc/testsuite/gcc.dg/var-expand1.c b/gcc/testsuite/gcc.dg/var-expand1.c index 8782d1cf9c78..89114c51e8b4 100644 --- a/gcc/testsuite/gcc.dg/var-expand1.c +++ b/gcc/testsuite/gcc.dg/var-expand1.c @@ -1,4 +1,7 @@ /* { dg-do compile } */ +/* We don't (and don't want to) perform this optimisation on soft-float + MIPS targets, where each addition is a library call. */ +/* { dg-skip-if "" { mips_soft_float } { "*" } { "" } } */ /* { dg-options "-O2 -funroll-loops --fast-math -fvariable-expansion-in-unroller -dL" } */ extern void abort (void); diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index db161cdc3b78..f877f9d166f4 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -615,6 +615,16 @@ proc check_effective_target_mpaired_single { } { } "-mpaired-single"] } +# Return true if we're testing a soft-float MIPS target. + +proc check_effective_target_mips_soft_float { } { + return [check_no_compiler_messages mips_soft_float assembly { + #ifndef __mips_soft_float + #error FOO + #endif + }] +} + # Return true if the target is a 64-bit MIPS target. proc check_effective_target_mips64 { } {