OSDN Git Service

Update gcc.dg/atomic-flag.c test for non-boolean TAS targets.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / complex-3.c
1 /* Verify that rtl expansion cleanup doesn't get too aggressive about
2    code dealing with complex CONCATs.  */
3 /* { dg-do run } */
4 /* { dg-options "-O -fno-tree-sra" } */
5
6 extern void abort (void);
7 extern void exit (int);
8
9 __complex__ float foo (void)
10 {
11   __complex__ float f[1];
12   __real__ f[0] = 1;
13   __imag__ f[0] = 1;
14   f[0] = __builtin_conjf (f[0]);
15   return f[0];
16 }
17
18 int main (void)
19 {
20   __complex__ double d[1];
21   d[0] = foo ();
22   if (__real__ d[0] != 1 || __imag__ d[0] != -1)
23     abort ();
24   exit (0);
25 }