1 /* PR rtl-optimization/70467 */
2 /* { dg-do compile { target int128 } } */
3 /* { dg-options "-O2" } */
4 
5 __uint128_t
foo(__uint128_t x)6 foo (__uint128_t x)
7 {
8   return x + ((__uint128_t) 123456 << 64);
9 }
10 
11 __uint128_t
bar(__uint128_t x)12 bar (__uint128_t x)
13 {
14   return x - ((__uint128_t) 123456 << 64);
15 }
16 
17 /* Make sure there are no unnecessary additions with carry.  */
18 /* { dg-final { scan-assembler-not "adcq\[^\n\r\]*%" } } */
19 /* { dg-final { scan-assembler-not "sbbq\[^\n\r\]*%" } } */
20