1  /* PR rtl-optimization/70467 */
       2  /* { dg-do compile { target int128 } } */
       3  /* { dg-options "-O2" } */
       4  
       5  __uint128_t
       6  foo (__uint128_t x)
       7  {
       8    return x + ((__uint128_t) 123456 << 64);
       9  }
      10  
      11  __uint128_t
      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\]*%" } } */