1 /* PR target/67317 */
2 /* { dg-do compile { target { ! ia32 } } } */
3 /* { dg-options "-O2" } */
4 
5 typedef unsigned long long u64;
6 
testcarry_u64(u64 a,u64 b,u64 c,u64 d)7 u64 testcarry_u64 (u64 a, u64 b, u64 c, u64 d)
8 {
9   u64 result0, result1;
10 
11   __builtin_ia32_addcarryx_u64
12     (__builtin_ia32_addcarryx_u64 (0, a, c, &result0), b, d, &result1);
13 
14   return result0 ^ result1;
15 }
16 
17 /* { dg-final { scan-assembler-not "addb" } } */
18 /* { dg-final { scan-assembler-not "setn?c" } } */
19