OSDN Git Service

* gcc.dg/tls/tls.exp: Remove temporary file.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / tls / nonpic-1.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -ftls-model=initial-exec" } */
3
4 extern __thread long e1;
5 extern __thread int e2;
6 static __thread long s1;
7 static __thread int s2;
8
9 long *ae1 (void)
10 {
11   return &e1;
12 }
13
14 int *ae2 (void)
15 {
16   return &e2;
17 }
18
19 long *as1 (void)
20 {
21   return &s1;
22 }
23
24 int *as2 (void)
25 {
26   return &s2;
27 }
28
29 long ge1 (void)
30 {
31   return e1;
32 }
33
34 int ge2 (void)
35 {
36   return e2;
37 }
38
39 long gs1 (void)
40 {
41   return s1;
42 }
43
44 int gs2 (void)
45 {
46   return s2;
47 }
48
49 long ge3 (void)
50 {
51   return e1 + e2;
52 }
53
54 long gs3 (void)
55 {
56   return s1 + s2;
57 }
58
59 long ge4 (void)
60 {
61   if (0)
62     return e1;
63   return e2;
64 }
65
66 long gs4 (void)
67 {
68   if (0)
69     return s1;
70   return s2;
71 }