===================================================================
@@ -28,9 +28,7 @@
void
check_add_float (void)
{
-#ifndef __SPU__
CHECK_ADD (float, __builtin_copysignf, 0.0f, 0.0if);
-#endif
}
void
===================================================================
@@ -29,9 +29,7 @@
void
check_add_float (void)
{
-#ifndef __SPU__
CHECK_ADD (float, __builtin_copysignf, 0.0f, 0.0if);
-#endif
}
void
===================================================================
@@ -20,9 +20,7 @@
void
check_div_float (void)
{
-#ifndef __SPU__
CHECK_DIV (float, __builtin_copysignf, 0.0f, 0.0if, 1.0f);
-#endif
}
void
===================================================================
@@ -28,9 +28,7 @@
void
check_mul_float (void)
{
-#ifndef __SPU__
CHECK_MUL (float, __builtin_copysignf, 0.0f, 0.0if);
-#endif
}
void
===================================================================
@@ -29,9 +29,7 @@
void
check_sub_float (void)
{
-#ifndef __SPU__
CHECK_SUB (float, __builtin_copysignf, 0.0f, 0.0if);
-#endif
}
void
===================================================================
@@ -36,9 +36,7 @@
void
check_mul_float (void)
{
-#ifndef __SPU__
CHECK_MUL (float, __builtin_copysignf, 0.0f, 0.0if, 1.0f);
-#endif
}
void
===================================================================
@@ -36,9 +36,7 @@
void
check_mul_float (void)
{
-#ifndef __SPU__
CHECK_MUL (float, __builtin_copysignf, 0.0f, 0.0if, 1.0f);
-#endif
}
void
===================================================================
@@ -28,9 +28,7 @@
void
check_mul_float (void)
{
-#ifndef __SPU__
CHECK_MUL (float, __builtin_copysignf, 0.0f, 0.0if);
-#endif
}
void
===================================================================
@@ -28,9 +28,7 @@
void
check_sub_float (void)
{
-#ifndef __SPU__
CHECK_SUB (float, __builtin_copysignf, 0.0f, 0.0if);
-#endif
}
void
===================================================================
@@ -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; }
};
===================================================================
@@ -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 <jakub@redhat.com>
===================================================================
@@ -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"
===================================================================
@@ -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 } */
===================================================================
@@ -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 } */
===================================================================
@@ -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 {
===================================================================
@@ -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"
===================================================================
@@ -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 <jakub@redhat.com>
struct bar {
===================================================================
@@ -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 } */
===================================================================
@@ -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>
===================================================================
@@ -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;
}
===================================================================
@@ -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
===================================================================
@@ -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();
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -1,6 +0,0 @@
-if [istarget "spu-*-*"] {
- # The SPU single-precision floating point format does not
- # support Nan & Inf.
- return 1
-}
-return 0
===================================================================
@@ -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
===================================================================
@@ -13,10 +13,4 @@
}
}
-if [istarget "spu-*-*"] {
- # The SPU single-precision floating point format does not
- # support Nan & Inf.
- return 1
-}
-
return 0
===================================================================
@@ -1,6 +0,0 @@
-if [istarget "spu-*-*"] {
- # The SPU single-precision floating point format does not
- # support Nan & Inf.
- return 1
-}
-return 0
===================================================================
@@ -1,6 +0,0 @@
-if [istarget "spu-*-*"] {
- # The SPU single-precision floating point format does not
- # support Nan & Inf.
- return 1
-}
-return 0
===================================================================
@@ -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)
===================================================================
@@ -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)
===================================================================
@@ -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-*-*"
===================================================================
@@ -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);
}
===================================================================
@@ -1,5 +1,4 @@
/* { dg-add-options ieee } */
-/* { dg-skip-if "No Inf/NaN support" { spu-*-* } } */
extern void abort (void);
===================================================================
@@ -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"
===================================================================
@@ -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);
===================================================================
@@ -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)
{
===================================================================
@@ -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();
===================================================================
@@ -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)
===================================================================
@@ -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))
===================================================================
@@ -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 ();
===================================================================
@@ -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 ();
===================================================================
@@ -4,7 +4,6 @@
/* Origin: Joseph Myers <jsm@polyomino.org.uk> */
/* { dg-do compile } */
/* { dg-options "-ansi -pedantic-errors -Woverflow" } */
-/* { dg-skip-if "No Inf support" { spu-*-* } } */
void
f (void)
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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. */
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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>
===================================================================
@@ -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>
===================================================================
@@ -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 } } */
===================================================================
@@ -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);
===================================================================
@@ -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. */
===================================================================
@@ -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-*-* } } } */
===================================================================
@@ -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) ();
===================================================================
@@ -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"
===================================================================
@@ -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 } */
===================================================================
@@ -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 } */
===================================================================
@@ -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 } */
===================================================================
@@ -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* } } */
===================================================================
@@ -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*-*-* } } } */
===================================================================
@@ -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*-*-* } } } */
===================================================================
@@ -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*-*-* } } } */
===================================================================
@@ -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*-*-* } } } */
===================================================================
@@ -46,6 +46,5 @@
return 0;
}
-/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* } } } */
===================================================================
@@ -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*-*-* } } } */
===================================================================
@@ -44,5 +44,4 @@
return 0;
}
-/* { dg-final { scan-rtl-dump-times "SMS succeeded" 1 "sms" { target spu-*-* } } } */
===================================================================
@@ -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__)
===================================================================
@@ -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";
===================================================================
@@ -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;
===================================================================
@@ -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*" } } } */
===================================================================
@@ -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)
===================================================================
@@ -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
===================================================================
@@ -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)
===================================================================
@@ -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)
===================================================================
@@ -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). */
===================================================================
@@ -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)
===================================================================
@@ -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" } } */
===================================================================
@@ -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" } } */
===================================================================
@@ -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)
===================================================================
@@ -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
===================================================================
@@ -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;
===================================================================
@@ -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 } */
===================================================================
@@ -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*-*-*" } } } } */
===================================================================
@@ -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;
===================================================================
@@ -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. */
===================================================================
@@ -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 } } } } } */
===================================================================
@@ -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;
===================================================================
@@ -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;
===================================================================
@@ -13,4 +13,4 @@
}
}
-/* { dg-final { scan-tree-dump "pattern recognized" "vect" { xfail spu*-*-* } } } */
+/* { dg-final { scan-tree-dump "pattern recognized" "vect" } } */
===================================================================
@@ -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" } } */
===================================================================
@@ -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" } } */
===================================================================
@@ -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" } } */
===================================================================
@@ -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\]]] \
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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 <jvdelisle@gcc.gnu.org>
program char4_iunit_1
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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.
!
===================================================================
@@ -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.
!
===================================================================
@@ -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.
===================================================================
@@ -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
===================================================================
@@ -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
!
===================================================================
@@ -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
===================================================================
@@ -1,5 +1,4 @@
! { dg-do compile }
-! { dg-skip-if "NaN not supported" { spu-*-* } }
! PR fortran/37930
program test
implicit none
===================================================================
@@ -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 } } }
!
===================================================================
@@ -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
===================================================================
@@ -2,7 +2,6 @@
!
! { dg-do run }
! { dg-add-options ieee }
-! { dg-skip-if "NaN not supported" { spu-*-* } }
!
implicit none
real :: x
===================================================================
@@ -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
===================================================================
@@ -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)
===================================================================
@@ -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
===================================================================
@@ -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)
===================================================================
@@ -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(:)
===================================================================
@@ -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
===================================================================
@@ -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)
===================================================================
@@ -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
!
===================================================================
@@ -1,6 +1,5 @@
! { dg-do run { target fd_truncate } }
! { dg-add-options ieee }
-! { dg-skip-if "NaN not supported" { spu-*-* } }
!
! PR fortran/34427
!
===================================================================
@@ -1,6 +1,5 @@
! { dg-do run }
! { dg-add-options ieee }
-! { dg-skip-if "NaN not supported" { spu-*-* } }
!
! PR fortran/34427
!
===================================================================
@@ -3,7 +3,6 @@
!
! { dg-do run }
! { dg-add-options ieee }
-! { dg-skip-if "NaN not supported" { spu-*-* } }
!
module aux2
interface isnan
===================================================================
@@ -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
!
===================================================================
@@ -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
!
===================================================================
@@ -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.
!
===================================================================
@@ -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)
===================================================================
@@ -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.
===================================================================
@@ -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
===================================================================
@@ -1,6 +1,5 @@
! { dg-do run }
! { dg-add-options ieee }
-! { dg-skip-if "NaN not supported" { spu-*-* } }
!
! PR fortran/34209
!
===================================================================
@@ -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 <jvdelisle@gcc.gnu.org>
! See PR38956. Test fails on cygwin when user has Administrator rights
===================================================================
@@ -1,5 +1,4 @@
! { dg-do run }
-! { dg-skip-if "Too big for local store" { spu-*-* } }
integer,parameter :: n = 10000
real(8) array(10000)
===================================================================
@@ -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
===================================================================
@@ -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 <jvdelisle@gcc.gnu.org>
program main
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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).
===================================================================
@@ -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
!
===================================================================
@@ -1,5 +0,0 @@
-if [istarget "spu-*-*"] {
- # We need -mstdmain to enable argument processing on SPU.
- lappend additional_flags "-mstdmain"
-}
-return 0
===================================================================
@@ -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
===================================================================
@@ -1,6 +1,2 @@
-if [istarget "spu-*-*"] {
- # No denormal support on SPU.
- return 1
-}
add-ieee-options
return 0
===================================================================
@@ -1,6 +1,2 @@
-if [istarget "spu-*-*"] {
- # No Inf/NaN support on SPU.
- return 1
-}
add-ieee-options
return 0
===================================================================
@@ -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
===================================================================
@@ -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]
===================================================================
@@ -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.
===================================================================
@@ -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
===================================================================
@@ -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
===================================================================
@@ -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"