Lines Matching refs:rsi
53 movq %rsi,%rax // copy dest ptr
54 movq %rdi,%rsi // xchange source and dest ptrs
56 subq %rsi,%rax // (dest - source)
77 subq %rsi,%rax // (dest - source)
85 // rsi = source ptr
93 movl (%rsi),%eax
94 addq $4,%rsi
103 movb (%rsi),%al
104 incq %rsi
122 // rsi = source ptr
145 // rsi = ptr to 1st source byte not to move (unaligned)
158 addq %rcx,%rsi // point to 1st byte not copied
191 // rsi = source
211 addq %rcx,%rsi // restore ptrs to 1st byte of source and dest
222 // Forward loop for medium length operands in which low four bits of %rsi == 0000
230 movdqa (%rsi,%rcx),%xmm0
231 movdqa 16(%rsi,%rcx),%xmm1
232 movdqa 32(%rsi,%rcx),%xmm2
233 movdqa 48(%rsi,%rcx),%xmm3
246 // Forward loop for medium length operands in which low four bits of %rsi == 0001
249 movdqa -1(%rsi,%rcx),%xmm0 // prime the loop by loading 1st quadword
251 movdqa 15(%rsi,%rcx),%xmm1
252 movdqa 31(%rsi,%rcx),%xmm2
253 movdqa 47(%rsi,%rcx),%xmm3
254 movdqa 63(%rsi,%rcx),%xmm4
275 // Forward loop for medium length operands in which low four bits of %rsi == 0010
278 movdqa -2(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
280 movdqa 14(%rsi,%rcx),%xmm1
281 movdqa 30(%rsi,%rcx),%xmm2
282 movdqa 46(%rsi,%rcx),%xmm3
283 movdqa 62(%rsi,%rcx),%xmm4
304 // Forward loop for medium length operands in which low four bits of %rsi == 0011
307 movdqa -3(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
309 movdqa 13(%rsi,%rcx),%xmm1
310 movdqa 29(%rsi,%rcx),%xmm2
311 movdqa 45(%rsi,%rcx),%xmm3
312 movdqa 61(%rsi,%rcx),%xmm4
333 // Forward loop for medium length operands in which low four bits of %rsi == 0100
337 movaps -4(%rsi,%rcx),%xmm0 // 4-byte aligned: prime the loop
341 movaps 12(%rsi,%rcx),%xmm1
342 movaps 28(%rsi,%rcx),%xmm2
345 movaps 44(%rsi,%rcx),%xmm3
348 movaps 60(%rsi,%rcx),%xmm4
366 // Forward loop for medium length operands in which low four bits of %rsi == 0101
369 movdqa -5(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
371 movdqa 11(%rsi,%rcx),%xmm1
372 movdqa 27(%rsi,%rcx),%xmm2
373 movdqa 43(%rsi,%rcx),%xmm3
374 movdqa 59(%rsi,%rcx),%xmm4
395 // Forward loop for medium length operands in which low four bits of %rsi == 0110
398 movdqa -6(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
400 movdqa 10(%rsi,%rcx),%xmm1
401 movdqa 26(%rsi,%rcx),%xmm2
402 movdqa 42(%rsi,%rcx),%xmm3
403 movdqa 58(%rsi,%rcx),%xmm4
424 // Forward loop for medium length operands in which low four bits of %rsi == 0111
427 movdqa -7(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
429 movdqa 9(%rsi,%rcx),%xmm1
430 movdqa 25(%rsi,%rcx),%xmm2
431 movdqa 41(%rsi,%rcx),%xmm3
432 movdqa 57(%rsi,%rcx),%xmm4
453 // Forward loop for medium length operands in which low four bits of %rsi == 1000
459 movapd -8(%rsi,%rcx),%xmm0 // 8-byte aligned: prime the loop
463 movapd 8(%rsi,%rcx),%xmm1
464 movapd 24(%rsi,%rcx),%xmm2
466 movapd 40(%rsi,%rcx),%xmm3
468 movapd 56(%rsi,%rcx),%xmm4
484 // Forward loop for medium length operands in which low four bits of %rsi == 1001
487 movdqa -9(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
489 movdqa 7(%rsi,%rcx),%xmm1
490 movdqa 23(%rsi,%rcx),%xmm2
491 movdqa 39(%rsi,%rcx),%xmm3
492 movdqa 55(%rsi,%rcx),%xmm4
513 // Forward loop for medium length operands in which low four bits of %rsi == 1010
516 movdqa -10(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
518 movdqa 6(%rsi,%rcx),%xmm1
519 movdqa 22(%rsi,%rcx),%xmm2
520 movdqa 38(%rsi,%rcx),%xmm3
521 movdqa 54(%rsi,%rcx),%xmm4
542 // Forward loop for medium length operands in which low four bits of %rsi == 1011
545 movdqa -11(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
547 movdqa 5(%rsi,%rcx),%xmm1
548 movdqa 21(%rsi,%rcx),%xmm2
549 movdqa 37(%rsi,%rcx),%xmm3
550 movdqa 53(%rsi,%rcx),%xmm4
571 // Forward loop for medium length operands in which low four bits of %rsi == 1100
575 movss (%rsi,%rcx),%xmm0 // prefetch 1st four bytes of source, right justified
579 pshufd $(0x93),4(%rsi,%rcx),%xmm1 // load and rotate right 12 bytes (mask -- 10 01 00 11)
580 pshufd $(0x93),20(%rsi,%rcx),%xmm2
581 pshufd $(0x93),36(%rsi,%rcx),%xmm3
582 pshufd $(0x93),52(%rsi,%rcx),%xmm4
602 // Forward loop for medium length operands in which low four bits of %rsi == 1101
605 movdqa -13(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
607 movdqa 3(%rsi,%rcx),%xmm1
608 movdqa 19(%rsi,%rcx),%xmm2
609 movdqa 35(%rsi,%rcx),%xmm3
610 movdqa 51(%rsi,%rcx),%xmm4
631 // Forward loop for medium length operands in which low four bits of %rsi == 1110
634 movdqa -14(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
636 movdqa 2(%rsi,%rcx),%xmm1
637 movdqa 18(%rsi,%rcx),%xmm2
638 movdqa 34(%rsi,%rcx),%xmm3
639 movdqa 50(%rsi,%rcx),%xmm4
660 // Forward loop for medium length operands in which low four bits of %rsi == 1111
663 movdqa -15(%rsi,%rcx),%xmm0 // prime the loop by loading 1st source dq
665 movdqa 1(%rsi,%rcx),%xmm1
666 movdqa 17(%rsi,%rcx),%xmm2
667 movdqa 33(%rsi,%rcx),%xmm3
668 movdqa 49(%rsi,%rcx),%xmm4
692 // rsi = source ptr
696 addq %rdx,%rsi // point to end of strings
703 // rsi = one byte past end of source
711 subq $8,%rsi
712 movq (%rsi),%rax
721 decq %rsi
722 movb (%rsi),%al
734 // rsi = one byte past end of source
743 decq %rsi
744 movb (%rsi),%al
756 subq %rcx,%rsi // point to endpoint of copy
762 movdqa -16(%rsi,%rcx),%xmm0
763 movdqa -32(%rsi,%rcx),%xmm1
764 movdqa -48(%rsi,%rcx),%xmm2
765 movdqa -64(%rsi,%rcx),%xmm3
781 movdqu -16(%rsi,%rcx),%xmm0
782 movdqu -32(%rsi,%rcx),%xmm1
783 movdqu -48(%rsi,%rcx),%xmm2
784 movdqu -64(%rsi,%rcx),%xmm3