libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / pr95699.c
blob43a2307aae6f30da54cac0f70ee4341ddd2e592a
1 /* PR tree-optimization/95699 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fdump-tree-optimized" } */
4 /* { dg-final { scan-tree-dump "MAX_EXPR <\[^>\n\r]*9223372036854775807\[^>\n\r]*>" "optimized" } } */
5 /* { dg-final { scan-tree-dump "MAX_EXPR <\[^>\n\r]*9223372036854775808\[^>\n\r]*>" "optimized" } } */
6 /* { dg-final { scan-tree-dump "MIN_EXPR <\[^>\n\r]*9223372036854775807\[^>\n\r]*>" "optimized" } } */
7 /* { dg-final { scan-tree-dump "MIN_EXPR <\[^>\n\r]*9223372036854775808\[^>\n\r]*>" "optimized" } } */
9 unsigned long long
10 f1 (unsigned long long x)
12 if (x < 0x7fffffffffffffffULL)
13 x = 0x7fffffffffffffffULL;
14 return x;
17 unsigned long long
18 f2 (unsigned long long x)
20 if (x < 0x8000000000000000ULL)
21 x = 0x8000000000000000ULL;
22 return x;
25 unsigned long long
26 f3 (unsigned long long x)
28 if (x >= 0x7fffffffffffffffULL)
29 x = 0x7fffffffffffffffULL;
30 return x;
33 unsigned long long
34 f4 (unsigned long long x)
36 if (x >= 0x8000000000000000ULL)
37 x = 0x8000000000000000ULL;
38 return x;