]>
Commit | Line | Data |
---|---|---|
46c66a46 RS |
1 | /* { dg-do run { target double64 } } */ |
2 | /* { dg-options "-O -fdump-tree-ccp1" } */ | |
3 | /* { dg-add-options ieee } */ | |
4 | ||
5 | typedef double v4df __attribute__ ((vector_size (32))); | |
6 | ||
7 | int | |
8 | main () | |
9 | { | |
10 | volatile v4df x1 = { 4, 5, 6, -7 }; | |
11 | volatile v4df x2 = { 10, -11, 12, 13 }; | |
12 | volatile v4df x3 = { 20, 21, 22, 23 }; | |
13 | ||
14 | x1 *= (v4df) { 0, 1, 1, 0 }; | |
15 | x2 *= (v4df) { 1, 0, 0, 1 }; | |
16 | x3 *= (v4df) { 0.0, -0.0, 1.0, -0.0 }; | |
17 | ||
18 | if (__builtin_memcmp ((void *) &x1, &(v4df) { 0, 5, 6, -0.0 }, | |
19 | sizeof (v4df)) | |
20 | || __builtin_memcmp ((void *) &x2, &(v4df) { 10, -0.0, 0, 13 }, | |
21 | sizeof (v4df)) | |
22 | || __builtin_memcmp ((void *) &x3, &(v4df) { 0, -0.0, 22, -0.0 }, | |
23 | sizeof (v4df))) | |
24 | __builtin_abort (); | |
25 | ||
26 | return 0; | |
27 | } | |
28 | ||
29 | /* { dg-final { scan-tree-dump { \* } "ccp1" } } */ | |
30 | /* { dg-final { scan-tree-dump-not { \& } "ccp1" } } */ |