[gcc(refs/users/meissner/heads/work041)] Rework SFmode test.
Michael Meissner
meissner@gcc.gnu.org
Sat Mar 13 03:38:10 GMT 2021
https://gcc.gnu.org/g:e0a3cb2add1980bc240681cd62a56fb5bf04803d
commit e0a3cb2add1980bc240681cd62a56fb5bf04803d
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Fri Mar 12 22:37:39 2021 -0500
Rework SFmode test.
gcc/testsuite/
2021-03-12 Michael Meissner <meissner@linux.ibm.com>
* gcc.target/powerpc/xxsplitdp-sf.c: New test.
Diff:
---
gcc/testsuite/gcc.target/powerpc/xxspltidp-sf.c | 35 +++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/gcc/testsuite/gcc.target/powerpc/xxspltidp-sf.c b/gcc/testsuite/gcc.target/powerpc/xxspltidp-sf.c
new file mode 100644
index 00000000000..b8efda94857
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/xxspltidp-sf.c
@@ -0,0 +1,35 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target power10_ok } */
+/* { dg-options "-O2 -mdejagnu-cpu=power10" } */
+
+/* Test loading SF floating point constants. */
+
+float zero (void)
+{
+ return 0.0f; /* XXLXOR */
+}
+
+float one (void)
+{
+ return 1.0f; /* XXSPLTIDP */
+}
+
+float infinity (void)
+{
+ return __builtin_inff (); /* XXSPLTIDP */
+}
+
+float not_a_number (void)
+{
+ return __builtin_nanf (""); /* XXSPLTIDP */
+}
+
+float subnormal (void)
+{
+ return 0x1p-149f; /* PLFS, PLXSSP */
+}
+
+/* { dg-final { scan-assembler-times {\mxxlxor\|vsplitsw\|xxspltib\M} 1 } } */
+/* { dg-final { scan-assembler-times {\mxxspltidp\M} 3 } } */
+/* { dg-final { scan-assembler-times {\mp?lfs|p?lxsspx?\M} 1 } } */
+
More information about the Gcc-cvs
mailing list