[PATCH] rs6000: Builtin test changes for int_128bit-runnable.c
Bill Schmidt
wschmidt@linux.ibm.com
Thu Nov 18 16:09:53 GMT 2021
Hi! This patch is broken out from the test case patch for the new builtins
support.
The old builtins code performs gimple folding on 128-bit compares. This
results in correct but very inefficient code. (I suspect we may be
missing some optab entries, misleading gimple into 64-bit emulation.) In
the new support, I disabled this gimple folding, which results in us
directly generating the 128-bit comparison instructions. This patch
adjusts the scan-assembler-times counts for those instructions.
I've opened PR103316 to track this.
Tested on powerpc64le-linux-gnu and powerpc64-linux-gnu (-m32/-m64) with
no regressions. Is this okay for trunk?
Thanks!
Bill
2021-11-17 Bill Schmidt <wschmidt@linux.ibm.com>
gcc/testsuite/
* gcc.target/powerpc/int_128bit-runnable.c: Adjust instruction
counts since we do better by not gimple-folding some builtins.
---
gcc/testsuite/gcc.target/powerpc/int_128bit-runnable.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/gcc/testsuite/gcc.target/powerpc/int_128bit-runnable.c b/gcc/testsuite/gcc.target/powerpc/int_128bit-runnable.c
index 1255ee9f0ab..1356793635a 100644
--- a/gcc/testsuite/gcc.target/powerpc/int_128bit-runnable.c
+++ b/gcc/testsuite/gcc.target/powerpc/int_128bit-runnable.c
@@ -11,9 +11,9 @@
/* { dg-final { scan-assembler-times {\mvrlq\M} 2 } } */
/* { dg-final { scan-assembler-times {\mvrlqnm\M} 2 } } */
/* { dg-final { scan-assembler-times {\mvrlqmi\M} 2 } } */
-/* { dg-final { scan-assembler-times {\mvcmpequq\M} 16 } } */
-/* { dg-final { scan-assembler-times {\mvcmpgtsq\M} 16 } } */
-/* { dg-final { scan-assembler-times {\mvcmpgtuq\M} 16 } } */
+/* { dg-final { scan-assembler-times {\mvcmpequq\M} 24 } } */
+/* { dg-final { scan-assembler-times {\mvcmpgtsq\M} 26 } } */
+/* { dg-final { scan-assembler-times {\mvcmpgtuq\M} 26 } } */
/* { dg-final { scan-assembler-times {\mvmuloud\M} 1 } } */
/* { dg-final { scan-assembler-times {\mvmulesd\M} 1 } } */
/* { dg-final { scan-assembler-times {\mvmulosd\M} 1 } } */
--
2.27.0
More information about the Gcc-patches
mailing list