Deal with prefixed loads/stores in tests, PR testsuite/100166
This patch updates the various tests in the testsuite to treat plxv and pstxv as being vector loads/stores. This shows up if you run the testsuite with a compiler configured with the option: --with-cpu=power10. 2021-07-13 Michael Meissner <meissner@linux.ibm.com> gcc/testsuite/ PR testsuite/100166 * gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c: Update insn counts to account for power10 prefixed loads and stores. * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c: Likewise. * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c: Likewise. * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c: Likewise. * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c: Likewise. * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c: Likewise. * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-char.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-double.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-float.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-int.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-longlong.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-short.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_xl-char.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_xl-double.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_xl-float.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_xl-int.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_xl-longlong.c: Likewise. * gcc.target/powerpc/fold-vec-load-vec_xl-short.c: Likewise. * gcc.target/powerpc/fold-vec-splat-floatdouble.c: Likewise. * gcc.target/powerpc/fold-vec-splat-longlong.c: Likewise. * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-char.c: Likewise. * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-double.c: Likewise. * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-float.c: Likewise. * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-int.c: Likewise. * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-longlong.c: Likewise. * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-short.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_vsx_st-char.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_vsx_st-double.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_vsx_st-float.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_vsx_st-int.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_vsx_st-longlong.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_vsx_st-short.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_xst-char.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_xst-double.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_xst-float.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_xst-int.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_xst-longlong.c: Likewise. * gcc.target/powerpc/fold-vec-store-vec_xst-short.c: Likewise. * gcc.target/powerpc/lvsl-lvsr.c: Likewise. * gcc.target/powerpc/pr86731-fwrapv-longlong.c: Likewise.
This commit is contained in:
parent
31ff034a1e
commit
063eba7ca7
@ -25,6 +25,6 @@ main1 (void)
|
||||
with no word loads (lw, lwu, lwz, lwzu, or their indexed forms)
|
||||
or word stores (stw, stwu, stwx, stwux, or their indexed forms). */
|
||||
|
||||
/* { dg-final { scan-assembler "\t(lvx|lxv|lvsr|stxv)" } } */
|
||||
/* { dg-final { scan-assembler "\t(lvx|lxv|lvsr|stxv|plxv|pstxv)" } } */
|
||||
/* { dg-final { scan-assembler-not "\tlwz?u?x? " { xfail { powerpc-ibm-aix* } } } } */
|
||||
/* { dg-final { scan-assembler-not "\tstwu?x? " } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned char, signed int, vector unsigned char);
|
||||
BUILD_CST_TEST( test12, vector unsigned char, 8, vector unsigned char);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lvx\M} 12 } } */
|
||||
|
@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4, vector double, signed long long, vector double);
|
||||
BUILD_VAR_TEST( test5, vector double, signed int, vector double);
|
||||
BUILD_CST_TEST( test6, vector double, 12, vector double);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mp?lvx\M} 6 } } */
|
||||
|
@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4, vector float, signed long long, vector float);
|
||||
BUILD_VAR_TEST( test5, vector float, signed int, vector float);
|
||||
BUILD_CST_TEST( test6, vector float, 12, vector float);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lvx\M} 6 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long long, vector unsigned i
|
||||
BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int);
|
||||
BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lvx\M} 12 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned long long, signed long long, vector uns
|
||||
BUILD_VAR_TEST( test11, vector unsigned long long, signed int, vector unsigned long long);
|
||||
BUILD_CST_TEST( test12, vector unsigned long long, 12, vector unsigned long long);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mp?lvx\M} 12 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long long, vector unsigne
|
||||
BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned short);
|
||||
BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lvx\M} 12 } } */
|
||||
|
@ -35,5 +35,5 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned char, signed int, vector unsigned char);
|
||||
BUILD_CST_TEST( test12, vector unsigned char, 12, vector unsigned char);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
|
||||
|
||||
|
@ -27,4 +27,4 @@ BUILD_VAR_TEST( test4, vector double, int, vector double);
|
||||
BUILD_VAR_TEST( test5, vector double, long long, vector double);
|
||||
BUILD_CST_TEST( test6, vector double, 12, vector double);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 } } */
|
||||
|
@ -27,4 +27,4 @@ BUILD_VAR_TEST( test5, vector float, signed long long, vector float);
|
||||
BUILD_VAR_TEST( test7, vector float, signed int, vector float);
|
||||
BUILD_CST_TEST( test8, vector float, 12, vector float);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int);
|
||||
BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned long long, signed long long, vector uns
|
||||
BUILD_VAR_TEST( test11, vector unsigned long long, signed int, vector unsigned long long);
|
||||
BUILD_CST_TEST( test12, vector unsigned long long, 12, vector unsigned long long);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long long, vector unsigne
|
||||
BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned short);
|
||||
BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long long, unsigned char);
|
||||
BUILD_VAR_TEST( test11, vector unsigned char, signed int, unsigned char);
|
||||
BUILD_CST_TEST( test12, vector unsigned char, 12, unsigned char);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
|
||||
|
@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4, vector double, signed long long, double);
|
||||
BUILD_VAR_TEST( test5, vector double, signed int, double);
|
||||
BUILD_CST_TEST( test6, vector double, 12, double);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 } } */
|
||||
|
@ -27,4 +27,4 @@ BUILD_VAR_TEST( test4, vector float, signed long long, vector float);
|
||||
BUILD_VAR_TEST( test5, vector float, signed int, vector float);
|
||||
BUILD_CST_TEST( test6, vector float, 12, vector float);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int);
|
||||
BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned long long, signed long long, vector uns
|
||||
BUILD_VAR_TEST( test11, vector unsigned long long, signed int, vector unsigned long long);
|
||||
BUILD_CST_TEST( test12, vector unsigned long long, 12, vector unsigned long long);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long long, vector unsigne
|
||||
BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned short);
|
||||
BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short);
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
|
||||
|
@ -20,11 +20,12 @@ vector double testd_01 (vector double x) { return vec_splat (x, 0b00001); }
|
||||
vector double test_dc ()
|
||||
{ const vector double y = { 3.0, 5.0 }; return vec_splat (y, 0b00010); }
|
||||
|
||||
/* If the source vector is a known constant, we will generate a load. */
|
||||
/* { dg-final { scan-assembler-times {\mlvx\M|\mlxvd2x\M|\mlxv\M} 2 } } */
|
||||
/* If the source vector is a known constant, we will generate a load or possibly
|
||||
XXSPLTIW. */
|
||||
/* { dg-final { scan-assembler-times {\mlvx\M|\mlxvd2x\M|\mlxv\M|\mplxv\M|\mxxspltiw\M} 2 } } */
|
||||
|
||||
/* For float types, we generate a splat. */
|
||||
/* { dg-final { scan-assembler-times "vspltw|xxspltw" 3 } } */
|
||||
/* { dg-final { scan-assembler-times {\mvspltw\M|\mxxspltw\M} 3 } } */
|
||||
|
||||
/* For double types, we will generate xxpermdi instructions. */
|
||||
/* { dg-final { scan-assembler-times "xxpermdi" 3 } } */
|
||||
|
@ -25,7 +25,7 @@ vector signed long long test_sll () { const vector signed long long y = {34, 45}
|
||||
vector unsigned long long test_ull () { const vector unsigned long long y = {56, 67}; return vec_splat (y, 0b00010); }
|
||||
|
||||
/* Assorted load instructions for the initialization with known constants. */
|
||||
/* { dg-final { scan-assembler-times {\mlvx\M|\mlxvd2x\M|\mlxv\M} 3 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlvx\M|\mlxvd2x\M|\mlxv\M|\mplxv\M} 3 } } */
|
||||
|
||||
/* xxpermdi for vec_splat of long long vectors.
|
||||
At the time of this writing, the number of xxpermdi instructions
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned char, signed int, vector unsigned char );
|
||||
BUILD_CST_TEST( test12, vector unsigned char, 12, vector unsigned char );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4, vector double, signed long long, double );
|
||||
BUILD_VAR_TEST( test5, vector double, signed int, double );
|
||||
BUILD_CST_TEST( test6, vector double, 12, double );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
|
||||
|
@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4, vector float, signed long long, vector float );
|
||||
BUILD_VAR_TEST( test5, vector float, signed int, vector float );
|
||||
BUILD_CST_TEST( test6, vector float, 12, vector float );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long long, vector unsigned i
|
||||
BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int );
|
||||
BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned long long, signed long long, vector uns
|
||||
BUILD_VAR_TEST( test11, vector unsigned long long, signed int, vector unsigned long long );
|
||||
BUILD_CST_TEST( test12, vector unsigned long long, 12, vector unsigned long long );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned short );
|
||||
BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned char, signed int, vector unsigned char );
|
||||
BUILD_CST_TEST( test12, vector unsigned char, 12, vector unsigned char );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -28,4 +28,4 @@ BUILD_VAR_TEST( test7, vector double, signed long long, vector double );
|
||||
BUILD_VAR_TEST( test8, vector double, signed int, vector double );
|
||||
BUILD_CST_TEST( test9, vector double, 12, vector double );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
|
||||
|
@ -28,4 +28,4 @@ BUILD_VAR_TEST( test7, vector float, signed long long, vector float );
|
||||
BUILD_VAR_TEST( test8, vector float, signed int, vector float );
|
||||
BUILD_CST_TEST( test9, vector float, 12, vector float );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long long, vector unsigned i
|
||||
BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int );
|
||||
BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned long long, signed long long, vector unsi
|
||||
BUILD_VAR_TEST( test11, vector unsigned long long, signed int, vector unsigned long long );
|
||||
BUILD_CST_TEST( test12, vector unsigned long long, 12, vector unsigned long long );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned short );
|
||||
BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned char, signed int, vector unsigned char );
|
||||
BUILD_CST_TEST( test12, vector unsigned char, 12, vector unsigned char );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -27,4 +27,4 @@ BUILD_VAR_TEST( test7, vector double, signed long long, vector double );
|
||||
BUILD_VAR_TEST( test8, vector double, signed int, vector double );
|
||||
BUILD_CST_TEST( test9, vector double, 12, vector double );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
|
||||
|
@ -27,4 +27,4 @@ BUILD_VAR_TEST( test7, vector float, signed long long, vector float );
|
||||
BUILD_VAR_TEST( test8, vector float, signed int, vector float );
|
||||
BUILD_CST_TEST( test9, vector float, 12, vector float );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long long, vector unsigned i
|
||||
BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int );
|
||||
BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned long long, signed long long, vector unsi
|
||||
BUILD_VAR_TEST( test11, vector unsigned long long, signed int, vector unsigned long long );
|
||||
BUILD_CST_TEST( test12, vector unsigned long long, 12, vector unsigned long long );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long long, vector unsigned
|
||||
BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned short );
|
||||
BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short );
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
|
||||
/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
|
||||
|
@ -6,7 +6,7 @@
|
||||
/* { dg-options "-O0 -Wno-deprecated" } */
|
||||
/* { dg-final { scan-assembler-times "lvsl" 2 } } */
|
||||
/* { dg-final { scan-assembler-times "lvsr" 2 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxv\M} 2 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mp?lxv\M} 2 } } */
|
||||
/* { dg-final { scan-assembler-times {\m(?:v|xx)permr?\M} 2 } } */
|
||||
|
||||
|
||||
|
@ -30,5 +30,5 @@ vector signed long long splats4(void)
|
||||
|
||||
/* { dg-final { scan-assembler-times {\mvspltis[bhw]\M} 0 } } */
|
||||
/* { dg-final { scan-assembler-times {\mvsl[bhwd]\M} 0 } } */
|
||||
/* { dg-final { scan-assembler-times {\mlvx\M|\mlxv\M|\mlxvd2x\M} 2 } } */
|
||||
/* { dg-final { scan-assembler-times {\mp?lxv\M|\mlxv\M|\mlxvd2x\M} 2 } } */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user