Browse Source

postproc/postprocess_template: split loop in 2 (block groups of 4, blocks)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.7
Michael Niedermayer 10 years ago
parent
commit
93f4538363
1 changed files with 5 additions and 1 deletions
  1. +5
    -1
      libpostproc/postprocess_template.c

+ 5
- 1
libpostproc/postprocess_template.c View File

@@ -3476,7 +3476,10 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[
// From this point on it is guaranteed that we can read and write 16 lines downward // From this point on it is guaranteed that we can read and write 16 lines downward
// finish 1 block before the next otherwise we might have a problem // finish 1 block before the next otherwise we might have a problem
// with the L1 Cache of the P4 ... or only a few blocks at a time or something // with the L1 Cache of the P4 ... or only a few blocks at a time or something
for(x=0; x<width; x+=BLOCK_SIZE){
for(x=0; x<width; ){
int startx = x;
int endx = FFMIN(width, x+32);
for(; x < endx; x+=BLOCK_SIZE){
const int stride= dstStride; const int stride= dstStride;
#if TEMPLATE_PP_MMX #if TEMPLATE_PP_MMX
uint8_t *tmpXchg; uint8_t *tmpXchg;
@@ -3650,6 +3653,7 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[
tempBlock1= tempBlock2; tempBlock1= tempBlock2;
tempBlock2 = tmpXchg; tempBlock2 = tmpXchg;
#endif #endif
}
} }


if(mode & DERING){ if(mode & DERING){


Loading…
Cancel
Save