Fehler A2070: Ungültige Befehlsoperanden in SSE MASM64
Frage
Wenn Sie dies in ml64.exe 64bit (masm64) kompilieren, gibt mir der SSE -Befehl einen Fehler. Was muss ich tun, um die SSE -Befehle in 64 Bit einzuschließen?
.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
Ich bekomme den Fehler:
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"
Lösung
Ändern Sie also die beiden Zeilen an:
MOVLPS QWORD PTR [RDX], XMM7
MOVSS DWORD PTR [RDX+8], xmm6
wie hier:http://social.msdn.microsoft.com/forums/en-us/vcgeneral/thread/4f473acb-7b14-4bf4-bed3-e5e87e1f81e7
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow