s390: Fix ifcvt test cases

Message ID 3d239f06-9289-b54b-515f-f77ba69c07fe@linux.ibm.com
State Repeat Merge
Headers
Series s390: Fix ifcvt test cases |

Checks

Context Check Description
snail/gcc-patch-check warning Git am fail log

Commit Message

Robin Dapp March 2, 2023, 6:13 p.m. UTC
  Hi,

we seem to flip flop between the "high" and "not low" variants of load on
condition.  Accept both in the affected test cases.

Going to commit this as obvious.

Regards
 Robin

--

gcc/testsuite/ChangeLog:

	* gcc.target/s390/ifcvt-two-insns-bool.c: Allow "high" and
	"not low or equal" load on condition variant.
	* gcc.target/s390/ifcvt-two-insns-int.c: Dito.
	* gcc.target/s390/ifcvt-two-insns-long.c: Dito.
---
 gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c | 4 ++--
 gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c  | 4 ++--
 gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)
  

Comments

Andreas Krebbel March 3, 2023, 3:05 p.m. UTC | #1
On 3/2/23 19:13, Robin Dapp wrote:
> Hi,
> 
> we seem to flip flop between the "high" and "not low" variants of load on
> condition.  Accept both in the affected test cases.
> 
> Going to commit this as obvious.
> 
> Regards
>  Robin
> 
> --
> 
> gcc/testsuite/ChangeLog:
> 
> 	* gcc.target/s390/ifcvt-two-insns-bool.c: Allow "high" and
> 	"not low or equal" load on condition variant.
> 	* gcc.target/s390/ifcvt-two-insns-int.c: Dito.
> 	* gcc.target/s390/ifcvt-two-insns-long.c: Dito.

Ok. Thanks!

Andreas

> ---
>  gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c | 4 ++--
>  gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c  | 4 ++--
>  gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c | 4 ++--
>  3 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c
> index 1027ddceb935..a56bc4676143 100644
> --- a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c
> +++ b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c
> @@ -3,8 +3,8 @@
>  /* { dg-do run } */
>  /* { dg-options "-O2 -march=z13 -mzarch --save-temps" } */
>  
> -/* { dg-final { scan-assembler "lochih\t%r.?,1" } } */
> -/* { dg-final { scan-assembler "locrh\t.*" } } */
> +/* { dg-final { scan-assembler "lochi(?:h|nle)\t%r.?,1" } } */
> +/* { dg-final { scan-assembler "locr(?:h|nle)\t.*" } } */
>  #include <stdbool.h>
>  #include <limits.h>
>  #include <stdio.h>
> diff --git a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c
> index fc6946f2466d..64b8a732290e 100644
> --- a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c
> +++ b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c
> @@ -3,8 +3,8 @@
>  /* { dg-do run } */
>  /* { dg-options "-O2 -march=z13 -mzarch --save-temps" } */
>  
> -/* { dg-final { scan-assembler "lochih\t%r.?,1" } } */
> -/* { dg-final { scan-assembler "locrh\t.*" } } */
> +/* { dg-final { scan-assembler "lochi(h|nle)\t%r.?,1" } } */
> +/* { dg-final { scan-assembler "locr(?:h|nle)\t.*" } } */
>  #include <limits.h>
>  #include <stdio.h>
>  #include <assert.h>
> diff --git a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c
> index 51af4985247a..f2d784e762a8 100644
> --- a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c
> +++ b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c
> @@ -3,8 +3,8 @@
>  /* { dg-do run } */
>  /* { dg-options "-O2 -march=z13 -mzarch --save-temps" } */
>  
> -/* { dg-final { scan-assembler "locghih\t%r.?,1" } } */
> -/* { dg-final { scan-assembler "locgrh\t.*" } } */
> +/* { dg-final { scan-assembler "locghi(?:h|nle)\t%r.?,1" } } */
> +/* { dg-final { scan-assembler "locgr(?:h|nle)\t.*" } } */
>  
>  #include <limits.h>
>  #include <stdio.h>
  

Patch

diff --git a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c
index 1027ddceb935..a56bc4676143 100644
--- a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c
+++ b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-bool.c
@@ -3,8 +3,8 @@ 
 /* { dg-do run } */
 /* { dg-options "-O2 -march=z13 -mzarch --save-temps" } */
 
-/* { dg-final { scan-assembler "lochih\t%r.?,1" } } */
-/* { dg-final { scan-assembler "locrh\t.*" } } */
+/* { dg-final { scan-assembler "lochi(?:h|nle)\t%r.?,1" } } */
+/* { dg-final { scan-assembler "locr(?:h|nle)\t.*" } } */
 #include <stdbool.h>
 #include <limits.h>
 #include <stdio.h>
diff --git a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c
index fc6946f2466d..64b8a732290e 100644
--- a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c
+++ b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-int.c
@@ -3,8 +3,8 @@ 
 /* { dg-do run } */
 /* { dg-options "-O2 -march=z13 -mzarch --save-temps" } */
 
-/* { dg-final { scan-assembler "lochih\t%r.?,1" } } */
-/* { dg-final { scan-assembler "locrh\t.*" } } */
+/* { dg-final { scan-assembler "lochi(h|nle)\t%r.?,1" } } */
+/* { dg-final { scan-assembler "locr(?:h|nle)\t.*" } } */
 #include <limits.h>
 #include <stdio.h>
 #include <assert.h>
diff --git a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c
index 51af4985247a..f2d784e762a8 100644
--- a/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c
+++ b/gcc/testsuite/gcc.target/s390/ifcvt-two-insns-long.c
@@ -3,8 +3,8 @@ 
 /* { dg-do run } */
 /* { dg-options "-O2 -march=z13 -mzarch --save-temps" } */
 
-/* { dg-final { scan-assembler "locghih\t%r.?,1" } } */
-/* { dg-final { scan-assembler "locgrh\t.*" } } */
+/* { dg-final { scan-assembler "locghi(?:h|nle)\t%r.?,1" } } */
+/* { dg-final { scan-assembler "locgr(?:h|nle)\t.*" } } */
 
 #include <limits.h>
 #include <stdio.h>