1  /* { dg-do run { target int128 } } */
       2  /* { dg-options "-O2 -fno-tree-dce -mno-push-args" } */
       3  
       4  typedef unsigned long long u64;
       5  typedef unsigned __int128 u128;
       6  
       7  u64 v;
       8  u64 g;
       9  
      10  u64 __attribute__ ((noinline, noclone))
      11  bar (u128 d, u64 e, u64 f, u64 g, u128 h)
      12  {
      13    (void)d, (void)e, (void)f, (void)g, (void)h;
      14    return 0;
      15  }
      16  
      17  static u64 __attribute__ ((noipa))
      18  foo (void)
      19  {
      20    (void)(v - bar (0, 0, 0, 0, 0));
      21    return g;
      22  }
      23  
      24  int
      25  main (void)
      26  {
      27    (void)foo ();
      28    return 0;
      29  }