[RFA][2/3] Remove Cell Broadband Engine SPU targets: testsuite Remove all references to spu from the testsuite directory.
Tested on s390x-ibm-linux. OK for mainline? (Deleted directories omitted from patch.) Bye, Ulrich gcc/testsuite/ChangeLog: * lib/compat.exp: Remove references to spu. * lib/fortran-torture.exp: Likewise. * lib/gcc-dg.exp: Likewise. * lib/gfortran.exp: Likewise. * lib/target-supports.exp: Likewise. * lib/target-utils.exp: Likewise. * c-c++-common/torture/complex-sign-add.c: Remove references to spu. * c-c++-common/torture/complex-sign-mixed-add.c: Likewise. * c-c++-common/torture/complex-sign-mixed-div.c: Likewise. * c-c++-common/torture/complex-sign-mixed-mul.c: Likewise. * c-c++-common/torture/complex-sign-mixed-sub.c: Likewise. * c-c++-common/torture/complex-sign-mul-minus-one.c: Likewise. * c-c++-common/torture/complex-sign-mul-one.c: Likewise. * c-c++-common/torture/complex-sign-mul.c: Likewise. * c-c++-common/torture/complex-sign-sub.c: Likewise. * g++.dg/opt/temp1.C: Remove references to spu. * g++.dg/opt/vt1.C: Likewise. * g++.dg/torture/type-generic-1.C: Likewise. * g++.dg/warn/pr30551-2.C: Likewise. * g++.dg/warn/pr30551.C: Likewise. * g++.old-deja/g++.jason/thunk2.C: Likewise. * g++.old-deja/g++.other/comdat5.C: Likewise. * g++.old-deja/g++.other/local-alloc1.C: Likewise. * gcc.c-torture/compile/20001226-1.c: Remove references to spu. * gcc.c-torture/execute/20030222-1.c: Likewise. * gcc.c-torture/execute/20031003-1.c: Likewise. * gcc.c-torture/execute/20101011-1.c: Likewise. * gcc.c-torture/execute/conversion.c: Likewise. * gcc.c-torture/execute/ieee/compare-fp-4.x: Likewise. * gcc.c-torture/execute/ieee/fp-cmp-2.x: Likewise. * gcc.c-torture/execute/ieee/inf-1.c: Likewise. * gcc.c-torture/execute/ieee/inf-2.c: Likewise. * gcc.c-torture/execute/ieee/mul-subnormal-single-1.x: Likewise. * gcc.c-torture/execute/ieee/rbug.c: Likewise. * gcc.c-torture/execute/pr39228.c: Likewise. * gcc.c-torture/execute/ieee/20010114-2.x: Remove file. * gcc.c-torture/execute/ieee/20030331-1.x: Remove file. * gcc.c-torture/execute/ieee/920518-1.x: Remove file. * gcc.c-torture/execute/ieee/compare-fp-1.x: Remove file. * gcc.c-torture/execute/ieee/fp-cmp-4f.x: Remove file. * gcc.c-torture/execute/ieee/fp-cmp-8f.x: Remove file. * gcc.dg/20020312-2.c: Remove references to spu. * gcc.dg/20030702-1.c: Likewise. * gcc.dg/and-1.c: Likewise. * gcc.dg/builtin-inf-1.c: Likewise. * gcc.dg/builtins-1.c: Likewise. * gcc.dg/builtins-43.c: Likewise. * gcc.dg/builtins-44.c: Likewise. * gcc.dg/builtins-45.c: Likewise. * gcc.dg/float-range-1.c: Likewise. * gcc.dg/float-range-3.c: Likewise. * gcc.dg/float-range-4.c: Likewise. * gcc.dg/float-range-5.c: Likewise. * gcc.dg/fold-overflow-1.c: Likewise. * gcc.dg/format/ms_unnamed-1.c: Likewise. * gcc.dg/format/unnamed-1.c: Likewise. * gcc.dg/hex-round-1.c: Likewise. * gcc.dg/hex-round-2.c: Likewise. * gcc.dg/lower-subreg-1.c: Likewise. * gcc.dg/nrv3.c: Likewise. * gcc.dg/pr15784-3.c: Likewise. * gcc.dg/pr27095.c: Likewise. * gcc.dg/pr28243.c: Likewise. * gcc.dg/pr28796-2.c: Likewise. * gcc.dg/pr30551-3.c: Likewise. * gcc.dg/pr30551-6.c: Likewise. * gcc.dg/pr30551.c: Likewise. * gcc.dg/pr70317.c: Likewise. * gcc.dg/sms-1.c: Likewise. * gcc.dg/sms-2.c: Likewise. * gcc.dg/sms-3.c: Likewise. * gcc.dg/sms-4.c: Likewise. * gcc.dg/sms-5.c: Likewise. * gcc.dg/sms-6.c: Likewise. * gcc.dg/sms-7.c: Likewise. * gcc.dg/stack-usage-1.c: Likewise. * gcc.dg/strlenopt-73.c: Likewise. * gcc.dg/titype-1.c: Likewise. * gcc.dg/tls/thr-cse-1.c: Likewise. * gcc.dg/torture/builtin-attr-1.c: Likewise. * gcc.dg/torture/builtin-complex-1.c: Likewise. * gcc.dg/torture/builtin-cproj-1.c: Likewise. * gcc.dg/torture/builtin-frexp-1.c: Likewise. * gcc.dg/torture/builtin-ldexp-1.c: Likewise. * gcc.dg/torture/builtin-logb-1.c: Likewise. * gcc.dg/torture/builtin-math-2.c: Likewise. * gcc.dg/torture/builtin-math-5.c: Likewise. * gcc.dg/torture/builtin-modf-1.c: Likewise. * gcc.dg/torture/fp-int-convert.h: Likewise. * gcc.dg/torture/pr25947-1.c: Likewise. * gcc.dg/torture/type-generic-1.c: Likewise. * gcc.dg/tree-ssa/20040204-1.c: Likewise. * gcc.dg/tree-ssa/ivopts-1.c: Likewise. * gcc.dg/tree-ssa/ssa-fre-3.c: Likewise. * gcc.dg/tree-ssa/vector-6.c: Likewise. * gcc.dg/uninit-C-O0.c: Likewise. * gcc.dg/uninit-C.c: Likewise. * gcc.dg/vect/no-math-errno-slp-32.c: Likewise. * gcc.dg/vect/no-math-errno-vect-pow-1.c: Likewise. * gcc.dg/vect/vect-float-extend-1.c: Likewise. * gcc.dg/vect/vect-float-truncate-1.c: Likewise. * gcc.dg/vect/vect.exp: Likewise. * gcc.gd/vect/costmodel/spu/: Remove directory. * gcc.target/spu/: Remove directory. * gfortran.dg/bessel_6.f90: Remove references to spu. * gfortran.dg/bessel_7.f90: Likewise. * gfortran.dg/char4_iunit_1.f03: Likewise. * gfortran.dg/chmod_1.f90: Likewise. * gfortran.dg/chmod_2.f90: Likewise. * gfortran.dg/chmod_3.f90: Likewise. * gfortran.dg/default_format_1.f90: Likewise. * gfortran.dg/default_format_denormal_1.f90: Likewise. * gfortran.dg/erf_2.F90: Likewise. * gfortran.dg/erf_3.F90: Likewise. * gfortran.dg/init_flag_10.f90: Likewise. * gfortran.dg/init_flag_3.f90: Likewise. * gfortran.dg/int_conv_2.f90: Likewise. * gfortran.dg/integer_exponentiation_3.F90: Likewise. * gfortran.dg/integer_exponentiation_5.F90: Likewise. * gfortran.dg/isnan_1.f90: Likewise. * gfortran.dg/isnan_2.f90: Likewise. * gfortran.dg/maxloc_2.f90: Likewise. * gfortran.dg/maxlocval_2.f90: Likewise. * gfortran.dg/maxlocval_4.f90: Likewise. * gfortran.dg/minloc_1.f90: Likewise. * gfortran.dg/minlocval_1.f90: Likewise. * gfortran.dg/minlocval_4.f90: Likewise. * gfortran.dg/module_nan.f90: Likewise. * gfortran.dg/namelist_42.f90: Likewise. * gfortran.dg/namelist_43.f90: Likewise. * gfortran.dg/nan_1.f90: Likewise. * gfortran.dg/nan_2.f90: Likewise. * gfortran.dg/nan_3.f90: Likewise. * gfortran.dg/nan_4.f90: Likewise. * gfortran.dg/nan_5.f90: Likewise. * gfortran.dg/nan_6.f90: Likewise. * gfortran.dg/nearest_1.f90: Likewise. * gfortran.dg/nearest_3.f90: Likewise. * gfortran.dg/open_errors.f90: Likewise. * gfortran.dg/pr20257.f90: Likewise. * gfortran.dg/read_infnan_1.f90: Likewise. * gfortran.dg/real_const_3.f90: Likewise. * gfortran.dg/realloc_on_assign_2.f03: Likewise. * gfortran.dg/reassoc_4.f: Likewise. * gfortran.dg/scalar_mask_2.f90: Likewise. * gfortran.dg/scratch_1.f90: Likewise. * gfortran.dg/stat_1.f90: Likewise. * gfortran.dg/stat_2.f90: Likewise. * gfortran.dg/transfer_simplify_1.f90: Likewise. * gfortran.dg/typebound_operator_9.f03: Likewise. * gfortran.fortran-torture/execute/intrinsic_nearest.x: Remove references to spu. * gfortran.fortran-torture/execute/intrinsic_set_exponent.x: Likewise. * gfortran.fortran-torture/execute/nan_inf_fmt.x: Likewise. * gfortran.fortran-torture/execute/getarg_1.x: Remove file. Index: gcc/testsuite/c-c++-common/torture/complex-sign-add.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-add.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-add.c (working copy) @@ -28,9 +28,7 @@ void check_add_float (void) { -#ifndef __SPU__ CHECK_ADD (float, __builtin_copysignf, 0.0f, 0.0if); -#endif } void Index: gcc/testsuite/c-c++-common/torture/complex-sign-mixed-add.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-mixed-add.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-mixed-add.c (working copy) @@ -29,9 +29,7 @@ void check_add_float (void) { -#ifndef __SPU__ CHECK_ADD (float, __builtin_copysignf, 0.0f, 0.0if); -#endif } void Index: gcc/testsuite/c-c++-common/torture/complex-sign-mixed-div.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-mixed-div.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-mixed-div.c (working copy) @@ -20,9 +20,7 @@ void check_div_float (void) { -#ifndef __SPU__ CHECK_DIV (float, __builtin_copysignf, 0.0f, 0.0if, 1.0f); -#endif } void Index: gcc/testsuite/c-c++-common/torture/complex-sign-mixed-mul.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-mixed-mul.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-mixed-mul.c (working copy) @@ -28,9 +28,7 @@ void check_mul_float (void) { -#ifndef __SPU__ CHECK_MUL (float, __builtin_copysignf, 0.0f, 0.0if); -#endif } void Index: gcc/testsuite/c-c++-common/torture/complex-sign-mixed-sub.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-mixed-sub.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-mixed-sub.c (working copy) @@ -29,9 +29,7 @@ void check_sub_float (void) { -#ifndef __SPU__ CHECK_SUB (float, __builtin_copysignf, 0.0f, 0.0if); -#endif } void Index: gcc/testsuite/c-c++-common/torture/complex-sign-mul-minus-one.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-mul-minus-one.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-mul-minus-one.c (working copy) @@ -36,9 +36,7 @@ void check_mul_float (void) { -#ifndef __SPU__ CHECK_MUL (float, __builtin_copysignf, 0.0f, 0.0if, 1.0f); -#endif } void Index: gcc/testsuite/c-c++-common/torture/complex-sign-mul-one.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-mul-one.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-mul-one.c (working copy) @@ -36,9 +36,7 @@ void check_mul_float (void) { -#ifndef __SPU__ CHECK_MUL (float, __builtin_copysignf, 0.0f, 0.0if, 1.0f); -#endif } void Index: gcc/testsuite/c-c++-common/torture/complex-sign-mul.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-mul.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-mul.c (working copy) @@ -28,9 +28,7 @@ void check_mul_float (void) { -#ifndef __SPU__ CHECK_MUL (float, __builtin_copysignf, 0.0f, 0.0if); -#endif } void Index: gcc/testsuite/c-c++-common/torture/complex-sign-sub.c =================================================================== --- gcc/testsuite/c-c++-common/torture/complex-sign-sub.c (revision 275321) +++ gcc/testsuite/c-c++-common/torture/complex-sign-sub.c (working copy) @@ -28,9 +28,7 @@ void check_sub_float (void) { -#ifndef __SPU__ CHECK_SUB (float, __builtin_copysignf, 0.0f, 0.0if); -#endif } void Index: gcc/testsuite/g++.dg/opt/temp1.C =================================================================== --- gcc/testsuite/g++.dg/opt/temp1.C (revision 275321) +++ gcc/testsuite/g++.dg/opt/temp1.C (working copy) @@ -24,12 +24,7 @@ } struct T { -#ifdef __SPU__ - /* SPU returns aggregates up to 1172 bytes in registers. */ - int a[300]; -#else int a[128]; -#endif T &operator+=(T const &v) __attribute__((noinline)); T operator+(T const &v) const { T t = *this; t += v; return t; } }; Index: gcc/testsuite/g++.dg/opt/vt1.C =================================================================== --- gcc/testsuite/g++.dg/opt/vt1.C (revision 275321) +++ gcc/testsuite/g++.dg/opt/vt1.C (working copy) @@ -1,7 +1,6 @@ // Test whether vtable for S is not put into read-only section. // { dg-do compile { target fpic } } // { dg-options "-O2 -fpic -fno-rtti" } -// { dg-skip-if "requires unsupported run-time relocation" { spu-*-* } } // { dg-skip-if "No Windows PIC" { *-*-mingw* *-*-cygwin } } // Origin: Jakub Jelinek <ja...@redhat.com> Index: gcc/testsuite/g++.dg/torture/type-generic-1.C =================================================================== --- gcc/testsuite/g++.dg/torture/type-generic-1.C (revision 275321) +++ gcc/testsuite/g++.dg/torture/type-generic-1.C (working copy) @@ -3,7 +3,6 @@ /* { dg-do run } */ /* { dg-add-options ieee } */ -/* { dg-skip-if "No Inf/NaN support" { spu-*-* } } */ /* { dg-skip-if "No subnormal support" { csky-*-* } { "-mhard-float" } } */ #include "../../gcc.dg/tg-tests.h" Index: gcc/testsuite/g++.dg/warn/pr30551-2.C =================================================================== --- gcc/testsuite/g++.dg/warn/pr30551-2.C (revision 275321) +++ gcc/testsuite/g++.dg/warn/pr30551-2.C (working copy) @@ -1,6 +1,5 @@ // PR 30551 -Wmain is enabled by -pedantic/-pedantic-errors. // { dg-do compile } // { dg-options "-pedantic-errors" } -// { dg-skip-if "-Wmain not enabled with -pedantic on SPU" { spu-*-* } } int main(char a) {} /* { dg-error "first argument of .*main.* should be .int." "int" } */ /* { dg-error "main.* takes only zero or two arguments" "zero or two" { target *-*-* } .-1 } */ Index: gcc/testsuite/g++.dg/warn/pr30551.C =================================================================== --- gcc/testsuite/g++.dg/warn/pr30551.C (revision 275321) +++ gcc/testsuite/g++.dg/warn/pr30551.C (working copy) @@ -1,6 +1,5 @@ // PR 30551 -Wmain is enabled by default. // { dg-do compile } // { dg-options "" } -// { dg-skip-if "-Wmain not enabled on SPU" { spu-*-* } } int main(char a) {} /* { dg-warning "first argument of .*main.* should be .int." "int" } */ /* { dg-warning "main.* takes only zero or two arguments" "zero or two" { target *-*-* } .-1 } */ Index: gcc/testsuite/g++.old-deja/g++.jason/thunk2.C =================================================================== --- gcc/testsuite/g++.old-deja/g++.jason/thunk2.C (revision 275321) +++ gcc/testsuite/g++.old-deja/g++.jason/thunk2.C (working copy) @@ -1,6 +1,5 @@ // { dg-do run { target fpic } } // { dg-options "-fPIC" } -// { dg-skip-if "requires unsupported run-time relocation" { spu-*-* } } // Test that non-variadic function calls using thunks and PIC work right. struct A { Index: gcc/testsuite/g++.old-deja/g++.other/comdat5.C =================================================================== --- gcc/testsuite/g++.old-deja/g++.other/comdat5.C (revision 275321) +++ gcc/testsuite/g++.old-deja/g++.other/comdat5.C (working copy) @@ -2,6 +2,5 @@ // { dg-do link { target fpic } } // { dg-additional-sources " comdat5-aux.cc" } // { dg-options "-O2 -fPIC" } -// { dg-skip-if "requires unsupported run-time relocation" { spu-*-* } } #include "comdat4.C" Index: gcc/testsuite/g++.old-deja/g++.other/local-alloc1.C =================================================================== --- gcc/testsuite/g++.old-deja/g++.other/local-alloc1.C (revision 275321) +++ gcc/testsuite/g++.old-deja/g++.other/local-alloc1.C (working copy) @@ -1,6 +1,5 @@ // { dg-do assemble { target fpic } } // { dg-options "-O0 -fpic" } -// { dg-skip-if "requires unsupported run-time relocation" { spu-*-* } } // Origin: Jakub Jelinek <ja...@redhat.com> struct bar { Index: gcc/testsuite/gcc.c-torture/compile/20001226-1.c =================================================================== --- gcc/testsuite/gcc.c-torture/compile/20001226-1.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/compile/20001226-1.c (working copy) @@ -1,7 +1,6 @@ /* { dg-do assemble } */ /* { dg-skip-if "too much code for avr" { "avr-*-*" } } */ /* { dg-skip-if "too much code for pdp11" { "pdp11-*-*" } } */ -/* { dg-xfail-if "PR36698" { spu-*-* } { "-O0" } { "" } } */ /* { dg-skip-if "" { m32c-*-* } } */ /* { dg-timeout-factor 4.0 } */ Index: gcc/testsuite/gcc.c-torture/execute/20030222-1.c =================================================================== --- gcc/testsuite/gcc.c-torture/execute/20030222-1.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/20030222-1.c (working copy) @@ -3,7 +3,6 @@ succeeded at all. We use volatile to make sure the long long is actually truncated to int, in case a single register is wide enough for a long long. */ -/* { dg-skip-if "asm would require extra shift-left-4-byte" { spu-*-* } } */ /* { dg-skip-if "asm requires register allocation" { nvptx-*-* } } */ #include <limits.h> Index: gcc/testsuite/gcc.c-torture/execute/20031003-1.c =================================================================== --- gcc/testsuite/gcc.c-torture/execute/20031003-1.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/20031003-1.c (working copy) @@ -19,15 +19,9 @@ #if INT_MAX == 2147483647 if (f1() != 2147483647) abort (); -#ifdef __SPU__ - /* SPU float rounds towards zero. */ - if (f2() != 0x7fffff80) - abort (); -#else if (f2() != 2147483647) abort (); #endif -#endif return 0; } Index: gcc/testsuite/gcc.c-torture/execute/20101011-1.c =================================================================== --- gcc/testsuite/gcc.c-torture/execute/20101011-1.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/20101011-1.c (working copy) @@ -10,9 +10,6 @@ #elif defined (__riscv) /* On RISC-V division by zero does not trap. */ # define DO_TEST 0 -#elif defined (__SPU__) - /* On SPU division by zero does not trap. */ -# define DO_TEST 0 #elif defined (__sh__) /* On SH division by zero does not trap. */ # define DO_TEST 0 Index: gcc/testsuite/gcc.c-torture/execute/conversion.c =================================================================== --- gcc/testsuite/gcc.c-torture/execute/conversion.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/conversion.c (working copy) @@ -284,15 +284,9 @@ abort(); if (f2u(1.99) != 1) abort(); -#ifdef __SPU__ - /* SPU float rounds towards zero. */ - if (f2u((float) ((~0U) >> 1)) != 0x7fffff80) - abort(); -#else if (f2u((float) ((~0U) >> 1)) != (~0U) >> 1 && /* 0x7fffffff */ f2u((float) ((~0U) >> 1)) != ((~0U) >> 1) + 1) abort(); -#endif if (f2u((float) ~((~0U) >> 1)) != ~((~0U) >> 1)) /* 0x80000000 */ abort(); @@ -445,15 +439,9 @@ abort(); if (f2ull(1.99) != 1LL) abort(); -#ifdef __SPU__ - /* SPU float rounds towards zero. */ - if (f2ull((float) ((~0ULL) >> 1)) != 0x7fffff8000000000ULL) - abort(); -#else if (f2ull((float) ((~0ULL) >> 1)) != (~0ULL) >> 1 && /* 0x7fffffff */ f2ull((float) ((~0ULL) >> 1)) != ((~0ULL) >> 1) + 1) abort(); -#endif if (f2ull((float) ~((~0ULL) >> 1)) != ~((~0ULL) >> 1)) /* 0x80000000 */ abort(); Index: gcc/testsuite/gcc.c-torture/execute/ieee/20010114-2.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/20010114-2.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/20010114-2.x (nonexistent) @@ -1,6 +0,0 @@ -if [istarget "spu-*-*"] { - # This doesn't work on the SPU because single precision floats are - # always rounded toward 0. - return 1 -} -return 0 Index: gcc/testsuite/gcc.c-torture/execute/ieee/20030331-1.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/20030331-1.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/20030331-1.x (nonexistent) @@ -1,6 +0,0 @@ -if [istarget "spu-*-*"] { - # This doesn't work on the SPU because single precision floats are - # always rounded toward 0. - return 1 -} -return 0 Index: gcc/testsuite/gcc.c-torture/execute/ieee/920518-1.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/920518-1.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/920518-1.x (nonexistent) @@ -1,6 +0,0 @@ -if [istarget "spu-*-*"] { - # This doesn't work on the SPU because single precision floats are - # always rounded toward 0. - return 1 -} -return 0 Index: gcc/testsuite/gcc.c-torture/execute/ieee/compare-fp-1.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/compare-fp-1.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/compare-fp-1.x (nonexistent) @@ -1,6 +0,0 @@ -if [istarget "spu-*-*"] { - # The SPU single-precision floating point format does not - # support Nan & Inf. - return 1 -} -return 0 Index: gcc/testsuite/gcc.c-torture/execute/ieee/compare-fp-4.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/compare-fp-4.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/compare-fp-4.x (working copy) @@ -13,11 +13,5 @@ } } -if [istarget "spu-*-*"] { - # The SPU single-precision floating point format does not - # support Nan & Inf. - return 1 -} - lappend additional_flags "-fno-trapping-math" return 0 Index: gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-2.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-2.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-2.x (working copy) @@ -13,10 +13,4 @@ } } -if [istarget "spu-*-*"] { - # The SPU single-precision floating point format does not - # support Nan & Inf. - return 1 -} - return 0 Index: gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-4f.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-4f.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-4f.x (nonexistent) @@ -1,6 +0,0 @@ -if [istarget "spu-*-*"] { - # The SPU single-precision floating point format does not - # support Nan & Inf. - return 1 -} -return 0 Index: gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-8f.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-8f.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-8f.x (nonexistent) @@ -1,6 +0,0 @@ -if [istarget "spu-*-*"] { - # The SPU single-precision floating point format does not - # support Nan & Inf. - return 1 -} -return 0 Index: gcc/testsuite/gcc.c-torture/execute/ieee/inf-1.c =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/inf-1.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/inf-1.c (working copy) @@ -2,10 +2,7 @@ int main() { -#ifndef __SPU__ - /* The SPU single-precision floating point format does not support Inf. */ float fi = __builtin_inff(); -#endif double di = __builtin_inf(); long double li = __builtin_infl(); @@ -13,28 +10,22 @@ double dh = __builtin_huge_val(); long double lh = __builtin_huge_vall(); -#ifndef __SPU__ if (fi + fi != fi) abort (); -#endif if (di + di != di) abort (); if (li + li != li) abort (); -#ifndef __SPU__ if (fi != fh) abort (); -#endif if (di != dh) abort (); if (li != lh) abort (); -#ifndef __SPU__ if (fi <= 0) abort (); -#endif if (di <= 0) abort (); if (li <= 0) Index: gcc/testsuite/gcc.c-torture/execute/ieee/inf-2.c =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/inf-2.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/inf-2.c (working copy) @@ -25,9 +25,6 @@ void testf(float f, float i) { -#ifndef __SPU__ - /* The SPU single-precision floating point format does not support Inf. */ - if (f == __builtin_inff()) abort (); if (f == -__builtin_inff()) @@ -47,7 +44,6 @@ abort (); if (f < -__builtin_inff()) abort (); -#endif } void testl(long double f, long double i) Index: gcc/testsuite/gcc.c-torture/execute/ieee/mul-subnormal-single-1.x =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/mul-subnormal-single-1.x (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/mul-subnormal-single-1.x (working copy) @@ -13,11 +13,6 @@ # not aware of any system that has this. set torture_execute_xfail "m68k-*-*" } -if [istarget "spu-*-*"] { - # The SPU single-precision floating point format does not - # support subnormals. - return 1 -} if { [istarget "tic6x-*-*"] && [check_effective_target_ti_c67x] } { # C6X floating point hardware turns denormals to zero in multiplications. set torture_execute_xfail "tic6x-*-*" Index: gcc/testsuite/gcc.c-torture/execute/ieee/rbug.c =================================================================== --- gcc/testsuite/gcc.c-torture/execute/ieee/rbug.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/ieee/rbug.c (working copy) @@ -41,14 +41,8 @@ k = 0x8234508000000001ULL; x = s (k); k = (unsigned long long) x; -#ifdef __SPU__ - /* SPU float rounds towards zero. */ - if (k != 0x8234500000000000ULL) - abort (); -#else if (k != 0x8234510000000000ULL) abort (); -#endif exit (0); } Index: gcc/testsuite/gcc.c-torture/execute/pr39228.c =================================================================== --- gcc/testsuite/gcc.c-torture/execute/pr39228.c (revision 275321) +++ gcc/testsuite/gcc.c-torture/execute/pr39228.c (working copy) @@ -1,5 +1,4 @@ /* { dg-add-options ieee } */ -/* { dg-skip-if "No Inf/NaN support" { spu-*-* } } */ extern void abort (void); Index: gcc/testsuite/gcc.dg/20020312-2.c =================================================================== --- gcc/testsuite/gcc.dg/20020312-2.c (revision 275321) +++ gcc/testsuite/gcc.dg/20020312-2.c (working copy) @@ -96,8 +96,6 @@ /* No pic register. */ #elif defined(__m32c__) /* No pic register. */ -#elif defined(__SPU__) -# define PIC_REG "126" #elif defined (__frv__) # ifdef __FRV_FDPIC__ # define PIC_REG "gr15" Index: gcc/testsuite/gcc.dg/20030702-1.c =================================================================== --- gcc/testsuite/gcc.dg/20030702-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/20030702-1.c (working copy) @@ -2,7 +2,6 @@ correctly in combine. */ /* { dg-do compile { target fpic } } */ /* { dg-options "-O2 -fpic -fprofile-arcs" } */ -/* { dg-skip-if "requires unsupported run-time relocation" { spu-*-* } } */ /* { dg-require-profiling "-fprofile-generate" } */ int fork (void); Index: gcc/testsuite/gcc.dg/and-1.c =================================================================== --- gcc/testsuite/gcc.dg/and-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/and-1.c (working copy) @@ -1,8 +1,8 @@ /* { dg-do compile } */ /* { dg-options "-O2" } */ -/* { dg-final { scan-assembler "and" { target powerpc*-*-* spu-*-* } } } */ -/* There should be no nand for this testcase (for either PPC or SPU). */ -/* { dg-final { scan-assembler-not "nand" { target powerpc*-*-* spu-*-* } } } */ +/* { dg-final { scan-assembler "and" { target powerpc*-*-* } } } */ +/* There should be no nand for this testcase (for PPC). */ +/* { dg-final { scan-assembler-not "nand" { target powerpc*-*-* } } } */ int f(int y) { Index: gcc/testsuite/gcc.dg/builtin-inf-1.c =================================================================== --- gcc/testsuite/gcc.dg/builtin-inf-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/builtin-inf-1.c (working copy) @@ -1,7 +1,7 @@ /* { dg-do compile } */ float fi = __builtin_inff(); -/* { dg-error "does not support infinity" "INF unsupported" { target pdp11*-*-* vax-*-* spu-*-* } .-1 } */ +/* { dg-error "does not support infinity" "INF unsupported" { target pdp11*-*-* vax-*-* } .-1 } */ double di = __builtin_inf(); /* { dg-error "does not support infinity" "INF unsupported" { target pdp11*-*-* vax-*-* } .-1 } */ long double li = __builtin_infl(); Index: gcc/testsuite/gcc.dg/builtins-1.c =================================================================== --- gcc/testsuite/gcc.dg/builtins-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/builtins-1.c (working copy) @@ -144,7 +144,7 @@ FPTEST0 (huge_val) FPTEST2 (hypot) FPTEST1 (ilogb) -FPTEST0 (inf) /* { dg-warning "target format does not support infinity" "inf" {target pdp11*-*-* spu-*-*} } */ +FPTEST0 (inf) /* { dg-warning "target format does not support infinity" "inf" {target pdp11*-*-* } } */ FPTEST1 (j0) FPTEST1 (j1) FPTEST2ARG1 (jn, int) Index: gcc/testsuite/gcc.dg/builtins-43.c =================================================================== --- gcc/testsuite/gcc.dg/builtins-43.c (revision 275321) +++ gcc/testsuite/gcc.dg/builtins-43.c (working copy) @@ -12,20 +12,15 @@ main () { double nan = __builtin_nan (""); -#ifndef __SPU__ - /* The SPU single-precision floating point format does not support NANs. */ float nanf = __builtin_nanf (""); -#endif long double nanl = __builtin_nanl (""); if (!__builtin_isnan (nan)) link_error (); -#ifndef __SPU__ if (!__builtin_isnan (nanf)) link_error (); if (!__builtin_isnanf (nanf)) link_error (); -#endif if (!__builtin_isnan (nanl)) link_error (); if (!__builtin_isnanl (nanl)) Index: gcc/testsuite/gcc.dg/builtins-44.c =================================================================== --- gcc/testsuite/gcc.dg/builtins-44.c (revision 275321) +++ gcc/testsuite/gcc.dg/builtins-44.c (working copy) @@ -13,20 +13,15 @@ main () { double pinf = __builtin_inf (); -#ifndef __SPU__ - /* The SPU single-precision floating point format does not support Inf. */ float pinff = __builtin_inff (); -#endif long double pinfl = __builtin_infl (); if (__builtin_isinf (pinf) != 1) link_error (); -#ifndef __SPU__ if (__builtin_isinf (pinff) != 1) link_error (); if (__builtin_isinff (pinff) != 1) link_error (); -#endif if (__builtin_isinf (pinfl) != 1) link_error (); if (__builtin_isinfl (pinfl) != 1) @@ -34,10 +29,8 @@ if (__builtin_isinf_sign (-pinf) != -1) link_error (); -#ifndef __SPU__ if (__builtin_isinf_sign (-pinff) != -1) link_error (); -#endif if (__builtin_isinf_sign (-pinfl) != -1) link_error (); Index: gcc/testsuite/gcc.dg/builtins-45.c =================================================================== --- gcc/testsuite/gcc.dg/builtins-45.c (revision 275321) +++ gcc/testsuite/gcc.dg/builtins-45.c (working copy) @@ -13,34 +13,24 @@ main () { double nan = __builtin_nan (""); -#ifndef __SPU__ - /* The SPU single-precision floating point format does not support NANs. */ float nanf = __builtin_nanf (""); -#endif long double nanl = __builtin_nanl (""); double pinf = __builtin_inf (); -#ifndef __SPU__ - /* The SPU single-precision floating point format does not support Inf. */ float pinff = __builtin_inff (); -#endif long double pinfl = __builtin_infl (); if (__builtin_finite (pinf)) link_error (); -#ifndef __SPU__ if (__builtin_finitef (pinff)) link_error (); -#endif if (__builtin_finitel (pinfl)) link_error (); if (__builtin_finite (nan)) link_error (); -#ifndef __SPU__ if (__builtin_finitef (nanf)) link_error (); -#endif if (__builtin_finitel (nanl)) link_error (); Index: gcc/testsuite/gcc.dg/float-range-1.c =================================================================== --- gcc/testsuite/gcc.dg/float-range-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/float-range-1.c (working copy) @@ -4,7 +4,6 @@ /* Origin: Joseph Myers <j...@polyomino.org.uk> */ /* { dg-do compile } */ /* { dg-options "-ansi -pedantic-errors -Woverflow" } */ -/* { dg-skip-if "No Inf support" { spu-*-* } } */ void f (void) Index: gcc/testsuite/gcc.dg/float-range-3.c =================================================================== --- gcc/testsuite/gcc.dg/float-range-3.c (revision 275321) +++ gcc/testsuite/gcc.dg/float-range-3.c (working copy) @@ -1,7 +1,6 @@ /* PR 23572 : warnings for out of range floating-point constants. */ /* { dg-do compile } */ /* { dg-options "-std=c99" } */ -/* { dg-skip-if "No Inf support" { spu-*-* } } */ #include <math.h> #ifndef INFINITY Index: gcc/testsuite/gcc.dg/float-range-4.c =================================================================== --- gcc/testsuite/gcc.dg/float-range-4.c (revision 275321) +++ gcc/testsuite/gcc.dg/float-range-4.c (working copy) @@ -1,7 +1,6 @@ /* PR 23572 : warnings for out of range floating-point constants. */ /* { dg-do compile } */ /* { dg-options "-Wno-overflow -std=c99" } */ -/* { dg-skip-if "No Inf support" { spu-*-* } } */ #include <math.h> #ifndef INFINITY Index: gcc/testsuite/gcc.dg/float-range-5.c =================================================================== --- gcc/testsuite/gcc.dg/float-range-5.c (revision 275321) +++ gcc/testsuite/gcc.dg/float-range-5.c (working copy) @@ -2,7 +2,6 @@ Test that they are NOT pedantic warnings. */ /* { dg-do compile } */ /* { dg-options "-pedantic-errors -std=c99" } */ -/* { dg-skip-if "No Inf support" { spu-*-* } } */ #include <math.h> #ifndef INFINITY Index: gcc/testsuite/gcc.dg/fold-overflow-1.c =================================================================== --- gcc/testsuite/gcc.dg/fold-overflow-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/fold-overflow-1.c (working copy) @@ -1,6 +1,5 @@ /* { dg-do compile } */ /* { dg-require-effective-target int32plus } */ -/* { dg-skip-if "No Inf support" { spu-*-* } } */ /* { dg-options "-O -ftrapping-math" } */ /* There should be exactly 2 +Inf in the assembly file. */ Index: gcc/testsuite/gcc.dg/format/ms_unnamed-1.c =================================================================== --- gcc/testsuite/gcc.dg/format/ms_unnamed-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/format/ms_unnamed-1.c (working copy) @@ -10,7 +10,7 @@ /* Definition of TItype follows same logic as in gcc.dg/titype-1.c, but must be a #define to avoid giving the type a name. */ -#if (defined(__LP64__) && !defined(__hppa__)) || defined(__SPU__) +#if defined(__LP64__) && !defined(__hppa__) #define TItype int __attribute__ ((mode (TI))) #else #define TItype long Index: gcc/testsuite/gcc.dg/format/unnamed-1.c =================================================================== --- gcc/testsuite/gcc.dg/format/unnamed-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/format/unnamed-1.c (working copy) @@ -10,7 +10,7 @@ /* Definition of TItype follows same logic as in gcc.dg/titype-1.c, but must be a #define to avoid giving the type a name. */ -#if (defined(__LP64__) && !defined(__hppa__)) || defined(__SPU__) +#if defined(__LP64__) && !defined(__hppa__) #define TItype int __attribute__ ((mode (TI))) #else #define TItype long Index: gcc/testsuite/gcc.dg/hex-round-1.c =================================================================== --- gcc/testsuite/gcc.dg/hex-round-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/hex-round-1.c (working copy) @@ -1,7 +1,6 @@ /* Test for hexadecimal float rounding: bug 21720. */ /* { dg-do link } */ /* { dg-options "-O -std=gnu99" } */ -/* { dg-skip-if "SPU float rounds towards zero" { spu-*-* } } */ #include <float.h> Index: gcc/testsuite/gcc.dg/hex-round-2.c =================================================================== --- gcc/testsuite/gcc.dg/hex-round-2.c (revision 275321) +++ gcc/testsuite/gcc.dg/hex-round-2.c (working copy) @@ -2,7 +2,6 @@ in number. */ /* { dg-do link } */ /* { dg-options "-O -std=gnu99" } */ -/* { dg-skip-if "SPU float rounds towards zero" { spu-*-* } } */ #include <float.h> Index: gcc/testsuite/gcc.dg/lower-subreg-1.c =================================================================== --- gcc/testsuite/gcc.dg/lower-subreg-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/lower-subreg-1.c (working copy) @@ -1,4 +1,4 @@ -/* { dg-do compile { target { ! { mips64 || { aarch64*-*-* arm*-*-* ia64-*-* sparc*-*-* spu-*-* tilegx-*-* } } } } } */ +/* { dg-do compile { target { ! { mips64 || { aarch64*-*-* arm*-*-* ia64-*-* sparc*-*-* tilegx-*-* } } } } } */ /* { dg-options "-O -fdump-rtl-subreg1" } */ /* { dg-additional-options "-mno-stv" { target ia32 } } */ /* { dg-skip-if "" { { i?86-*-* x86_64-*-* } && x32 } } */ Index: gcc/testsuite/gcc.dg/nrv3.c =================================================================== --- gcc/testsuite/gcc.dg/nrv3.c (revision 275321) +++ gcc/testsuite/gcc.dg/nrv3.c (working copy) @@ -3,12 +3,7 @@ /* { dg-do compile } */ /* { dg-options "-O -fdump-tree-optimized" } */ -#ifdef __SPU__ -/* SPU returns aggregates up to 1172 bytes in registers. */ -typedef struct { int x[300]; void *y; } S; -#else typedef struct { int x[20]; void *y; } S; -#endif typedef struct { int a; S b; } T; S nrv_candidate (void); void use_result (S, int); Index: gcc/testsuite/gcc.dg/pr15784-3.c =================================================================== --- gcc/testsuite/gcc.dg/pr15784-3.c (revision 275321) +++ gcc/testsuite/gcc.dg/pr15784-3.c (working copy) @@ -1,5 +1,4 @@ /* { dg-do compile } */ -/* { dg-skip-if "No NaN support" { spu-*-* } } */ /* SH4 without -mieee defaults to -ffinite-math-only. */ /* { dg-options "-fdump-tree-gimple -fno-finite-math-only" } */ /* Test for folding abs(x) where appropriate. */ Index: gcc/testsuite/gcc.dg/pr27095.c =================================================================== --- gcc/testsuite/gcc.dg/pr27095.c (revision 275321) +++ gcc/testsuite/gcc.dg/pr27095.c (working copy) @@ -19,7 +19,7 @@ memset (x, argc, strlen (x)); return 0; } -/* { dg-final { scan-assembler-not "(?n)strlen\(.*\n\)+.*strlen" { target { ! { powerpc*-*-darwin* hppa*-*-hpux* ia64-*-hpux* alpha*-*-* spu-*-* tic6x-*-* } } } } } */ +/* { dg-final { scan-assembler-not "(?n)strlen\(.*\n\)+.*strlen" { target { ! { powerpc*-*-darwin* hppa*-*-hpux* ia64-*-hpux* alpha*-*-* tic6x-*-* } } } } } */ /* hppa*-*-hpux* has an IMPORT statement for strlen (plus the branch). */ /* *-*-darwin* has something similar. */ /* tic6x emits a comment at the point where the delayed branch happens. */ @@ -29,5 +29,3 @@ /* { dg-final { scan-assembler-not "(?n)strlen\(.*\n\)+.*strlen\(.*\n\)+.*strlen\(.*\n\)+.*strlen" { target ia64-*-hpux* } } } */ /* alpha-*-* has a GOT load and the call. */ /* { dg-final { scan-assembler-not "(?n)jsr .*,strlen\(.*\n\)+.*jsr .*,strlen" { target alpha*-*-* } } } */ -/* spu-*-* has a branch hint and the call. */ -/* { dg-final { scan-assembler-not "(?n)brsl.*,strlen\(.*\n\)+.*brsl.*,strlen" { target spu-*-* } } } */ Index: gcc/testsuite/gcc.dg/pr28243.c =================================================================== --- gcc/testsuite/gcc.dg/pr28243.c (revision 275321) +++ gcc/testsuite/gcc.dg/pr28243.c (working copy) @@ -4,7 +4,6 @@ /* { dg-do compile } */ /* { dg-require-effective-target fpic } */ /* { dg-options "-O2 -ftracer -fPIC" } */ -/* { dg-skip-if "requires unsupported run-time relocation" { spu-*-* } } */ struct displayfuncs { void (*init) (); Index: gcc/testsuite/gcc.dg/pr28796-2.c =================================================================== --- gcc/testsuite/gcc.dg/pr28796-2.c (revision 275321) +++ gcc/testsuite/gcc.dg/pr28796-2.c (working copy) @@ -1,7 +1,6 @@ /* { dg-do run } */ /* { dg-options "-O2 -funsafe-math-optimizations -fno-finite-math-only -DUNSAFE" } */ /* { dg-add-options ieee } */ -/* { dg-skip-if "No Inf/NaN support" { spu-*-* } } */ #include "tg-tests.h" Index: gcc/testsuite/gcc.dg/pr30551-3.c =================================================================== --- gcc/testsuite/gcc.dg/pr30551-3.c (revision 275321) +++ gcc/testsuite/gcc.dg/pr30551-3.c (working copy) @@ -1,7 +1,6 @@ /* PR 30551 -Wmain is enabled by -pedantic-errors. */ /* { dg-do compile } */ /* { dg-options "-pedantic-errors" } */ -/* { dg-skip-if "-Wmain not enabled with -pedantic on SPU" { spu-*-* } } */ void main(char a) {} /* { dg-error "first argument of .main. should be .int." "int" } */ /* { dg-error ".main. takes only zero or two arguments" "zero or two" { target *-*-* } .-1 } */ /* { dg-error "return type of .main. is not .int." "return type" { target *-*-* } .-2 } */ Index: gcc/testsuite/gcc.dg/pr30551-6.c =================================================================== --- gcc/testsuite/gcc.dg/pr30551-6.c (revision 275321) +++ gcc/testsuite/gcc.dg/pr30551-6.c (working copy) @@ -1,7 +1,6 @@ /* PR 30551 -Wmain is enabled by -pedantic. */ /* { dg-do compile } */ /* { dg-options "-pedantic" } */ -/* { dg-skip-if "-Wmain not enabled with -pedantic on SPU" { spu-*-* } } */ void main(char a) {} /* { dg-warning "first argument of .main. should be .int." "int" } */ /* { dg-warning ".main. takes only zero or two arguments" "zero or two" { target *-*-* } .-1 } */ /* { dg-warning "return type of .main. is not .int." "return type" { target *-*-* } .-2 } */ Index: gcc/testsuite/gcc.dg/pr30551.c =================================================================== --- gcc/testsuite/gcc.dg/pr30551.c (revision 275321) +++ gcc/testsuite/gcc.dg/pr30551.c (working copy) @@ -1,7 +1,6 @@ /* PR 30551 -Wmain is enabled by -Wall. */ /* { dg-do compile } */ /* { dg-options "-Wall" } */ -/* { dg-skip-if "-Wmain not enabled with -Wall on SPU" { spu-*-* } } */ void main(char a) {} /* { dg-warning "first argument of .main. should be .int." "int" } */ /* { dg-warning ".main. takes only zero or two arguments" "zero or two" { target *-*-* } .-1 } */ /* { dg-warning "return type of .main. is not .int." "return type" { target *-*-* } .-2 } */ Index: gcc/testsuite/gcc.dg/pr70317.c =================================================================== --- gcc/testsuite/gcc.dg/pr70317.c (revision 275321) +++ gcc/testsuite/gcc.dg/pr70317.c (working copy) @@ -1,6 +1,6 @@ /* PR tree-optimization/70317 */ /* { dg-do compile } */ -/* { dg-skip-if "No NaN support" { spu*-*-* vax*-*-* pdp11*-*-* } } */ +/* { dg-skip-if "No NaN support" { vax*-*-* pdp11*-*-* } } */ /* { dg-options "-O2 -fdump-tree-optimized" } */ /* { dg-additional-options "-fno-common" { target hppa*-*-hpux* } } */ Index: gcc/testsuite/gcc.dg/sms-1.c =================================================================== --- gcc/testsuite/gcc.dg/sms-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/sms-1.c (working copy) @@ -40,5 +40,5 @@ return 0; } -/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target powerpc*-*-* spu-*-* } } } */ +/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target powerpc*-*-* } } } */ Index: gcc/testsuite/gcc.dg/sms-2.c =================================================================== --- gcc/testsuite/gcc.dg/sms-2.c (revision 275321) +++ gcc/testsuite/gcc.dg/sms-2.c (working copy) @@ -32,4 +32,4 @@ } } -/* { dg-final { scan-rtl-dump-times "SMS loop many exits" 1 "sms" { target spu-*-* powerpc*-*-* } } } */ +/* { dg-final { scan-rtl-dump-times "SMS loop many exits" 1 "sms" { target powerpc*-*-* } } } */ Index: gcc/testsuite/gcc.dg/sms-3.c =================================================================== --- gcc/testsuite/gcc.dg/sms-3.c (revision 275321) +++ gcc/testsuite/gcc.dg/sms-3.c (working copy) @@ -39,5 +39,5 @@ return 0; } -/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* powerpc*-*-* } } } */ +/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target powerpc*-*-* } } } */ Index: gcc/testsuite/gcc.dg/sms-4.c =================================================================== --- gcc/testsuite/gcc.dg/sms-4.c (revision 275321) +++ gcc/testsuite/gcc.dg/sms-4.c (working copy) @@ -35,5 +35,5 @@ return 0; } -/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* powerpc*-*-* } } } */ +/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target powerpc*-*-* } } } */ Index: gcc/testsuite/gcc.dg/sms-5.c =================================================================== --- gcc/testsuite/gcc.dg/sms-5.c (revision 275321) +++ gcc/testsuite/gcc.dg/sms-5.c (working copy) @@ -46,6 +46,5 @@ return 0; } -/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* } } } */ Index: gcc/testsuite/gcc.dg/sms-6.c =================================================================== --- gcc/testsuite/gcc.dg/sms-6.c (revision 275321) +++ gcc/testsuite/gcc.dg/sms-6.c (working copy) @@ -42,5 +42,4 @@ return 0; } -/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* } } } */ /* { dg-final { scan-rtl-dump-times "SMS succeeded" 3 "sms" { target powerpc*-*-* } } } */ Index: gcc/testsuite/gcc.dg/sms-7.c =================================================================== --- gcc/testsuite/gcc.dg/sms-7.c (revision 275321) +++ gcc/testsuite/gcc.dg/sms-7.c (working copy) @@ -44,5 +44,4 @@ return 0; } -/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* } } } */ Index: gcc/testsuite/gcc.dg/stack-usage-1.c =================================================================== --- gcc/testsuite/gcc.dg/stack-usage-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/stack-usage-1.c (working copy) @@ -79,8 +79,6 @@ # define SIZE 96 /* 256 - 160 bytes for register save area */ #elif defined (__s390__) # define SIZE 160 /* 256 - 96 bytes for register save area */ -#elif defined (__SPU__) -# define SIZE 224 #elif defined (__epiphany__) # define SIZE (256 - __EPIPHANY_STACK_OFFSET__) #elif defined (__RL78__) Index: gcc/testsuite/gcc.dg/strlenopt-73.c =================================================================== --- gcc/testsuite/gcc.dg/strlenopt-73.c (revision 275321) +++ gcc/testsuite/gcc.dg/strlenopt-73.c (working copy) @@ -89,7 +89,7 @@ /* The following tests assume GCC transforms the memcpy calls into int128_t assignments which it does only on targets that define - the MOVE_MAX macro to 16. That's only spu, s390, and i386 with + the MOVE_MAX macro to 16. That's only s390 and i386 with int128_t support. */ const char a8[32] = "01234567"; Index: gcc/testsuite/gcc.dg/titype-1.c =================================================================== --- gcc/testsuite/gcc.dg/titype-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/titype-1.c (working copy) @@ -1,7 +1,7 @@ /* { dg-do run } */ /* Not all platforms support TImode integers. */ -#if (defined(__LP64__) && !defined(__hppa__)) || defined(_WIN64) || defined(__SPU__) +#if (defined(__LP64__) && !defined(__hppa__)) || defined(_WIN64) typedef int TItype __attribute__ ((mode (TI))); #else typedef long TItype; Index: gcc/testsuite/gcc.dg/tls/thr-cse-1.c =================================================================== --- gcc/testsuite/gcc.dg/tls/thr-cse-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/tls/thr-cse-1.c (working copy) @@ -18,10 +18,9 @@ return a; } -/* { dg-final { scan-assembler-not "emutls_get_address.*emutls_get_address.*" { target { ! { "*-wrs-vxworks" "*-*-darwin8" "hppa*-*-hpux*" "spu-*-*" "i?86-*-mingw*" "x86_64-*-mingw*" visium-*-* } } } } } */ +/* { dg-final { scan-assembler-not "emutls_get_address.*emutls_get_address.*" { target { ! { "*-wrs-vxworks" "*-*-darwin8" "hppa*-*-hpux*" "i?86-*-mingw*" "x86_64-*-mingw*" visium-*-* } } } } } */ /* { dg-final { scan-assembler-not "call\tL___emutls_get_address.stub.*call\tL___emutls_get_address.stub.*" { target "*-*-darwin8" } } } */ /* { dg-final { scan-assembler-not "(b,l|bl) __emutls_get_address.*(b,l|bl) __emutls_get_address.*" { target "hppa*-*-hpux*" } } } */ -/* { dg-final { scan-assembler-not "(brsl|brasl)\t__emutls_get_address.*(brsl|brasl)\t__emutls_get_address.*" { target spu-*-* } } } */ /* { dg-final { scan-assembler-not "tls_lookup.*tls_lookup.*" { target *-wrs-vxworks } } } */ /* { dg-final { scan-assembler-not "call\t___emutls_get_address.*call\t___emutls_get_address" { target "i?86-*-mingw*" } } } */ /* { dg-final { scan-assembler-not "call\t__emutls_get_address.*call\t__emutls_get_address" { target "x86_64-*-mingw*" } } } */ Index: gcc/testsuite/gcc.dg/torture/builtin-attr-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-attr-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-attr-1.c (working copy) @@ -339,7 +339,7 @@ BUILTIN_FPTEST0 (huge_val) FPTEST2 (hypot) FPTEST1T (ilogb, int) -BUILTIN_FPTEST0 (inf) /* { dg-warning "does not support infinity" "INF unsupported" { target vax-*-* pdp11-*-* spu-*-* } } */ +BUILTIN_FPTEST0 (inf) /* { dg-warning "does not support infinity" "INF unsupported" { target vax-*-* pdp11-*-* } } */ FPTEST1 (j0) FPTEST1 (j1) FPTEST2ARG1 (jn, int) Index: gcc/testsuite/gcc.dg/torture/builtin-complex-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-complex-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-complex-1.c (working copy) @@ -19,13 +19,11 @@ abort (); \ } while (0) -#ifndef __SPU__ void comparef (float a, float b) { COMPARE_BODY (a, b, float, __builtin_copysignf); } -#endif void compare (double a, double b) @@ -39,7 +37,6 @@ COMPARE_BODY (a, b, long double, __builtin_copysignl); } -#ifndef __SPU__ void comparecf (_Complex float a, float r, float i) { @@ -46,7 +43,6 @@ comparef (__real__ a, r); comparef (__imag__ a, i); } -#endif void comparec (_Complex double a, double r, double i) @@ -95,10 +91,8 @@ void check_float (void) { -#ifndef __SPU__ ALL_CHECKS (0.0f, -0.0f, __builtin_nanf(""), __builtin_inff(), float, comparecf); -#endif } void Index: gcc/testsuite/gcc.dg/torture/builtin-cproj-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-cproj-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-cproj-1.c (working copy) @@ -18,11 +18,7 @@ #define CPROJ(X) __builtin_cproj(X) #define CPROJF(X) __builtin_cprojf(X) #define CPROJL(X) __builtin_cprojl(X) -#ifndef __SPU__ #define INF __builtin_inff() -#else -#define INF __builtin_inf() -#endif #define I 1i #define CPSGN(X,Y) __builtin_copysignf((X),(Y)) #define CIMAG(X) __builtin_cimagf(X) @@ -36,7 +32,6 @@ /* Test that (cproj(X) == ZERO+Inf) and that the signs of the imaginary parts match. ZERO is +/- 0i. */ -#ifndef __SPU__ #define TEST_CST_INF(X,ZERO) do { \ if (CPROJF(X) != ZERO+INF || CKSGN_I(CPROJF(X),ZERO+INF)) \ link_error(__LINE__); \ @@ -45,14 +40,6 @@ if (CPROJL(X) != ZERO+INF || CKSGN_I(CPROJL(X),ZERO+INF)) \ link_error(__LINE__); \ } while (0) -#else -#define TEST_CST_INF(X,ZERO) do { \ - if (CPROJ(X) != ZERO+INF || CKSGN_I(CPROJ(X),ZERO+INF)) \ - link_error(__LINE__); \ - if (CPROJL(X) != ZERO+INF || CKSGN_I(CPROJL(X),ZERO+INF)) \ - link_error(__LINE__); \ -} while (0) -#endif /* Test that (cproj(X) == X) for all finite (X). */ #define TEST_CST(X) do { \ @@ -62,7 +49,6 @@ /* Test that cproj(X + I*INF) -> (ZERO + INF), where ZERO is +-0i. NEG is either blank or a minus sign when ZERO is negative. */ -#ifndef __SPU__ #define TEST_IMAG_INF(NEG,ZERO) do { \ if (CPROJF(f+I*NEG INF) != ZERO+INF \ || CKSGN_I (CPROJF(f+I*NEG INF), ZERO+INF)) \ @@ -74,19 +60,8 @@ || CKSGN_I (CPROJL(ld+I*NEG INF), ZERO+INF)) \ link_error(__LINE__); \ } while (0) -#else -#define TEST_IMAG_INF(NEG,ZERO) do { \ - if (CPROJ(d+I*NEG INF) != ZERO+INF \ - || CKSGN_I (CPROJ(d+I*NEG INF), ZERO+INF)) \ - link_error(__LINE__); \ - if (CPROJL(ld+I*NEG INF) != ZERO+INF \ - || CKSGN_I (CPROJL(ld+I*NEG INF), ZERO+INF)) \ - link_error(__LINE__); \ -} while (0) -#endif /* Like TEST_IMAG_INF, but check that side effects are honored. */ -#ifndef __SPU__ #define TEST_IMAG_INF_SIDE_EFFECT(NEG,ZERO) do { \ int side = 4; \ if (CPROJF(++side+I*NEG INF) != ZERO+INF \ @@ -101,23 +76,9 @@ if (side != 10) \ link_error(__LINE__); \ } while (0) -#else -#define TEST_IMAG_INF_SIDE_EFFECT(NEG,ZERO) do { \ - int side = 4; \ - if (CPROJ(++side+I*NEG INF) != ZERO+INF \ - || CKSGN_I (CPROJ(++side+I*NEG INF), ZERO+INF)) \ - link_error(__LINE__); \ - if (CPROJL(++side+I*NEG INF) != ZERO+INF \ - || CKSGN_I (CPROJL(++side+I*NEG INF), ZERO+INF)) \ - link_error(__LINE__); \ - if (side != 8) \ - link_error(__LINE__); \ -} while (0) -#endif /* Test that cproj(INF, POSITIVE) -> INF+0i. NEG is either blank or a minus sign to test negative INF. */ -#ifndef __SPU__ #define TEST_REAL_INF(NEG) do { \ __real cf = NEG INF; \ __imag cf = (x ? 4 : 5); \ @@ -135,23 +96,8 @@ || CKSGN_I (CPROJL(cld), INF)) \ link_error(__LINE__); \ } while (0) -#else -#define TEST_REAL_INF(NEG) do { \ - __real cd = NEG INF; \ - __imag cd = (x ? 4 : 5); \ - if (CPROJ(cd) != INF \ - || CKSGN_I (CPROJ(cd), INF)) \ - link_error(__LINE__); \ - __real cld = NEG INF; \ - __imag cld = (x ? 4 : 5); \ - if (CPROJL(cld) != INF \ - || CKSGN_I (CPROJL(cld), INF)) \ - link_error(__LINE__); \ -} while (0) -#endif /* Like TEST_REAL_INF, but check that side effects are honored. */ -#ifndef __SPU__ #define TEST_REAL_INF_SIDE_EFFECT(NEG) do { \ int side = -9; \ __real cf = NEG INF; \ @@ -172,23 +118,6 @@ if (side != -3) \ link_error(__LINE__); \ } while (0) -#else -#define TEST_REAL_INF_SIDE_EFFECT(NEG) do { \ - int side = -9; \ - __real cd = NEG INF; \ - __imag cd = (x ? 4 : 5); \ - if (CPROJ((++side,cd)) != INF \ - || CKSGN_I (CPROJ((++side,cd)), INF)) \ - link_error(__LINE__); \ - __real cld = NEG INF; \ - __imag cld = (x ? 4 : 5); \ - if (CPROJL((++side,cld)) != INF \ - || CKSGN_I (CPROJL((++side,cld)), INF)) \ - link_error(__LINE__); \ - if (side != -5) \ - link_error(__LINE__); \ -} while (0) -#endif void foo (_Complex long double cld, _Complex double cd, _Complex float cf, long double ld, double d, float f, int x) Index: gcc/testsuite/gcc.dg/torture/builtin-frexp-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-frexp-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-frexp-1.c (working copy) @@ -54,7 +54,6 @@ /* Test that FUNCRES(frexp(NEG FUNCARG(ARGARG),&i)) is false. Check the sign as well. Ensure side-effects are evaluated in i. */ -#ifndef __SPU__ #define TESTIT_FREXP2(NEG,FUNCARG,ARGARG,FUNCRES) do { \ int i=5; \ if (!__builtin_##FUNCRES##f(__builtin_frexpf(NEG __builtin_##FUNCARG##f(ARGARG),&i)) \ @@ -70,20 +69,6 @@ || CKEXP(i,8)) \ link_error(__LINE__); \ } while (0) -#else -#define TESTIT_FREXP2(NEG,FUNCARG,ARGARG,FUNCRES) do { \ - int i=6; \ - /* SPU single-precision floating point format does not support Inf or Nan. */ \ - if (!__builtin_##FUNCRES(__builtin_frexp(NEG __builtin_##FUNCARG(ARGARG),&i)) \ - || CKSGN(__builtin_frexp(NEG __builtin_##FUNCARG(ARGARG),(i++,&i)), NEG __builtin_##FUNCARG(ARGARG)) \ - || CKEXP(i,7)) \ - link_error(__LINE__); \ - if (!__builtin_##FUNCRES##l(__builtin_frexpl(NEG __builtin_##FUNCARG##l(ARGARG),&i)) \ - || CKSGN_L(__builtin_frexpl(NEG __builtin_##FUNCARG##l(ARGARG),(i++,&i)), NEG __builtin_##FUNCARG##l(ARGARG)) \ - || CKEXP(i,8)) \ - link_error(__LINE__); \ - } while (0) -#endif void __attribute__ ((__noinline__)) foo(void) Index: gcc/testsuite/gcc.dg/torture/builtin-ldexp-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-ldexp-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-ldexp-1.c (working copy) @@ -47,7 +47,6 @@ /* Test that FUNCRES(FUNC(NEG FUNCARG(ARGARG),ARG2)) is false. Check the sign as well. */ -#ifndef __SPU__ #define TESTIT3(FUNC,NEG,FUNCARG,ARGARG,ARG2,FUNCRES) do { \ if (!__builtin_##FUNCRES##f(__builtin_##FUNC##f(NEG __builtin_##FUNCARG##f(ARGARG),ARG2)) \ || CKSGN_F(__builtin_##FUNC##f(NEG __builtin_##FUNCARG##f(ARGARG),ARG2), NEG __builtin_##FUNCARG##f(ARGARG))) \ @@ -59,17 +58,6 @@ || CKSGN_L(__builtin_##FUNC##l(NEG __builtin_##FUNCARG##l(ARGARG),ARG2), NEG __builtin_##FUNCARG##l(ARGARG))) \ link_error(__LINE__); \ } while (0) -#else -#define TESTIT3(FUNC,NEG,FUNCARG,ARGARG,ARG2,FUNCRES) do { \ - /* SPU single-precision floating point format does not support Inf or Nan. */ \ - if (!__builtin_##FUNCRES(__builtin_##FUNC(NEG __builtin_##FUNCARG(ARGARG),ARG2)) \ - || CKSGN(__builtin_##FUNC(NEG __builtin_##FUNCARG(ARGARG),ARG2), NEG __builtin_##FUNCARG(ARGARG))) \ - link_error(__LINE__); \ - if (!__builtin_##FUNCRES##l(__builtin_##FUNC##l(NEG __builtin_##FUNCARG##l(ARGARG),ARG2)) \ - || CKSGN_L(__builtin_##FUNC##l(NEG __builtin_##FUNCARG##l(ARGARG),ARG2), NEG __builtin_##FUNCARG##l(ARGARG))) \ - link_error(__LINE__); \ - } while (0) -#endif /* Using foo==MIN/MAX float values, test that FUNC(foo,EXP) == foo*exp2(EXP), and also that FUNC(foo,-EXP) == foo*exp2(-EXP). */ Index: gcc/testsuite/gcc.dg/torture/builtin-logb-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-logb-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-logb-1.c (working copy) @@ -48,7 +48,6 @@ /* Test if FUNCRES(FUNC(NEG FUNCARG(ARGARG))) is false. Check the sign as well. */ -#ifndef __SPU__ #define TESTIT3(FUNC,NEG,FUNCARG,ARGARG,FUNCRES,NEG2) do { \ if (!__builtin_##FUNCRES##f(__builtin_##FUNC(NEG __builtin_##FUNCARG##f(ARGARG))) \ || CKSGN_F(__builtin_##FUNC##f(NEG __builtin_##FUNCARG##f(ARGARG)), NEG2 __builtin_##FUNCARG##f(ARGARG))) \ @@ -60,17 +59,6 @@ || CKSGN_L(__builtin_##FUNC##l(NEG __builtin_##FUNCARG##l(ARGARG)), NEG2 __builtin_##FUNCARG##l(ARGARG))) \ link_error(__LINE__); \ } while (0) -#else -#define TESTIT3(FUNC,NEG,FUNCARG,ARGARG,FUNCRES,NEG2) do { \ - /* SPU single-precision floating point format does not support Inf or Nan. */ \ - if (!__builtin_##FUNCRES(__builtin_##FUNC(NEG __builtin_##FUNCARG(ARGARG))) \ - || CKSGN(__builtin_##FUNC(NEG __builtin_##FUNCARG(ARGARG)), NEG2 __builtin_##FUNCARG(ARGARG))) \ - link_error(__LINE__); \ - if (!__builtin_##FUNCRES##l(__builtin_##FUNC##l(NEG __builtin_##FUNCARG##l(ARGARG))) \ - || CKSGN_L(__builtin_##FUNC##l(NEG __builtin_##FUNCARG##l(ARGARG)), NEG2 __builtin_##FUNCARG##l(ARGARG))) \ - link_error(__LINE__); \ - } while (0) -#endif void __attribute__ ((__noinline__)) foo(void) Index: gcc/testsuite/gcc.dg/torture/builtin-math-2.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-math-2.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-math-2.c (working copy) @@ -60,21 +60,15 @@ void bar() { /* An argument of NaN is not evaluated at compile-time. */ -#ifndef __SPU__ foof (__builtin_exp2f (__builtin_nanf(""))); -#endif foo (__builtin_exp2 (__builtin_nan(""))); fool (__builtin_exp2l (__builtin_nanl(""))); /* An argument of Inf/-Inf is not evaluated at compile-time. */ -#ifndef __SPU__ foof (__builtin_exp2f (__builtin_inff())); -#endif foo (__builtin_exp2 (__builtin_inf())); fool (__builtin_exp2l (__builtin_infl())); -#ifndef __SPU__ foof (__builtin_exp2f (-__builtin_inff())); -#endif foo (__builtin_exp2 (-__builtin_inf())); fool (__builtin_exp2l (-__builtin_infl())); @@ -137,36 +131,24 @@ TESTIT (tgamma, -3.0); /* An argument of NaN is not evaluated at compile-time. */ -#ifndef __SPU__ foof (__builtin_powf (__builtin_nanf(""), 2.5F)); -#endif foo (__builtin_pow (__builtin_nan(""), 2.5)); fool (__builtin_powl (__builtin_nanl(""), 2.5L)); -#ifndef __SPU__ foof (__builtin_powf (2.5F, __builtin_nanf(""))); -#endif foo (__builtin_pow (2.5, __builtin_nan(""))); fool (__builtin_powl (2.5L, __builtin_nanl(""))); /* An argument of Inf/-Inf is not evaluated at compile-time. */ -#ifndef __SPU__ foof (__builtin_powf (__builtin_inff(), 2.5F)); -#endif foo (__builtin_pow (__builtin_inf(), 2.5)); fool (__builtin_powl (__builtin_infl(), 2.5L)); -#ifndef __SPU__ foof (__builtin_powf (-__builtin_inff(), 2.5F)); -#endif foo (__builtin_pow (-__builtin_inf(), 2.5)); fool (__builtin_powl (-__builtin_infl(), 2.5L)); -#ifndef __SPU__ foof (__builtin_powf (2.5F, __builtin_inff())); -#endif foo (__builtin_pow (2.5, __builtin_inf())); fool (__builtin_powl (2.5L, __builtin_infl())); -#ifndef __SPU__ foof (__builtin_powf (2.5F, -__builtin_inff())); -#endif foo (__builtin_pow (2.5, -__builtin_inf())); fool (__builtin_powl (2.5L, -__builtin_infl())); @@ -242,25 +224,17 @@ TESTIT (ilogb, 0.0); TESTIT (ilogb, -0.0); -#ifndef __SPU__ foof (__builtin_ilogbf (__builtin_inff())); -#endif foo (__builtin_ilogb (__builtin_inf())); fool (__builtin_ilogbl (__builtin_infl())); -#ifndef __SPU__ foof (__builtin_ilogbf (-__builtin_inff())); -#endif foo (__builtin_ilogb (-__builtin_inf())); fool (__builtin_ilogbl (-__builtin_infl())); -#ifndef __SPU__ foof (__builtin_ilogbf (__builtin_nanf(""))); -#endif foo (__builtin_ilogb (__builtin_nan(""))); fool (__builtin_ilogbl (__builtin_nanl(""))); -#ifndef __SPU__ foof (__builtin_ilogbf (-__builtin_nanf(""))); -#endif foo (__builtin_ilogb (-__builtin_nan(""))); fool (__builtin_ilogbl (-__builtin_nanl(""))); @@ -306,8 +280,7 @@ } /* { dg-final { scan-tree-dump-times "exp2 " 9 "original" } } */ -/* { dg-final { scan-tree-dump-times "exp2f" 9 "original" { target { ! { spu*-*-* } } } } } */ -/* { dg-final { scan-tree-dump-times "exp2f" 6 "original" { target { spu*-*-* } } } } */ +/* { dg-final { scan-tree-dump-times "exp2f" 9 "original" } } */ /* { dg-final { scan-tree-dump-times "exp2l" 9 "original" } } */ /* { dg-final { scan-tree-dump-times "asin " 2 "original" } } */ /* { dg-final { scan-tree-dump-times "asinf" 2 "original" } } */ @@ -337,8 +310,7 @@ /* { dg-final { scan-tree-dump-times "tgammaf" 5 "original" } } */ /* { dg-final { scan-tree-dump-times "tgammal" 5 "original" } } */ /* { dg-final { scan-tree-dump-times "pow " 13 "original" } } */ -/* { dg-final { scan-tree-dump-times "powf" 13 "original" { target { ! { spu*-*-* } } } } } */ -/* { dg-final { scan-tree-dump-times "powf" 7 "original" { target { spu*-*-* } } } } */ +/* { dg-final { scan-tree-dump-times "powf" 13 "original" } } */ /* { dg-final { scan-tree-dump-times "powl" 13 "original" } } */ /* { dg-final { scan-tree-dump-times "sqrt " 1 "original" } } */ /* { dg-final { scan-tree-dump-times "sqrtf" 1 "original" } } */ @@ -356,8 +328,7 @@ /* { dg-final { scan-tree-dump-times "_logbf" 2 "original" } } */ /* { dg-final { scan-tree-dump-times "_logbl" 2 "original" } } */ /* { dg-final { scan-tree-dump-times "ilogb " 6 "original" } } */ -/* { dg-final { scan-tree-dump-times "ilogbf" 6 "original" { target { ! { spu*-*-* } } } } } */ -/* { dg-final { scan-tree-dump-times "ilogbf" 2 "original" { target { spu*-*-* } } } } */ +/* { dg-final { scan-tree-dump-times "ilogbf" 6 "original" } } */ /* { dg-final { scan-tree-dump-times "ilogbl" 6 "original" } } */ /* { dg-final { scan-tree-dump-times "y0 " 3 "original" } } */ /* { dg-final { scan-tree-dump-times "y0f" 3 "original" } } */ Index: gcc/testsuite/gcc.dg/torture/builtin-math-5.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-math-5.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-math-5.c (working copy) @@ -28,21 +28,15 @@ void bar() { /* An argument of NaN is not evaluated at compile-time. */ -#ifndef __SPU__ foof (__builtin_csqrtf (__builtin_nanf(""))); -#endif foo (__builtin_csqrt (__builtin_nan(""))); fool (__builtin_csqrtl (__builtin_nanl(""))); /* An argument of Inf/-Inf is not evaluated at compile-time. */ -#ifndef __SPU__ foof (__builtin_csqrtf (__builtin_inff())); -#endif foo (__builtin_csqrt (__builtin_inf())); fool (__builtin_csqrtl (__builtin_infl())); -#ifndef __SPU__ foof (__builtin_csqrtf (-__builtin_inff())); -#endif foo (__builtin_csqrt (-__builtin_inf())); fool (__builtin_csqrtl (-__builtin_infl())); @@ -51,36 +45,24 @@ TESTIT (cexp, -1e20); /* An argument of NaN is not evaluated at compile-time. */ -#ifndef __SPU__ foof (__builtin_cpowf (__builtin_nanf(""), 2.5F)); -#endif foo (__builtin_cpow (__builtin_nan(""), 2.5)); fool (__builtin_cpowl (__builtin_nanl(""), 2.5L)); -#ifndef __SPU__ foof (__builtin_cpowf (2.5F, __builtin_nanf(""))); -#endif foo (__builtin_cpow (2.5, __builtin_nan(""))); fool (__builtin_cpowl (2.5L, __builtin_nanl(""))); /* An argument of Inf/-Inf is not evaluated at compile-time. */ -#ifndef __SPU__ foof (__builtin_cpowf (__builtin_inff(), 2.5F)); -#endif foo (__builtin_cpow (__builtin_inf(), 2.5)); fool (__builtin_cpowl (__builtin_infl(), 2.5L)); -#ifndef __SPU__ foof (__builtin_cpowf (-__builtin_inff(), 2.5F)); -#endif foo (__builtin_cpow (-__builtin_inf(), 2.5)); fool (__builtin_cpowl (-__builtin_infl(), 2.5L)); -#ifndef __SPU__ foof (__builtin_cpowf (2.5F, __builtin_inff())); -#endif foo (__builtin_cpow (2.5, __builtin_inf())); fool (__builtin_cpowl (2.5L, __builtin_infl())); -#ifndef __SPU__ foof (__builtin_cpowf (2.5F, -__builtin_inff())); -#endif foo (__builtin_cpow (2.5, -__builtin_inf())); fool (__builtin_cpowl (2.5L, -__builtin_infl())); @@ -110,14 +92,12 @@ } -/* { dg-final { scan-tree-dump-times "csqrtf" 3 "original" { target { ! { spu*-*-* } } } } } */ -/* { dg-final { scan-tree-dump-times "csqrtf" 0 "original" { target { spu*-*-* } } } } */ +/* { dg-final { scan-tree-dump-times "csqrtf" 3 "original" } } */ /* { dg-final { scan-tree-dump-times "csqrt " 3 "original" } } */ /* { dg-final { scan-tree-dump-times "csqrtl" 3 "original" } } */ /* { dg-final { scan-tree-dump-times "cexpf" 2 "original" } } */ /* { dg-final { scan-tree-dump-times "cexp " 2 "original" } } */ /* { dg-final { scan-tree-dump-times "cexpl" 2 "original" } } */ -/* { dg-final { scan-tree-dump-times "cpowf" 18 "original" { target { ! { spu*-*-* } } } } } */ -/* { dg-final { scan-tree-dump-times "cpowf" 12 "original" { target { spu*-*-* } } } } */ +/* { dg-final { scan-tree-dump-times "cpowf" 18 "original" } } */ /* { dg-final { scan-tree-dump-times "cpow " 18 "original" } } */ /* { dg-final { scan-tree-dump-times "cpowl" 18 "original" } } */ Index: gcc/testsuite/gcc.dg/torture/builtin-modf-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/builtin-modf-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/builtin-modf-1.c (working copy) @@ -63,7 +63,6 @@ /* Test that modf(NEG FUNCARG(ARGARG, &iptr)) == FRACRES && FUNCRES(iptr) is true. Check the sign of both as well. This is for checking an argument of Inf. */ -#ifndef __SPU__ #define TESTIT_MODF2(NEG,FUNCARG,ARGARG,FUNCRES,FRACRES) do { \ float iptrf = 0.5; double iptr = 0.5; long double iptrl = 0.5; \ if (__builtin_modff(NEG __builtin_##FUNCARG##f(ARGARG),&iptrf) != FRACRES##f \ @@ -82,27 +81,10 @@ || CKSGN_IPTR_L(iptrl,FRACRES##l)) \ link_error(__LINE__); \ } while (0) -#else -#define TESTIT_MODF2(NEG,FUNCARG,ARGARG,FUNCRES,FRACRES) do { \ - /* SPU single-precision floating point format does not support Inf or Nan. */ \ - double iptr = 0.5; long double iptrl = 0.5; \ - if (__builtin_modf(NEG __builtin_##FUNCARG(ARGARG),&iptr) != FRACRES \ - || CKSGN(__builtin_modf(NEG __builtin_##FUNCARG(ARGARG),&iptr), FRACRES) \ - || CKIPTR(!__builtin_##FUNCRES(iptr),0) \ - || CKSGN_IPTR(iptr,FRACRES)) \ - link_error(__LINE__); \ - if (__builtin_modfl(NEG __builtin_##FUNCARG##l(ARGARG),&iptrl) != FRACRES##l \ - || CKSGN_L(__builtin_modfl(NEG __builtin_##FUNCARG##l(ARGARG),&iptrl), FRACRES##l) \ - || CKIPTR(!__builtin_##FUNCRES##l(iptrl),0) \ - || CKSGN_IPTR_L(iptrl,FRACRES##l)) \ - link_error(__LINE__); \ - } while (0) -#endif /* Test that FUNCRES(modf(NEG FUNCARG(ARGARG, &iptr))) is true && FUNCRES(iptr) is true. Check the sign of both as well. This is for checking an argument of NaN. */ -#ifndef __SPU__ #define TESTIT_MODF3(NEG,FUNCARG,ARGARG,FUNCRES) do { \ float iptrf = 0.5; double iptr = 0.5; long double iptrl = 0.5; \ if (CKRES(!__builtin_##FUNCRES##f(__builtin_modff(NEG __builtin_##FUNCARG##f(ARGARG),&iptrf))) \ @@ -121,22 +103,6 @@ || CKSGN_IPTR_L(iptrl,NEG 1)) \ link_error(__LINE__); \ } while (0) -#else -#define TESTIT_MODF3(NEG,FUNCARG,ARGARG,FUNCRES) do { \ - /* SPU single-precision floating point format does not support Inf or Nan. */ \ - double iptr = 0.5; long double iptrl = 0.5; \ - if (CKRES(!__builtin_##FUNCRES(__builtin_modf(NEG __builtin_##FUNCARG(ARGARG),&iptr))) \ - || CKSGN(__builtin_modf(NEG __builtin_##FUNCARG(ARGARG),&iptr), NEG 1) \ - || CKIPTR(!__builtin_##FUNCRES(iptr),0) \ - || CKSGN_IPTR(iptr,NEG 1)) \ - link_error(__LINE__); \ - if (CKRES(!__builtin_##FUNCRES##l(__builtin_modfl(NEG __builtin_##FUNCARG##l(ARGARG),&iptrl))) \ - || CKSGN_L(__builtin_modfl(NEG __builtin_##FUNCARG##l(ARGARG),&iptrl), NEG 1) \ - || CKIPTR(!__builtin_##FUNCRES##l(iptrl),0) \ - || CKSGN_IPTR_L(iptrl,NEG 1)) \ - link_error(__LINE__); \ - } while (0) -#endif void __attribute__ ((__noinline__)) foo(void) Index: gcc/testsuite/gcc.dg/torture/fp-int-convert.h =================================================================== --- gcc/testsuite/gcc.dg/torture/fp-int-convert.h (revision 275321) +++ gcc/testsuite/gcc.dg/torture/fp-int-convert.h (working copy) @@ -7,7 +7,7 @@ /* Not all platforms support TImode integers; logic as in gcc.dg/titype-1.c. */ -#if (defined(__LP64__) && !defined(__hppa__)) || defined(_WIN64) || defined(__SPU__) +#if (defined(__LP64__) && !defined(__hppa__)) || defined(_WIN64) typedef int TItype __attribute__ ((mode (TI))); typedef unsigned int UTItype __attribute__ ((mode (TI))); #else Index: gcc/testsuite/gcc.dg/torture/pr25947-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/pr25947-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/pr25947-1.c (working copy) @@ -1,6 +1,5 @@ /* PR target/25947: define_split in cris.md caused unrecognized insn. */ /* { dg-options "-fpic" { target fpic } } */ -/* { dg-skip-if "requires unsupported run-time relocation" { spu-*-* } { "-O0" } { "" } } */ extern char *rl_line_buffer; extern int rl_point; Index: gcc/testsuite/gcc.dg/torture/type-generic-1.c =================================================================== --- gcc/testsuite/gcc.dg/torture/type-generic-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/torture/type-generic-1.c (working copy) @@ -3,7 +3,6 @@ /* { dg-do run } */ /* { dg-require-effective-target inf } */ -/* { dg-skip-if "No Inf/NaN support" { spu-*-* } } */ /* { dg-skip-if "No subnormal support" { csky-*-* } { "-mhard-float" } } */ /* { dg-options "-DUNSAFE" { target tic6x*-*-* visium-*-* nvptx-*-* } } */ /* { dg-add-options ieee } */ Index: gcc/testsuite/gcc.dg/tree-ssa/20040204-1.c =================================================================== --- gcc/testsuite/gcc.dg/tree-ssa/20040204-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/tree-ssa/20040204-1.c (working copy) @@ -33,4 +33,4 @@ that the && should be emitted (based on BRANCH_COST). Fix this by teaching dom to look through && and register all components as true. */ -/* { dg-final { scan-tree-dump-times "link_error" 0 "optimized" { xfail { ! "alpha*-*-* arm*-*-* aarch64*-*-* powerpc*-*-* cris-*-* crisv32-*-* hppa*-*-* i?86-*-* mmix-*-* mips*-*-* m68k*-*-* moxie-*-* nds32*-*-* s390*-*-* sh*-*-* sparc*-*-* spu-*-* visium-*-* x86_64-*-* riscv*-*-* or1k*-*-* msp430-*-* pru*-*-*" } } } } */ +/* { dg-final { scan-tree-dump-times "link_error" 0 "optimized" { xfail { ! "alpha*-*-* arm*-*-* aarch64*-*-* powerpc*-*-* cris-*-* crisv32-*-* hppa*-*-* i?86-*-* mmix-*-* mips*-*-* m68k*-*-* moxie-*-* nds32*-*-* s390*-*-* sh*-*-* sparc*-*-* visium-*-* x86_64-*-* riscv*-*-* or1k*-*-* msp430-*-* pru*-*-*" } } } } */ Index: gcc/testsuite/gcc.dg/tree-ssa/ivopts-1.c =================================================================== --- gcc/testsuite/gcc.dg/tree-ssa/ivopts-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/tree-ssa/ivopts-1.c (working copy) @@ -1,7 +1,7 @@ /* { dg-do compile } */ /* Not all platforms support TImode integers. */ -#if (defined(__LP64__) && !defined(__hppa__)) || defined(__SPU__) +#if defined(__LP64__) && !defined(__hppa__) typedef int TItype __attribute__ ((mode (TI))); #else typedef long TItype; Index: gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-3.c =================================================================== --- gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-3.c (revision 275321) +++ gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-3.c (working copy) @@ -5,7 +5,7 @@ When the condition is true, we distribute "(int) (a + b)" as "(int) a + (int) b", otherwise we keep the original. */ -/* { dg-do compile { target { { ! mips64 } && { ! spu-*-* } } } } */ +/* { dg-do compile { target { ! mips64 } } } */ /* { dg-options "-O -fno-tree-forwprop -fno-tree-ccp -fwrapv -fdump-tree-fre1-details" } */ /* From PR14844. */ Index: gcc/testsuite/gcc.dg/tree-ssa/vector-6.c =================================================================== --- gcc/testsuite/gcc.dg/tree-ssa/vector-6.c (revision 275321) +++ gcc/testsuite/gcc.dg/tree-ssa/vector-6.c (working copy) @@ -32,5 +32,5 @@ return v; } -/* { dg-final { scan-tree-dump-times "Now a gimple register: v" 2 "ssa" { target { { i?86-*-* x86_64-*-* aarch64*-*-* spu*-*-* } || { powerpc_altivec_ok } } } } } */ -/* { dg-final { scan-tree-dump-times "Now a gimple register: v" 2 "ccp1" { target { { i?86-*-* x86_64-*-* aarch64*-*-* spu*-*-* } || { powerpc_altivec_ok } } } } } */ +/* { dg-final { scan-tree-dump-times "Now a gimple register: v" 2 "ssa" { target { { i?86-*-* x86_64-*-* aarch64*-*-* } || { powerpc_altivec_ok } } } } } */ +/* { dg-final { scan-tree-dump-times "Now a gimple register: v" 2 "ccp1" { target { { i?86-*-* x86_64-*-* aarch64*-*-* } || { powerpc_altivec_ok } } } } } */ Index: gcc/testsuite/gcc.dg/uninit-C-O0.c =================================================================== --- gcc/testsuite/gcc.dg/uninit-C-O0.c (revision 275321) +++ gcc/testsuite/gcc.dg/uninit-C-O0.c (working copy) @@ -3,7 +3,7 @@ /* { dg-options "-Wuninitialized" } */ /* Not all platforms support TImode integers. */ -#if (defined(__LP64__) && !defined(__hppa__)) || defined(__SPU__) +#if defined(__LP64__) && !defined(__hppa__) typedef int TItype __attribute__ ((mode (TI))); #else typedef long TItype; Index: gcc/testsuite/gcc.dg/uninit-C.c =================================================================== --- gcc/testsuite/gcc.dg/uninit-C.c (revision 275321) +++ gcc/testsuite/gcc.dg/uninit-C.c (working copy) @@ -3,7 +3,7 @@ /* { dg-options "-O -Wuninitialized" } */ /* Not all platforms support TImode integers. */ -#if (defined(__LP64__) && !defined(__hppa__)) || defined(__SPU__) +#if defined(__LP64__) && !defined(__hppa__) typedef int TItype __attribute__ ((mode (TI))); #else typedef long TItype; Index: gcc/testsuite/gcc.dg/vect/no-math-errno-slp-32.c =================================================================== --- gcc/testsuite/gcc.dg/vect/no-math-errno-slp-32.c (revision 275321) +++ gcc/testsuite/gcc.dg/vect/no-math-errno-slp-32.c (working copy) @@ -13,4 +13,4 @@ } } -/* { dg-final { scan-tree-dump "pattern recognized" "vect" { xfail spu*-*-* } } } */ +/* { dg-final { scan-tree-dump "pattern recognized" "vect" } } */ Index: gcc/testsuite/gcc.dg/vect/no-math-errno-vect-pow-1.c =================================================================== --- gcc/testsuite/gcc.dg/vect/no-math-errno-vect-pow-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/vect/no-math-errno-vect-pow-1.c (working copy) @@ -10,4 +10,4 @@ x[i] = __builtin_pow (x[i], 0.5); } -/* { dg-final { scan-tree-dump "pattern recognized" "vect" { xfail spu*-*-* } } } */ +/* { dg-final { scan-tree-dump "pattern recognized" "vect" } } */ Index: gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/vect/vect-float-extend-1.c (working copy) @@ -38,4 +38,4 @@ return main1 (); } -/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail spu*-*-* } } } */ +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ Index: gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c =================================================================== --- gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c (revision 275321) +++ gcc/testsuite/gcc.dg/vect/vect-float-truncate-1.c (working copy) @@ -37,4 +37,4 @@ return main1 (); } -/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail spu*-*-* } } } */ +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ Index: gcc/testsuite/gcc.dg/vect/vect.exp =================================================================== --- gcc/testsuite/gcc.dg/vect/vect.exp (revision 275321) +++ gcc/testsuite/gcc.dg/vect/vect.exp (working copy) @@ -266,9 +266,6 @@ # Don't allow IPA cloning, because it throws our counts out of whack. set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS lappend DEFAULT_VECTCFLAGS "-O3" "-fno-ipa-cp-clone" -if [istarget "spu-*-*"] { - lappend DEFAULT_VECTCFLAGS "-funroll-loops" -} et-dg-runtest dg-runtest [lsort \ [glob -nocomplain $srcdir/$subdir/O3-*.\[cS\]]] \ Index: gcc/testsuite/gfortran.dg/bessel_6.f90 =================================================================== --- gcc/testsuite/gfortran.dg/bessel_6.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/bessel_6.f90 (working copy) @@ -1,12 +1,8 @@ -! { dg-do run { xfail spu-*-* } } ! { dg-add-options ieee } ! ! PR fortran/36158 ! PR fortran/33197 ! -! XFAILed for SPU targets since we don't have an accurate library -! implementation of the single-precision Bessel functions. -! ! Run-time tests for transformations BESSEL_JN ! implicit none Index: gcc/testsuite/gfortran.dg/bessel_7.f90 =================================================================== --- gcc/testsuite/gfortran.dg/bessel_7.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/bessel_7.f90 (working copy) @@ -1,4 +1,4 @@ -! { dg-do run { xfail *-*-mingw* spu-*-* } } +! { dg-do run { xfail *-*-mingw* } } ! { dg-add-options ieee } ! ! PR fortran/36158 @@ -8,9 +8,6 @@ ! of BESSEL_YN(n,x) has different results. It returns NAN rather than ! -INF for "x=0.0" and all "n". ! -! XFAILed for SPU targets since we don't have an accurate library -! implementation of the single-precision Bessel functions. -! ! Run-time tests for transformations BESSEL_YN ! implicit none Index: gcc/testsuite/gfortran.dg/char4_iunit_1.f03 =================================================================== --- gcc/testsuite/gfortran.dg/char4_iunit_1.f03 (revision 275321) +++ gcc/testsuite/gfortran.dg/char4_iunit_1.f03 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! PR37077 Implement Internal Unit I/O for character KIND=4 ! Test case prepared by Jerry DeLisle <jvdeli...@gcc.gnu.org> program char4_iunit_1 Index: gcc/testsuite/gfortran.dg/chmod_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/chmod_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/chmod_1.f90 (working copy) @@ -1,4 +1,4 @@ -! { dg-do run { target { ! { *-*-mingw* *-*-cygwin* spu-*-* } } } } +! { dg-do run { target { ! { *-*-mingw* *-*-cygwin* } } } } ! { dg-options "-std=gnu" } ! See PR38956. Test fails on cygwin when user has Administrator rights implicit none Index: gcc/testsuite/gfortran.dg/chmod_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/chmod_2.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/chmod_2.f90 (working copy) @@ -1,4 +1,4 @@ -! { dg-do run { target { ! { *-*-mingw* *-*-cygwin* spu-*-* } } } } +! { dg-do run { target { ! { *-*-mingw* *-*-cygwin* } } } } ! { dg-options "-std=gnu" } ! See PR38956. Test fails on cygwin when user has Administrator rights implicit none Index: gcc/testsuite/gfortran.dg/chmod_3.f90 =================================================================== --- gcc/testsuite/gfortran.dg/chmod_3.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/chmod_3.f90 (working copy) @@ -1,4 +1,4 @@ -! { dg-do run { target { ! { *-*-mingw* *-*-cygwin* spu-*-* } } } } +! { dg-do run { target { ! { *-*-mingw* *-*-cygwin* } } } } ! { dg-options "-std=gnu -fdefault-integer-8" } ! See PR38956. Test fails on cygwin when user has Administrator rights implicit none Index: gcc/testsuite/gfortran.dg/default_format_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/default_format_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/default_format_1.f90 (working copy) @@ -1,4 +1,4 @@ -! { dg-do run { xfail spu-*-* powerpc-ibm-aix* } } +! { dg-do run { xfail powerpc-ibm-aix* } } ! Test XFAILed on Darwin because the system's printf() lacks ! proper support for denormals. ! Index: gcc/testsuite/gfortran.dg/default_format_denormal_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/default_format_denormal_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/default_format_denormal_1.f90 (working copy) @@ -1,4 +1,4 @@ -! { dg-do run { xfail *-*-darwin[89]* *-*-cygwin* spu-*-* powerpc-ibm-aix* } } +! { dg-do run { xfail *-*-darwin[89]* *-*-cygwin* powerpc-ibm-aix* } } ! Test XFAILed on these platforms because the system's printf() lacks ! proper support for denormals. ! Index: gcc/testsuite/gfortran.dg/erf_2.F90 =================================================================== --- gcc/testsuite/gfortran.dg/erf_2.F90 (revision 275321) +++ gcc/testsuite/gfortran.dg/erf_2.F90 (working copy) @@ -1,10 +1,6 @@ -! { dg-do run { xfail spu-*-* } } ! { dg-options "-fno-range-check -ffree-line-length-none -O0" } ! { dg-add-options ieee } ! -! XFAILed for SPU targets because our library implementation of -! the double-precision erf/erfc functions is not accurate enough. -! ! Check that simplification functions and runtime library agree on ERF, ! ERFC and ERFC_SCALED. Index: gcc/testsuite/gfortran.dg/erf_3.F90 =================================================================== --- gcc/testsuite/gfortran.dg/erf_3.F90 (revision 275321) +++ gcc/testsuite/gfortran.dg/erf_3.F90 (working copy) @@ -1,4 +1,4 @@ -! { dg-do run { xfail spu-*-* ia64-*-linux* } } +! { dg-do run { xfail ia64-*-linux* } } ! { dg-options "-fno-range-check -ffree-line-length-none -O0" } ! { dg-add-options ieee } ! { dg-skip-if "PR libfortran/59313" { hppa*-*-hpux* } } @@ -6,9 +6,6 @@ ! Check that simplification functions and runtime library agree on ERF, ! ERFC and ERFC_SCALED, for quadruple-precision. ! -! XFAILed for SPU targets because our library implementation of -! the double-precision erf/erfc functions is not accurate enough. -! ! XFAILed for IA64 Linux because of a glibc bug: ! http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59227 Index: gcc/testsuite/gfortran.dg/init_flag_10.f90 =================================================================== --- gcc/testsuite/gfortran.dg/init_flag_10.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/init_flag_10.f90 (working copy) @@ -1,7 +1,6 @@ ! { dg-do run } ! { dg-options "-finit-real=NAN" } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! PR fortran/50619 ! Index: gcc/testsuite/gfortran.dg/init_flag_3.f90 =================================================================== --- gcc/testsuite/gfortran.dg/init_flag_3.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/init_flag_3.f90 (working copy) @@ -1,7 +1,6 @@ ! { dg-do run } ! { dg-options "-finit-integer=-1 -finit-logical=false -finit-real=nan" } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } program init_flag_3 call real_test Index: gcc/testsuite/gfortran.dg/int_conv_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/int_conv_2.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/int_conv_2.f90 (working copy) @@ -1,5 +1,4 @@ ! { dg-do compile } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! PR fortran/37930 program test implicit none Index: gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90 =================================================================== --- gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90 (revision 275321) +++ gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90 (working copy) @@ -1,5 +1,3 @@ -! { dg-do run { xfail spu-*-* } } -! FAILs on SPU because of wrong compile-time rounding mode ! { dg-options "" } ! { dg-options "-ffloat-store" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } ! Index: gcc/testsuite/gfortran.dg/integer_exponentiation_5.F90 =================================================================== --- gcc/testsuite/gfortran.dg/integer_exponentiation_5.F90 (revision 275321) +++ gcc/testsuite/gfortran.dg/integer_exponentiation_5.F90 (working copy) @@ -1,5 +1,3 @@ -! { dg-do run { xfail spu-*-* } } -! FAILs on SPU because of invalid result of 1.0/0.0 inline code ! { dg-options "-fno-range-check" } ! { dg-add-options ieee } module mod_check Index: gcc/testsuite/gfortran.dg/isnan_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/isnan_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/isnan_1.f90 (working copy) @@ -2,7 +2,6 @@ ! ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! implicit none real :: x Index: gcc/testsuite/gfortran.dg/isnan_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/isnan_2.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/isnan_2.f90 (working copy) @@ -3,7 +3,6 @@ ! { dg-do run } ! { dg-options "-fno-range-check" } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! implicit none character(len=1) :: s Index: gcc/testsuite/gfortran.dg/maxloc_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/maxloc_2.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/maxloc_2.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } real :: a(3), nan, minf, pinf real, allocatable :: c(:) integer :: ia(1) Index: gcc/testsuite/gfortran.dg/maxlocval_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/maxlocval_2.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/maxlocval_2.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } real :: a(3), nan, minf, pinf real, allocatable :: c(:) logical :: l Index: gcc/testsuite/gfortran.dg/maxlocval_4.f90 =================================================================== --- gcc/testsuite/gfortran.dg/maxlocval_4.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/maxlocval_4.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } real :: a(3,3), b(3), nan, minf, pinf, h logical :: l, l2 logical :: l3(3,3), l4(3,3), l5(3,3) Index: gcc/testsuite/gfortran.dg/minloc_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/minloc_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/minloc_1.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } real :: a(3), nan, minf, pinf integer :: ia(1) real, allocatable :: c(:) Index: gcc/testsuite/gfortran.dg/minlocval_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/minlocval_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/minlocval_1.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } real :: a(3), nan, minf, pinf real, allocatable :: c(:) logical :: l Index: gcc/testsuite/gfortran.dg/minlocval_4.f90 =================================================================== --- gcc/testsuite/gfortran.dg/minlocval_4.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/minlocval_4.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } real :: a(3,3), b(3), nan, minf, pinf, h logical :: l, l2 logical :: l3(3,3), l4(3,3), l5(3,3) Index: gcc/testsuite/gfortran.dg/module_nan.f90 =================================================================== --- gcc/testsuite/gfortran.dg/module_nan.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/module_nan.f90 (working copy) @@ -1,7 +1,6 @@ ! { dg-do run } ! { dg-options "-fno-range-check" } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! PR fortran/34318 ! Index: gcc/testsuite/gfortran.dg/namelist_42.f90 =================================================================== --- gcc/testsuite/gfortran.dg/namelist_42.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/namelist_42.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run { target fd_truncate } } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! PR fortran/34427 ! Index: gcc/testsuite/gfortran.dg/namelist_43.f90 =================================================================== --- gcc/testsuite/gfortran.dg/namelist_43.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/namelist_43.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! PR fortran/34427 ! Index: gcc/testsuite/gfortran.dg/nan_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/nan_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/nan_1.f90 (working copy) @@ -3,7 +3,6 @@ ! ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! module aux2 interface isnan Index: gcc/testsuite/gfortran.dg/nan_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/nan_2.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/nan_2.f90 (working copy) @@ -1,7 +1,6 @@ ! { dg-do run } ! { dg-options "-fno-range-check -pedantic" } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! PR fortran/34333 ! Index: gcc/testsuite/gfortran.dg/nan_3.f90 =================================================================== --- gcc/testsuite/gfortran.dg/nan_3.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/nan_3.f90 (working copy) @@ -1,7 +1,6 @@ ! { dg-do run } ! { dg-options "-fno-range-check" } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! PR fortran/34319 ! Index: gcc/testsuite/gfortran.dg/nan_4.f90 =================================================================== --- gcc/testsuite/gfortran.dg/nan_4.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/nan_4.f90 (working copy) @@ -1,7 +1,6 @@ ! { dg-do compile } ! { dg-options "-std=gnu -fallow-invalid-boz" } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! PR fortran/34398. ! Index: gcc/testsuite/gfortran.dg/nan_5.f90 =================================================================== --- gcc/testsuite/gfortran.dg/nan_5.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/nan_5.f90 (working copy) @@ -4,7 +4,6 @@ ! ! { dg-options "-fno-range-check" } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } implicit none real, parameter :: inf = 2 * huge(inf) Index: gcc/testsuite/gfortran.dg/nan_6.f90 =================================================================== --- gcc/testsuite/gfortran.dg/nan_6.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/nan_6.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! List-directed part of PR fortran/43298 ! and follow up to PR fortran/34319. Index: gcc/testsuite/gfortran.dg/nearest_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/nearest_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/nearest_1.f90 (working copy) @@ -1,7 +1,6 @@ ! { dg-do run } ! { dg-options "-O0 -ffloat-store" } ! { dg-add-options ieee } -! { dg-skip-if "Denormals not supported" { spu-*-* } } ! PR fortran/27021 ! Original code submitted by Dominique d'Humieres ! Converted to Dejagnu for the testsuite by Steven G. Kargl Index: gcc/testsuite/gfortran.dg/nearest_3.f90 =================================================================== --- gcc/testsuite/gfortran.dg/nearest_3.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/nearest_3.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! ! PR fortran/34209 ! Index: gcc/testsuite/gfortran.dg/open_errors.f90 =================================================================== --- gcc/testsuite/gfortran.dg/open_errors.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/open_errors.f90 (working copy) @@ -1,4 +1,4 @@ -! { dg-do run { target { ! { *-*-mingw* *-*-cygwin* spu-*-* } } } } +! { dg-do run { target { ! { *-*-mingw* *-*-cygwin* } } } } ! PR30005 Enhanced error messages for OPEN ! Submitted by Jerry DeLisle <jvdeli...@gcc.gnu.org> ! See PR38956. Test fails on cygwin when user has Administrator rights Index: gcc/testsuite/gfortran.dg/pr20257.f90 =================================================================== --- gcc/testsuite/gfortran.dg/pr20257.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/pr20257.f90 (working copy) @@ -1,5 +1,4 @@ ! { dg-do run } -! { dg-skip-if "Too big for local store" { spu-*-* } } integer,parameter :: n = 10000 real(8) array(10000) Index: gcc/testsuite/gfortran.dg/read_infnan_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/read_infnan_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/read_infnan_1.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! PR43298 Fortran library does not read in NaN, NaN(), -Inf, or Inf Index: gcc/testsuite/gfortran.dg/real_const_3.f90 =================================================================== --- gcc/testsuite/gfortran.dg/real_const_3.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/real_const_3.f90 (working copy) @@ -1,7 +1,6 @@ !{ dg-do run } !{ dg-options "-fno-range-check" } !{ dg-add-options ieee } -!{ dg-skip-if "NaN not supported" { spu-*-* } } ! PR19310 and PR19904, allow disabling range check during compile. ! Contributed by Jerry DeLisle <jvdeli...@gcc.gnu.org> program main Index: gcc/testsuite/gfortran.dg/realloc_on_assign_2.f03 =================================================================== --- gcc/testsuite/gfortran.dg/realloc_on_assign_2.f03 (revision 275321) +++ gcc/testsuite/gfortran.dg/realloc_on_assign_2.f03 (working copy) @@ -1,5 +1,4 @@ ! { dg-do run } -! { dg-skip-if "Too big for local store" { spu-*-* } } ! Tests the patch that implements F2003 automatic allocation and ! reallocation of allocatable arrays on assignment. The tests ! below were generated in the final stages of the development of Index: gcc/testsuite/gfortran.dg/reassoc_4.f =================================================================== --- gcc/testsuite/gfortran.dg/reassoc_4.f (revision 275321) +++ gcc/testsuite/gfortran.dg/reassoc_4.f (working copy) @@ -1,6 +1,5 @@ ! { dg-do compile } ! { dg-options "-O3 -ffast-math -fdump-tree-reassoc1 --param max-completely-peeled-insns=200" } -! { dg-additional-options "--param max-completely-peel-times=16" { target spu-*-* } } subroutine anisonl(w,vo,anisox,s,ii1,jj1,weight) integer ii1,jj1,i1,iii1,j1,jjj1,k1,l1,m1,n1 real*8 w(3,3),vo(3,3),anisox(3,3,3,3),s(60,60),weight Index: gcc/testsuite/gfortran.dg/scalar_mask_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/scalar_mask_2.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/scalar_mask_2.f90 (working copy) @@ -1,5 +1,4 @@ -! { dg-do run { xfail spu-*-* } } -! FAILs on SPU because of rounding error reading kinds.h +! { dg-do run } program main ! Test scalar masks for different intrinsics. real, dimension(2,2) :: a Index: gcc/testsuite/gfortran.dg/scratch_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/scratch_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/scratch_1.f90 (working copy) @@ -1,5 +1,4 @@ ! { dg-do run } -! { dg-skip-if "Too big for local store" { spu-*-* } } ! Check that we can open more than 26 scratch files concurrently integer :: i do i = 1, 30 Index: gcc/testsuite/gfortran.dg/stat_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/stat_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/stat_1.f90 (working copy) @@ -1,5 +1,5 @@ ! { dg-do run } -! { dg-skip-if "" { *-*-mingw* spu-*-* } } +! { dg-skip-if "" { *-*-mingw* } } ! { dg-options "-std=gnu" } character(len=*), parameter :: f = "testfile_stat_1" integer :: s1(13), r1, s2(13), r2, s3(13), r3, d(13), rd Index: gcc/testsuite/gfortran.dg/stat_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/stat_2.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/stat_2.f90 (working copy) @@ -1,5 +1,5 @@ ! { dg-do run } -! { dg-skip-if "" { *-*-mingw* spu-*-* } } +! { dg-skip-if "" { *-*-mingw* } } ! { dg-options "-std=gnu" } character(len=*), parameter :: f = "testfile_stat_2" integer :: s1(13), r1, s2(13), r2, s3(13), r3, d(13), rd Index: gcc/testsuite/gfortran.dg/transfer_simplify_1.f90 =================================================================== --- gcc/testsuite/gfortran.dg/transfer_simplify_1.f90 (revision 275321) +++ gcc/testsuite/gfortran.dg/transfer_simplify_1.f90 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-options "-O2" } -! { dg-skip-if "NaN not supported" { spu-*-* } } ! Tests that the PRs caused by the lack of gfc_simplify_transfer are ! now fixed. These were brought together in the meta-bug PR31237 ! (TRANSFER intrinsic). Index: gcc/testsuite/gfortran.dg/typebound_operator_9.f03 =================================================================== --- gcc/testsuite/gfortran.dg/typebound_operator_9.f03 (revision 275321) +++ gcc/testsuite/gfortran.dg/typebound_operator_9.f03 (working copy) @@ -1,6 +1,5 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "Too big for local store" { spu-*-* } } ! ! Solve a diffusion problem using an object-oriented approach ! Index: gcc/testsuite/gfortran.fortran-torture/execute/getarg_1.x =================================================================== --- gcc/testsuite/gfortran.fortran-torture/execute/getarg_1.x (revision 275321) +++ gcc/testsuite/gfortran.fortran-torture/execute/getarg_1.x (nonexistent) @@ -1,5 +0,0 @@ -if [istarget "spu-*-*"] { - # We need -mstdmain to enable argument processing on SPU. - lappend additional_flags "-mstdmain" -} -return 0 Index: gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.x =================================================================== --- gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.x (revision 275321) +++ gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.x (working copy) @@ -1,7 +1,3 @@ -if [istarget "spu-*-*"] { - # No Inf/NaN support on SPU. - return 1 -} if [istarget "powerpc-ibm-aix*"] { # z'7f7fffff' value not preserved by lfs instruction. return 1 Index: gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.x =================================================================== --- gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.x (revision 275321) +++ gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.x (working copy) @@ -1,6 +1,2 @@ -if [istarget "spu-*-*"] { - # No denormal support on SPU. - return 1 -} add-ieee-options return 0 Index: gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.x =================================================================== --- gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.x (revision 275321) +++ gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.x (working copy) @@ -1,6 +1,2 @@ -if [istarget "spu-*-*"] { - # No Inf/NaN support on SPU. - return 1 -} add-ieee-options return 0 Index: gcc/testsuite/lib/compat.exp =================================================================== --- gcc/testsuite/lib/compat.exp (revision 275321) +++ gcc/testsuite/lib/compat.exp (working copy) @@ -277,16 +277,6 @@ set extra_flags_3 [compat-get-options $src3] set compile_xfail_3 $compiler_conditional_xfail_data - # On the SPU, most of the compat test cases exceed local store size. - # Use automatic overlay support to make them fit. - if { [check_effective_target_spu_auto_overlay] } { - set extra_flags_1 "$extra_flags_1 -Wl,--auto-overlay" - set extra_flags_1 "$extra_flags_1 -Wl,--extra-stack-space=8192" - set extra_flags_1 "$extra_flags_1 -ffunction-sections" - set extra_flags_2 "$extra_flags_2 -ffunction-sections" - set extra_flags_3 "$extra_flags_3 -ffunction-sections" - } - # Define the names of the object files. regsub "sid" "sid_main_tst.o" $sid obj1 regsub "sid" "sid_x_tst.o" $sid obj2_tst Index: gcc/testsuite/lib/fortran-torture.exp =================================================================== --- gcc/testsuite/lib/fortran-torture.exp (revision 275321) +++ gcc/testsuite/lib/fortran-torture.exp (working copy) @@ -44,8 +44,6 @@ && [check_vmx_hw_available] } { lappend vectorizer_options "-maltivec" set test_tree_vectorize 1 - } elseif { [istarget spu-*-*] } { - set test_tree_vectorize 1 } elseif { ( [istarget i?86-*-*] || [istarget x86_64-*-*] ) && [check_effective_target_sse2] && [check_sse2_hw_available] Index: gcc/testsuite/lib/gcc-dg.exp =================================================================== --- gcc/testsuite/lib/gcc-dg.exp (revision 275321) +++ gcc/testsuite/lib/gcc-dg.exp (working copy) @@ -414,14 +414,6 @@ return "::unsupported::memory full" } - # Likewise, if we see ".text exceeds local store range" or - # similar. - if {[string match "spu-*" $system] && \ - [string match "*exceeds local store*" $text]} { - # The format here is important. See dg.exp. - return "::unsupported::memory full" - } - if { [string match "*error: function pointers not supported*" $text] && ![check_effective_target_function_pointers] } { # The format here is important. See dg.exp. Index: gcc/testsuite/lib/gfortran.exp =================================================================== --- gcc/testsuite/lib/gfortran.exp (revision 275321) +++ gcc/testsuite/lib/gfortran.exp (working copy) @@ -220,13 +220,6 @@ lappend ALWAYS_GFORTRANFLAGS "additional_flags=$TOOL_OPTIONS" } - # On the SPU, most of the fortran test cases exceed local store size. - # Use automatic overlay support to make them fit. - if { [check_effective_target_spu_auto_overlay] } { - lappend ALWAYS_GFORTRANFLAGS "ldflags=-Wl,--auto-overlay" - lappend ALWAYS_GFORTRANFLAGS "ldflags=-Wl,--reserved-space=131072" - } - verbose -log "ALWAYS_GFORTRANFLAGS set to $ALWAYS_GFORTRANFLAGS" verbose "gfortran is initialized" 3 Index: gcc/testsuite/lib/target-supports.exp =================================================================== --- gcc/testsuite/lib/target-supports.exp (revision 275321) +++ gcc/testsuite/lib/target-supports.exp (working copy) @@ -3173,7 +3173,6 @@ && ([check_effective_target_powerpc_spe] || [check_effective_target_powerpc_altivec])) || ([istarget sparc*-*-*] && [check_effective_target_sparc_vis]) - || [istarget spu-*-*] || ([istarget arm*-*-*] && [check_effective_target_arm_neon]) || [istarget aarch64*-*-*] } { return 0 @@ -3193,7 +3192,6 @@ || ([istarget powerpc*-*-*] && ![istarget powerpc-*-linux*paired*]) || [istarget amdgcn-*-*] - || [istarget spu-*-*] || [istarget sparc*-*-*] || [istarget alpha*-*-*] || [istarget ia64-*-*] @@ -3233,7 +3231,6 @@ #endif }]) || [istarget aarch64*-*-*] - || [istarget spu-*-*] || ([istarget powerpc*-*-*] && [check_vsx_hw_available]) || ([istarget mips*-*-*] && [et-is-effective-target mips_msa]) }}] @@ -3251,7 +3248,6 @@ #endif }]) || [istarget aarch64*-*-*] - || [istarget spu-*-*] || ([istarget powerpc*-*-*] && [check_vsx_hw_available]) || ([istarget mips*-*-*] && [et-is-effective-target mips_msa]) }}] @@ -5519,19 +5515,6 @@ } } -# Return 1 if this is a SPU target with a toolchain that -# supports automatic overlay generation. - -proc check_effective_target_spu_auto_overlay { } { - if { [istarget spu*-*-elf*] } { - return [check_no_compiler_messages spu_auto_overlay executable { - int main (void) { } - } "-Wl,--auto-overlay" ] - } else { - return 0 - } -} - # The VxWorks SPARC simulator accepts only EM_SPARC executables and # chokes on EM_SPARC32PLUS or EM_SPARCV9 executables. Return 1 if the # test environment appears to run executables on such a simulator. @@ -5697,7 +5680,6 @@ return [check_cached_effective_target_indexed vect_float { expr { [istarget i?86-*-*] || [istarget x86_64-*-*] || [istarget powerpc*-*-*] - || [istarget spu-*-*] || [istarget mips-sde-elf] || [istarget mipsisa64*-*-*] || [istarget ia64-*-*] @@ -5731,7 +5713,6 @@ #endif }]) || [istarget aarch64*-*-*] - || [istarget spu-*-*] || ([istarget powerpc*-*-*] && [check_vsx_hw_available]) || ([istarget mips*-*-*] && [et-is-effective-target mips_msa]) @@ -5770,7 +5751,6 @@ proc check_effective_target_vect_no_int_min_max { } { return [check_cached_effective_target_indexed vect_no_int_min_max { expr { [istarget sparc*-*-*] - || [istarget spu-*-*] || [istarget alpha*-*-*] || ([istarget mips*-*-*] && [et-is-effective-target mips_loongson_mmi]) }}] @@ -5806,7 +5786,6 @@ expr { [is-effective-target arm_neon] || [istarget aarch64*-*-*] || [istarget powerpc*-*-*] - || [istarget spu-*-*] || [istarget i?86-*-*] || [istarget x86_64-*-*] || ([istarget mips*-*-*] && ([et-is-effective-target mpaired_single] @@ -5902,7 +5881,6 @@ || ([istarget aarch64*-*-*] && [is-effective-target aarch64_little_endian]) || [istarget powerpc*-*-*] - || [istarget spu-*-*] || ([istarget mips-*.*] && [et-is-effective-target mips_msa]) || ([istarget s390*-*-*] @@ -5930,7 +5908,6 @@ || ([istarget aarch64*-*-*] && [is-effective-target aarch64_little_endian]) || [istarget powerpc*-*-*] - || [istarget spu-*-*] || (([istarget i?86-*-*] || [istarget x86_64-*-*]) && [check_ssse3_available]) || ([istarget mips*-*-*] @@ -6047,7 +6024,6 @@ expr { ([check_effective_target_vect_unpack] && [check_effective_target_vect_int_mult]) || ([istarget powerpc*-*-*] - || [istarget spu-*-*] || [istarget ia64-*-*] || ([istarget aarch64*-*-*] && ![check_effective_target_aarch64_sve]) @@ -6081,7 +6057,6 @@ proc check_effective_target_vect_widen_mult_hi_to_si_pattern { } { return [check_cached_effective_target_indexed vect_widen_mult_hi_to_si_pattern { expr { [istarget powerpc*-*-*] - || [istarget spu-*-*] || [istarget ia64-*-*] || [istarget i?86-*-*] || [istarget x86_64-*-*] || ([is-effective-target arm_neon] @@ -6203,7 +6178,6 @@ expr { ([istarget powerpc*-*-*] && ![istarget powerpc-*-linux*paired*]) || [istarget i?86-*-*] || [istarget x86_64-*-*] || [istarget aarch64*-*-*] - || [istarget spu-*-*] || ([istarget arm*-*-*] && [check_effective_target_arm_neon_ok] && [check_effective_target_arm_little_endian]) || ([istarget mips*-*-*] @@ -6221,7 +6195,6 @@ return [check_cached_effective_target_indexed vect_unpack { expr { ([istarget powerpc*-*-*] && ![istarget powerpc-*paired*]) || [istarget i?86-*-*] || [istarget x86_64-*-*] - || [istarget spu-*-*] || [istarget ia64-*-*] || [istarget aarch64*-*-*] || ([istarget mips*-*-*] @@ -6288,8 +6261,7 @@ set et_vect_aligned_arrays 0 if { (([istarget i?86-*-*] || [istarget x86_64-*-*]) && !([is-effective-target ia32] - || ([check_avx_available] && ![check_prefer_avx128]))) - || [istarget spu-*-*] } { + || ([check_avx_available] && ![check_prefer_avx128]))) } { set et_vect_aligned_arrays 1 } @@ -6332,8 +6304,7 @@ proc check_effective_target_natural_alignment_64 { } { return [check_cached_effective_target_indexed natural_alignment_64 { expr { [is-effective-target natural_alignment_32] - && (([is-effective-target lp64] && ![istarget *-*-darwin*]) - || [istarget spu-*-*]) } + && [is-effective-target lp64] && ![istarget *-*-darwin*] } }] } @@ -6454,7 +6425,6 @@ || [istarget powerpc*-*-*] || [istarget ia64-*-*] || [istarget i?86-*-*] || [istarget x86_64-*-*] - || [istarget spu-*-*] || ([istarget mips*-*-*] && [et-is-effective-target mips_msa]) || ([istarget arm*-*-*] @@ -6500,7 +6470,6 @@ proc check_effective_target_vect_short_mult { } { return [check_cached_effective_target_indexed vect_short_mult { expr { [istarget ia64-*-*] - || [istarget spu-*-*] || [istarget i?86-*-*] || [istarget x86_64-*-*] || [istarget powerpc*-*-*] || [istarget aarch64*-*-*] @@ -6518,7 +6487,6 @@ proc check_effective_target_vect_int_mult { } { return [check_cached_effective_target_indexed vect_int_mult { expr { ([istarget powerpc*-*-*] && ![istarget powerpc-*-linux*paired*]) - || [istarget spu-*-*] || [istarget i?86-*-*] || [istarget x86_64-*-*] || [istarget ia64-*-*] || [istarget aarch64*-*-*] @@ -6563,7 +6531,6 @@ || [is-effective-target arm_neon] || [istarget i?86-*-*] || [istarget x86_64-*-*] || [istarget ia64-*-*] - || [istarget spu-*-*] || ([istarget mips*-*-*] && ([et-is-effective-target mips_msa] || [et-is-effective-target mpaired_single])) @@ -6580,7 +6547,6 @@ || [is-effective-target arm_neon] || [istarget i?86-*-*] || [istarget x86_64-*-*] || [istarget ia64-*-*] - || [istarget spu-*-*] || ([istarget mips*-*-*] && ([et-is-effective-target mpaired_single] || [et-is-effective-target mips_msa])) @@ -6827,11 +6793,7 @@ # Return 1 if the target supports atomic operations on "int_128" values. proc check_effective_target_sync_int_128 { } { - if { [istarget spu-*-*] } { - return 1 - } else { - return 0 - } + return 0 } # Return 1 if the target supports atomic operations on "int_128" values @@ -6839,11 +6801,7 @@ # This requires support for both compare-and-swap and true atomic loads. proc check_effective_target_sync_int_128_runtime { } { - if { [istarget spu-*-*] } { - return 1 - } else { - return 0 - } + return 0 } # Return 1 if the target supports atomic operations on "long long". @@ -6857,8 +6815,7 @@ || [istarget arm*-*-*] || [istarget alpha*-*-*] || ([istarget sparc*-*-*] && [check_effective_target_lp64]) - || [istarget s390*-*-*] - || [istarget spu-*-*] } { + || [istarget s390*-*-*] } { return 1 } else { return 0 @@ -6917,7 +6874,6 @@ || ([istarget sparc*-*-*] && [check_effective_target_lp64] && [check_effective_target_ultrasparc_hw]) - || [istarget spu-*-*] || ([istarget powerpc*-*-*] && [check_effective_target_lp64]) } { return 1 } else { @@ -6964,7 +6920,6 @@ || [istarget powerpc*-*-*] || [istarget crisv32-*-*] || [istarget cris-*-*] || ([istarget sparc*-*-*] && [check_effective_target_sparc_v9]) - || [istarget spu-*-*] || ([istarget arc*-*-*] && [check_effective_target_arc_atomic]) || [check_effective_target_mips_llsc] }}] } @@ -6987,7 +6942,6 @@ || [istarget powerpc*-*-*] || [istarget crisv32-*-*] || [istarget cris-*-*] || ([istarget sparc*-*-*] && [check_effective_target_sparc_v9]) - || [istarget spu-*-*] || ([istarget arc*-*-*] && [check_effective_target_arc_atomic]) || [check_effective_target_mips_llsc] }}] } @@ -8575,8 +8529,6 @@ } set dg-do-what-default compile } - } elseif { [istarget spu-*-*] } { - set dg-do-what-default run } elseif { [istarget i?86-*-*] || [istarget x86_64-*-*] } { lappend DEFAULT_VECTCFLAGS "-msse2" if { [check_effective_target_sse2_runtime] } { @@ -8861,8 +8813,7 @@ || [istarget mips*-*-*] || [istarget s390*-*-*] || [istarget riscv*-*-*] - || [istarget sh*-*-*] - || [istarget spu*-*-*] } { + || [istarget sh*-*-*] } { return 1 } return 0 Index: gcc/testsuite/lib/target-utils.exp =================================================================== --- gcc/testsuite/lib/target-utils.exp (revision 275321) +++ gcc/testsuite/lib/target-utils.exp (working copy) @@ -40,10 +40,6 @@ return "memory full" } - if { [istarget spu-*-*] && \ - [string match "*exceeds local store*" $output] } { - return "memory full" - } if { [string match "*error: function pointers not supported*" $output] && ![check_effective_target_function_pointers] } { return "function pointers not supported" -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com