1 /* PR tree-optimization/77664 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fdump-tree-reassoc1-details" } */
5 extern void foo (void);
7 /* { dg-final { scan-tree-dump-times "Optimizing range test \[^\n\r]* and comparison" 6 "reassoc1" } } */
9 __attribute__((noinline
, noclone
)) void
10 fn1 (long long int a
, unsigned short b
, int c
)
12 if (a
>= 0 && c
&& a
< b
)
16 __attribute__((noinline
, noclone
)) void
17 fn2 (long long int a
, unsigned short b
, int c
)
19 if (a
< 0 || c
|| a
>= b
)
23 __attribute__((noinline
, noclone
)) void
24 fn3 (long long int a
, unsigned short b
)
30 __attribute__((noinline
, noclone
)) void
31 fn4 (long long int a
, unsigned short b
)
37 __attribute__((noinline
, noclone
)) void
38 fn5 (long long int a
, unsigned short b
)
44 __attribute__((noinline
, noclone
)) void
45 fn6 (long long int a
, unsigned short b
)