// PR target/85503
// { dg-do compile { target { { powerpc64le-*-* } && c++11 } } }
-// { dg-require-effective-target powerpc_vsx_ok }
// { dg-options "-O2 -mvsx" }
+// { dg-require-effective-target powerpc_vsx }
namespace b {
template < int c > struct d { static constexpr int e = c; };
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -w -std=c++14" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* target/69667, compiler got
internal compiler error: Max. number of generated reload insns per insn is achieved (90) */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 " } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
using vdbl = __vector double;
#define BREAK 1
/* { dg-skip-if "" { *-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -ffast-math -mno-fp-in-toc -Wno-return-type" } */
/* { dg-additional-options "-mcmodel=small" { target lp64 } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* target/65240, compiler got a 'insn does not satisfy its constraints' error. */
/* { dg-skip-if "" { *-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -ffast-math -mfp-in-toc -Wno-return-type" } */
/* { dg-additional-options "-mcmodel=small" { target lp64 } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* target/65240, compiler got a 'insn does not satisfy its constraints' error. */
/* { dg-skip-if "" { *-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -ffast-math -Wno-return-type" } */
/* { dg-additional-options "-mcmodel=medium" { target lp64 } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* target/65240, compiler got a 'insn does not satisfy its constraints' error. */
/* { dg-skip-if "" { *-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O3 -ffast-math -Wno-return-type" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* target/65240, compiler got a 'insn does not satisfy its constraints' error. */
/* { dg-skip-if "" { *-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
class A {
public:
/* { dg-skip-if "" { *-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -mdejagnu-tune=power8 -O3 -w" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* target/67211, compiler got a 'insn does not satisfy its constraints' error. */
-// { dg-require-effective-target powerpc_vsx_ok } */
// { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -fstack-protector" }
+// { dg-require-effective-target powerpc_vsx } */
// PAR target/71294 failed because RELOAD could not figure how create a V2DI
// vector that auto vectorization created with each element being the same
/* { dg-do compile } */
/* { dg-skip-if "" { *-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target fpic } */
/* { dg-options "-O3 -mdejagnu-cpu=power8 -mvsx -g -fPIC -fvisibility=hidden -fstack-protector-strong" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target fpic } */
template <typename, typename T> struct E { T e; };
struct J {
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -fstack-protector-strong" } */
+/* { dg-require-effective-target powerpc_vsx } */
class a {
double b[2];
/* { dg-do compile } */
/* { dg-options "-O2 -DNO_WARN_X86_INTRINSICS -mvsx" } */
/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test to ensure that "bool" gets undef'd in xmmintrin.h when
we require strict ANSI. */
/* { dg-do compile } */
/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-vect-details" } */
/* { dg-additional-options "-mavx -mno-avx2" { target i?86-*-* x86_64-*-* } } */
-/* { dg-additional-options "-mvsx" { target powerpc_vsx_ok } } */
#define SIZE (1024 * 1024)
d[i] = a[i] + b[i];
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" { target { { i?86-*-* x86_64-*-* } || { powerpc_vsx_ok } } } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" { target { { i?86-*-* x86_64-*-* } || { powerpc_vsx } } } } } */
/* { dg-do compile } */
-/* { dg-require-effective-target vect_int } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* Specify power9 to ensure the vectorization is profitable
and test point stands, otherwise it could be not profitable
to vectorize. */
/* { dg-additional-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify we cost the exact count for required vec_perm. */
/* { dg-do compile } */
-/* { dg-require-effective-target vect_int } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-additional-options "-mvsx" } */
+/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify we do cost the required vec_perm. */
/* { dg-do compile } */
-/* { dg-require-effective-target vect_int } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-additional-options "-mvsx" } */
+/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify we do cost the required vec_perm. */
/* { dg-additional-options "-O3 -fno-unroll-loops --param=vect-epilogues-nomask=0 -fdump-tree-optimized" } */
/* { dg-additional-options "-mavx512cd" { target { { i?86-*-* x86_64-*-* } && avx512cd } } } */
/* { dg-additional-options "-mavx512vpopcntdq" { target { { i?86-*-* x86_64-*-* } && avx512vpopcntdq } } } */
-/* { dg-additional-options "-mvsx" { target { powerpc_vsx_ok && has_arch_pwr8 } } } */
-/* { dg-additional-options "-mdejagnu-cpu=power8 -mvsx" { target { powerpc_vsx_ok && { ! has_arch_pwr8 } } } } */
+/* { dg-additional-options "-mdejagnu-cpu=power8" { target { powerpc_vsx && { ! has_arch_pwr8 } } } } */
/* { dg-additional-options "-march=z13 -mzarch" { target s390_vx } } */
void
}
/* { dg-final { scan-tree-dump-times " = \.POPCOUNT \\\(vect" 1 "optimized" { target { { i?86-*-* x86_64-*-* } && avx512vpopcntdq } } } } */
-/* { dg-final { scan-tree-dump-times " = \.POPCOUNT \\\(vect" 1 "optimized" { target { powerpc_vsx_ok || s390_vx } } } } */
+/* { dg-final { scan-tree-dump-times " = \.POPCOUNT \\\(vect" 1 "optimized" { target { powerpc_vsx || s390_vx } } } } */
void
bar (long long *p, long long *q)
}
/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 1 "optimized" { target { { i?86-*-* x86_64-*-* } && avx512cd } } } } */
-/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 1 "optimized" { target { powerpc_vsx_ok || s390_vx } } } } */
+/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 1 "optimized" { target { powerpc_vsx || s390_vx } } } } */
/* { dg-do compile } */
/* { dg-additional-options "-O3 -fno-unroll-loops --param=vect-epilogues-nomask=0 -fdump-tree-optimized" } */
/* { dg-additional-options "-mavx512cd -mbmi -mlzcnt -mno-avx512vpopcntdq" { target { { { { i?86-*-* x86_64-*-* } && avx512cd } && lzcnt } && bmi } } } */
-/* { dg-additional-options "-mvsx" { target { powerpc_vsx_ok && has_arch_pwr9 } } } */
-/* { dg-additional-options "-mdejagnu-cpu=power9 -mvsx" { target { powerpc_vsx_ok && { ! has_arch_pwr9 } } } } */
+/* { dg-additional-options "-mdejagnu-cpu=power9" { target { powerpc_vsx && { ! has_arch_pwr9 } } } } */
/* { dg-additional-options "-march=z13 -mzarch" { target s390_vx } } */
void
}
/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 3 "optimized" { target { { { { i?86-*-* x86_64-*-* } && avx512cd } && lzcnt } && bmi } } } } */
-/* { dg-final { scan-tree-dump-times " = \.CTZ \\\(vect" 3 "optimized" { target powerpc_vsx_ok } } } */
+/* { dg-final { scan-tree-dump-times " = \.CTZ \\\(vect" 3 "optimized" { target powerpc_vsx } } } */
/* { dg-final { scan-tree-dump-times " = \.CTZ \\\(vect" 2 "optimized" { target s390_vx } } } */
/* { dg-final { scan-tree-dump-times " = \.POPCOUNT \\\(vect" 1 "optimized" { target s390_vx } } } */
/* { dg-do compile } */
/* { dg-additional-options "-O3 -fno-unroll-loops --param=vect-epilogues-nomask=0 -fdump-tree-optimized" } */
/* { dg-additional-options "-mno-avx512cd -mbmi -mlzcnt -mavx512vpopcntdq" { target { { { { i?86-*-* x86_64-*-* } && avx512vpopcntdq } && lzcnt } && bmi } } } */
-/* { dg-additional-options "-mdejagnu-cpu=power8 -mvsx" { target powerpc_vsx_ok } } */
+/* { dg-additional-options "-mdejagnu-cpu=power8" { target powerpc_vsx } } */
void
foo (int *p, int *q)
}
/* { dg-final { scan-tree-dump-times " = \.POPCOUNT \\\(vect" 3 "optimized" { target { { { { i?86-*-* x86_64-*-* } && avx512vpopcntdq } && lzcnt } && bmi } } } } */
-/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 3 "optimized" { target powerpc_vsx_ok } } } */
+/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 3 "optimized" { target powerpc_vsx } } } */
/* { dg-do compile } */
/* { dg-additional-options "-O3 -fno-unroll-loops --param=vect-epilogues-nomask=0 -fdump-tree-optimized" } */
/* { dg-additional-options "-mavx512cd -mbmi -mlzcnt -mno-avx512vpopcntdq" { target { { { { i?86-*-* x86_64-*-* } && avx512cd } && lzcnt } && bmi } } } */
-/* { dg-additional-options "-mvsx" { target { powerpc_vsx_ok && has_arch_pwr9 } } } */
-/* { dg-additional-options "-mdejagnu-cpu=power9 -mvsx" { target { powerpc_vsx_ok && { ! has_arch_pwr9 } } } } */
+/* { dg-additional-options "-mdejagnu-cpu=power9" { target { powerpc_vsx && { ! has_arch_pwr9 } } } } */
/* { dg-additional-options "-march=z13 -mzarch" { target s390_vx } } */
void
}
/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 3 "optimized" { target { { { { i?86-*-* x86_64-*-* } && avx512cd } && lzcnt } && bmi } } } } */
-/* { dg-final { scan-tree-dump-times " = \.CTZ \\\(vect" 3 "optimized" { target powerpc_vsx_ok } } } */
+/* { dg-final { scan-tree-dump-times " = \.CTZ \\\(vect" 3 "optimized" { target powerpc_vsx } } } */
/* { dg-final { scan-tree-dump-times " = \.CTZ \\\(vect" 2 "optimized" { target s390_vx } } } */
/* { dg-final { scan-tree-dump-times " = \.POPCOUNT \\\(vect" 1 "optimized" { target s390_vx } } } */
/* { dg-do compile } */
/* { dg-additional-options "-O3 -fno-unroll-loops --param=vect-epilogues-nomask=0 -fdump-tree-optimized" } */
/* { dg-additional-options "-mno-avx512cd -mbmi -mlzcnt -mavx512vpopcntdq" { target { { { { i?86-*-* x86_64-*-* } && avx512vpopcntdq } && lzcnt } && bmi } } } */
-/* { dg-additional-options "-mdejagnu-cpu=power8 -mvsx" { target powerpc_vsx_ok } } */
+/* { dg-additional-options "-mdejagnu-cpu=power8" { target powerpc_vsx } } */
void
foo (long long *p, long long *q)
}
/* { dg-final { scan-tree-dump-times " = \.POPCOUNT \\\(vect" 3 "optimized" { target { { { { i?86-*-* x86_64-*-* } && avx512vpopcntdq } && lzcnt } && bmi } } } } */
-/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 3 "optimized" { target powerpc_vsx_ok } } } */
+/* { dg-final { scan-tree-dump-times " = \.CLZ \\\(vect" 3 "optimized" { target powerpc_vsx } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "harness.h"
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "harness.h"
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "harness.h"
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "harness.h"
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "harness.h"
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "harness.h"
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "harness.h"
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "harness.h"
/* { dg-do compile { target powerpc*-*-* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target powerpc*-*-* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Note that vector long long and vector double type require vsx support. */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -mpower9-misc -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify P9 atomic memory operations. */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "lbarx" } } */
/* { dg-final { scan-assembler-not "lharx" } } */
/* { dg-final { scan-assembler-times "lwarx" 18 } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "lbarx" 7 } } */
/* { dg-final { scan-assembler-times "lharx" 7 } } */
/* { dg-final { scan-assembler-times "lwarx" 7 } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "lq" 1 } } */
/* { dg-final { scan-assembler-times "stq" 1 } } */
/* { dg-final { scan-assembler-not "bl __atomic" } } */
/* { dg-do compile { target { powerpc*-*-linux* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "cdtbcd " 1 } } */
/* { dg-final { scan-assembler-times "cbcdtd " 1 } } */
/* { dg-final { scan-assembler-times "addg6s " 1 } } */
/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "bcdadd\[.\] " 2 } } */
/* { dg-final { scan-assembler-times "bcdsub\[.\] " 2 } } */
/* { dg-final { scan-assembler-not "bl __builtin" } } */
/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "bcdadd\[.\] " 4 } } */
/* { dg-final { scan-assembler-times "bcdsub\[.\] " 6 } } */
/* { dg-final { scan-assembler-not "bl __builtin" } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on 32-bit and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target ilp32 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test only runs on 32-bit configurations, where a compiler error
should be issued because this builtin is not available on
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
/* This test should succeed only on 64-bit configurations. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
/* This test should succeed only on 64-bit configurations. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { has_arch_ppc64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test only runs on 32-bit configurations, producing a compiler
error because the builtin requires 64 bits. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target ilp32 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test only runs on 32-bit configurations, producing a compiler
error because the builtin requires 64 bits. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
/* This test should succeed only on 64-bit configurations. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
/* This test should succeed only on 64-bit configurations. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target ilp32 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test only runs on 32-bit configurations, where a compiler error
should be issued because this builtin is not available on
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { has_arch_ppc64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test only runs on 32-bit configurations, where a compiler error
should be issued because this builtin is not available on
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
/* This test should succeed only on 64-bit configurations. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
/* This test should succeed only on 64-bit configurations. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { has_arch_ppc64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test only runs on 32-bit configurations, where a compiler error
should be issued because this builtin is not available on
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target ilp32 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test only runs on 32-bit configurations, where a compiler error
should be issued because this builtin is not available on
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* Require 64-bit target to select expected error message below. 32-bit
target produces different error message. */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdbool.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#define NO_WARN_X86_INTRINSICS 1
#include <x86intrin.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "\[ \t\]and " } } */
/* { dg-final { scan-assembler-not "\[ \t\]or " } } */
/* { dg-final { scan-assembler-not "\[ \t\]xor " } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "\[ \t\]and " } } */
/* { dg-final { scan-assembler-not "\[ \t\]or " } } */
/* { dg-final { scan-assembler-not "\[ \t\]xor " } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "\[ \t\]and " } } */
/* { dg-final { scan-assembler "\[ \t\]or " } } */
/* { dg-final { scan-assembler "\[ \t\]xor " } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "\[ \t\]and " } } */
/* { dg-final { scan-assembler "\[ \t\]or " } } */
/* { dg-final { scan-assembler "\[ \t\]xor " } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
/* { dg-additional-options "-mbig" { target powerpc64le-*-* } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O0 -dp" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed only on 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target ilp32 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target ppc_cpu_supports_hw } */
/* Power9 (aka, ISA 3.0) has a MODSD instruction to do modulus, while Power8
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -ftree-vectorize -mvsx -fno-vect-cost-model" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test vectorizer can exploit vector conversion instructions to convert
unsigned/signed long long to float. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -ftree-vectorize -mvsx -fno-vect-cost-model" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test vectorizer can exploit vector conversion instructions to convert
float to unsigned/signed long long. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic -fno-unroll-loops -fno-unroll-all-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
typedef vector unsigned long long crypto_t;
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx -mno-crypto" } */
+/* { dg-require-effective-target powerpc_vsx } */
void use_builtins_d (__vector unsigned long long *p, __vector unsigned long long *q, __vector unsigned long long *r, __vector unsigned long long *s)
{
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic -fno-unroll-loops -fno-unroll-all-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef SIZE
#define SIZE 1024
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* Now O2 enables vectorization by default, which makes expected scalar
loads gone, so simply disable it. */
/* { dg-options "-mvsx -O2 -fno-tree-vectorize" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef TYPE
#define TYPE double
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* Now O2 enables vectorization by default, which generates unexpected float
conversion for vector construction, so simply disable it. */
/* { dg-options "-mvsx -O2 -fno-tree-vectorize" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef TYPE
#define TYPE float
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef TYPE
#define TYPE vector double
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target lp64 } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "mtvsrd" } } */
/* { dg-final { scan-assembler "mfvsrd" } } */
/* { dg-do compile { target lp64 } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler {\mmtvsrd\M} } } */
/* { dg-final { scan-assembler {\mmfvsrwz\M} } } */
/* { dg-final { scan-assembler {\mxscvdpspn\M} } } */
/* { dg-do compile { target lp64 } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test that we generate XSCVDPSP instead of FRSP and XSCVDPSPN when we combine
a round from double to float and moving the float value to a GPR. */
/* { dg-do compile { target lp64 } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "mtvsrd" } } */
/* { dg-final { scan-assembler "mfvsrd" } } */
/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Check code generation for direct move for long types. */
/* { dg-do compile { target lp64 } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "mtvsrd" } } */
/* { dg-final { scan-assembler "mfvsrd" } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target longdouble128 } */
/* { dg-options "-O2 -mvsx -mabi=ieeelongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target longdouble128 } */
/* Check that complex multiply generates the right call when long double is
IEEE 128-bit floating point. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target longdouble128 } */
/* { dg-options "-O2 -mvsx -mabi=ibmlongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target longdouble128 } */
/* Check that complex multiply generates the right call when long double is
IBM extended double floating point. */
/* { dg-do compile { target { powerpc*-*-linux* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "divwe " 1 } } */
/* { dg-final { scan-assembler-times "divweu " 1 } } */
/* { dg-final { scan-assembler-not "bl __builtin" } } */
/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "divde " 1 } } */
/* { dg-final { scan-assembler-times "divdeu " 1 } } */
/* { dg-final { scan-assembler-not "bl __builtin" } } */
/* { dg-do compile { target { powerpc*-*-linux* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx -mno-float128" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test that we can use #pragma GCC target to enable -mfloat128. */
/* { dg-do compile { target { powerpc*-*-linux* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx -mno-float128 -save-temps" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "float128-3.c"
/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx -mno-float128" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test that we can use #pragma GCC target to enable -mfloat128 and generate
code on ISA 3.0 for the float128 built-in functions. Lp64 is required
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
__float128
xfma (__float128 a, __float128 b, __float128 c)
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
#ifndef TYPE
#define TYPE _Float128
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
extern _Float128 floorf128 (_Float128);
extern _Float128 ceilf128 (_Float128);
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2 -ffast-math -std=gnu11" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
/* Test to make sure the compiler handles the standard _Float128 functions that
have hardware support in ISA 3.0/power9. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2 -ffast-math -std=c11 -mno-pcrel" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
/* Test to make sure the compiler calls the external function instead of doing
the built-in processing for _Float128 functions that have hardware support
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2 -mabi=ieeelongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
/* Insure that the ISA 3.0 IEEE 128-bit floating point built-in functions can
be used with long double when the default is IEEE 128-bit. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2 -ffast-math" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
extern _Float128 copysignf128 (_Float128, _Float128);
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
extern _Float128 fabsf128 (_Float128);
extern _Float128 copysignf128 (_Float128, _Float128);
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
extern _Float128 fabsf128 (_Float128);
extern _Float128 copysignf128 (_Float128, _Float128);
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
extern _Float128 fminf128 (_Float128, _Float128);
extern _Float128 fmaxf128 (_Float128, _Float128);
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2 -ffast-math" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
extern _Float128 sqrtf128 (_Float128);
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
/* Test the generation of the round to odd instructions. */
__float128
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target float128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target float128 } */
__float128
xsqrt (__float128 a)
/* { dg-do compile { target { *-*-linux* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -mno-float128" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test tests whether the underlying IEEE 128-bit floating point) is
enabled by default on VSX Linux 64-bit systems, even if the keyword
/* { dg-do compile { target { *-*-linux* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -mno-float128" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test tests whether the underlying IEEE 128-bit floating point) is
enabled by default on VSX Linux 64-bit systems, even if the keyword
double inputs for VSX produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results when -mcpu=power9 is specified. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -O2 -mdejagnu-cpu=power9 -mvsx -fwrapv" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code when -mcpu=power9 is specified. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -fwrapv" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs for VSX produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-maltivec -mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
/* { dg-additional-options "-maix64" { target powerpc-ibm-aix* } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
#include "altivec.h"
char inputs produce the right code when -mcpu=power8 is specified. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-cmp-char.h"
char inputs produce the right code when -mcpu=power9 is specified. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-cmp-char.h"
double inputs for VSX produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs for VSX produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-cmp-int.h"
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-cmp-int.h"
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-cmp-int.h"
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-cmp-short.h"
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-cmp-short.h"
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs for VSX produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target lp64 } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target lp64 } */
#include <altivec.h>
inputs produce the right code with a power7 (BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// Six tests total. Targeting P7 (BE).
// P7 variable offset: addi, li, stxvw4x, rldicl, add, lbz, (extsb)
inputs produce the right code with a P8 (LE or BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// six tests total. Targeting P8LE / P8BE.
// P8 LE variable offset: rldicl, subfic, sldi, mtvsrd, xxpermdi, vslo, mfvsrd, sradi, rlwinm, (extsb)
inputs produce the right code with a P9 (LE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mli\M} 3 { target lp64 } } } */
/* Endian sensitive, vextubrx or vextublx. */
double inputs produce the right code with a P8 (LE or BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// targeting P8, BE and LE. 2 tests.
// P8 (LE) constants: xxlor
inputs produce the right code with a P7 (BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 " } */
+/* { dg-require-effective-target powerpc_vsx } */
// targeting P7 (BE), 2 tests.
// P7 constants: xscvspdp
inputs produce the right code with a P8 (LE or BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// targeting P8, BE and LE. 2 tests.
// P8 (LE) constants: xxsldwi, xscvspdp
inputs produce the right code. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mxscvspdp\M} 2 } } */
/* { dg-final { scan-assembler-times {\mrldicl\M} 1 { target le } } } */
inputs produce the right code with a P7 (BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 " } */
+/* { dg-require-effective-target powerpc_vsx } */
// Targeting P7 (BE). 6 tests total.
// P7 constant: li, addi, stxvw4x, rldic, addi, lwzx/lwax
inputs produce the right code with a P8 (LE or BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// Targeting P8 (LE) and (BE). 6 tests total.
// P8 LE constant: vspltw, mfvsrwz, (1:extsw/2:rldicl)
inputs produce the right code with a P9 (LE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 " } */
+/* { dg-require-effective-target powerpc_vsx } */
// Targeting P9 (LE). 6 tests total.
// P9 constant: li, vextuwrx, (1:extsw)
inputs produce the right code with a P8 (LE or BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// Targeting P7. six tests total.
// P7 (m64) with constants: xxpermdi, stfd, ld
inputs produce the right code with a P8 (LE or BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// Targeting P8LE and P8BE, six tests total.
// P8 (LE) constants: mfvsrd
inputs produce the right code for a P9 target. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// targeting P9 (LE), six tests.
// p9 constants: mfvsrd
inputs produce the right code for a P7 (BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// six tests total. Targeting P7 BE.
// p7 (be) vars: li, addi, stxvw4x, rldic, addi, lhax/lhzx
inputs produce the right results with a P8 (LE or BE) target. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// six tests total. Targeting P8, both LE and BE.
// p8 (le) variable offset: rldicl, subfic, sldi, mtvsrd, xxpermdi, vslo, mfvsrd, srdi, (1:extsh/2:rlwinm)
inputs produce the right code for a P9 target. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
// six tests total. Targeting P9.
// p9 (le) variable offset: slwi, vextuhlx, extsh
inputs produce the right codegen. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* The below contains vec_insert () calls with both variable and constant
values. Only the constant value calls are early-gimple folded, but all
inputs produce the right codegen. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* The below contains vec_insert () calls with both variable and constant
values. Only the constant value calls are early-gimple folded, but all
double inputs produce the right codegen. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right codegen. Power8 variant. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right codegen. Power9 variant. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right codegen. Power8 variant. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right codegen. Power9 variant. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right codegen. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right codegen. Power8 variant. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right codegen. Power9 variant. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
*/
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -fdump-tree-gimple" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#include <stdio.h>
/* Verify that overloaded built-ins for __builtin_vec_xl with char
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xl with double
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xl with float
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xl with int
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xl with long long
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xl with short
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_vsx_ld with char
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_vsx_ld with double
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_vsx_ld with float
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_vsx_ld with int
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_vsx_ld with long long
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_vsx_ld with short
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_xl with char
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_xl with double
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_xl with float
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_xl with int
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_xl with long long
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
/* Verify that overloaded built-ins for vec_xl with short
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, RETTYPE, VAR_OFFSET, LOADFROM) \
* with char inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
* with int inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs for VSX produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
* with char inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
* with int inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
* long long inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx_ok } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
* vec_nand) were added as part of ISA 2.07 (P8). */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
* vec_nand) were added as part of ISA 2.07 (P8). */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
* vec_nand) were added as part of ISA 2.07 (P8). */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
with float and double inputs produce the right codegen. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
with int inputs produce the right codegen. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
with long long inputs produce the right codegen. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs for VSX produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs for VSX produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
-/* { dg-require-effective-target lp64 } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
/* { dg-additional-options "-maix64" { target powerpc-ibm-aix* } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target lp64 } */
#include "altivec.h"
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
/* { dg-additional-options "-maix64" { target powerpc-ibm-aix* } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
#include "altivec.h"
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
/* { dg-additional-options "-maix64" { target powerpc-ibm-aix* } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -mdejagnu-cpu=power8" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs for VSX produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code when -mcpu=power8 is specified. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code when -mcpu=power9 is specified. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* vec_neg testcase, included by fold-vec-neg-longlong.p*.c */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-neg-longlong.h"
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "fold-vec-neg-longlong.h"
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -mdejagnu-cpu=power8" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
// vector double needs -mvsx.
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile {target lp64} } */
// 'long long' in Altivec types is invalid without -mvsx.
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs for VSX produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* This test covers the shift left tests with the -fwrapv option. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -fwrapv" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
* This is a counterpart to the fold-vec-shift-left-frwapv test. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
generate errors as expected when we attempt to use invalid inputs. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs for VSX produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
double inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xst with char
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xst with double
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xst with float
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xst with int
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xst with long long
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -mdejagnu-cpu=power8" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for __builtin_vec_xst with short
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_vsx_st with char
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_vsx_st with double
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_vsx_st with float
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_vsx_st with int
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_vsx_st with long long
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_vsx_st with short
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Verify that overloaded built-ins for vec_xst with char
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, VALUE, VAR_OFFSET, SAVETO) \
/* Verify that overloaded built-ins for vec_xst with double
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, VALUE, VAR_OFFSET, SAVETO) \
/* Verify that overloaded built-ins for vec_xst with float
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, VALUE, VAR_OFFSET, SAVETO) \
/* Verify that overloaded built-ins for vec_xst with int
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, VALUE, VAR_OFFSET, SAVETO) \
/* Verify that overloaded built-ins for vec_xst with long long
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, VALUE, VAR_OFFSET, SAVETO) \
/* Verify that overloaded built-ins for vec_xst with short
inputs produce the right code. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
#define BUILD_VAR_TEST(TESTNAME1, VALUE, VAR_OFFSET, SAVETO) \
double inputs for VSX produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-maltivec -mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
/* { dg-additional-options "-maix64" { target powerpc-ibm-aix* } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
#include "altivec.h"
inputs produce the right results. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
inputs produce the right code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -mdejagnu-tune=power8 -O3 -dp" } */
+/* { dg-require-effective-target powerpc_vsx } */
#define LARGE 0x12345
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-skip-if "" { powerpc*le-*-* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -mdejagnu-tune=power8 -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
vector double fusion_vector (vector double *p) { return p[2]; }
/* { dg-do compile { target { powerpc*-linux-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx -mlong-double-64" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "gnu_attribute 4, 9" } } */
/* Check that if we can do the long double operation without doing an emulator
/* { dg-do compile { target { powerpc*-linux-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx -mabi=ieeelongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "gnu_attribute 4, 13" } } */
/* Check that if we can do the long double operation without doing an emulator
/* { dg-do compile { target { powerpc*-linux-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx -mabi=ibmlongdouble -Wno-psabi" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "gnu_attribute 4, 5" } } */
/* Check that if we can do the long double operation without doing an emulator
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test vectorizer can exploit ISA 2.07 instruction vmuluwm (Vector Multiply
Unsigned Word Modulo) for both signed and unsigned word multiplication. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target longdouble128 } */
/* { dg-options "-O2 -mvsx -mabi=ieeelongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target longdouble128 } */
/* Check that complex multiply generates the right call when long double is
IEEE 128-bit floating point. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target longdouble128 } */
/* { dg-options "-O2 -mvsx -mabi=ibmlongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target longdouble128 } */
/* Check that complex multiply generates the right call when long double is
IBM extended double floating point. */
/* { dg-do compile { target { le } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify fix for problem where vec_xl and vec_xst are not recognized
for the vector char and vector short cases on P8 only.
/* { dg-do compile { target { le } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify fix for problem where vec_xl and vec_xst are not recognized
for the vector char and vector short cases on P8 only. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic -fno-unroll-loops -fno-unroll-all-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef TYPE
#define TYPE long long
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic -fno-unroll-loops -fno-unroll-all-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -ftree-vectorize -fvect-cost-model=dynamic" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -ftree-vectorize -fvect-cost-model=dynamic" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic -fno-unroll-loops -fno-unroll-all-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
vector float dbl_to_float_p8 (double x) { return __builtin_vsx_xscvdpspn (x); }
double float_to_dbl_p8 (vector float x) { return __builtin_vsx_xscvspdpn (x); }
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -fno-math-errno" } */
+/* { dg-require-effective-target powerpc_vsx } */
float abs_sf (float *p)
{
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
float
load_store_sf (unsigned long num,
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "vbpermq" } } */
/* { dg-final { scan-assembler "mfvsrd" } } */
/* { dg-final { scan-assembler-not "stfd" } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic -fno-unroll-loops -fno-unroll-all-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef SIZE
#define SIZE 1024
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic -fno-unroll-loops -fno-unroll-all-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef SIZE
#define SIZE 1024
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fvect-cost-model=dynamic -fno-unroll-loops -fno-unroll-all-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef SIZE
#define SIZE 1024
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify P9 changes to allow DImode into Altivec registers, and generate
constants using XXSPLTIB. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that large integer constants are loaded via direct move instead of
being loaded from memory. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test to make sure VEXTU{B,H,W}{L,R}X is generated for various vector extract
operations for ISA 3.0 (-mcpu=power9). In addition, make sure that neither
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test that under ISA 3.0 (-mcpu=power9), the compiler optimizes conversion to
double after a vec_extract to use the VEXTRACTU{B,H} or XXEXTRACTUW
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This file tests the extraction of 64-bit values. On Power 9, the direct
move is prefered for the 64-bit extract as it is either lower latency or
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
void sc (signed char *p, double x) { *p = x; }
void uc (unsigned char *p, double x) { *p = x; }
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
double sc (signed char *p) { return (double)*p; }
double uc (unsigned char *p) { return (double)*p; }
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Note that for unsigned cases, the differences from those ones in
p9-fpcvt-2.c is that they will be converted to int implicitly first
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvx" } } */
/* { dg-final { scan-assembler "stxvx" } } */
/* { dg-final { scan-assembler-not "lxvd2x" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvx" } } */
/* { dg-final { scan-assembler "stvewx" } } */
/* { dg-final { scan-assembler-not "lxvd2x" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target ppc_float128_sw } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O3 -mfloat128" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target ppc_float128_sw } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvx" } } */
/* { dg-final { scan-assembler "stxvx" } } */
/* { dg-final { scan-assembler-not "lxvd2x" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -mpower9-minmax -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "fsel" } } */
/* { dg-final { scan-assembler "xscmpeqdp" } } */
/* { dg-final { scan-assembler "xscmpgtdp" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -mpower9-minmax" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "fsel" } } */
/* { dg-final { scan-assembler "xscmpeqdp" } } */
/* { dg-final { scan-assembler "xscmpgtdp" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -mpower9-minmax" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "xsmaxcdp" } } */
/* { dg-final { scan-assembler-not "xsmincdp" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target lp64 } } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target lp64 } } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "vspltish" } } */
/* { dg-final { scan-assembler-not "xxspltib" } } */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify P9 vector bit-permute doubleword instruction. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=1" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for that only vectorize the epilogue with vector access with length,
the main body still use normal vector load/store. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=1" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for that only vectorize the epilogue with vector access with length,
the main body still use normal vector load/store. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=1" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for that only vectorize the epilogue with vector access with length,
the main body still use normal vector load/store. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=1" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for that only vectorize the epilogue with vector access with length,
the main body still use normal vector load/store. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=1" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for that only vectorize the epilogue with vector access with length,
the main body still use normal vector load/store. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=1" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for that only vectorize the epilogue with vector access with length,
the main body still use normal vector load/store. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* Pass cunroll isn't disabled by -fno-unroll-loops, so use explicit
disabling option for it. */
-/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -ffast-math -fdisable-tree-cunroll" } */
+/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -ffast-math" } */
-/* { dg-additional-options "--param=vect-partial-vector-usage=1" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
+/* { dg-additional-options "--param=vect-partial-vector-usage=1 -fdisable-tree-cunroll" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=1" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for that only vectorize the epilogue with vector access with length,
the main body still use normal vector load/store. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=2" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for fully with length, the loop body uses vector access with length,
there should not be any epilogues. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=2" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for fully with length, the loop body uses vector access with length,
there should not be any epilogues. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=2" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for fully with length, the loop body uses vector access with length,
there should not be any epilogues. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=2" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for fully with length, the loop body uses vector access with length,
there should not be any epilogues. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=2" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for fully with length, the loop body uses vector access with length,
there should not be any epilogues. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=2" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for fully with length, the loop body uses vector access with length,
there should not be any epilogues. */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* Pass cunroll isn't disabled by -fno-unroll-loops, so use explicit
disabling option for it. */
-/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -ffast-math -fdisable-tree-cunroll" } */
+/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -ffast-math" } */
-/* { dg-additional-options "--param=vect-partial-vector-usage=2" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
+/* { dg-additional-options "--param=vect-partial-vector-usage=2 -fdisable-tree-cunroll" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
-/* { dg-do compile { target { lp64 && powerpc_vsx_ok } } } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fno-trapping-math" } */
/* { dg-additional-options "--param=vect-partial-vector-usage=2" } */
/* { dg-additional-options "-mno-strict-align" { target opt_mstrict_align } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* Test for fully with length, the loop body uses vector access with length,
there should not be any epilogues. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify P9 vector negate instructions. */
/* { dg-do compile { target lp64 } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target int128 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test generation of VPERMR/XXPERMR on ISA 3.0 in little endian. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that the XXBR{H,W} instructions are generated if the value is
forced to be in a vector register, and XXBRD is generated all of the
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -ftree-vectorize -mdejagnu-cpu=power7 -ffast-math -fno-unroll-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "xvmadd" 4 } } */
/* { dg-final { scan-assembler-times "xsmadd\|fmadd\ " 2 } } */
/* { dg-final { scan-assembler-times "fmadds" 2 } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -ftree-vectorize -mdejagnu-cpu=power7 -ffast-math -ffp-contract=off -fno-unroll-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "xvmadd" 2 } } */
/* { dg-final { scan-assembler-times "xsmadd\|fmadd\ " 1 } } */
/* { dg-final { scan-assembler-times "fmadds" 1 } } */
-! { dg-require-effective-target powerpc_vsx_ok }
! { dg-options "-mvsx -O2 -ftree-vectorize -mno-efficient-unaligned-vsx" }
+! { dg-require-effective-target powerpc_vsx }
INTERFACE
FUNCTION elemental_mult (a, b, c)
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mlfiwax\M|\mlxsiwax\M} 2 } } */
/* { dg-final { scan-assembler-times {\mlfiwzx\M|\mlxsiwzx\M} 2 } } */
/* { dg-final { scan-assembler-times {\mfcfids\M|\mxscvsxdsp\M} 3 } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler {\mfriz\M|\mxsrdpiz\M} } } */
double round_double_llong (double a)
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mfctiwz\M|\mxscvdpsxws\M} 2 } } */
/* { dg-final { scan-assembler-times {\mfctiwuz\M|\mxscvdpuxws\M} 2 } } */
/* { dg-final { scan-assembler-times {\mfctidz\M|\mxscvdpsxds\M} 2 } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mfctidz\M|\mxscvdpsxds\M} 2 } } */
/* { dg-final { scan-assembler-not {\mlwz\M} } } */
/* { dg-final { scan-assembler-not {\mstw\M} } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mstfiwx\M|\mstxsiwx\M} 4 } } */
/* { dg-final { scan-assembler-times {\mlfiwax\M|\mlxsiwax\M} 2 } } */
/* { dg-final { scan-assembler-times {\mlfiwzx\M|\mlxsiwzx\M} 2 } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "fcfid \|xscvsxddp " 2 } } */
/* { dg-final { scan-assembler-times "fcfids \|xscvsxdsp " 2 } } */
/* { dg-final { scan-assembler-times "fctiwz \|xscvdpsxws " 2 } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "fcfid \|xscvsxddp " 2 } } */
/* { dg-final { scan-assembler-times "fcfids \|xscvsxdsp " 2 } } */
/* { dg-final { scan-assembler-times "fctiwz \|xscvdpsxws " 2 } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not {\mxxlnor\M} } } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler {\mvspltish\M} } } */
/* { dg-final { scan-assembler {\mvrlh\M} } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
vector float b = {0.0f, 0.0f, 0.0f, 0.0f};
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
/* { dg-final { scan-assembler-not {\mmr\M} } } */
vector __int128 add (long long a)
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mxsmaxdp\M} 3 } } */
/* { dg-final { scan-assembler-times {\mxsmindp\M} 3 } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mxsmaxcdp\M} 3 { target has_arch_pwr9 } } } */
/* { dg-final { scan-assembler-times {\mxsmincdp\M} 3 { target has_arch_pwr9 } } } */
/* { dg-final { scan-assembler-times {\mxsmaxdp\M} 3 { target { ! has_arch_pwr9 } } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* As PR104015, we don't expect vectorizer will re-try some vector modes
for epilogues on Power9, since Power9 doesn't support partial vector
/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler {\mvspltisw\M} } } */
/* { dg-final { scan-assembler {\mvupkhsw\M} } } */
/* { dg-final { scan-assembler-not {\mlvx\M} } } */
/* PR target/104239 */
/* { dg-do compile } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx -DNO_WARN_X86_INTRINSICS" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#if __has_include(<immintrin.h>)
#include <immintrin.h>
/* PR target/104239 */
/* { dg-do compile } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx -DNO_WARN_X86_INTRINSICS" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#if __has_include(<x86gprintrin.h>)
#include <x86gprintrin.h>
/* PR target/104239 */
/* { dg-do compile } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx -DNO_WARN_X86_INTRINSICS -std=c89" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <x86intrin.h>
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* It's to verify no ICE here, ignore error messages about
mismatch argument number since they are not test points
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* It's to verify no ICE here, ignore error messages about
the required options for vec_neg here. */
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
#include "pr106769.h"
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
#include "pr106769.h"
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target lp64 } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -funroll-loops -fno-tree-loop-distribute-patterns --param vect-partial-vector-usage=2 -fdump-tree-optimized" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target lp64 } */
/* Verify there is only one IFN call LEN_LOAD and IFN_STORE separately. */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
/* Verify there is no error message. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* Disable rs6000 optimize_swaps as it drops some REG_EQUAL
notes on const vector and affects test point here. */
/* { dg-options "-O2 -mvsx -mno-optimize-swaps" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify we can optimize away vector shifting if every byte
of vector is the same. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify there is no warning message. */
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-require-effective-target has_arch_ppc64 } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Ensure vector mode is used for 16-byte by pieces equality compare. */
/* { dg-do compile { target { has_arch_pwr8 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Ensure 16-byte by pieces move is enabled. */
/* PR target/113950 */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify we do not ICE on the following. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
double foo (double x) { return __builtin_sqrt (x); }
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-skip-if "" { powerpc*le-*-* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Make sure that vec_mergel and vec_mergeh are supported for V2DF/V2DI types. */
/* { dg-final { scan-assembler-times "xxpermdi" 4 } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xxlxor\|vspltis\[bhw\]" } } */
/* { dg-final { scan-assembler-not "lxvd2x" } } */
/* { dg-final { scan-assembler-not "lxvw4x" } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "stfd" } } */
/* PR 47862: Verify caller-save spill of vectors in FP regs do not use
/* Test for ICE arising from VSX code generation. */
/* { dg-do compile } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -funroll-loops" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
int sourcenode;
int ARCHelems;
/* Test for ICE arising from VSX code generation. */
/* { dg-do compile } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
struct timeval
{
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Cut down example from s_scalbnl that aborted on 32-bit when the fix for
48053 went in to allow creating DImode 0's in VSX registers. */
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -std=gnu89" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Make sure that the conditional macros vector, bool, and pixel are not
considered as being defined. */
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* The bug shows up if you compile with -maltivec or -mcpu=power7, due to one
of the vector's being eliminated due to rs6000_macro_to_expand being called
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-skip-if "" { powerpc*le-*-* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -mabi=altivec -ffast-math -fno-unroll-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "xvaddsp" 3 } } */
/* { dg-final { scan-assembler-times "xvminsp" 3 } } */
/* { dg-final { scan-assembler-times "xvmaxsp" 3 } } */
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -mabi=altivec -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xvadddp" } } */
/* { dg-final { scan-assembler "xvmindp" } } */
/* { dg-final { scan-assembler "xvmaxdp" } } */
little-endian targets. */
/* { dg-do compile { target { powerpc64le-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7 -mabi=altivec" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "lvx" 1 } } */
/* { dg-final { scan-assembler-times "stvx" 1 } } */
/* { dg-final { scan-assembler-not "ld" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -fmerge-all-constants" } */
+/* { dg-require-effective-target powerpc_vsx } */
struct locale_time_t
{
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -misel -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
struct phylo_s {
int left;
/* PR rtl-optimization/56605 */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mvsx -mdejagnu-cpu=power7 -fno-unroll-loops -fdump-rtl-combine" } */
+/* { dg-require-effective-target powerpc_vsx } */
void foo (short* __restrict sb, int* __restrict ia)
{
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target longdouble128 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -fcaller-saves" } */
+/* { dg-require-effective-target longdouble128 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "lxvd2x" } } */
/* { dg-final { scan-assembler-not "lxvw4x" } } */
/* { dg-final { scan-assembler-not "lvx" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
enum typecode
{
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -funroll-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <stdlib.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O0" } */
+/* { dg-require-effective-target powerpc_vsx } */
long foo (void) { return 0; }
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target longdouble128 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target longdouble128 } */
+/* { dg-require-effective-target powerpc_vsx } */
#if defined(__LONG_DOUBLE_IEEE128__)
/* If long double is IEEE 128-bit, we need to use the __ibm128 type instead of
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xxsldwi" } } */
/* { dg-final { scan-assembler "xxpermdi" } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -ffast-math -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <math.h>
/* { dg-do compile { target { powerpc64*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that we optimize vector1 = (vector2 == vector3) by not loading up
0/-1. */
/* { dg-do compile { target { powerpc64*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that we optimize vector1 = (vector2 != vector3) by not loading up
0/-1. */
/* { dg-do compile { target { powerpc64*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that we can optimize a vector conditional move, where one of the arms
is all 1's into using the mask as one of the inputs to XXSEL. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O1 -mvsx -mdejagnu-cpu=power7 -mlong-double-128" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR 67808: LRA ICEs on simple double to long double conversion test case */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Make sure that the register allocator does not move SF values to GPR
registers in order to do an offsettable store. */
/* { dg-do compile */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR 70423, Make sure we don't generate vmaddfp or vnmsubfp. These
instructions have different rounding modes than the VSX instructions
/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx -mfloat128" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef TYPE
#define TYPE __float128
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
static unsigned short x[(16384/sizeof(unsigned short))] __attribute__ ((aligned (16)));
static unsigned short y[(16384/sizeof(unsigned short))] __attribute__ ((aligned (16)));
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target lp64 } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target lp64 } */
#define TYPE void*
#define TYPE2 void*
/* Test for reload ICE arising from POWER9 Vector Dform code generation. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O1 -mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
typedef __attribute__((altivec(vector__))) int type_t;
type_t
/* Test for reload ICE arising from POWER9 Vector Dform code generation. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mvsx -funroll-loops -fno-aggressive-loop-optimizations" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
typedef double vec[3];
struct vec_t
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
volatile int a;
int b;
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#pragma pack(1)
struct
/* Test for a reload ICE arising from trying to direct move a TDmode value. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target dfp } */
/* { dg-options "-O1 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target dfp } */
extern void testvad128 (int n, ...);
void
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that we generate xxspltw <reg>,<reg>,0 for V4SFmode splat. */
// PR target/71763
// { dg-do compile }
-// { dg-require-effective-target powerpc_vsx_ok }
// { dg-options "-O1 -mvsx" }
+// { dg-require-effective-target powerpc_vsx }
int a, b;
float c;
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stdint.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stdint.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
typedef long V __attribute__((__vector_size__(32)));
/* { dg-do compile { target { lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
__int128_t
foo (__int128_t *src)
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O3 -funroll-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* derived from 20021120-1.c, compiled for -mcpu=power9. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -funroll-loops -ffast-math -mupdate -fno-auto-inc-dec" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR 77289: LRA ICEs due to invalid constraint checking. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx -DNO_WARN_X86_INTRINSICS" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <x86intrin.h>
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
typedef long a;
enum c { e, f, g, h, i, ab } j();
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fdump-tree-vect-details -fno-unroll-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef SIZE
#define SIZE 1024
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This caused an unrecognizable insn message on development versions of GCC 7. */
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -mfloat128" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <math.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -mfloat128" } */
+/* { dg-require-effective-target powerpc_vsx } */
#ifndef TYPE
#define TYPE _Float128
/* { dg-do assemble { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx_ok } */
/* Compile with -O3 -mcpu=power9. It originally generated
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* PR target/79354 */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not {\mstxssp\M} } } */
int b, f, g;
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
int foo (short a[], int x)
{
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -S -mno-cmpb" } */
+/* { dg-require-effective-target powerpc_vsx } */
float testf (float x, float y)
{
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
int
main()
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
int
main ()
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Make sure that STXSDX is generated for double scalars in Altivec registers
on power7 instead of moving the value to a FPR register and doing a X-FORM
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* Now O2 enables vectorization by default, which generates unexpected VSR
to GPR movement for vector construction, so simply disable it. */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -fno-tree-vectorize" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Make sure that STXSSPX is generated for float scalars in Altivec registers
on power7 instead of moving the value to a FPR register and doing a X-FORM
-/* { dg-do compile { target { powerpc_vsx_ok } } } */
-/* { dg-require-effective-target vect_int } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -fdump-tree-slp-details" } */
+/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target powerpc_vsx } */
+
/* PR80695: Verify cost model for vec_construct on POWER8. */
-/* { dg-do compile { target { powerpc_vsx_ok } } } */
-/* { dg-require-effective-target vect_int } */
+/* { dg-do compile } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O3 -fdump-tree-slp-details" } */
+/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR80695: Verify cost model for vec_construct on POWER9. */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from the Spec 2006 milc brenchmark. Ultimately, GCC wants to generate
a DF splat from offsettable memory. The register allocator decided it was
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -Og" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR target/81348: Compiler died in doing short->float conversion due to using
the wrong register in a define_split. */
/* PR target/81622 */
/* { dg-do compile { target { powerpc*-*-linux* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
void
foo (void)
/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -mfloat128" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR 81959, the compiler raised on unrecognizable insn message in converting
int to __float128, where the int had a PRE_INC in the address. */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
unsigned long foo_11(__vector __int128_t *p)
{
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -mabi=ieeelongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Make sure the old 'q' builtin functions work correctly when the long double
default has been changed to be IEEE 128-bit floating point. */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -mabi=ibmlongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power9" { target { ! has_arch_pwr9 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Make sure the old 'q' builtin functions work correctly when the long double
default uses the IBM double-double format. */
/* PR target/83399 */
/* { dg-do compile { target { powerpc*-*-linux* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O1 -mabi=elfv2 -mlittle -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
typedef __attribute__((altivec(vector__))) int v4si_t;
int
/* PR target/83862.c */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target ppc_float128_sw } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -mabi=ieeelongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target ppc_float128_sw } */
+/* { dg-require-effective-target powerpc_vsx } */
/* On little endian systems, optimizing signbit of IEEE 128-bit values from
memory could abort if the memory address was indexed (reg+reg). The
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR target/84154. Make sure conversion to char/short does not generate a
store and a load on ISA 2.07 and newer systems. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR target/84154. Make sure on ISA 2.07 (power8) that we store the result of
a conversion to char/short using an offsettable address does not generate
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR target/84154. Make sure on ISA 3.0 we store the result of a conversion
to char/short using an offsettable address does not generate direct moves
/* Test to ensure we generate invalid parameter errors rather than an ICE
when calling builtin_vec_sld() with invalid parameters. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Test to ensure we generate invalid parameter errors rather than an ICE
when calling builtin_vec_sldw() with invalid parameters. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* Test to ensure we generate invalid parameter errors rather than an ICE
when calling vec_xxpermdi() with invalid parameters. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
void abort (void);
when calling vec_xxsldwi() and vec_xxpermdi() with invalid parameters. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* PR target/84226 */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -mpower9-misc -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include "builtins-revb-runnable.c"
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target longdouble128 } */
/* { dg-options "-O2 -mvsx -mabi=ieeelongdouble -Wno-psabi" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target longdouble128 } */
/* Check that the __builtin_powil generates a call to the correct function
when long double uses IEEE 128-bit floating point. */
/* specify -mcpu=power8 -mvsx, which provides vec_sl(long long,...) support. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target lp64 } */
/* { dg-options "-maltivec -O3 -fwrapv -mvsx " } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target lp64 } */
#include <altivec.h>
left shift properly. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target lp64 } */
/* { dg-options "-maltivec -O3 -mvsx " } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target lp64 } */
#include <altivec.h>
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -fprefetch-loop-arrays" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify there is no ICE or hanging. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -fno-math-errno -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* -fno-math-errno is required to make {i,l,ll}rint{,f} inlined */
/* { dg-do compile { target powerpc*-*-linux* } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler {\mmtvsrd\M} { target { lp64 } } } } */
/* { dg-final { scan-assembler {\mxscvspdpn\M} { target { lp64 } } } } */
/* PR target/88965 */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
unsigned int a[16];
unsigned int __attribute__ ((vector_size (16))) b;
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
/* PR90763: PowerPC vec_xl_len should take const.
*/
/* { dg-do compile */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stdlib.h>
#include <stdio.h>
/* { dg-do compile { target { lp64 && has_arch_pwr9 } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mmtvsrdd\M} 1 } } */
/* { dg-final { scan-assembler-times {\mxxlnor\M} 1 } } */
/* { dg-do compile { target { lp64 && {! has_arch_pwr9} } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mnot\M} 2 { xfail be } } } */
/* { dg-final { scan-assembler-times {\mstd\M} 2 { xfail { { {! has_arch_pwr9} && has_arch_pwr8 } && be } } } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -O2 -fdump-tree-gimple" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that overloaded built-ins for "and", "andc", "nor", "or" and "xor"
do not produce VIEW_CONVERT_EXPR operations on their operands. Like so:
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -fdump-tree-gimple" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that overloaded built-ins for "eqv", "nand" and "orc" do not
produce VIEW_CONVERT_EXPR operations on their operands. Like so:
/* PR target/93073 */
-/* { dg-do compile { target powerpc_vsx_ok } } */
+/* { dg-do compile } */
/* { dg-options "-mvsx -O1 -ffinite-math-only -fno-trapping-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
void bar (void);
/* { dg-do compile } */
/* { dg-options "-O3 -Wno-stringop-overflow -fstack-protector-strong -mdejagnu-cpu=power8" } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
/* PR93658: Failure compiling this test is an infinite loop in LRA's
process_address(), so set a short timeout limit. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
void
__attribute__((target("cpu=power10")))
/* { dg-do compile } */
/* { dg-options "-O2 -Wall -mvsx" } */
/* { dg-require-effective-target ilp32 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stdio.h>
#include <altivec.h>
/* { dg-do compile } */
/* { dg-options "-O2 -Wall -mvsx" } */
/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stdio.h>
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test vector constructions with char/short type values whether use 128bit
direct move instructions mtvsrdd on Power9 or later, rather than transfering
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test vector constructions with char/short type values whether use direct
move instructions like mtvsrd/mtvsrwz on Power8, rather than transfering
the built-in functions vec_ld/vec_st can use lxvd2x/stxvd2x
(P8 big-endian) or lxv/stxv (P9 and later) for some cases,
those rldicr instructions fed to them are necessary. */
-/* { dg-do compile { target { powerpc_vsx_ok && le } } } */
+/* { dg-do compile } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target le } */
/* Test there are no useless instructions "rldicr x,y,0,59"
to align the addresses for lvx/stvx. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-Og -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
vector int
foo (vector int v)
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target lp64 } */
/* { dg-options "-mdejagnu-cpu=power9 -maltivec -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target lp64 } */
/* Ensure that if we set a pragma gcc target for an
older processor, we do not compile builtins that
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -fdump-tree-fre-all -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify we remove a redundant load that occurs both before and after
we call a vector load builtin.
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -ftree-vectorize -mrecip=all -ffast-math -mdejagnu-cpu=power7 -fno-unroll-loops" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "xvredp" 4 } } */
/* { dg-final { scan-assembler-times "xvresp" 5 } } */
/* { dg-final { scan-assembler-times "xsredp\|fre\ " 2 } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that we vectorize this SAD loop using vabsdub. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that we vectorize this SAD loop using vabsduh. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* powerpc-ibm-aix* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target dfp } */
/* { dg-options "-O2 -mdejagnu-cpu=power7 -mhard-dfp" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target dfp } */
/* { dg-final { scan-assembler-times "lfiwzx" 2 } } */
/* { dg-final { scan-assembler-times "stfiwx" 1 } } */
/* { dg-final { scan-assembler-not "lfd" } } */
/* { dg-do compile } */
+/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -mfloat128" } */
/* { dg-require-effective-target lp64 } */
/* { dg-require-effective-target ppc_float128_sw } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -mfloat128" } */
+/* { dg-require-effective-target powerpc_vsx } */
int do_signbit_kf (__float128 a) { return __builtin_signbit (a); }
int do_signbit_if (__ibm128 a) { return __builtin_signbit (a); }
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target ppc_float128_sw } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -mfloat128" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target ppc_float128_sw } */
int do_signbit_kf (__float128 *a) { return __builtin_signbit (*a); }
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
vector signed int foo1 (vector signed int a) {
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler "stxsdx" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler "xxspltw" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler "vspltw" } } */
/* { dg-do compile { target { le } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "xxpermdi" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* This is a test for a specific convert-splat permute removal. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -ftree-vectorize -mdejagnu-cpu=power8 -mvsx -ffast-math -fvect-cost-model=unlimited" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This tests special handling for various uses of xxpermdi, other than
to perform doubleword swaps. */
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile { target { *-*-aix* || { *-*-linux* && lp64 } } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx -maltivec -mcmodel=large" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* The expansion for vector character multiply introduces a vperm operation.
This tests that changing the vperm mask allows us to remove all swaps
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" { target le } } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "lxvd2x" 2 } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "lxvd2x" 2 } } */
/* { dg-final { scan-assembler-times "stxvd2x" 1 } } */
/* { dg-final { scan-assembler-times "xxpermdi" 3 } } */
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Previous versions of this test required that the assembler does not
contain xxpermdi or xxswapd. However, with the more sophisticated
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Previous versions of this test required that the assembler does not
contain xxpermdi or xxswapd. However, with the more sophisticated
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Previous versions of this test required that the assembler does not
contain xxpermdi or xxswapd. However, with the more sophisticated
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Previous versions of this test required that the assembler does not
contain xxpermdi or xxswapd. However, with the more sophisticated
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Previous versions of this test required that the assembler does not
contain xxpermdi or xxswapd. However, with the more sophisticated
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3 " } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Previous versions of this test required that the assembler does not
contain xxpermdi or xxswapd. However, with the more sophisticated
/* { dg-do compile { target le } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lxvd2x" } } */
/* { dg-final { scan-assembler "stxvd2x" } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
/* { dg-do compile } */
/* { dg-options "-O2 -std=c11 -DNO_WARN_X86_INTRINSICS -mvsx" } */
/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test to ensure that "bool" gets undef'd in xmmintrin.h when
we require strict ANSI. Subsequent use of bool needs stdbool.h.
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test if unsigned int unpack vectorization succeeds. V2DImode is
supported since Power7 so guard it under Power7 and up. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2 -ftree-vectorize -fno-vect-cost-model -fno-unroll-loops -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test if signed int unpack vectorization succeeds. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* Test to make sure double values are allocated to the Altivec registers as
well as the traditional FPR registers. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test make sure single precision values are allocated to the Altivec
registers as well as the traditional FPR registers. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This test should succeed on both 32- and 64-bit configurations. */
#include <altivec.h>
/* { dg-do compile { target powerpc64*-*-* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-maltivec -O2 -mvsx" } */
/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "vcmpgtsd" } } */
/* { dg-final { scan-assembler-not "xxlnor" } } */
/* { dg-do compile { target lp64 } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "vcmpgtsb" 4 } } */
/* { dg-final { scan-assembler-times "vcmpgtub" 4 } } */
/* { dg-final { scan-assembler-times "vcmpgtsh" 4 } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Check that we can optimize sldi + or to rldimi for vector int init. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
vector long
merge (long a, long b)
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
vector int
merge (int a, int b, int c, int d)
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
vector int
splat (int a)
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mxvmaxdp\M} 1 } } */
/* { dg-final { scan-assembler-times {\mxvmaxsp\M} 1 } } */
/* { dg-final { scan-assembler-times {\mxvmindp\M} 1 } } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times {\mxsmaxcdp\M} 2 } } */
/* { dg-final { scan-assembler-times {\mxsmincdp\M} 2 } } */
-/* { dg-do compile { target { { ! vsx_hw } && powerpc_vsx_ok } } } */
+/* { dg-do compile { target { { ! vsx_hw } && powerpc_vsx } } } */
/* { dg-do run { target vsx_hw } } */
/* { dg-options "-mvsx -O3" } */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx -fdump-tree-optimized" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* To test all permutations fed by CTOR and CST can be optimized away. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target lp64 } */
/* { dg-options "-O2 -mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target lp64 } */
vector float
test (float *a, float *b, float *c, float *d)
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mvsx -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Verify that a pure copy loop with a vectorization factor of two
that requires alignment will not be vectorized. See the cost
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O1" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
/* { dg-additional-options "-mbig" { target powerpc64le-*-* } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
/* { dg-additional-options "-mbig" { target powerpc64le-*-* } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-linux* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -mlittle" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-linux* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -mlittle" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
/* { dg-additional-options "-mbig" { target powerpc64le-*-* } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
/* { dg-additional-options "-mbig" { target powerpc64le-*-* } } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-linux* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -mlittle" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-linux* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -mlittle" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
/* The vec_xl_len() function is not available on power8 configurations. */
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target ilp32 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target ilp32 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <stddef.h>
#include <altivec.h>
/* { dg-do compile { target powerpc*-*-* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Variations of tests that require VSX support. This is a variation of
the altivec-13.c testcase. */
/* { dg-do compile { target powerpc*-*-* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xvadddp" } } */
/* { dg-final { scan-assembler "xvsubdp" } } */
/* { dg-final { scan-assembler "xvmuldp" } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xvaddsp" } } */
/* { dg-final { scan-assembler "xvsubsp" } } */
/* { dg-final { scan-assembler "xvmulsp" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xxsel" } } */
/* { dg-final { scan-assembler "vperm" } } */
/* { dg-final { scan-assembler "xvrdpi" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xvcmpeqdp." } } */
/* { dg-final { scan-assembler "xvcmpgtdp." } } */
/* { dg-final { scan-assembler "xvcmpgedp." } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xxpermdi" } } */
/* { dg-final { scan-assembler-not "stxvd2x" } } */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Check whether tdiv and tsqrt instructions generate the correct code. */
/* Each of the *tdiv* and *tsqrt* instructions should be generated exactly 3
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7 -fno-inline-functions" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test simple extract/insert/slat operations. Make sure all types are
supported with various options. */
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7 -Wno-deprecated" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Test the various load/store varients. */
inputs generate the proper code. */
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-require-effective-target int128 } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O3" } */
+/* { dg-require-effective-target powerpc_vsx } */
+/* { dg-require-effective-target int128 } */
#include <altivec.h>
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "lfd" } } */
/* { dg-final { scan-assembler-not "lxvd2x" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xxlor" } } */
/* { dg-final { scan-assembler-not "lfd" } } */
/* { dg-final { scan-assembler-not "lxvd2x" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "mfvsrd" } } */
/* { dg-final { scan-assembler-not "stfd" } } */
/* { dg-final { scan-assembler-not "stxvd2x" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "vspltw" 6 } } */
/* { dg-final { scan-assembler-times "xvcvsxwdp" 4 } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power8 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler-times "vspltw" 6 } } */
/* { dg-final { scan-assembler-times "xvcvsxwdp" 4 } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
vector unsigned long
test_vpasted (vector unsigned long high, vector unsigned long low)
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
vector double
test_vpasted (vector double high, vector double low)
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xxlxor" } } */
/* Test that we generate xxlor to clear a SFmode register. */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
double load_asm_d_constraint (short *p)
{
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
unsigned int foo (unsigned short u)
{
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
double load_asm_v_constraint (short *p)
{
/* { dg-do compile { target { powerpc*-*-linux* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -ftree-vectorize -mdejagnu-cpu=power7 -ffast-math -mveclibabi=mass" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "bl\[\\. \]+atan2d2" } } */
/* { dg-final { scan-assembler "bl\[\\. \]+atan2f4" } } */
/* { dg-final { scan-assembler "bl\[\\. \]+hypotd2" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
double load_asm_d_constraint (signed char *p)
{
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
unsigned int foo (unsigned char u)
{
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
double load_asm_v_constraint (signed char *p)
{
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mdejagnu-cpu=power7 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xsmaxdp" } } */
/* { dg-final { scan-assembler "xsmindp" } } */
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
double load_asm_d_constraint (int *p)
{
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
unsigned int foo (unsigned int u)
{
/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power8 -mvsx -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
double load_asm_v_constraint (int *p)
{
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -ftree-vectorize -mdejagnu-cpu=power7 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xvadddp" } } */
/* { dg-final { scan-assembler "xvsubdp" } } */
/* { dg-final { scan-assembler "xvmuldp" } } */
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -ftree-vectorize -mdejagnu-cpu=power7 -ffast-math" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xvaddsp" } } */
/* { dg-final { scan-assembler "xvsubsp" } } */
/* { dg-final { scan-assembler "xvmulsp" } } */
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -ftree-vectorize -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xvadddp" } } */
/* { dg-final { scan-assembler "xvsubdp" } } */
/* { dg-final { scan-assembler "xvmuldp" } } */
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -ftree-vectorize -mdejagnu-cpu=power7" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler "xvaddsp" } } */
/* { dg-final { scan-assembler "xvsubsp" } } */
/* { dg-final { scan-assembler "xvmulsp" } } */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This file just generates calls to the various builtins and verifies the
expected number of instructions for each builtin were generated. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This file just generates calls to the various builtins and verifies the
expected number of instructions for each builtin were generated. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This file just generates calls to the various builtins and verifies the
expected number of instructions for each builtin were generated. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This file just generates calls to the various builtins and verifies the
expected number of instructions for each builtin were generated. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This file just generates calls to the various builtins and verifies the
expected number of instructions for each builtin were generated. */
/* { dg-do compile { target lp64 } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O2 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* This file just generates calls to the various builtins and verifies the
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mvsx -mdejagnu-cpu=power7 -O2" } */
+/* { dg-require-effective-target powerpc_vsx } */
#include <altivec.h>
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-tree-loop-distribute-patterns -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from vect/vect-align-1.c. */
#include <stdlib.h>
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from vect/vect-95.c. */
#include <stdlib.h>
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from vect/vect-95.c. */
#include <stdlib.h>
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from vect/vect-95.c. */
#include <stdlib.h>
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from vect/vect-95.c. */
#include <stdlib.h>
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from vect/vect-95.c. */
#include <stdlib.h>
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from vect/vect-95.c. */
#include <stdlib.h>
/* { dg-do compile } */
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-mdejagnu-cpu=power7 -O2 -ftree-vectorize -fno-vect-cost-model -fdump-tree-vect-details" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* Taken from vect/vect-95.c. */
#include <stdlib.h>
/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O1 -mvsx" } */
+/* { dg-require-effective-target powerpc_vsx } */
/* { dg-final { scan-assembler {\m(lxvd2x|lxv)\M} } } */
/* { dg-final { scan-assembler {\m(stxvd2x|stxv)\M} } } */
/* { dg-final { scan-assembler-not "xxpermdi" } } */
! Fortran
! { dg-do compile { target { powerpc*-*-* } } }
-! { dg-require-effective-target powerpc_vsx_ok }
! { dg-options "-O2 -mdejagnu-cpu=power7 -ffast-math" }
+! { dg-require-effective-target powerpc_vsx }
! { dg-require-effective-target has_arch_ppc64 }
! { dg-final { scan-assembler-times "xsrdpi" 2 } }
! PR middle-end/102860
! { dg-do compile { target { powerpc*-*-* } } }
-! { dg-require-effective-target powerpc_vsx_ok }
! { dg-options "-O2 -mdejagnu-cpu=power10" }
+! { dg-require-effective-target powerpc_vsx }
function foo(a)
integer(kind=4) :: a(1024)