]> granicus.if.org Git - libvpx/commitdiff
Save XMM registers in asm functions
authorYunqing Wang <yunqingwang@google.com>
Thu, 28 Oct 2010 20:59:03 +0000 (16:59 -0400)
committerYunqing Wang <yunqingwang@google.com>
Thu, 28 Oct 2010 20:59:03 +0000 (16:59 -0400)
XMM6/7 are used in these functions, and need to be saved.

Change-Id: I3dfaddaf2a69cd4bf8e8735c7064b17bac5a14e5

vp8/encoder/x86/fwalsh_sse2.asm
vp8/encoder/x86/subtract_sse2.asm

index 145b59d4543ea386d2b7778a85d54dba3371b5ee..39439f0d86df037a7954a5cb4d1241fdbd647900 100644 (file)
@@ -17,6 +17,7 @@ sym(vp8_short_walsh4x4_sse2):
     push        rbp
     mov         rbp, rsp
     SHADOW_ARGS_TO_STACK 3
+    SAVE_XMM
     GET_GOT     rbx
     push        rsi
     push        rdi
@@ -143,6 +144,7 @@ sym(vp8_short_walsh4x4_sse2):
     pop rdi
     pop rsi
     RESTORE_GOT
+    RESTORE_XMM
     UNSHADOW_ARGS
     pop         rbp
     ret
index 27661e07fa1ad645badb575e537cfbc091d9a081..3fb23d0975a99b0585d52018e2e4f928cda99891 100644 (file)
@@ -77,6 +77,7 @@ sym(vp8_subtract_mby_sse2):
     push        rbp
     mov         rbp, rsp
     SHADOW_ARGS_TO_STACK 4
+    SAVE_XMM
     GET_GOT     rbx
     push rsi
     push rdi
@@ -138,6 +139,7 @@ submby_loop:
     pop rsi
     ; begin epilog
     RESTORE_GOT
+    RESTORE_XMM
     UNSHADOW_ARGS
     pop         rbp
     ret