1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-optimized" } */
4 unsigned short test_bswap16(unsigned short x
)
6 return x
? __builtin_bswap16(x
) : 0;
9 unsigned int test_bswap32(unsigned int x
)
11 return x
? __builtin_bswap32(x
) : 0;
14 unsigned long long test_bswap64(unsigned long long x
)
16 return x
? __builtin_bswap64(x
) : 0;
21 return x
? __builtin_clrsb(x
) : (__SIZEOF_INT__
*8-1);
24 int test_clrsbl(long x
)
26 return x
? __builtin_clrsbl(x
) : (__SIZEOF_LONG__
*8-1);
29 int test_clrsbll(long long x
)
31 return x
? __builtin_clrsbll(x
) : (__SIZEOF_LONG_LONG__
*8-1);
35 /* BUILT_IN_FFS is transformed by match.pd */
36 int test_ffs(unsigned int x
)
38 return x
? __builtin_ffs(x
) : 0;
41 int test_ffsl(unsigned long x
)
43 return x
? __builtin_ffsl(x
) : 0;
46 int test_ffsll(unsigned long long x
)
48 return x
? __builtin_ffsll(x
) : 0;
52 int test_parity(int x
)
54 return x
? __builtin_parity(x
) : 0;
57 int test_parityl(long x
)
59 return x
? __builtin_parityl(x
) : 0;
62 int test_parityll(long long x
)
64 return x
? __builtin_parityll(x
) : 0;
67 int test_popcount(int x
)
69 return x
? __builtin_popcount(x
) : 0;
72 int test_popcountl(long x
)
74 return x
? __builtin_popcountl(x
) : 0;
77 int test_popcountll(long long x
)
79 return x
? __builtin_popcountll(x
) : 0;
82 /* { dg-final { scan-tree-dump-not "goto" "optimized" } } */