summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2017-06-03 14:01:46 -0300
committerJames Almer <jamrial@gmail.com>2017-06-15 23:49:40 -0300
commit623d217ed1ba168355b1887ef9ca02402b40eead (patch)
treefc48668a8f16b9d4fd053c97cfeefb1c8d125bbb
parentb3446862bfdbfc8c500c052e0aa48674c1d9ca9f (diff)
avcodec/aacps: move checks for valid length outside the stereo_interpolate dsp function
Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r--libavcodec/aacps.c7
-rw-r--r--libavcodec/x86/aacpsdsp.asm6
2 files changed, 4 insertions, 9 deletions
diff --git a/libavcodec/aacps.c b/libavcodec/aacps.c
index 29de8a5ea7..473da7bd43 100644
--- a/libavcodec/aacps.c
+++ b/libavcodec/aacps.c
@@ -979,9 +979,10 @@ static void stereo_processing(PSContext *ps, INTFLOAT (*l)[32][2], INTFLOAT (*r)
h_step[1][2] = AAC_MSUB31_V3(H21[1][e+1][b], h[1][2], width);
h_step[1][3] = AAC_MSUB31_V3(H22[1][e+1][b], h[1][3], width);
}
- ps->dsp.stereo_interpolate[!PS_BASELINE && ps->enable_ipdopd](
- l[k] + 1 + start, r[k] + 1 + start,
- h, h_step, stop - start);
+ if (stop - start)
+ ps->dsp.stereo_interpolate[!PS_BASELINE && ps->enable_ipdopd](
+ l[k] + 1 + start, r[k] + 1 + start,
+ h, h_step, stop - start);
}
}
}
diff --git a/libavcodec/x86/aacpsdsp.asm b/libavcodec/x86/aacpsdsp.asm
index f7f22f274c..67d3bd4e07 100644
--- a/libavcodec/x86/aacpsdsp.asm
+++ b/libavcodec/x86/aacpsdsp.asm
@@ -94,8 +94,6 @@ INIT_XMM sse3
cglobal ps_stereo_interpolate, 5, 5, 6, l, r, h, h_step, n
movaps m0, [hq]
movaps m1, [h_stepq]
- cmp nd, 0
- jle .ret
unpcklps m4, m0, m0
unpckhps m0, m0
unpcklps m5, m1, m1
@@ -118,7 +116,6 @@ align 16
movhps [rq+nq], m2
add nq, 8
jl .loop
-.ret:
REP_RET
;***************************************************************************
@@ -128,8 +125,6 @@ align 16
;***************************************************************************
INIT_XMM sse3
cglobal ps_stereo_interpolate_ipdopd, 5, 5, 10, l, r, h, h_step, n
- cmp nd, 0
- jle .ret
movaps m0, [hq]
movaps m1, [hq+mmsize]
%if ARCH_X86_64
@@ -169,7 +164,6 @@ align 16
movhps [rq+nq], m2
add nq, 8
jl .loop
-.ret:
REP_RET
;*******************************************************************