Merge from mainline.
[official-gcc.git] / gcc / testsuite / gcc.dg / 20011130-1.c
blob60a2738fc653c13bb94d6ee4966edaa5264d06f6
1 /* { dg-do compile } */
2 /* { dg-options "-O3 -g -finline-limit=100" } */
4 #define WORK(x, y) __asm__ ("" : "=r" (x) : "0" (x)); y += x + 26
5 #define SOME_WORK(x, y) WORK(x, y); WORK(x, y); WORK(x, y); WORK(x, y)
6 #define MORE_WORK(x, y) SOME_WORK(x, y); SOME_WORK(x, y); SOME_WORK(x, y)
7 #define EVEN_MORE_WORK(x, y) MORE_WORK(x, y); MORE_WORK(x, y); MORE_WORK(x, y)
8 #define LOTS_OF_WORK(x, y) EVEN_MORE_WORK(x, y); EVEN_MORE_WORK(x, y)
10 static int __attribute__((unused)) foo (int x)
12 inline int bar (int x)
14 int y;
15 y = x;
16 LOTS_OF_WORK(x, y);
17 LOTS_OF_WORK(x, y);
18 LOTS_OF_WORK(x, y);
19 LOTS_OF_WORK(x, y);
20 LOTS_OF_WORK(x, y);
21 LOTS_OF_WORK(x, y);
22 return y;
24 return bar(x);