clarify the purpose of this project
[nyanglibc.git] / wctype / wcfuncs_l.s
blobedbac005d9d9f3870f6b26a6318cc190703946b7
1 .text
2 .p2align 4,,15
3 .globl __iswalnum_l
4 .hidden __iswalnum_l
5 .type __iswalnum_l, @function
6 __iswalnum_l:
7 testl $-128, %edi
8 je .L10
9 movq (%rsi), %rax
10 movl 200(%rax), %edx
11 addl $11, %edx
12 movq 64(%rax,%rdx,8), %rdx
13 movl %edi, %eax
14 movl (%rdx), %ecx
15 shrl %cl, %eax
16 movl %eax, %ecx
17 xorl %eax, %eax
18 cmpl 4(%rdx), %ecx
19 jnb .L1
20 addl $5, %ecx
21 movl (%rdx,%rcx,4), %esi
22 testl %esi, %esi
23 je .L1
24 movl 8(%rdx), %ecx
25 movl %edi, %r8d
26 shrl %cl, %r8d
27 movl %r8d, %ecx
28 andl 12(%rdx), %ecx
29 leaq (%rdx,%rcx,4), %rcx
30 movl (%rcx,%rsi), %ecx
31 testl %ecx, %ecx
32 je .L1
33 movl %edi, %eax
34 shrl $5, %eax
35 andl 16(%rdx), %eax
36 leaq (%rdx,%rax,4), %rax
37 movl (%rax,%rcx), %eax
38 movl %edi, %ecx
39 shrl %cl, %eax
40 andl $1, %eax
41 .L1:
42 rep ret
43 .p2align 4,,10
44 .p2align 3
45 .L10:
46 movq 104(%rsi), %rax
47 movl %edi, %edi
48 movzwl (%rax,%rdi,2), %eax
49 andl $8, %eax
50 movzwl %ax, %eax
51 ret
52 .size __iswalnum_l, .-__iswalnum_l
53 .weak iswalnum_l
54 .set iswalnum_l,__iswalnum_l
55 .p2align 4,,15
56 .globl __iswalpha_l
57 .hidden __iswalpha_l
58 .type __iswalpha_l, @function
59 __iswalpha_l:
60 testl $-128, %edi
61 je .L19
62 movq (%rsi), %rax
63 movl 200(%rax), %edx
64 addl $2, %edx
65 movq 64(%rax,%rdx,8), %rdx
66 movl %edi, %eax
67 movl (%rdx), %ecx
68 shrl %cl, %eax
69 movl %eax, %ecx
70 xorl %eax, %eax
71 cmpl 4(%rdx), %ecx
72 jnb .L11
73 addl $5, %ecx
74 movl (%rdx,%rcx,4), %esi
75 testl %esi, %esi
76 je .L11
77 movl 8(%rdx), %ecx
78 movl %edi, %r8d
79 shrl %cl, %r8d
80 movl %r8d, %ecx
81 andl 12(%rdx), %ecx
82 leaq (%rdx,%rcx,4), %rcx
83 movl (%rcx,%rsi), %ecx
84 testl %ecx, %ecx
85 je .L11
86 movl %edi, %eax
87 shrl $5, %eax
88 andl 16(%rdx), %eax
89 leaq (%rdx,%rax,4), %rax
90 movl (%rax,%rcx), %eax
91 movl %edi, %ecx
92 shrl %cl, %eax
93 andl $1, %eax
94 .L11:
95 rep ret
96 .p2align 4,,10
97 .p2align 3
98 .L19:
99 movq 104(%rsi), %rax
100 movl %edi, %edi
101 movzwl (%rax,%rdi,2), %eax
102 andw $1024, %ax
103 movzwl %ax, %eax
105 .size __iswalpha_l, .-__iswalpha_l
106 .weak iswalpha_l
107 .set iswalpha_l,__iswalpha_l
108 .p2align 4,,15
109 .globl __iswblank_l
110 .hidden __iswblank_l
111 .type __iswblank_l, @function
112 __iswblank_l:
113 testl $-128, %edi
114 je .L28
115 movq (%rsi), %rax
116 movl 200(%rax), %edx
117 addl $8, %edx
118 movq 64(%rax,%rdx,8), %rdx
119 movl %edi, %eax
120 movl (%rdx), %ecx
121 shrl %cl, %eax
122 movl %eax, %ecx
123 xorl %eax, %eax
124 cmpl 4(%rdx), %ecx
125 jnb .L20
126 addl $5, %ecx
127 movl (%rdx,%rcx,4), %esi
128 testl %esi, %esi
129 je .L20
130 movl 8(%rdx), %ecx
131 movl %edi, %r8d
132 shrl %cl, %r8d
133 movl %r8d, %ecx
134 andl 12(%rdx), %ecx
135 leaq (%rdx,%rcx,4), %rcx
136 movl (%rcx,%rsi), %ecx
137 testl %ecx, %ecx
138 je .L20
139 movl %edi, %eax
140 shrl $5, %eax
141 andl 16(%rdx), %eax
142 leaq (%rdx,%rax,4), %rax
143 movl (%rax,%rcx), %eax
144 movl %edi, %ecx
145 shrl %cl, %eax
146 andl $1, %eax
147 .L20:
148 rep ret
149 .p2align 4,,10
150 .p2align 3
151 .L28:
152 movq 104(%rsi), %rax
153 movl %edi, %edi
154 movzwl (%rax,%rdi,2), %eax
155 andl $1, %eax
157 .size __iswblank_l, .-__iswblank_l
158 .weak iswblank_l
159 .set iswblank_l,__iswblank_l
160 .p2align 4,,15
161 .globl __iswcntrl_l
162 .hidden __iswcntrl_l
163 .type __iswcntrl_l, @function
164 __iswcntrl_l:
165 testl $-128, %edi
166 je .L37
167 movq (%rsi), %rax
168 movl 200(%rax), %edx
169 addl $9, %edx
170 movq 64(%rax,%rdx,8), %rdx
171 movl %edi, %eax
172 movl (%rdx), %ecx
173 shrl %cl, %eax
174 movl %eax, %ecx
175 xorl %eax, %eax
176 cmpl 4(%rdx), %ecx
177 jnb .L29
178 addl $5, %ecx
179 movl (%rdx,%rcx,4), %esi
180 testl %esi, %esi
181 je .L29
182 movl 8(%rdx), %ecx
183 movl %edi, %r8d
184 shrl %cl, %r8d
185 movl %r8d, %ecx
186 andl 12(%rdx), %ecx
187 leaq (%rdx,%rcx,4), %rcx
188 movl (%rcx,%rsi), %ecx
189 testl %ecx, %ecx
190 je .L29
191 movl %edi, %eax
192 shrl $5, %eax
193 andl 16(%rdx), %eax
194 leaq (%rdx,%rax,4), %rax
195 movl (%rax,%rcx), %eax
196 movl %edi, %ecx
197 shrl %cl, %eax
198 andl $1, %eax
199 .L29:
200 rep ret
201 .p2align 4,,10
202 .p2align 3
203 .L37:
204 movq 104(%rsi), %rax
205 movl %edi, %edi
206 movzwl (%rax,%rdi,2), %eax
207 andl $2, %eax
208 movzwl %ax, %eax
210 .size __iswcntrl_l, .-__iswcntrl_l
211 .weak iswcntrl_l
212 .set iswcntrl_l,__iswcntrl_l
213 .p2align 4,,15
214 .globl __iswdigit_l
215 .hidden __iswdigit_l
216 .type __iswdigit_l, @function
217 __iswdigit_l:
218 testl $-128, %edi
219 je .L46
220 movq (%rsi), %rax
221 movl 200(%rax), %edx
222 addl $3, %edx
223 movq 64(%rax,%rdx,8), %rdx
224 movl %edi, %eax
225 movl (%rdx), %ecx
226 shrl %cl, %eax
227 movl %eax, %ecx
228 xorl %eax, %eax
229 cmpl 4(%rdx), %ecx
230 jnb .L38
231 addl $5, %ecx
232 movl (%rdx,%rcx,4), %esi
233 testl %esi, %esi
234 je .L38
235 movl 8(%rdx), %ecx
236 movl %edi, %r8d
237 shrl %cl, %r8d
238 movl %r8d, %ecx
239 andl 12(%rdx), %ecx
240 leaq (%rdx,%rcx,4), %rcx
241 movl (%rcx,%rsi), %ecx
242 testl %ecx, %ecx
243 je .L38
244 movl %edi, %eax
245 shrl $5, %eax
246 andl 16(%rdx), %eax
247 leaq (%rdx,%rax,4), %rax
248 movl (%rax,%rcx), %eax
249 movl %edi, %ecx
250 shrl %cl, %eax
251 andl $1, %eax
252 .L38:
253 rep ret
254 .p2align 4,,10
255 .p2align 3
256 .L46:
257 subl $48, %edi
258 xorl %eax, %eax
259 cmpl $9, %edi
260 setbe %al
262 .size __iswdigit_l, .-__iswdigit_l
263 .weak iswdigit_l
264 .set iswdigit_l,__iswdigit_l
265 .p2align 4,,15
266 .globl __iswlower_l
267 .hidden __iswlower_l
268 .type __iswlower_l, @function
269 __iswlower_l:
270 testl $-128, %edi
271 je .L55
272 movq (%rsi), %rax
273 movl 200(%rax), %edx
274 addl $1, %edx
275 movq 64(%rax,%rdx,8), %rdx
276 movl %edi, %eax
277 movl (%rdx), %ecx
278 shrl %cl, %eax
279 movl %eax, %ecx
280 xorl %eax, %eax
281 cmpl 4(%rdx), %ecx
282 jnb .L47
283 addl $5, %ecx
284 movl (%rdx,%rcx,4), %esi
285 testl %esi, %esi
286 je .L47
287 movl 8(%rdx), %ecx
288 movl %edi, %r8d
289 shrl %cl, %r8d
290 movl %r8d, %ecx
291 andl 12(%rdx), %ecx
292 leaq (%rdx,%rcx,4), %rcx
293 movl (%rcx,%rsi), %ecx
294 testl %ecx, %ecx
295 je .L47
296 movl %edi, %eax
297 shrl $5, %eax
298 andl 16(%rdx), %eax
299 leaq (%rdx,%rax,4), %rax
300 movl (%rax,%rcx), %eax
301 movl %edi, %ecx
302 shrl %cl, %eax
303 andl $1, %eax
304 .L47:
305 rep ret
306 .p2align 4,,10
307 .p2align 3
308 .L55:
309 movq 104(%rsi), %rax
310 movl %edi, %edi
311 movzwl (%rax,%rdi,2), %eax
312 andw $512, %ax
313 movzwl %ax, %eax
315 .size __iswlower_l, .-__iswlower_l
316 .weak iswlower_l
317 .set iswlower_l,__iswlower_l
318 .p2align 4,,15
319 .globl __iswgraph_l
320 .hidden __iswgraph_l
321 .type __iswgraph_l, @function
322 __iswgraph_l:
323 testl $-128, %edi
324 je .L64
325 movq (%rsi), %rax
326 movl 200(%rax), %edx
327 addl $7, %edx
328 movq 64(%rax,%rdx,8), %rdx
329 movl %edi, %eax
330 movl (%rdx), %ecx
331 shrl %cl, %eax
332 movl %eax, %ecx
333 xorl %eax, %eax
334 cmpl 4(%rdx), %ecx
335 jnb .L56
336 addl $5, %ecx
337 movl (%rdx,%rcx,4), %esi
338 testl %esi, %esi
339 je .L56
340 movl 8(%rdx), %ecx
341 movl %edi, %r8d
342 shrl %cl, %r8d
343 movl %r8d, %ecx
344 andl 12(%rdx), %ecx
345 leaq (%rdx,%rcx,4), %rcx
346 movl (%rcx,%rsi), %ecx
347 testl %ecx, %ecx
348 je .L56
349 movl %edi, %eax
350 shrl $5, %eax
351 andl 16(%rdx), %eax
352 leaq (%rdx,%rax,4), %rax
353 movl (%rax,%rcx), %eax
354 movl %edi, %ecx
355 shrl %cl, %eax
356 andl $1, %eax
357 .L56:
358 rep ret
359 .p2align 4,,10
360 .p2align 3
361 .L64:
362 movq 104(%rsi), %rax
363 movl %edi, %edi
364 movzwl (%rax,%rdi,2), %eax
365 andw $-32768, %ax
366 movzwl %ax, %eax
368 .size __iswgraph_l, .-__iswgraph_l
369 .weak iswgraph_l
370 .set iswgraph_l,__iswgraph_l
371 .p2align 4,,15
372 .globl __iswprint_l
373 .hidden __iswprint_l
374 .type __iswprint_l, @function
375 __iswprint_l:
376 testl $-128, %edi
377 je .L73
378 movq (%rsi), %rax
379 movl 200(%rax), %edx
380 addl $6, %edx
381 movq 64(%rax,%rdx,8), %rdx
382 movl %edi, %eax
383 movl (%rdx), %ecx
384 shrl %cl, %eax
385 movl %eax, %ecx
386 xorl %eax, %eax
387 cmpl 4(%rdx), %ecx
388 jnb .L65
389 addl $5, %ecx
390 movl (%rdx,%rcx,4), %esi
391 testl %esi, %esi
392 je .L65
393 movl 8(%rdx), %ecx
394 movl %edi, %r8d
395 shrl %cl, %r8d
396 movl %r8d, %ecx
397 andl 12(%rdx), %ecx
398 leaq (%rdx,%rcx,4), %rcx
399 movl (%rcx,%rsi), %ecx
400 testl %ecx, %ecx
401 je .L65
402 movl %edi, %eax
403 shrl $5, %eax
404 andl 16(%rdx), %eax
405 leaq (%rdx,%rax,4), %rax
406 movl (%rax,%rcx), %eax
407 movl %edi, %ecx
408 shrl %cl, %eax
409 andl $1, %eax
410 .L65:
411 rep ret
412 .p2align 4,,10
413 .p2align 3
414 .L73:
415 movq 104(%rsi), %rax
416 movl %edi, %edi
417 movzwl (%rax,%rdi,2), %eax
418 andw $16384, %ax
419 movzwl %ax, %eax
421 .size __iswprint_l, .-__iswprint_l
422 .weak iswprint_l
423 .set iswprint_l,__iswprint_l
424 .p2align 4,,15
425 .globl __iswpunct_l
426 .hidden __iswpunct_l
427 .type __iswpunct_l, @function
428 __iswpunct_l:
429 testl $-128, %edi
430 je .L82
431 movq (%rsi), %rax
432 movl 200(%rax), %edx
433 addl $10, %edx
434 movq 64(%rax,%rdx,8), %rdx
435 movl %edi, %eax
436 movl (%rdx), %ecx
437 shrl %cl, %eax
438 movl %eax, %ecx
439 xorl %eax, %eax
440 cmpl 4(%rdx), %ecx
441 jnb .L74
442 addl $5, %ecx
443 movl (%rdx,%rcx,4), %esi
444 testl %esi, %esi
445 je .L74
446 movl 8(%rdx), %ecx
447 movl %edi, %r8d
448 shrl %cl, %r8d
449 movl %r8d, %ecx
450 andl 12(%rdx), %ecx
451 leaq (%rdx,%rcx,4), %rcx
452 movl (%rcx,%rsi), %ecx
453 testl %ecx, %ecx
454 je .L74
455 movl %edi, %eax
456 shrl $5, %eax
457 andl 16(%rdx), %eax
458 leaq (%rdx,%rax,4), %rax
459 movl (%rax,%rcx), %eax
460 movl %edi, %ecx
461 shrl %cl, %eax
462 andl $1, %eax
463 .L74:
464 rep ret
465 .p2align 4,,10
466 .p2align 3
467 .L82:
468 movq 104(%rsi), %rax
469 movl %edi, %edi
470 movzwl (%rax,%rdi,2), %eax
471 andl $4, %eax
472 movzwl %ax, %eax
474 .size __iswpunct_l, .-__iswpunct_l
475 .weak iswpunct_l
476 .set iswpunct_l,__iswpunct_l
477 .p2align 4,,15
478 .globl __iswspace_l
479 .hidden __iswspace_l
480 .type __iswspace_l, @function
481 __iswspace_l:
482 testl $-128, %edi
483 je .L91
484 movq (%rsi), %rax
485 movl 200(%rax), %edx
486 addl $5, %edx
487 movq 64(%rax,%rdx,8), %rdx
488 movl %edi, %eax
489 movl (%rdx), %ecx
490 shrl %cl, %eax
491 movl %eax, %ecx
492 xorl %eax, %eax
493 cmpl 4(%rdx), %ecx
494 jnb .L83
495 addl $5, %ecx
496 movl (%rdx,%rcx,4), %esi
497 testl %esi, %esi
498 je .L83
499 movl 8(%rdx), %ecx
500 movl %edi, %r8d
501 shrl %cl, %r8d
502 movl %r8d, %ecx
503 andl 12(%rdx), %ecx
504 leaq (%rdx,%rcx,4), %rcx
505 movl (%rcx,%rsi), %ecx
506 testl %ecx, %ecx
507 je .L83
508 movl %edi, %eax
509 shrl $5, %eax
510 andl 16(%rdx), %eax
511 leaq (%rdx,%rax,4), %rax
512 movl (%rax,%rcx), %eax
513 movl %edi, %ecx
514 shrl %cl, %eax
515 andl $1, %eax
516 .L83:
517 rep ret
518 .p2align 4,,10
519 .p2align 3
520 .L91:
521 movq 104(%rsi), %rax
522 movl %edi, %edi
523 movzwl (%rax,%rdi,2), %eax
524 andw $8192, %ax
525 movzwl %ax, %eax
527 .size __iswspace_l, .-__iswspace_l
528 .weak iswspace_l
529 .set iswspace_l,__iswspace_l
530 .p2align 4,,15
531 .globl __iswupper_l
532 .hidden __iswupper_l
533 .type __iswupper_l, @function
534 __iswupper_l:
535 testl $-128, %edi
536 je .L100
537 movq (%rsi), %rax
538 movl 200(%rax), %edx
539 movq 64(%rax,%rdx,8), %rdx
540 movl %edi, %eax
541 movl (%rdx), %ecx
542 shrl %cl, %eax
543 movl %eax, %ecx
544 xorl %eax, %eax
545 cmpl 4(%rdx), %ecx
546 jnb .L92
547 addl $5, %ecx
548 movl (%rdx,%rcx,4), %esi
549 testl %esi, %esi
550 je .L92
551 movl 8(%rdx), %ecx
552 movl %edi, %r8d
553 shrl %cl, %r8d
554 movl %r8d, %ecx
555 andl 12(%rdx), %ecx
556 leaq (%rdx,%rcx,4), %rcx
557 movl (%rcx,%rsi), %ecx
558 testl %ecx, %ecx
559 je .L92
560 movl %edi, %eax
561 shrl $5, %eax
562 andl 16(%rdx), %eax
563 leaq (%rdx,%rax,4), %rax
564 movl (%rax,%rcx), %eax
565 movl %edi, %ecx
566 shrl %cl, %eax
567 andl $1, %eax
568 .L92:
569 rep ret
570 .p2align 4,,10
571 .p2align 3
572 .L100:
573 movq 104(%rsi), %rax
574 movl %edi, %edi
575 movzwl (%rax,%rdi,2), %eax
576 andw $256, %ax
577 movzwl %ax, %eax
579 .size __iswupper_l, .-__iswupper_l
580 .weak iswupper_l
581 .set iswupper_l,__iswupper_l
582 .p2align 4,,15
583 .globl __iswxdigit_l
584 .hidden __iswxdigit_l
585 .type __iswxdigit_l, @function
586 __iswxdigit_l:
587 testl $-128, %edi
588 je .L109
589 movq (%rsi), %rax
590 movl 200(%rax), %edx
591 addl $4, %edx
592 movq 64(%rax,%rdx,8), %rdx
593 movl %edi, %eax
594 movl (%rdx), %ecx
595 shrl %cl, %eax
596 movl %eax, %ecx
597 xorl %eax, %eax
598 cmpl 4(%rdx), %ecx
599 jnb .L101
600 addl $5, %ecx
601 movl (%rdx,%rcx,4), %esi
602 testl %esi, %esi
603 je .L101
604 movl 8(%rdx), %ecx
605 movl %edi, %r8d
606 shrl %cl, %r8d
607 movl %r8d, %ecx
608 andl 12(%rdx), %ecx
609 leaq (%rdx,%rcx,4), %rcx
610 movl (%rcx,%rsi), %ecx
611 testl %ecx, %ecx
612 je .L101
613 movl %edi, %eax
614 shrl $5, %eax
615 andl 16(%rdx), %eax
616 leaq (%rdx,%rax,4), %rax
617 movl (%rax,%rcx), %eax
618 movl %edi, %ecx
619 shrl %cl, %eax
620 andl $1, %eax
621 .L101:
622 rep ret
623 .p2align 4,,10
624 .p2align 3
625 .L109:
626 movq 104(%rsi), %rax
627 movl %edi, %edi
628 movzwl (%rax,%rdi,2), %eax
629 andw $4096, %ax
630 movzwl %ax, %eax
632 .size __iswxdigit_l, .-__iswxdigit_l
633 .weak iswxdigit_l
634 .set iswxdigit_l,__iswxdigit_l
635 .p2align 4,,15
636 .globl __towlower_l
637 .hidden __towlower_l
638 .type __towlower_l, @function
639 __towlower_l:
640 movq (%rsi), %rdx
641 movl %edi, %eax
642 movl 208(%rdx), %ecx
643 addl $1, %ecx
644 movq 64(%rdx,%rcx,8), %rdx
645 movl (%rdx), %ecx
646 shrl %cl, %edi
647 cmpl 4(%rdx), %edi
648 movl %edi, %ecx
649 jnb .L111
650 addl $5, %ecx
651 movl (%rdx,%rcx,4), %esi
652 testl %esi, %esi
653 je .L111
654 movl 8(%rdx), %ecx
655 movl %eax, %edi
656 shrl %cl, %edi
657 movl %edi, %ecx
658 andl 12(%rdx), %ecx
659 leaq (%rdx,%rcx,4), %rcx
660 movl (%rcx,%rsi), %ecx
661 testl %ecx, %ecx
662 je .L111
663 movl %eax, %esi
664 andl 16(%rdx), %esi
665 leaq (%rdx,%rsi,4), %rdx
666 addl (%rdx,%rcx), %eax
667 .L111:
668 rep ret
669 .size __towlower_l, .-__towlower_l
670 .weak towlower_l
671 .set towlower_l,__towlower_l
672 .p2align 4,,15
673 .globl __towupper_l
674 .hidden __towupper_l
675 .type __towupper_l, @function
676 __towupper_l:
677 movq (%rsi), %rdx
678 movl %edi, %eax
679 movl 208(%rdx), %ecx
680 movq 64(%rdx,%rcx,8), %rdx
681 movl (%rdx), %ecx
682 shrl %cl, %edi
683 cmpl 4(%rdx), %edi
684 movl %edi, %ecx
685 jnb .L119
686 addl $5, %ecx
687 movl (%rdx,%rcx,4), %esi
688 testl %esi, %esi
689 je .L119
690 movl 8(%rdx), %ecx
691 movl %eax, %edi
692 shrl %cl, %edi
693 movl %edi, %ecx
694 andl 12(%rdx), %ecx
695 leaq (%rdx,%rcx,4), %rcx
696 movl (%rcx,%rsi), %ecx
697 testl %ecx, %ecx
698 je .L119
699 movl %eax, %esi
700 andl 16(%rdx), %esi
701 leaq (%rdx,%rsi,4), %rdx
702 addl (%rdx,%rcx), %eax
703 .L119:
704 rep ret
705 .size __towupper_l, .-__towupper_l
706 .weak towupper_l
707 .set towupper_l,__towupper_l