2 /* { dg-options "-madx -O2" } */
3 /* { dg-require-effective-target adx } */
11 volatile unsigned char c
;
13 volatile unsigned int y
, sum_ref
;
19 /* X = 0xFFFFFFFF, Y = 0xFFFFFFFF, C = 0. */
20 c
= _addcarryx_u32 (c
, x
, y
, &x
);
21 /* X = 0xFFFFFFFE, Y = 0xFFFFFFFF, C = 1. */
22 c
= _addcarryx_u32 (c
, x
, y
, &x
);
23 /* X = 0xFFFFFFFE, Y = 0xFFFFFFFF, C = 1. */
32 /* X = 0xFFFFFFFF, Y = 0xFFFFFFFF, C = 0. */
33 c
= _addcarry_u32 (c
, x
, y
, &x
);
34 /* X = 0xFFFFFFFE, Y = 0xFFFFFFFF, C = 1. */
35 c
= _addcarry_u32 (c
, x
, y
, &x
);
36 /* X = 0xFFFFFFFE, Y = 0xFFFFFFFF, C = 1. */
46 /* X = 0x00000001, Y = 0x00000000, C = 0. */
47 c
= _subborrow_u32 (c
, x
, y
, &x
);
48 /* X = 0xFFFFFFFF, Y = 0x00000000, C = 1. */
49 c
= _subborrow_u32 (c
, x
, y
, &x
);
50 /* X = 0xFFFFFFFF, Y = 0xFFFFFFFF, C = 1. */