diff mbox series

testsuite: Fix up forwprop-39.c testcase [PR109145]

Message ID ZBQiMc3ZWcPFAAkV@tucnak
State New
Headers show
Series testsuite: Fix up forwprop-39.c testcase [PR109145] | expand

Commit Message

Jakub Jelinek March 17, 2023, 8:17 a.m. UTC
Hi!

As written in the PR, newlib headers aren't C11 compliant in that they
don't define CMPLXF macro, and glibc before 2.16 doesn't define that
either.  I think it is easier to use __builtin_complex directly, over
another patch which keeps including complex.h but defines CMPLXF if it
isn't defined, we want to test how forwprop behaves rather than what
complex.h defines or doesn't define.

Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?

2023-03-17  Jakub Jelinek  <jakub@redhat.com>

	PR testsuite/109145
	* gcc.dg/tree-ssa/forwprop-39.c: Don't include complex.h.
	(foo): Use __builtin_complex rather than CMPLXF.


	Jakub

Comments

Richard Biener March 17, 2023, 9 a.m. UTC | #1
On Fri, 17 Mar 2023, Jakub Jelinek wrote:

> Hi!
> 
> As written in the PR, newlib headers aren't C11 compliant in that they
> don't define CMPLXF macro, and glibc before 2.16 doesn't define that
> either.  I think it is easier to use __builtin_complex directly, over
> another patch which keeps including complex.h but defines CMPLXF if it
> isn't defined, we want to test how forwprop behaves rather than what
> complex.h defines or doesn't define.
> 
> Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?

OK.

> 2023-03-17  Jakub Jelinek  <jakub@redhat.com>
> 
> 	PR testsuite/109145
> 	* gcc.dg/tree-ssa/forwprop-39.c: Don't include complex.h.
> 	(foo): Use __builtin_complex rather than CMPLXF.
> 
> --- gcc/testsuite/gcc.dg/tree-ssa/forwprop-39.c.jj	2023-03-13 10:18:59.545433477 +0100
> +++ gcc/testsuite/gcc.dg/tree-ssa/forwprop-39.c	2023-03-16 18:49:40.563504504 +0100
> @@ -1,14 +1,12 @@
>  /* { dg-do compile } */
>  /* { dg-options "-std=c11 -O2 -fdump-tree-forwprop1 -fdump-tree-optimized" } */
>  
> -#include <complex.h>
> -
>  extern void push1(void *p, float _Complex x);
>  void foo (void *q, float _Complex *x)
>  {
>    float r = __real *x;
>    float i = __imag *x;
> -  push1 (q, CMPLXF (r, i));
> +  push1 (q, __builtin_complex (r, i));
>  }
>  
>  /* { dg-final { scan-tree-dump-not "COMPLEX_EXPR" "forwprop1" } } */
> 
> 	Jakub
> 
>
diff mbox series

Patch

--- gcc/testsuite/gcc.dg/tree-ssa/forwprop-39.c.jj	2023-03-13 10:18:59.545433477 +0100
+++ gcc/testsuite/gcc.dg/tree-ssa/forwprop-39.c	2023-03-16 18:49:40.563504504 +0100
@@ -1,14 +1,12 @@ 
 /* { dg-do compile } */
 /* { dg-options "-std=c11 -O2 -fdump-tree-forwprop1 -fdump-tree-optimized" } */
 
-#include <complex.h>
-
 extern void push1(void *p, float _Complex x);
 void foo (void *q, float _Complex *x)
 {
   float r = __real *x;
   float i = __imag *x;
-  push1 (q, CMPLXF (r, i));
+  push1 (q, __builtin_complex (r, i));
 }
 
 /* { dg-final { scan-tree-dump-not "COMPLEX_EXPR" "forwprop1" } } */