34 |
#include "../global.h" |
#include "../global.h" |
35 |
#include "interpolate8x8.h" |
#include "interpolate8x8.h" |
36 |
|
|
37 |
/* function pointers */ |
// function pointers |
38 |
INTERPOLATE8X8_PTR interpolate8x8_halfpel_h; |
INTERPOLATE8X8_PTR interpolate8x8_halfpel_h; |
39 |
INTERPOLATE8X8_PTR interpolate8x8_halfpel_v; |
INTERPOLATE8X8_PTR interpolate8x8_halfpel_v; |
40 |
INTERPOLATE8X8_PTR interpolate8x8_halfpel_hv; |
INTERPOLATE8X8_PTR interpolate8x8_halfpel_hv; |
100 |
} |
} |
101 |
} |
} |
102 |
|
|
103 |
/* dst = interpolate(src) */ |
// dst = interpolate(src) |
104 |
|
|
105 |
void |
void |
106 |
interpolate8x8_halfpel_h_c(uint8_t * const dst, |
interpolate8x8_halfpel_h_c(uint8_t * const dst, |
145 |
const uint32_t rounding) |
const uint32_t rounding) |
146 |
{ |
{ |
147 |
intptr_t j; |
intptr_t j; |
148 |
|
// const uint8_t * const src2 = src+stride; /* using a second pointer is _not_ faster here */ |
149 |
|
|
150 |
if (rounding) |
if (rounding) |
151 |
for (j = 0; j < 8*stride; j+=stride) /* forward is better. Some automatic prefetch perhaps. */ |
for (j = 0; j < 8*stride; j+=stride) /* forward is better. Some automatic prefetch perhaps. */ |
208 |
} |
} |
209 |
} |
} |
210 |
|
|
211 |
|
|
212 |
|
|
213 |
|
|
214 |
/************************************************************* |
/************************************************************* |
215 |
* QPEL STUFF STARTS HERE * |
* QPEL STUFF STARTS HERE * |
216 |
*************************************************************/ |
*************************************************************/ |