ошибка A2070: недопустимые операнды команд в SSE MASM64 - PullRequest
1 голос
/ 15 марта 2010

при компиляции в ml64.exe 64bit (masm64) команда SSE выдает ошибку Что мне нужно сделать, чтобы включить команды SSE в 64 бит?

.code

foo PROC

  movlps [rdx], xmm7 ;;error A2070: invalid instruction operands
  movhlps xmm6, xmm7
  movss [rdx+8], xmm6 ;;rror A2070: invalid instruction operands
  ret

foo ENDP

end

я получаю ошибку:

1>Performing Custom Build Step
1> Assembling: extasm.asm
1>extasm.asm(6) : error A2070: invalid instruction operands
1>extasm.asm(10) : error A2070: invalid instruction operands
1>Microsoft (R) Macro Assembler (x64) Version 8.00.50727.215
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>Project : error PRJ0019: A tool returned an error code from "Performing Custom Build Step"

1 Ответ

0 голосов
/ 16 марта 2010

Поэтому измените две строки на:

movlps QWORD PTR [rdx], xmm7

movss dword ptr [rdx + 8], xmm6

как здесь: http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/4f473acb-7b14-4bf4-bed3-e5e87e1f81e7

...