Josh DuBois : oleaut32: Avoid movs between rcx, rdx and xmm registers.

Alexandre Julliard julliard at wine.codeweavers.com
Wed May 6 09:29:05 CDT 2015


Module: wine
Branch: master
Commit: ee3bb31a6fb32a2ad4e01ba3ef373562241165ea
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=ee3bb31a6fb32a2ad4e01ba3ef373562241165ea

Author: Josh DuBois <duboisj at codeweavers.com>
Date:   Tue Apr 28 09:20:13 2015 -0500

oleaut32: Avoid movs between rcx, rdx and xmm registers.

Apple's version of as chokes on movs between rcx and rdx and the xmm
registers.

---

 dlls/oleaut32/typelib.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index b8325c0..29bab33 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -6456,10 +6456,10 @@ __ASM_GLOBAL_FUNC( call_method,
                    "movq 8(%rsp),%rdx\n\t"
                    "movq 16(%rsp),%r8\n\t"
                    "movq 24(%rsp),%r9\n\t"
-                   "movq %rcx,%xmm0\n\t"
-                   "movq %rdx,%xmm1\n\t"
-                   "movq %r8,%xmm2\n\t"
-                   "movq %r9,%xmm3\n\t"
+                   "movq 0(%rsp),%xmm0\n\t"
+                   "movq 8(%rsp),%xmm1\n\t"
+                   "movq 16(%rsp),%xmm2\n\t"
+                   "movq 24(%rsp),%xmm3\n\t"
                    "callq *%rax\n\t"
                    "leaq -16(%rbp),%rsp\n\t"
                    "popq %rdi\n\t"




More information about the wine-cvs mailing list