Commit e985d719 authored by Michael Niedermayer's avatar Michael Niedermayer

dirac: fix horizontal_compose_dd97i_ssse3

Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent 754539a4
...@@ -119,8 +119,12 @@ COMPOSE_VERTICAL(_sse2, 8) ...@@ -119,8 +119,12 @@ COMPOSE_VERTICAL(_sse2, 8)
void ff_horizontal_compose_dd97i_ssse3(IDWTELEM *b, IDWTELEM *tmp, int w); void ff_horizontal_compose_dd97i_ssse3(IDWTELEM *b, IDWTELEM *tmp, int w);
void ff_horizontal_compose_dd97i_end_c(IDWTELEM *b, IDWTELEM *tmp, int w2, int x) static void horizontal_compose_dd97i_ssse3(IDWTELEM *b, IDWTELEM *tmp, int w)
{ {
int w2= w>>1;
int x= w2 - (w2&7);
ff_horizontal_compose_dd97i_ssse3(b, tmp, w);
for (; x < w2; x++) { for (; x < w2; x++) {
b[2*x ] = (tmp[x] + 1)>>1; b[2*x ] = (tmp[x] + 1)>>1;
b[2*x+1] = (COMPOSE_DD97iH0(tmp[x-1], tmp[x], b[x+w2], tmp[x+1], tmp[x+2]) + 1)>>1; b[2*x+1] = (COMPOSE_DD97iH0(tmp[x-1], tmp[x], b[x+w2], tmp[x+1], tmp[x+2]) + 1)>>1;
...@@ -191,7 +195,7 @@ void ff_spatial_idwt_init_mmx(DWTContext *d, enum dwt_type type) ...@@ -191,7 +195,7 @@ void ff_spatial_idwt_init_mmx(DWTContext *d, enum dwt_type type)
switch (type) { switch (type) {
case DWT_DIRAC_DD9_7: case DWT_DIRAC_DD9_7:
//MMXDISABLED d->horizontal_compose = ff_horizontal_compose_dd97i_ssse3; d->horizontal_compose = horizontal_compose_dd97i_ssse3;
break; break;
} }
#endif // HAVE_YASM #endif // HAVE_YASM
......
...@@ -21,8 +21,6 @@ ...@@ -21,8 +21,6 @@
%include "x86inc.asm" %include "x86inc.asm"
cextern horizontal_compose_dd97i_end_c
SECTION_RODATA SECTION_RODATA
pw_1: times 8 dw 1 pw_1: times 8 dw 1
pw_2: times 8 dw 2 pw_2: times 8 dw 2
...@@ -293,7 +291,7 @@ cglobal horizontal_compose_dd97i_ssse3, 3,6,8, b, tmp, w, x, w2, b_w2 ...@@ -293,7 +291,7 @@ cglobal horizontal_compose_dd97i_ssse3, 3,6,8, b, tmp, w, x, w2, b_w2
cmp xd, w2d cmp xd, w2d
jl .highpass_loop jl .highpass_loop
.end: .end:
END_HORIZONTAL horizontal_compose_dd97i_end_c REP_RET
%ifndef ARCH_X86_64 %ifndef ARCH_X86_64
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment