Hi, Since r9-4728 the powerpcspe support had been removed, this follow-up patch is to remove the remaining pieces in testsuite.
Regtested on powerpc64-linux-gnu P8/P9 and powerpc64le-linux-gnu P9 and P10. I'm going to push this soon if no objections. BR, Kewen ----- gcc/testsuite/ChangeLog: * lib/target-supports.exp (check_effective_target_vect_cmdline_needed): Remove check_effective_target_powerpc_spe. (check_effective_target_powerpc_spe_nocache): Remove. (check_effective_target_powerpc_spe): Remove. (check_ppc_cpu_supports_hw_available): Remove powerpc*-*-eabispe check. (check_p8vector_hw_available): Likewise. (check_p9vector_hw_available): Likewise. (check_p9modulo_hw_available): Likewise. (check_ppc_float128_sw_available): Likewise. (check_ppc_float128_hw_available): Likewise. (check_vsx_hw_available): Likewise. (check_vmx_hw_available): Likewise. (check_ppc_recip_hw_available): Likewise. (check_dfp_hw_available): Likewise. (check_htm_hw_available): Likewise. * g++.dg/ext/spe1.C: Remove. * g++.dg/other/opaque-1.C: Remove. * g++.dg/other/opaque-2.C: Remove. * g++.dg/other/opaque-3.C: Remove. * g++.target/powerpc/simd-5.C: Remove. --- gcc/testsuite/g++.dg/ext/spe1.C | 10 ----- gcc/testsuite/g++.dg/other/opaque-1.C | 31 -------------- gcc/testsuite/g++.dg/other/opaque-2.C | 19 --------- gcc/testsuite/g++.dg/other/opaque-3.C | 12 ------ gcc/testsuite/g++.target/powerpc/simd-5.C | 44 ------------------- gcc/testsuite/lib/target-supports.exp | 51 +++-------------------- 6 files changed, 5 insertions(+), 162 deletions(-) delete mode 100644 gcc/testsuite/g++.dg/ext/spe1.C delete mode 100644 gcc/testsuite/g++.dg/other/opaque-1.C delete mode 100644 gcc/testsuite/g++.dg/other/opaque-2.C delete mode 100644 gcc/testsuite/g++.dg/other/opaque-3.C delete mode 100644 gcc/testsuite/g++.target/powerpc/simd-5.C diff --git a/gcc/testsuite/g++.dg/ext/spe1.C b/gcc/testsuite/g++.dg/ext/spe1.C deleted file mode 100644 index b98d4b27b3d..00000000000 --- a/gcc/testsuite/g++.dg/ext/spe1.C +++ /dev/null @@ -1,10 +0,0 @@ -/* { dg-do compile } */ -/* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single -O0" } */ -/* { dg-skip-if "not an SPE target" { ! powerpc_spe_nocache } } */ - -typedef int v2si __attribute__ ((vector_size (8))); - -/* The two specializations must be considered different. */ -template <class T> class X { }; -template <> class X<__ev64_opaque__> { }; -template <> class X<v2si> { }; diff --git a/gcc/testsuite/g++.dg/other/opaque-1.C b/gcc/testsuite/g++.dg/other/opaque-1.C deleted file mode 100644 index 669776b9f97..00000000000 --- a/gcc/testsuite/g++.dg/other/opaque-1.C +++ /dev/null @@ -1,31 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single" } */ -/* { dg-skip-if "not an SPE target" { ! powerpc_spe_nocache } } */ - -#define __vector __attribute__((vector_size(8))) -typedef float __vector __ev64_fs__; - -__ev64_fs__ f; -__ev64_opaque__ o; - -int here = 0; - -void bar (__ev64_opaque__ x) -{ - here = 0; -} - -void bar (__ev64_fs__ x) -{ - here = 888; -} - -int main () -{ - f = o; - o = f; - bar (f); - if (here != 888) - return 1; - return 0; -} diff --git a/gcc/testsuite/g++.dg/other/opaque-2.C b/gcc/testsuite/g++.dg/other/opaque-2.C deleted file mode 100644 index 414f87e6c9a..00000000000 --- a/gcc/testsuite/g++.dg/other/opaque-2.C +++ /dev/null @@ -1,19 +0,0 @@ -/* { dg-do compile } */ -/* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single" } */ -/* { dg-skip-if "not an SPE target" { ! powerpc_spe_nocache } } */ - -#define __vector __attribute__((vector_size(8))) -typedef float __vector __ev64_fs__; - -__ev64_fs__ f; -__ev64_opaque__ o; - -extern void bar (__ev64_opaque__); - -int main () -{ - f = o; - o = f; - bar (f); - return 0; -} diff --git a/gcc/testsuite/g++.dg/other/opaque-3.C b/gcc/testsuite/g++.dg/other/opaque-3.C deleted file mode 100644 index f915f840510..00000000000 --- a/gcc/testsuite/g++.dg/other/opaque-3.C +++ /dev/null @@ -1,12 +0,0 @@ -/* { dg-do compile } */ -/* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single" } */ -/* { dg-skip-if "not an SPE target" { ! powerpc_spe_nocache } } */ - -__ev64_opaque__ o; -#define v __attribute__((vector_size(8))) -v unsigned int *p; - -void m() -{ - o = __builtin_spe_evldd(p, 5); -} diff --git a/gcc/testsuite/g++.target/powerpc/simd-5.C b/gcc/testsuite/g++.target/powerpc/simd-5.C deleted file mode 100644 index 71e117ead2a..00000000000 --- a/gcc/testsuite/g++.target/powerpc/simd-5.C +++ /dev/null @@ -1,44 +0,0 @@ -// Test EH with V2SI SIMD registers actually restores correct values. -// Origin: Joseph Myers <jos...@codesourcery.com> -// { dg-options "-O" } -// { dg-do run { target { powerpc_spe && { ! *-*-vxworks* } } } } - -extern "C" void abort (void); -extern "C" int memcmp (const void *, const void *, __SIZE_TYPE__); -typedef int __attribute__((vector_size (8))) v2si; - -v2si a = { 1, 2 }; -v2si b = { 3, 4 }; -v2si c = { 4, 6 }; -volatile v2si r; -v2si r2; - -void -f () -{ - register v2si v asm("r15"); - v = __builtin_spe_evaddw (b, c); - asm volatile ("" : "+r" (v)); - r = v; - throw 1; -} - -int -main () -{ - register v2si v asm("r15"); - v = __builtin_spe_evaddw (a, b); - asm volatile ("" : "+r" (v)); - try - { - f (); - } - catch (int) - { - r = v; - r2 = r; - if (memcmp (&r2, &c, sizeof (v2si))) - abort (); - } - return 0; -} diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index b860cb679bf..dc21dc3a06c 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -2584,7 +2584,6 @@ proc check_ppc_cpu_supports_hw_available { } { # Some simulators are known to not support VSX/power8 instructions. # For now, disable on Darwin if { [istarget powerpc-*-eabi] - || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { expr 0 } else { @@ -2638,7 +2637,6 @@ proc check_p8vector_hw_available { } { # Some simulators are known to not support VSX/power8 instructions. # For now, disable on Darwin if { [istarget powerpc-*-eabi] - || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { expr 0 } else { @@ -2666,7 +2664,6 @@ proc check_p9vector_hw_available { } { # Some simulators are known to not support VSX/power8/power9 # instructions. For now, disable on Darwin. if { [istarget powerpc-*-eabi] - || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { expr 0 } else { @@ -2711,7 +2708,6 @@ proc check_p9modulo_hw_available { } { # Some simulators are known to not support VSX/power8/power9 # instructions. For now, disable on Darwin. if { [istarget powerpc-*-eabi] - || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { expr 0 } else { @@ -2783,7 +2779,6 @@ proc check_ppc_float128_sw_available { } { # instructions. For now, disable on Darwin and VxWorks. if { [istarget *-*-vxworks*] || [istarget powerpc-*-eabi] - || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { expr 0 } else { @@ -2810,7 +2805,6 @@ proc check_ppc_float128_hw_available { } { # instructions. For now, disable on Darwin. if { [istarget *-*-vxworks*] || [istarget powerpc-*-eabi] - || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { expr 0 } else { @@ -2987,7 +2981,6 @@ proc check_vsx_hw_available { } { # Some simulators are known to not support VSX instructions. # For now, disable on Darwin if { [istarget powerpc-*-eabi] - || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { expr 0 } else { @@ -3013,7 +3006,7 @@ proc check_vsx_hw_available { } { proc check_vmx_hw_available { } { return [check_cached_effective_target vmx_hw_available { # Some simulators are known to not support VMX instructions. - if { [istarget powerpc-*-eabi] || [istarget powerpc*-*-eabispe] } { + if { [istarget powerpc-*-eabi] } { expr 0 } else { # Most targets don't require special flags for this test case, but @@ -3044,7 +3037,7 @@ proc check_ppc_recip_hw_available { } { return [check_cached_effective_target ppc_recip_hw_available { # Some simulators may not support FRE/FRES/FRSQRTE/FRSQRTES # For now, disable on Darwin - if { [istarget powerpc-*-eabi] || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { + if { [istarget powerpc-*-eabi] || [istarget *-*-darwin*]} { expr 0 } else { set options "-mpowerpc-gfxopt -mpowerpc-gpopt -mpopcntb" @@ -3958,7 +3951,7 @@ proc check_effective_target_unsigned_char {} { proc check_dfp_hw_available { } { return [check_cached_effective_target dfp_hw_available { # For now, disable on Darwin - if { [istarget powerpc-*-eabi] || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { + if { [istarget powerpc-*-eabi] || [istarget *-*-darwin*]} { expr 0 } else { check_runtime_nocache dfp_hw_available { @@ -4032,8 +4025,7 @@ proc check_effective_target_vect_cmdline_needed { } { || (([istarget i?86-*-*] || [istarget x86_64-*-*]) && ![is-effective-target ia32]) || ([istarget powerpc*-*-*] - && ([check_effective_target_powerpc_spe] - || [check_effective_target_powerpc_altivec])) + && [check_effective_target_powerpc_altivec]) || ([istarget sparc*-*-*] && [check_effective_target_sparc_vis]) || ([istarget arm*-*-*] && [check_effective_target_arm_neon]) || [istarget aarch64*-*-*] @@ -7202,7 +7194,7 @@ proc check_effective_target_powerpc_htm_ok { } { proc check_htm_hw_available { } { return [check_cached_effective_target htm_hw_available { # For now, disable on Darwin - if { [istarget powerpc-*-eabi] || [istarget powerpc*-*-eabispe] || [istarget *-*-darwin*]} { + if { [istarget powerpc-*-eabi] || [istarget *-*-darwin*]} { expr 0 } else { check_runtime_nocache htm_hw_available { @@ -7244,39 +7236,6 @@ proc check_effective_target_powerpc_spu { } { } } -# Return 1 if this is a PowerPC SPE target. The check includes options -# specified by dg-options for this test, so don't cache the result. - -proc check_effective_target_powerpc_spe_nocache { } { - if { [istarget powerpc*-*-*] } { - return [check_no_compiler_messages_nocache powerpc_spe object { - #ifndef __SPE__ - #error not SPE - #else - int dummy; - #endif - } [current_compiler_flags]] - } else { - return 0 - } -} - -# Return 1 if this is a PowerPC target with SPE enabled. - -proc check_effective_target_powerpc_spe { } { - if { [istarget powerpc*-*-*] } { - return [check_no_compiler_messages powerpc_spe object { - #ifndef __SPE__ - #error not SPE - #else - int dummy; - #endif - }] - } else { - return 0 - } -} - # Return 1 if this is a PowerPC target with Altivec enabled. proc check_effective_target_powerpc_altivec { } { -- 2.39.1