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