1*56bb7041Schristos#source: tlsnopic1.s
2*56bb7041Schristos#source: tlsnopic2.s
3*56bb7041Schristos#as: --32
4*56bb7041Schristos#ld: -shared -melf_i386 --no-ld-generated-unwind-info
5*56bb7041Schristos#objdump: -drj.text
6*56bb7041Schristos#target: i?86-*-*
7*56bb7041Schristos
8*56bb7041Schristos.*: +file format elf32-i386.*
9*56bb7041Schristos
10*56bb7041SchristosDisassembly of section .text:
11*56bb7041Schristos
12*56bb7041Schristos[0-9a-f]+ <fn3>:
13*56bb7041Schristos +[0-9a-f]+:	55[ 	]+push   %ebp
14*56bb7041Schristos +[0-9a-f]+:	89 e5[ 	]+mov    %esp,%ebp
15*56bb7041Schristos#  @indntpoff IE against global var
16*56bb7041Schristos +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
17*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
18*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
19*56bb7041Schristos +[0-9a-f]+:	03 05 ([0-9a-f]{2} ){4}[ 	]+add    0x[0-9a-f]+(c|8),%eax
20*56bb7041Schristos#				->R_386_TLS_TPOFF	sg1
21*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
22*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
23*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
24*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
25*56bb7041Schristos#  @indntpoff direct %gs access IE against global var
26*56bb7041Schristos +[0-9a-f]+:	8b 15 ([0-9a-f]{2} ){4}[ 	]+mov    0x[0-9a-f]+(0|c),%edx
27*56bb7041Schristos#				->R_386_TLS_TPOFF	sg2
28*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
29*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
30*56bb7041Schristos +[0-9a-f]+:	65 8b 02[ 	]+mov    %gs:\(%edx\),%eax
31*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
32*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
33*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
34*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
35*56bb7041Schristos#  @indntpoff IE against hidden var
36*56bb7041Schristos +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
37*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
38*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
39*56bb7041Schristos +[0-9a-f]+:	03 05 ([0-9a-f]{2} ){4}[ 	]+add    0x[0-9a-f]+(4|0),%eax
40*56bb7041Schristos#				->R_386_TLS_TPOFF	[0x14000000]
41*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
42*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
43*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
44*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
45*56bb7041Schristos#  @indntpoff direct %gs access IE against hidden var
46*56bb7041Schristos +[0-9a-f]+:	8b 15 ([0-9a-f]{2} ){4}[ 	]+mov    0x[0-9a-f]+(8|4),%edx
47*56bb7041Schristos#				->R_386_TLS_TPOFF	[0x18000000]
48*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
49*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
50*56bb7041Schristos +[0-9a-f]+:	65 8b 02[ 	]+mov    %gs:\(%edx\),%eax
51*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
52*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
53*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
54*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
55*56bb7041Schristos#  @indntpoff IE against local var
56*56bb7041Schristos +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
57*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
58*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
59*56bb7041Schristos +[0-9a-f]+:	03 05 ([0-9a-f]{2} ){4}[ 	]+add    0x[0-9a-f]+(4|0),%eax
60*56bb7041Schristos#				->R_386_TLS_TPOFF	[0x00000000]
61*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
62*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
63*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
64*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
65*56bb7041Schristos#  @indntpoff direct %gs access IE against local var
66*56bb7041Schristos +[0-9a-f]+:	8b 15 ([0-9a-f]{2} ){4}[ 	]+mov    0x[0-9a-f]+(8|4),%edx
67*56bb7041Schristos#				->R_386_TLS_TPOFF	[0x04000000]
68*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
69*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
70*56bb7041Schristos +[0-9a-f]+:	65 8b 02[ 	]+mov    %gs:\(%edx\),%eax
71*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
72*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
73*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
74*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
75*56bb7041Schristos#  LE @tpoff, global var
76*56bb7041Schristos +[0-9a-f]+:	ba fd ff ff ff[ 	]+mov    \$0xfffffffd,%edx
77*56bb7041Schristos#				R_386_TLS_TPOFF32	sg3
78*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
79*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
80*56bb7041Schristos +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
81*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
82*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
83*56bb7041Schristos +[0-9a-f]+:	29 d0[ 	]+sub    %edx,%eax
84*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
85*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
86*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
87*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
88*56bb7041Schristos#  LE @tpoff, local var
89*56bb7041Schristos +[0-9a-f]+:	b8 f7 ff ff ff[ 	]+mov    \$0xfffffff7,%eax
90*56bb7041Schristos#				R_386_TLS_TPOFF32
91*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
92*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
93*56bb7041Schristos +[0-9a-f]+:	65 8b 15 00 00 00 00 	mov    %gs:0x0,%edx
94*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
95*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
96*56bb7041Schristos +[0-9a-f]+:	29 c2[ 	]+sub    %eax,%edx
97*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
98*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
99*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
100*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
101*56bb7041Schristos#  LE @ntpoff, global var
102*56bb7041Schristos +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
103*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
104*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
105*56bb7041Schristos +[0-9a-f]+:	8d 90 02 00 00 00[ 	]+lea    0x2\(%eax\),%edx
106*56bb7041Schristos#				R_386_TLS_TPOFF		sg4
107*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
108*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
109*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
110*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
111*56bb7041Schristos#  LE @ntpoff, hidden var, non-canonical sequence
112*56bb7041Schristos +[0-9a-f]+:	b8 1c 00 00 00[ 	]+mov    \$0x1c,%eax
113*56bb7041Schristos#				R_386_TLS_TPOFF
114*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
115*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
116*56bb7041Schristos +[0-9a-f]+:	65 8b 15 00 00 00 00 	mov    %gs:0x0,%edx
117*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
118*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
119*56bb7041Schristos +[0-9a-f]+:	01 c2[ 	]+add    %eax,%edx
120*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
121*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
122*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
123*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
124*56bb7041Schristos#  LE @ntpoff, local var, non-canonical sequence
125*56bb7041Schristos +[0-9a-f]+:	65 8b 15 00 00 00 00 	mov    %gs:0x0,%edx
126*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
127*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
128*56bb7041Schristos +[0-9a-f]+:	81 c2 0d 00 00 00[ 	]+add    \$0xd,%edx
129*56bb7041Schristos#				R_386_TLS_TPOFF
130*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
131*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
132*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
133*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
134*56bb7041Schristos#  Direct %gs access
135*56bb7041Schristos#  LE @ntpoff, global var
136*56bb7041Schristos +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
137*56bb7041Schristos#				R_386_TLS_TPOFF		sg5
138*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
139*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
140*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
141*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
142*56bb7041Schristos#  LE @ntpoff, local var
143*56bb7041Schristos +[0-9a-f]+:	65 8b 15 13 00 00 00 	mov    %gs:0x13,%edx
144*56bb7041Schristos#				R_386_TLS_TPOFF
145*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
146*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
147*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
148*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
149*56bb7041Schristos#  LE @ntpoff, hidden var
150*56bb7041Schristos +[0-9a-f]+:	65 8b 15 21 00 00 00 	mov    %gs:0x21,%edx
151*56bb7041Schristos#				R_386_TLS_TPOFF
152*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
153*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
154*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
155*56bb7041Schristos +[0-9a-f]+:	90[ 	]+nop *
156*56bb7041Schristos +[0-9a-f]+:	8b 5d fc[ 	]+mov    -0x4\(%ebp\),%ebx
157*56bb7041Schristos +[0-9a-f]+:	c9[ 	]+leave *
158*56bb7041Schristos +[0-9a-f]+:	c3[ 	]+ret *
159