Hi,
can someone tell me if my constraints "D" and "S" are correctly used for 64 bit code? Or how the "D" & "S" are renamed when compiling 64 bit code?
void pipe_mult_ushort(ushort *data,ushort *rands)
{
__asm__ __volatile__(".intel_syntax noprefix\n\t"
"movdqa xmm0,[rdi]\n\t" // load xmm0 & xmm1
"movdqa xmm1,[rsi]\n\t"
"movdqa xmm2,0x10[rdi]\n\t" // load xmm2 & xmm3
"movdqa xmm3,0x10[rsi]\n\t"
......[more code omited] ....
:
: "D" (data) ,"S" (rands)
: "xmm0","xmm1","xmm2","xmm3","xmm4","xmm5","xmm6","xmm7",
"xmm8","xmm9","xmm10","xmm11","xmm12","xmm13","xmm14","xmm15",
"mm0","mm1","mm2","mm3","mm4","mm5","mm6","mm7",
"r8","r9","r10","r11","r12","r13","r14","r15",
"rax","rbx","rcx","rdx",
"memory");