1/* PR target/15693 */
2
3/* { dg-do compile } */
4/* { dg-options "-O2" } */
5
6/* This used to fail on SPARC at -O2 because the combiner
7   produces a compare insn that was not rematched by the
8   compare expander.  */
9
10static __inline__ __attribute__ ((always_inline))
11int page_mapping (unsigned flags)
12{
13  if (1u & (flags >> 16))
14    return 1;
15  return 0;
16}
17void install_page (unsigned flags)
18{
19  if (__builtin_expect (!page_mapping (flags), 0))
20    __builtin_trap ();
21}
22