diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/i386/ssse3-pabsb.c')
-rw-r--r-- | gcc/testsuite/gcc.target/i386/ssse3-pabsb.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/gcc/testsuite/gcc.target/i386/ssse3-pabsb.c b/gcc/testsuite/gcc.target/i386/ssse3-pabsb.c index 1a2445d4f29..7caa1b6c3a6 100644 --- a/gcc/testsuite/gcc.target/i386/ssse3-pabsb.c +++ b/gcc/testsuite/gcc.target/i386/ssse3-pabsb.c @@ -2,11 +2,20 @@ /* { dg-require-effective-target ssse3 } */ /* { dg-options "-O2 -fno-strict-aliasing -mssse3" } */ -#include "ssse3-check.h" -#include "ssse3-vals.h" +#ifndef CHECK_H +#define CHECK_H "ssse3-check.h" +#endif + +#ifndef TEST +#define TEST ssse3_test +#endif +#include CHECK_H + +#include "ssse3-vals.h" #include <tmmintrin.h> +#ifndef __AVX__ /* Test the 64-bit form */ static void ssse3_test_pabsb (int *i1, int *r) @@ -15,6 +24,7 @@ ssse3_test_pabsb (int *i1, int *r) *(__m64 *) r = _mm_abs_pi8 (t1); _mm_empty (); } +#endif /* Test the 128-bit form */ static void @@ -41,7 +51,7 @@ compute_correct_result (int *i1, int *r) } static void -ssse3_test (void) +TEST (void) { int i; int r [4] __attribute__ ((aligned(16))); @@ -53,10 +63,12 @@ ssse3_test (void) /* Manually compute the result */ compute_correct_result(&vals[i + 0], ck); +#ifndef __AVX__ /* Run the 64-bit tests */ ssse3_test_pabsb (&vals[i + 0], &r[0]); ssse3_test_pabsb (&vals[i + 2], &r[2]); fail += chk_128 (ck, r); +#endif /* Run the 128-bit tests */ ssse3_test_pabsb128 (&vals[i + 0], r); |