]> git.saurik.com Git - apple/objc4.git/blob - runtime/a1a2-blocktramps-x86_64.s
objc4-680.tar.gz
[apple/objc4.git] / runtime / a1a2-blocktramps-x86_64.s
1 /*
2 * Copyright (c) 1999-2007 Apple Inc. All Rights Reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24 #ifdef __x86_64__
25
26 #include <mach/vm_param.h>
27
28 .text
29 .private_extern __a1a2_tramphead
30 .private_extern __a1a2_firsttramp
31 .private_extern __a1a2_nexttramp
32 .private_extern __a1a2_trampend
33
34 .align PAGE_SHIFT
35 __a1a2_tramphead:
36 popq %r10
37 andq $0xFFFFFFFFFFFFFFF8, %r10
38 subq $ PAGE_SIZE, %r10
39 movq %rdi, %rsi // arg1 -> arg2
40 movq (%r10), %rdi // block -> arg1
41 jmp *16(%rdi)
42
43 .macro TrampolineEntry
44 callq __a1a2_tramphead
45 nop
46 nop
47 nop
48 .endmacro
49
50 .align 5
51 __a1a2_firsttramp:
52 TrampolineEntry
53 __a1a2_nexttramp:
54 TrampolineEntry
55 TrampolineEntry
56 TrampolineEntry
57 TrampolineEntry
58 TrampolineEntry
59 TrampolineEntry
60 TrampolineEntry
61 TrampolineEntry
62 TrampolineEntry
63 TrampolineEntry
64 TrampolineEntry
65 TrampolineEntry
66 TrampolineEntry
67 TrampolineEntry
68 TrampolineEntry
69 TrampolineEntry
70 TrampolineEntry
71 TrampolineEntry
72 TrampolineEntry
73 TrampolineEntry
74 TrampolineEntry
75 TrampolineEntry
76 TrampolineEntry
77 TrampolineEntry
78 TrampolineEntry
79 TrampolineEntry
80 TrampolineEntry
81 TrampolineEntry
82 TrampolineEntry
83 TrampolineEntry
84 TrampolineEntry
85 TrampolineEntry
86 TrampolineEntry
87 TrampolineEntry
88 TrampolineEntry
89 TrampolineEntry
90 TrampolineEntry
91 TrampolineEntry
92 TrampolineEntry
93 TrampolineEntry
94 TrampolineEntry
95 TrampolineEntry
96 TrampolineEntry
97 TrampolineEntry
98 TrampolineEntry
99 TrampolineEntry
100 TrampolineEntry
101 TrampolineEntry
102 TrampolineEntry
103 TrampolineEntry
104 TrampolineEntry
105 TrampolineEntry
106 TrampolineEntry
107 TrampolineEntry
108 TrampolineEntry
109 TrampolineEntry
110 TrampolineEntry
111 TrampolineEntry
112 TrampolineEntry
113 TrampolineEntry
114 TrampolineEntry
115 TrampolineEntry
116 TrampolineEntry
117 TrampolineEntry
118 TrampolineEntry
119 TrampolineEntry
120 TrampolineEntry
121 TrampolineEntry
122 TrampolineEntry
123 TrampolineEntry
124 TrampolineEntry
125 TrampolineEntry
126 TrampolineEntry
127 TrampolineEntry
128 TrampolineEntry
129 TrampolineEntry
130 TrampolineEntry
131 TrampolineEntry
132 TrampolineEntry
133 TrampolineEntry
134 TrampolineEntry
135 TrampolineEntry
136 TrampolineEntry
137 TrampolineEntry
138 TrampolineEntry
139 TrampolineEntry
140 TrampolineEntry
141 TrampolineEntry
142 TrampolineEntry
143 TrampolineEntry
144 TrampolineEntry
145 TrampolineEntry
146 TrampolineEntry
147 TrampolineEntry
148 TrampolineEntry
149 TrampolineEntry
150 TrampolineEntry
151 TrampolineEntry
152 TrampolineEntry
153 TrampolineEntry
154 TrampolineEntry
155 TrampolineEntry
156 TrampolineEntry
157 TrampolineEntry
158 TrampolineEntry
159 TrampolineEntry
160 TrampolineEntry
161 TrampolineEntry
162 TrampolineEntry
163 TrampolineEntry
164 TrampolineEntry
165 TrampolineEntry
166 TrampolineEntry
167 TrampolineEntry
168 TrampolineEntry
169 TrampolineEntry
170 TrampolineEntry
171 TrampolineEntry
172 TrampolineEntry
173 TrampolineEntry
174 TrampolineEntry
175 TrampolineEntry
176 TrampolineEntry
177 TrampolineEntry
178 TrampolineEntry
179 TrampolineEntry
180 TrampolineEntry
181 TrampolineEntry
182 TrampolineEntry
183 TrampolineEntry
184 TrampolineEntry
185 TrampolineEntry
186 TrampolineEntry
187 TrampolineEntry
188 TrampolineEntry
189 TrampolineEntry
190 TrampolineEntry
191 TrampolineEntry
192 TrampolineEntry
193 TrampolineEntry
194 TrampolineEntry
195 TrampolineEntry
196 TrampolineEntry
197 TrampolineEntry
198 TrampolineEntry
199 TrampolineEntry
200 TrampolineEntry
201 TrampolineEntry
202 TrampolineEntry
203 TrampolineEntry
204 TrampolineEntry
205 TrampolineEntry
206 TrampolineEntry
207 TrampolineEntry
208 TrampolineEntry
209 TrampolineEntry
210 TrampolineEntry
211 TrampolineEntry
212 TrampolineEntry
213 TrampolineEntry
214 TrampolineEntry
215 TrampolineEntry
216 TrampolineEntry
217 TrampolineEntry
218 TrampolineEntry
219 TrampolineEntry
220 TrampolineEntry
221 TrampolineEntry
222 TrampolineEntry
223 TrampolineEntry
224 TrampolineEntry
225 TrampolineEntry
226 TrampolineEntry
227 TrampolineEntry
228 TrampolineEntry
229 TrampolineEntry
230 TrampolineEntry
231 TrampolineEntry
232 TrampolineEntry
233 TrampolineEntry
234 TrampolineEntry
235 TrampolineEntry
236 TrampolineEntry
237 TrampolineEntry
238 TrampolineEntry
239 TrampolineEntry
240 TrampolineEntry
241 TrampolineEntry
242 TrampolineEntry
243 TrampolineEntry
244 TrampolineEntry
245 TrampolineEntry
246 TrampolineEntry
247 TrampolineEntry
248 TrampolineEntry
249 TrampolineEntry
250 TrampolineEntry
251 TrampolineEntry
252 TrampolineEntry
253 TrampolineEntry
254 TrampolineEntry
255 TrampolineEntry
256 TrampolineEntry
257 TrampolineEntry
258 TrampolineEntry
259 TrampolineEntry
260 TrampolineEntry
261 TrampolineEntry
262 TrampolineEntry
263 TrampolineEntry
264 TrampolineEntry
265 TrampolineEntry
266 TrampolineEntry
267 TrampolineEntry
268 TrampolineEntry
269 TrampolineEntry
270 TrampolineEntry
271 TrampolineEntry
272 TrampolineEntry
273 TrampolineEntry
274 TrampolineEntry
275 TrampolineEntry
276 TrampolineEntry
277 TrampolineEntry
278 TrampolineEntry
279 TrampolineEntry
280 TrampolineEntry
281 TrampolineEntry
282 TrampolineEntry
283 TrampolineEntry
284 TrampolineEntry
285 TrampolineEntry
286 TrampolineEntry
287 TrampolineEntry
288 TrampolineEntry
289 TrampolineEntry
290 TrampolineEntry
291 TrampolineEntry
292 TrampolineEntry
293 TrampolineEntry
294 TrampolineEntry
295 TrampolineEntry
296 TrampolineEntry
297 TrampolineEntry
298 TrampolineEntry
299 TrampolineEntry
300 TrampolineEntry
301 TrampolineEntry
302 TrampolineEntry
303 TrampolineEntry
304 TrampolineEntry
305 TrampolineEntry
306 TrampolineEntry
307 TrampolineEntry
308 TrampolineEntry
309 TrampolineEntry
310 TrampolineEntry
311 TrampolineEntry
312 TrampolineEntry
313 TrampolineEntry
314 TrampolineEntry
315 TrampolineEntry
316 TrampolineEntry
317 TrampolineEntry
318 TrampolineEntry
319 TrampolineEntry
320 TrampolineEntry
321 TrampolineEntry
322 TrampolineEntry
323 TrampolineEntry
324 TrampolineEntry
325 TrampolineEntry
326 TrampolineEntry
327 TrampolineEntry
328 TrampolineEntry
329 TrampolineEntry
330 TrampolineEntry
331 TrampolineEntry
332 TrampolineEntry
333 TrampolineEntry
334 TrampolineEntry
335 TrampolineEntry
336 TrampolineEntry
337 TrampolineEntry
338 TrampolineEntry
339 TrampolineEntry
340 TrampolineEntry
341 TrampolineEntry
342 TrampolineEntry
343 TrampolineEntry
344 TrampolineEntry
345 TrampolineEntry
346 TrampolineEntry
347 TrampolineEntry
348 TrampolineEntry
349 TrampolineEntry
350 TrampolineEntry
351 TrampolineEntry
352 TrampolineEntry
353 TrampolineEntry
354 TrampolineEntry
355 TrampolineEntry
356 TrampolineEntry
357 TrampolineEntry
358 TrampolineEntry
359 TrampolineEntry
360 TrampolineEntry
361 TrampolineEntry
362 TrampolineEntry
363 TrampolineEntry
364 TrampolineEntry
365 TrampolineEntry
366 TrampolineEntry
367 TrampolineEntry
368 TrampolineEntry
369 TrampolineEntry
370 TrampolineEntry
371 TrampolineEntry
372 TrampolineEntry
373 TrampolineEntry
374 TrampolineEntry
375 TrampolineEntry
376 TrampolineEntry
377 TrampolineEntry
378 TrampolineEntry
379 TrampolineEntry
380 TrampolineEntry
381 TrampolineEntry
382 TrampolineEntry
383 TrampolineEntry
384 TrampolineEntry
385 TrampolineEntry
386 TrampolineEntry
387 TrampolineEntry
388 TrampolineEntry
389 TrampolineEntry
390 TrampolineEntry
391 TrampolineEntry
392 TrampolineEntry
393 TrampolineEntry
394 TrampolineEntry
395 TrampolineEntry
396 TrampolineEntry
397 TrampolineEntry
398 TrampolineEntry
399 TrampolineEntry
400 TrampolineEntry
401 TrampolineEntry
402 TrampolineEntry
403 TrampolineEntry
404 TrampolineEntry
405 TrampolineEntry
406 TrampolineEntry
407 TrampolineEntry
408 TrampolineEntry
409 TrampolineEntry
410 TrampolineEntry
411 TrampolineEntry
412 TrampolineEntry
413 TrampolineEntry
414 TrampolineEntry
415 TrampolineEntry
416 TrampolineEntry
417 TrampolineEntry
418 TrampolineEntry
419 TrampolineEntry
420 TrampolineEntry
421 TrampolineEntry
422 TrampolineEntry
423 TrampolineEntry
424 TrampolineEntry
425 TrampolineEntry
426 TrampolineEntry
427 TrampolineEntry
428 TrampolineEntry
429 TrampolineEntry
430 TrampolineEntry
431 TrampolineEntry
432 TrampolineEntry
433 TrampolineEntry
434 TrampolineEntry
435 TrampolineEntry
436 TrampolineEntry
437 TrampolineEntry
438 TrampolineEntry
439 TrampolineEntry
440 TrampolineEntry
441 TrampolineEntry
442 TrampolineEntry
443 TrampolineEntry
444 TrampolineEntry
445 TrampolineEntry
446 TrampolineEntry
447 TrampolineEntry
448 TrampolineEntry
449 TrampolineEntry
450 TrampolineEntry
451 TrampolineEntry
452 TrampolineEntry
453 TrampolineEntry
454 TrampolineEntry
455 TrampolineEntry
456 TrampolineEntry
457 TrampolineEntry
458 TrampolineEntry
459 TrampolineEntry
460 TrampolineEntry
461 TrampolineEntry
462 TrampolineEntry
463 TrampolineEntry
464 TrampolineEntry
465 TrampolineEntry
466 TrampolineEntry
467 TrampolineEntry
468 TrampolineEntry
469 TrampolineEntry
470 TrampolineEntry
471 TrampolineEntry
472 TrampolineEntry
473 TrampolineEntry
474 TrampolineEntry
475 TrampolineEntry
476 TrampolineEntry
477 TrampolineEntry
478 TrampolineEntry
479 TrampolineEntry
480 TrampolineEntry
481 TrampolineEntry
482 TrampolineEntry
483 TrampolineEntry
484 TrampolineEntry
485 TrampolineEntry
486 TrampolineEntry
487 TrampolineEntry
488 TrampolineEntry
489 TrampolineEntry
490 TrampolineEntry
491 TrampolineEntry
492 TrampolineEntry
493 TrampolineEntry
494 TrampolineEntry
495 TrampolineEntry
496 TrampolineEntry
497 TrampolineEntry
498 TrampolineEntry
499 TrampolineEntry
500 TrampolineEntry
501 TrampolineEntry
502 TrampolineEntry
503 TrampolineEntry
504 TrampolineEntry
505 TrampolineEntry
506 TrampolineEntry
507 TrampolineEntry
508 TrampolineEntry
509 TrampolineEntry
510 TrampolineEntry
511 TrampolineEntry
512 TrampolineEntry
513 TrampolineEntry
514 TrampolineEntry
515 TrampolineEntry
516 TrampolineEntry
517 TrampolineEntry
518 TrampolineEntry
519 TrampolineEntry
520 TrampolineEntry
521 TrampolineEntry
522 TrampolineEntry
523 TrampolineEntry
524 TrampolineEntry
525 TrampolineEntry
526 TrampolineEntry
527 TrampolineEntry
528 TrampolineEntry
529 TrampolineEntry
530 TrampolineEntry
531 TrampolineEntry
532 TrampolineEntry
533 TrampolineEntry
534 TrampolineEntry
535 TrampolineEntry
536 TrampolineEntry
537 TrampolineEntry
538 TrampolineEntry
539 TrampolineEntry
540 TrampolineEntry
541 TrampolineEntry
542 TrampolineEntry
543 TrampolineEntry
544 TrampolineEntry
545 TrampolineEntry
546 TrampolineEntry
547 TrampolineEntry
548 TrampolineEntry
549 TrampolineEntry
550 TrampolineEntry
551 TrampolineEntry
552 TrampolineEntry
553 TrampolineEntry
554 TrampolineEntry
555 TrampolineEntry
556 TrampolineEntry
557 TrampolineEntry
558 TrampolineEntry
559 TrampolineEntry
560 TrampolineEntry
561
562 __a1a2_trampend:
563
564 #endif