0f9c51e4c8d9f4633f45c130688f8fdc61b60504
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / reloc64.s
1 .macro bad args:vararg
2 .ifdef _bad_
3 \args
4 .endif
5 .endm
6
7 .macro ill args:vararg
8 # This is used to mark entries that aren't handled consistently,
9 # and thus shouldn't currently be checked for.
10 # \args
11 .endm
12
13 .text
14 _start:
15 movabs $xtrn, %rax
16 add $xtrn, %rax
17 mov $xtrn, %eax
18 mov $xtrn, %ax
19 mov $xtrn, %al
20 mov xtrn(%rbx), %eax
21 mov xtrn(%ebx), %eax
22
23 movabs $(xtrn - .), %rax
24 add $(xtrn - .), %rax
25 ill mov $(xtrn - .), %eax
26 mov $(xtrn - .), %ax
27 mov $(xtrn - .), %al
28 mov xtrn(%rip), %eax
29 mov xtrn(%eip), %eax
30 call xtrn
31 jrcxz xtrn
32
33 movabs $xtrn@got, %rax
34 add $xtrn@got, %rax
35 bad mov $xtrn@got, %eax
36 bad mov $xtrn@got, %ax
37 bad mov $xtrn@got, %al
38 mov xtrn@got(%rbx), %eax
39 bad mov xtrn@got(%ebx), %eax
40 bad call xtrn@got
41
42 movabs $xtrn@gotoff, %rax
43 bad add $xtrn@gotoff, %rax
44 bad mov $xtrn@gotoff, %eax
45 bad mov $xtrn@gotoff, %ax
46 bad mov $xtrn@gotoff, %al
47 bad mov xtrn@gotoff(%rbx), %eax
48 bad mov xtrn@gotoff(%ebx), %eax
49 bad call xtrn@gotoff
50
51 bad movabs $xtrn@gotpcrel, %rax
52 add $xtrn@gotpcrel, %rax
53 bad mov $xtrn@gotpcrel, %eax
54 bad mov $xtrn@gotpcrel, %ax
55 bad mov $xtrn@gotpcrel, %al
56 mov xtrn@gotpcrel(%rbx), %eax
57 bad mov xtrn@gotpcrel(%ebx), %eax
58 call xtrn@gotpcrel
59
60 ill movabs $_GLOBAL_OFFSET_TABLE_, %rax
61 add $_GLOBAL_OFFSET_TABLE_, %rax
62 ill add $_GLOBAL_OFFSET_TABLE_, %eax
63 ill add $_GLOBAL_OFFSET_TABLE_, %ax
64 ill add $_GLOBAL_OFFSET_TABLE_, %al
65 lea _GLOBAL_OFFSET_TABLE_(%rip), %rax
66 lea _GLOBAL_OFFSET_TABLE_(%eip), %rax
67 ill movabs $(_GLOBAL_OFFSET_TABLE_ - .), %rax
68 add $(_GLOBAL_OFFSET_TABLE_ - .), %rax
69 ill add $(_GLOBAL_OFFSET_TABLE_ - .), %eax
70 ill add $(_GLOBAL_OFFSET_TABLE_ - .), %ax
71 ill add $(_GLOBAL_OFFSET_TABLE_ - .), %al
72
73 bad movabs $xtrn@plt, %rax
74 add $xtrn@plt, %rax
75 bad mov $xtrn@plt, %eax
76 bad mov $xtrn@plt, %ax
77 bad mov $xtrn@plt, %al
78 mov xtrn@plt(%rbx), %eax
79 bad mov xtrn@plt(%ebx), %eax
80 call xtrn@plt
81 bad jrcxz xtrn@plt
82
83 bad movabs $xtrn@tlsgd, %rax
84 add $xtrn@tlsgd, %rax
85 bad mov $xtrn@tlsgd, %eax
86 bad mov $xtrn@tlsgd, %ax
87 bad mov $xtrn@tlsgd, %al
88 mov xtrn@tlsgd(%rbx), %eax
89 bad mov xtrn@tlsgd(%ebx), %eax
90 call xtrn@tlsgd
91
92 bad movabs $xtrn@gottpoff, %rax
93 add $xtrn@gottpoff, %rax
94 bad mov $xtrn@gottpoff, %eax
95 bad mov $xtrn@gottpoff, %ax
96 bad mov $xtrn@gottpoff, %al
97 mov xtrn@gottpoff(%rbx), %eax
98 bad mov xtrn@gottpoff(%ebx), %eax
99 call xtrn@gottpoff
100
101 bad movabs $xtrn@tlsld, %rax
102 add $xtrn@tlsld, %rax
103 bad mov $xtrn@tlsld, %eax
104 bad mov $xtrn@tlsld, %ax
105 bad mov $xtrn@tlsld, %al
106 mov xtrn@tlsld(%rbx), %eax
107 bad mov xtrn@tlsld(%ebx), %eax
108 call xtrn@tlsld
109
110 movabs $xtrn@dtpoff, %rax
111 add $xtrn@dtpoff, %rax
112 bad mov $xtrn@dtpoff, %eax
113 bad mov $xtrn@dtpoff, %ax
114 bad mov $xtrn@dtpoff, %al
115 mov xtrn@dtpoff(%rbx), %eax
116 bad mov xtrn@dtpoff(%ebx), %eax
117 bad call xtrn@dtpoff
118
119 movabs $xtrn@tpoff, %rax
120 add $xtrn@tpoff, %rax
121 bad mov $xtrn@tpoff, %eax
122 bad mov $xtrn@tpoff, %ax
123 bad mov $xtrn@tpoff, %al
124 mov xtrn@tpoff(%rbx), %eax
125 bad mov xtrn@tpoff(%ebx), %eax
126 bad call xtrn@tpoff
127
128 .data
129 .quad xtrn
130 .quad xtrn - .
131 .quad xtrn@got
132 .quad xtrn@gotoff
133 .quad xtrn@gotpcrel
134 ill .quad _GLOBAL_OFFSET_TABLE_
135 ill .quad _GLOBAL_OFFSET_TABLE_ - .
136 bad .quad xtrn@plt
137 bad .quad xtrn@tlsgd
138 bad .quad xtrn@gottpoff
139 bad .quad xtrn@tlsld
140 .quad xtrn@dtpoff
141 .quad xtrn@tpoff
142
143 .long xtrn
144 .long xtrn - .
145 .long xtrn@got
146 bad .long xtrn@gotoff
147 .long xtrn@gotpcrel
148 .long _GLOBAL_OFFSET_TABLE_
149 .long _GLOBAL_OFFSET_TABLE_ - .
150 .long xtrn@plt
151 .long xtrn@tlsgd
152 .long xtrn@gottpoff
153 .long xtrn@tlsld
154 .long xtrn@dtpoff
155 .long xtrn@tpoff
156
157 .slong xtrn
158 .slong xtrn - .
159 .slong xtrn@got
160 bad .slong xtrn@gotoff
161 .slong xtrn@gotpcrel
162 .slong _GLOBAL_OFFSET_TABLE_
163 .slong _GLOBAL_OFFSET_TABLE_ - .
164 .slong xtrn@plt
165 .slong xtrn@tlsgd
166 .slong xtrn@gottpoff
167 .slong xtrn@tlsld
168 .slong xtrn@dtpoff
169 .slong xtrn@tpoff
170
171 .word xtrn
172 .word xtrn - .
173 bad .word xtrn@got
174 bad .word xtrn@gotoff
175 bad .word xtrn@gotpcrel
176 ill .word _GLOBAL_OFFSET_TABLE_
177 ill .word _GLOBAL_OFFSET_TABLE_ - .
178 bad .word xtrn@plt
179 bad .word xtrn@tlsgd
180 bad .word xtrn@gottpoff
181 bad .word xtrn@tlsld
182 bad .word xtrn@dtpoff
183 bad .word xtrn@tpoff
184
185 .byte xtrn
186 .byte xtrn - .
187 bad .byte xtrn@got
188 bad .byte xtrn@gotoff
189 bad .byte xtrn@gotpcrel
190 ill .byte _GLOBAL_OFFSET_TABLE_
191 ill .byte _GLOBAL_OFFSET_TABLE_ - .
192 bad .byte xtrn@plt
193 bad .byte xtrn@tlsgd
194 bad .byte xtrn@gottpoff
195 bad .byte xtrn@tlsld
196 bad .byte xtrn@dtpoff
197 bad .byte xtrn@tpoff
198
199 .text
200 mov xtrn@tpoff (%rbx), %eax
201
202 .data
203 .long xtrn@got - 4
204 .long xtrn@got + 4
205
206 .text
207 movabs $xtrn@gotplt, %rax
208 bad add $xtrn@gotplt, %rax
209 bad mov $xtrn@gotplt, %eax
210 bad mov $xtrn@gotplt, %ax
211 bad mov $xtrn@gotplt, %al
212 bad mov xtrn@gotplt(%rbx), %eax
213 bad mov xtrn@gotplt(%ebx), %eax
214 bad call xtrn@gotplt
215
216 .data
217 .quad xtrn@gotplt
218 bad .long xtrn@gotplt
219 bad .word xtrn@gotplt
220 bad .byte xtrn@gotplt
221
222 .text
223 mov xtrn(,%rbx), %eax
224 mov xtrn(,%ebx), %eax
225 vgatherdps %xmm2, xtrn(,%xmm1), %xmm0
226 addr32 vgatherdps %xmm2, xtrn(,%xmm1), %xmm0
This page took 0.032867 seconds and 3 git commands to generate.