Skip to content
Snippets Groups Projects
Commit fc37cd43 authored by Christophe Gisquet's avatar Christophe Gisquet Committed by Michael Niedermayer
Browse files

x86: sbrdsp: force PIC addressing for Win64


MSVC complains about the 32bits addressing, while mingw/gcc does not.

Signed-off-by: default avatarMichael Niedermayer <michaelni@gmx.at>
parent ae0ce99c
No related branches found
No related tags found
No related merge requests found
...@@ -321,12 +321,6 @@ cglobal sbr_qmf_pre_shuffle, 1,4,7,z ...@@ -321,12 +321,6 @@ cglobal sbr_qmf_pre_shuffle, 1,4,7,z
movq [r2q], m2 movq [r2q], m2
REP_RET REP_RET
%if WIN64 == 0
%if WIN64
%define NREGS 0
%define NOISE_TABLE sbr_noise_table
%else
%ifdef PIC %ifdef PIC
%define NREGS 1 %define NREGS 1
%if UNIX64 %if UNIX64
...@@ -338,10 +332,9 @@ cglobal sbr_qmf_pre_shuffle, 1,4,7,z ...@@ -338,10 +332,9 @@ cglobal sbr_qmf_pre_shuffle, 1,4,7,z
%define NREGS 0 %define NREGS 0
%define NOISE_TABLE sbr_noise_table %define NOISE_TABLE sbr_noise_table
%endif %endif
%endif
%macro LOAD_NST 1 %macro LOAD_NST 1
%if NREGS %ifdef PIC
lea NOISE_TABLE, [%1] lea NOISE_TABLE, [%1]
mova m0, [kxq + NOISE_TABLE] mova m0, [kxq + NOISE_TABLE]
%else %else
...@@ -390,7 +383,7 @@ apply_noise_main: ...@@ -390,7 +383,7 @@ apply_noise_main:
%endif %endif
dec noiseq dec noiseq
shl count, 2 shl count, 2
%if NREGS %ifdef PIC
lea NOISE_TABLE, [sbr_noise_table] lea NOISE_TABLE, [sbr_noise_table]
%endif %endif
lea Yq, [Yq + 2*count] lea Yq, [Yq + 2*count]
...@@ -430,5 +423,3 @@ apply_noise_main: ...@@ -430,5 +423,3 @@ apply_noise_main:
add count, mmsize add count, mmsize
jl .loop jl .loop
RET RET
%endif ; WIN64 == 0
...@@ -68,11 +68,9 @@ av_cold void ff_sbrdsp_init_x86(SBRDSPContext *s) ...@@ -68,11 +68,9 @@ av_cold void ff_sbrdsp_init_x86(SBRDSPContext *s)
if (EXTERNAL_SSE2(mm_flags)) { if (EXTERNAL_SSE2(mm_flags)) {
s->qmf_deint_bfly = ff_sbr_qmf_deint_bfly_sse2; s->qmf_deint_bfly = ff_sbr_qmf_deint_bfly_sse2;
s->qmf_pre_shuffle = ff_sbr_qmf_pre_shuffle_sse2; s->qmf_pre_shuffle = ff_sbr_qmf_pre_shuffle_sse2;
#if ARCH_X86_32 || !defined(_WIN32)
s->hf_apply_noise[0] = ff_sbr_hf_apply_noise_0_sse2; s->hf_apply_noise[0] = ff_sbr_hf_apply_noise_0_sse2;
s->hf_apply_noise[1] = ff_sbr_hf_apply_noise_1_sse2; s->hf_apply_noise[1] = ff_sbr_hf_apply_noise_1_sse2;
s->hf_apply_noise[2] = ff_sbr_hf_apply_noise_2_sse2; s->hf_apply_noise[2] = ff_sbr_hf_apply_noise_2_sse2;
s->hf_apply_noise[3] = ff_sbr_hf_apply_noise_3_sse2; s->hf_apply_noise[3] = ff_sbr_hf_apply_noise_3_sse2;
#endif
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment