dirac: fix horizontal_compose_dd97i_ssse3
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
754539a409
commit
e985d71926
@ -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)
|
|||||||
|
|
||||||
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 @@
|
|||||||
|
|
||||||
%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
|
|||||||
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
|
||||||
|
Loading…
x
Reference in New Issue
Block a user