libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / pr110915-4.c
blob7e8528ccee97e5345f4db17b0f7006646c217f93
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-optimized -Wno-psabi" } */
4 #include <limits.h>
6 #define vector __attribute__((vector_size(sizeof(unsigned)*2)))
8 vector signed and1(vector unsigned x, vector unsigned y)
10 /* (x > y) & (x == 0) --> false */
11 return (x > y) & (x == 0);
14 vector signed and2(vector unsigned x, vector unsigned y)
16 /* (x < y) & (x == UINT_MAX) --> false */
17 return (x < y) & (x == UINT_MAX);
20 vector signed and3(vector signed x, vector signed y)
22 /* (x > y) & (x == INT_MIN) --> false */
23 return (x > y) & (x == INT_MIN);
26 vector signed and4(vector signed x, vector signed y)
28 /* (x < y) & (x == INT_MAX) --> false */
29 return (x < y) & (x == INT_MAX);
32 /* { dg-final { scan-tree-dump-not " == " "optimized" } } */
33 /* { dg-final { scan-tree-dump-not " > " "optimized" } } */
34 /* { dg-final { scan-tree-dump-not " < " "optimized" } } */