Lines Matching refs:rdi
52 // %rdi = ptr to memory to set (not necessarily aligned)
56 // %rax, %rdi, %rsi, %rcx, and %rdx all trashed
69 // %rdi = ptr (may not be not aligned)
73 movdqu %xmm0,(%rdi) // stuff in another 16 bytes
75 addq $16,%rdi
82 movq %xmm0,(%rdi) // pack in 8 low bytes
84 addq $8,%rdi
88 movd %xmm0,(%rdi) // pack in 4 low bytes
90 addq $4,%rdi
96 movb %al,(%rdi) // pack in next byte
98 incq %rdi
110 // %rdi = ptr (may not be aligned)
118 movdqu %xmm0,(%rdi) // store 16 unaligned bytes
119 movdqu %xmm0,16(%rdi) // and 16 more, to be sure we have an aligned chunk
120 addq %rcx,%rdi // now point to the aligned chunk
122 movdqa (%rdi),%xmm0 // get the rotated pattern (probably stalling)
123 addq $16,%rdi // skip past the aligned chunk
128 // %rdi = ptr (aligned)
136 addq %rcx,%rdi // increment ptr by length to move
146 movdqa %xmm0,(%rdi,%rcx)
147 movdqa %xmm0,16(%rdi,%rcx)
148 movdqa %xmm0,32(%rdi,%rcx)
149 movdqa %xmm0,48(%rdi,%rcx)
163 movntdq %xmm0,(%rdi,%rcx)
164 movntdq %xmm0,16(%rdi,%rcx)
165 movntdq %xmm0,32(%rdi,%rcx)
166 movntdq %xmm0,48(%rdi,%rcx)
179 movdqa %xmm0,(%rdi) // pack in 16 more bytes
181 addq $16,%rdi // increment ptr