1 /* PR middle-end/56420 */
2 /* { dg-do run { target int128 } } */
4 extern void abort (void);
6 __attribute__((noinline
, noclone
)) __uint128_t
9 return x
* (((__uint128_t
) -1) << 63);
12 __attribute__((noinline
, noclone
)) __uint128_t
15 return x
* (((__uint128_t
) 1) << 63);
18 __attribute__((noinline
, noclone
)) __uint128_t
21 return x
* -(((__uint128_t
) 1) << 62);
27 if (foo (1) != (((__uint128_t
) -1) << 63)
28 || foo (8) != (((__uint128_t
) -1) << 66))
30 if (bar (1) != (((__uint128_t
) 1) << 63)
31 || bar (8) != (((__uint128_t
) 1) << 66))
33 if (baz (1) != -(((__uint128_t
) 1) << 62)
34 || baz (8) != ((-(((__uint128_t
) 1) << 62)) << 3))