Browse Source

* there is no vmovq for mmx registers

git-svn-id: trunk@38208 -
florian 7 năm trước cách đây
mục cha
commit
381cf78ff1
1 tập tin đã thay đổi với 4 bổ sung2 xóa
  1. 4 2
      compiler/x86/cgx86.pas

+ 4 - 2
compiler/x86/cgx86.pas

@@ -1486,7 +1486,8 @@ unit cgx86;
                  else
                    op := A_MOVD;
                OS_M64, OS_64, OS_S64:
-                 if UseAVX then
+                 { there is no VMOVQ for MMX registers }
+                 if UseAVX and (getregtype(reg)<>R_MMXREGISTER) then
                    op := A_VMOVQ
                  else
                    op := A_MOVQ;
@@ -1659,7 +1660,8 @@ unit cgx86;
                  else
                    op := A_MOVD;
                OS_M64, OS_64, OS_S64:
-                 if UseAVX then
+                 { there is no VMOVQ for MMX registers }
+                 if UseAVX and (getregtype(reg)<>R_MMXREGISTER) then
                    op := A_VMOVQ
                  else
                    op := A_MOVQ;