1 /* { dg-do run { target { powerpc*-*-* && lp64 } } } */
2 /* { dg-options "-O2 -fno-inline" } */
15 create_128 (long most_sig
, long least_sig
)
29 long most_sig (union U
* u
)
38 long least_sig (union U
* u
)
48 add_128 (__int128
*ptr
, __int128 val
)
54 sub_128 (__int128
*ptr
, __int128 val
)
62 /* Do a simple add/sub to make sure carry is happening between the dwords
63 and that dwords are in correct endian order. */
64 u1
.i128
= create_128 (1, -1);
65 u2
.i128
= add_128 (&u1
.i128
, 1);
66 if ((most_sig (&u2
) != 2) || (least_sig (&u2
) != 0))
68 u2
.i128
= sub_128 (&u2
.i128
, 1);
69 if ((most_sig (&u2
) != 1) || (least_sig (&u2
) != -1))