From b523dd51bd387d3b279440c5e9d5f79d20afe96c Mon Sep 17 00:00:00 2001 From: John Koleszar Date: Mon, 25 Oct 2010 23:45:02 -0400 Subject: [PATCH] add missing GET_GOT/RESTORE_GOT pairs These functions made global references but did not set up the GOT, causing compilation failures in PIC mode. Change-Id: Iac473bf46733f87eb2e001cd736af4acf73fa51d --- vp8/encoder/x86/fwalsh_sse2.asm | 2 ++ vp8/encoder/x86/subtract_sse2.asm | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/vp8/encoder/x86/fwalsh_sse2.asm b/vp8/encoder/x86/fwalsh_sse2.asm index ffc9b3dca..145b59d45 100644 --- a/vp8/encoder/x86/fwalsh_sse2.asm +++ b/vp8/encoder/x86/fwalsh_sse2.asm @@ -17,6 +17,7 @@ sym(vp8_short_walsh4x4_sse2): push rbp mov rbp, rsp SHADOW_ARGS_TO_STACK 3 + GET_GOT rbx push rsi push rdi ; end prolog @@ -141,6 +142,7 @@ sym(vp8_short_walsh4x4_sse2): ; begin epilog pop rdi pop rsi + RESTORE_GOT UNSHADOW_ARGS pop rbp ret diff --git a/vp8/encoder/x86/subtract_sse2.asm b/vp8/encoder/x86/subtract_sse2.asm index 60522bafa..27661e07f 100644 --- a/vp8/encoder/x86/subtract_sse2.asm +++ b/vp8/encoder/x86/subtract_sse2.asm @@ -19,6 +19,7 @@ sym(vp8_subtract_b_sse2_impl): push rbp mov rbp, rsp SHADOW_ARGS_TO_STACK 5 + GET_GOT rbx push rsi push rdi ; end prolog @@ -64,6 +65,7 @@ sym(vp8_subtract_b_sse2_impl): ; begin epilog pop rdi pop rsi + RESTORE_GOT UNSHADOW_ARGS pop rbp ret @@ -75,6 +77,7 @@ sym(vp8_subtract_mby_sse2): push rbp mov rbp, rsp SHADOW_ARGS_TO_STACK 4 + GET_GOT rbx push rsi push rdi ; end prolog @@ -134,6 +137,7 @@ submby_loop: pop rdi pop rsi ; begin epilog + RESTORE_GOT UNSHADOW_ARGS pop rbp ret @@ -145,6 +149,7 @@ sym(vp8_subtract_mbuv_sse2): push rbp mov rbp, rsp SHADOW_ARGS_TO_STACK 5 + GET_GOT rbx push rsi push rdi ; end prolog @@ -338,6 +343,7 @@ sym(vp8_subtract_mbuv_sse2): ; begin epilog pop rdi pop rsi + RESTORE_GOT UNSHADOW_ARGS pop rbp ret