1  /* { dg-do run } */
       2  /* { dg-options "-O2" } */
       3  
       4  extern void abort ();
       5  
       6  __attribute__((__target__("general-regs-only")))
       7  int
       8  dec (int a, int b)
       9  {
      10    return a + b;
      11  }
      12  
      13  __attribute__((__target__("general-regs-only")))
      14  int
      15  cal (int a, int b)
      16  {
      17    int sum1 = a * b;
      18    int sum2 = a / b;
      19    int sum = dec (sum1, sum2);
      20    return a + b + sum + sum1 + sum2;
      21  }
      22  
      23  __attribute__((__target__("general-regs-only")))
      24  int
      25  main (int argc, char **argv)
      26  {
      27    int ret = cal (2, 1);
      28  
      29    if (ret != 11)
      30      abort ();
      31  
      32    return 0;
      33  }