summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-03-23 00:26:42 +0100
committerMichael Niedermayer <michaelni@gmx.at>2015-03-23 00:33:16 +0100
commitd9e3fe8c22cb848d2c4a72dd11b8886153fcee3a (patch)
tree4265aa5157c4c47e2730fda6edeaef204aee9de6
parent2a9b9579aba598de42aad6161e3447e12ce173bc (diff)
downloadffmpeg-d9e3fe8c22cb848d2c4a72dd11b8886153fcee3a.tar.gz
postproc/postprocess_template: split first part of block loop
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libpostproc/postprocess_template.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/libpostproc/postprocess_template.c b/libpostproc/postprocess_template.c
index 5e51b525d1..366b77490a 100644
--- a/libpostproc/postprocess_template.c
+++ b/libpostproc/postprocess_template.c
@@ -3471,11 +3471,9 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[
for(x=0; x<width; ){
int startx = x;
int endx = FFMIN(width, x+32);
+ uint8_t *dstBlockStart = dstBlock;
+ const uint8_t *srcBlockStart = srcBlock;
for(; x < endx; x+=BLOCK_SIZE){
- const int stride= dstStride;
- av_unused uint8_t *tmpXchg;
-
-
#if TEMPLATE_PP_MMXEXT && HAVE_6REGS
/*
prefetchnta(srcBlock + (((x>>2)&6) + 5)*srcStride + 32);
@@ -3522,6 +3520,16 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[
/* else if(mode & CUBIC_BLEND_DEINT_FILTER)
RENAME(deInterlaceBlendCubic)(dstBlock, dstStride);
*/
+ dstBlock+=8;
+ srcBlock+=8;
+ }
+
+ dstBlock = dstBlockStart;
+ srcBlock = srcBlockStart;
+
+ for(x = startx; x < endx; x+=BLOCK_SIZE){
+ const int stride= dstStride;
+ av_unused uint8_t *tmpXchg;
if(isColor){
QP= QPptr[x>>qpHShift];