]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
s390: testsuite: Xfail forwprop-4{0,1}.c
authorStefan Schulze Frielinghaus <stefansf@linux.ibm.com>
Tue, 23 Apr 2024 11:29:10 +0000 (13:29 +0200)
committerStefan Schulze Frielinghaus <stefansf@linux.ibm.com>
Tue, 23 Apr 2024 11:29:10 +0000 (13:29 +0200)
The tests fail on s390 since can_vec_perm_const_p fails and therefore
the bit insert/ref survive which r14-3381-g27de9aa152141e aims for.
Strictly speaking, the tests only fail in case the target supports
vectors, i.e., for targets prior z13 or in case of -mesa the emulated
vector operations are optimized out.

Set to xfail and tracked by PR114802.

gcc/testsuite/ChangeLog:

* gcc.dg/tree-ssa/forwprop-40.c: Xfail for s390.
* gcc.dg/tree-ssa/forwprop-41.c: Xfail for s390.
* lib/target-supports.exp: Add target check s390_mvx.

gcc/testsuite/gcc.dg/tree-ssa/forwprop-40.c
gcc/testsuite/gcc.dg/tree-ssa/forwprop-41.c
gcc/testsuite/lib/target-supports.exp

index 7513497f55203a6e845b714d114a8753f8722698..0c5233a68f4a47ddd34c52e0370fbc1e40b7f4fe 100644 (file)
@@ -10,5 +10,5 @@ vector int g(vector int a)
   return a;
 }
 
-/* { dg-final { scan-tree-dump-times "BIT_INSERT_EXPR" 0 "optimized" } } */
-/* { dg-final { scan-tree-dump-times "BIT_FIELD_REF" 0 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "BIT_INSERT_EXPR" 0 "optimized" { xfail s390_mvx } } } Xfail: PR114802 */
+/* { dg-final { scan-tree-dump-times "BIT_FIELD_REF" 0 "optimized" { xfail s390_mvx } } } Xfail: PR114802 */
index b1e75797a90045e3025b31289f0ac2688f7cfafd..a1f08289dd696626172d6c3009b23e1590920d30 100644 (file)
@@ -11,6 +11,6 @@ vector int g(vector int a, int c)
   return a;
 }
 
-/* { dg-final { scan-tree-dump-times "BIT_INSERT_EXPR" 1 "optimized" } } */
-/* { dg-final { scan-tree-dump-times "BIT_FIELD_REF" 0 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "BIT_INSERT_EXPR" 1 "optimized" { xfail s390_mvx } } } Xfail PR114802 */
+/* { dg-final { scan-tree-dump-times "BIT_FIELD_REF" 0 "optimized" { xfail s390_mvx } } } Xfail PR114802 */
 /* { dg-final { scan-tree-dump-times "VEC_PERM_EXPR" 0 "optimized" } } */
index 3a5713d98691fc82f644b762a4f5cf01a9492ac0..3a55b2a4159cc68cdbbf8249aa537ab2bec5d2c4 100644 (file)
@@ -12392,6 +12392,20 @@ proc check_effective_target_profile_update_atomic {} {
     } "-fprofile-update=atomic -fprofile-generate"]
 }
 
+# Return 1 if the target has a vector facility.
+proc check_effective_target_s390_mvx { } {
+    if ![istarget s390*-*-*] then {
+       return 0;
+    }
+
+    return [check_no_compiler_messages_nocache s390_mvx assembly {
+       #if !defined __VX__
+       #error no vector facility.
+       #endif
+       int dummy;
+    } [current_compiler_flags]]
+}
+
 # Return 1 if vector (va - vector add) instructions are understood by
 # the assembler and can be executed.  This also covers checking for
 # the VX kernel feature.  A kernel without that feature does not