[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