i have defined a var. as uint64_t var; in asm construct finally the value from mm1(mmx register) is copied to this var "movq %%mm1,%0\n" the operand used is like this :"=g"(var) actually what i want to ask is it(movq) is not able to transfer the value to this var. it is working as movd and is working for 32 bit integers. what is this 'g' operand. as i know its for system to decide how it treats it thanks ankit jain ________________________________________________________________________ Yahoo! Messenger - Communicate instantly..."Ping" your friends today! Download Messenger Now http://uk.messenger.yahoo.com/download/index.html