OSDN Git Service

2007-03-19 Andrew Pinski <andrew_pinski@playstation.sony.com>
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / torture / pr20314-1.c
1 /* PR inline-asm/20314 */
2 /* { dg-do compile { target i?86-*-* x86_64-*-* powerpc*-*-* ia64-*-* } } */
3
4 int
5 f1 (void)
6 {
7   int x = 4, y;
8   __asm__ volatile ("" : "+r,r" (x), "=r,r" (y)
9                        : "%r,r" (x), "m,r" (8), "r,r" (2));
10   return x;
11 }
12
13 int
14 f2 (void)
15 {
16   int x = 4, y;
17   __asm__ volatile ("" : "=r,r" (x), "=r,r" (y)
18                        : "%0,0" (x), "m,r" (8), "r,r" (2));
19   return x;
20 }
21
22 int
23 f3 (void)
24 {
25   int x = 4, y;
26   __asm__ volatile ("" : "+r,r" (x), "=r,r" (y)
27                        : "%m,r" (8), "r,r" (2));
28   return x;
29 }
30
31 int
32 f4 (void)
33 {
34   int x = 4, y;
35   __asm__ volatile ("" : "+r" (x), "=r" (y)
36                        : "r" (x), "r" (8), "r" (2));
37   return x;
38 }
39
40 int
41 f5 (void)
42 {
43   int x = 4, y;
44   __asm__ volatile ("" : "=r" (x), "=r" (y)
45                        : "0" (x), "r" (8), "r" (2));
46   return x;
47 }
48
49 int
50 f6 (void)
51 {
52   int x = 4, y;
53   __asm__ volatile ("" : "+r" (x), "=r" (y)
54                        : "r" (8), "r" (2));
55   return x;
56 }