Home | History | Annotate | Download | only in amd64

Lines Matching refs:mem

24    Mem;
50 void pp_Mem ( char* who, Mem* mem ) {
55 pp_UWord128( &mem->dqw[i] );
72 void xor_Mem ( Mem* src, Mem* dst ) {
78 void setup_regs_mem ( XMMRegs* regs, Mem* mem ) {
87 mem->dqw[i].b[j] = 0x52 + (ctr++ % 13);
91 void before_test ( XMMRegs* regs, Mem* mem ) {
92 setup_regs_mem( regs, mem );
95 void after_test ( char* who, XMMRegs* regs, Mem* mem ) {
97 Mem mdiff;
101 xor_Mem( mem, &mdiff );
151 before_test( regs, mem );
159 : /*out*/ : /*in*/ "r"(regs), "r"( -x + (char*)&mem->dqw[2] )
163 after_test( "", regs, mem );
170 Mem* mem;
172 mem = memalign16(sizeof(Mem) + 16);
174 /* addpd mem, reg 66 49 0f 58 48 00 rex.WB addpd 0x0(%r8),%xmm1 */
176 before_test( regs, mem );
184 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
188 after_test( "rex.WB addpd 0x0(%r8),%xmm1", regs, mem );
191 /* addsd mem, reg f2 48 0f 58 27 rex.W addsd (%rdi),%xmm4 */
193 before_test( regs, mem );
201 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
205 after_test( "rex.W addsd (%rdi),%xmm4", regs, mem );
208 /* movapd mem, reg 66 48 0f 28 0a rex.W movapd (%rdx),%xmm1 */
210 before_test( regs, mem );
218 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
222 after_test( "rex.W movapd (%rdx),%xmm1", regs, mem );
225 /* movapd reg, mem 66 48 0f 29 0a rex.W movapd %xmm1,(%rdx) */
227 before_test( regs, mem );
235 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
239 after_test( "rex.W movapd %xmm1,(%rdx)", regs, mem );
242 /* movaps mem, reg 48 0f 28 42 30 rex.W movaps 0x30(%rdx),%xmm0 */
244 before_test( regs, mem );
252 : /*out*/ : /*in*/ "r"(regs), "r"( -0x30 + (char*)&mem->dqw[2] )
256 after_test( "movaps 0x30(%rdx),%xmm0", regs, mem );
259 /* movaps reg, mem 49 0f 29 48 00 rex.WB movaps %xmm1,0x0(%r8) */
261 before_test( regs, mem );
269 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
273 after_test( "rex.WB movaps %xmm1,0x0(%r8)", regs, mem );
276 /* movddup mem, reg f2 48 0f 12 2a rex.W movddup (%rdx),%xmm5 */
278 before_test( regs, mem );
286 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
290 after_test( "movddup (%rdx),%xmm5", regs, mem );
293 /* movhpd mem, reg 66 48 0f 16 06 rex.W movhpd (%rsi),%xmm0 */
295 before_test( regs, mem );
303 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
307 after_test( "rex.W movhpd (%rsi),%xmm0", regs, mem );
310 /* movhpd reg, mem 66 48 0f 17 07 rex.W movhpd %xmm0,(%rdi) */
312 before_test( regs, mem );
320 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
324 after_test( "rex.W movhpd %xmm0,(%rdi)", regs, mem );
327 /* movhps mem, reg 48 0f 16 36 rex.W movhps (%rsi),%xmm6 */
329 before_test( regs, mem );
337 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
341 after_test( "rex.W movhps (%rsi),%xmm6", regs, mem );
343 /* movhps reg, mem 49 0f 17 03 rex.WB movhps %xmm0,(%r11) */
345 before_test( regs, mem );
353 : /*out*/ : /*in*/ "r"(regs), "r"( 0 + (char*)&mem->dqw[2] )
357 after_test( "rex.WB movhps %xmm0,(%r11)", regs, mem );
360 /* movlpd mem, reg 66 48 0f 12 4a 00 rex.W movlpd 0x0(%rdx),%xmm1 */
362 before_test( regs, mem );
370 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
374 after_test( "rex.W movlpd 0x0(%rdx),%xmm1", regs, mem );
377 /* movlpd reg, mem 66 48 0f 13 30 rex.W movlpd %xmm6,(%rax) */
379 before_test( regs, mem );
387 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
391 after_test( "rex.W movlpd %xmm6,(%rax)", regs, mem );
394 /* movlps mem, reg 48 0f 12 07 rex.W movlps (%rdi),%xmm0 */
396 before_test( regs, mem );
404 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
408 after_test( "rex.W movlps (%rdi),%xmm0", regs, mem );
411 /* movlps reg, mem 49 0f 13 02 rex.WB movlps %xmm0,(%r10) */
413 before_test( regs, mem );
421 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
425 after_test( "rex.WB movlps %xmm0,(%r10)", regs, mem );
428 /* movq mem, reg f3 48 0f 7e 00 rex.W movq (%rax),%xmm0 */
430 before_test( regs, mem );
438 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
442 after_test( "rex.W movq (%rax),%xmm0", regs, mem );
445 /* movq reg, mem 66 48 0f d6 00 rex.W movq %xmm0,(%rax) */
447 before_test( regs, mem );
455 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
459 after_test( "rex.W movq %xmm0,(%rax)", regs, mem );
462 /* movsd mem, reg f2 48 0f 10 11 rex.W movsd (%rcx),%xmm2 */
464 before_test( regs, mem );
472 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
476 after_test( "rex.W movsd (%rcx),%xmm2", regs, mem );
479 /* movsd reg, mem f2 48 0f 11 3f rex.W movsd %xmm7,(%rdi) */
481 before_test( regs, mem );
489 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
493 after_test( "rex.W movsd %xmm7,(%rdi)", regs, mem );
496 /* movss mem, reg f3 48 0f 10 5e 04 rex.W movss 0x4(%rsi),%xmm3 */
498 before_test( regs, mem );
506 : /*out*/ : /*in*/ "r"(regs), "r"( -0x4 + (char*)&mem->dqw[2] )
510 after_test( "rex.W movss 0x4(%rsi),%xmm3", regs, mem );
513 /* movupd reg, mem 66 48 0f 11 07 rex.W movupd %xmm0,(%rdi) */
515 before_test( regs, mem );
523 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
527 after_test( "rex.W movupd %xmm0,(%rdi)", regs, mem );
530 /* mulpd mem, reg 66 48 0f 59 61 00 rex.W mulpd 0x0(%rcx),%xmm4 */
532 before_test( regs, mem );
540 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
544 after_test( "rex.W mulpd 0x0(%rcx),%xmm4", regs, mem );
547 /* mulsd mem, reg f2 48 0f 59 1f rex.W mulsd (%rdi),%xmm3 */
549 before_test( regs, mem );
557 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
561 after_test( "rex.W mulsd (%rdi),%xmm3", regs, mem );
566 before_test( regs, mem );
575 : /*out*/ : /*in*/ "r"(regs), "r"( - -0x60 + (char*)&mem->dqw[2] )
579 after_test( "rex.WB prefetcht0 -0x60(%r10,%rsi,8)", regs, mem );
582 /* subsd mem, reg f2 49 0f 5c 4d f8 rex.WB subsd -0x8(%r13),%xmm1 */
584 before_test( regs, mem );
592 : /*out*/ : /*in*/ "r"(regs), "r"( - -0x8 + (char*)&mem->dqw[2] )
596 after_test( "rex.WB subsd -0x8(%r13),%xmm1", regs, mem );
599 /* cvtps2pd mem, reg 48 0f 5a 07 rex.W cvtps2pd (%rdi),%xmm0 */
601 before_test( regs, mem );
609 : /*out*/ : /*in*/ "r"(regs), "r"( -0 + (char*)&mem->dqw[2] )
613 after_test( "rex.W cvtps2pd (%rdi),%xmm0", regs, mem );
617 free(mem);