flat assembler
Message board for the users of flat assembler.

Index > Main > Bug Report: movq gpr, xmm

Author
Thread Post new topic Reply to topic
StarKnightD



Joined: 04 Jul 2007
Posts: 38
StarKnightD 04 Jul 2007, 10:31
I get the following error while running FASMW 1.67.18


Error: operand sizes do not match

Instruction:
movq rax, xmm4


I read in the updates that there was an earlier bug related to this instruction which was fixed.

I replaced rax with rbx, rcx, rdx, rsi, and rdi however they all give the same error. I also tried changing the xmm register, without success.

Thanks,
Stefan
Post 04 Jul 2007, 10:31
View user's profile Send private message Reply with quote
Feryno



Joined: 23 Mar 2005
Posts: 509
Location: Czech republic, Slovak republic
Feryno 04 Jul 2007, 11:59
and it is even worse according AMD manuals, this instruction should be encoded as
movd rax,xmm0
even it moves qword
movd instruction in AMD manuals means move 32-bit as well 64-bit ...
http://board.flatassembler.net/topic.php?p=53590#53590
Post 04 Jul 2007, 11:59
View user's profile Send private message Visit poster's website ICQ Number Reply with quote
StarKnightD



Joined: 04 Jul 2007
Posts: 38
StarKnightD 04 Jul 2007, 17:06
actually, I use an Intel Core 2. as for FasmW, I tried using movd rax, xmm4 but it givies me an "invalid size of operand" error.
Post 04 Jul 2007, 17:06
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo 12 Jul 2007, 20:10
Does it work with any other x86-64 assembler (e.g. YASM)? That would make it easier to be sure it was a bug or not.
Post 12 Jul 2007, 20:10
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid 12 Jul 2007, 23:25
from intel manual:

Quote:

66 0F 6E /r MOVD xmm, ValidValidMove doubleword from
r/m32 r/m32 to xmm.
REX.W 66 0F 6E /r MOVQ xmm, ValidN.E.Move quadword from r/m64
r/m64 to xmm.
66 0F 7E /r MOVD r/m32, ValidValidMove doubleword from
xmm xmm register to r/m32.
REX.W 66 0F 7E /r MOVQ r/m64, Valid N.E.Move quadword from xmm
xmm register to r/m64.


looks like FASM bug to me... :/

i hope tomasz will get back soon, and fix all those bugs found recently
Post 12 Jul 2007, 23:25
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1900
DOS386 12 Jul 2007, 23:58
> hope tomasz will get back soon, and fix all those bugs found

And I hope the 16-bit, 32-bit and bit-neutral issues will also get addressed Wink
Post 12 Jul 2007, 23:58
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.