The testcase requires hardware support for V2DImode vectors because
otherwise we do not rewrite inserts via BIT_FIELD_REF to
BIT_INSERT_EXPR.  There's no effective target for this so the
following makes the testcase x86 specific, requiring and enabling SSE2.

Pushed.

        * gcc.dg/tree-ssa/forwprop-42.c: Move ...
        * gcc.target/i386/pr111228.c: ... here.  Enable SSE2.
---
 .../tree-ssa/forwprop-42.c => gcc.target/i386/pr111228.c}      | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
 rename gcc/testsuite/{gcc.dg/tree-ssa/forwprop-42.c => 
gcc.target/i386/pr111228.c} (76%)

diff --git a/gcc/testsuite/gcc.dg/tree-ssa/forwprop-42.c 
b/gcc/testsuite/gcc.target/i386/pr111228.c
similarity index 76%
rename from gcc/testsuite/gcc.dg/tree-ssa/forwprop-42.c
rename to gcc/testsuite/gcc.target/i386/pr111228.c
index 257a05d3ec8..f0c3f9b77bf 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/forwprop-42.c
+++ b/gcc/testsuite/gcc.target/i386/pr111228.c
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-O -fdump-tree-cddce1" } */
+/* { dg-additional-options "-msse2" { target sse2 } } */
 
 typedef __UINT64_TYPE__ v2di __attribute__((vector_size(16)));
 
@@ -14,4 +15,4 @@ void test (v2di *v)
   g = res;
 }
 
-/* { dg-final { scan-tree-dump-times "VEC_PERM_EXPR <\[^>\]*, { 0, 3 }>" 1 
"cddce1" } } */
+/* { dg-final { scan-tree-dump-times "VEC_PERM_EXPR <\[^>\]*, { 0, 3 }>" 1 
"cddce1" { target sse2 } } } */
-- 
2.35.3

Reply via email to